.qsolutions-shell{--qsol-ink:#17364f;--qsol-purple:#6655da;--qsol-muted:#65788b;max-width:1180px;margin:28px auto 70px;padding:0 18px;color:var(--qsol-ink);font-family:Cairo,Tahoma,Arial,sans-serif;box-sizing:border-box}
.qsolutions-shell *{box-sizing:border-box}
.qsolutions-hero{padding:42px 44px;border-radius:24px;background:linear-gradient(125deg,#163b57,#0d7374 64%,#09a28a);color:#fff;box-shadow:0 18px 45px rgba(10,77,87,.13)}
.qsolutions-hero>span{color:#ffdf85;font-size:12px;font-weight:800}
.qsolutions-hero h1{margin:9px 0;color:#fff;font-size:32px;line-height:1.4}
.qsolutions-hero p{max-width:700px;margin:0;color:rgba(255,255,255,.85);font-size:14px;line-height:1.9}
.qsolutions-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end;margin:22px 0;padding:18px;border:1px solid #e2e9ef;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(23,54,79,.04)}
.qsolutions-filters label{display:grid;gap:7px;color:#2b4256;font-size:12px;font-weight:800}
.qsolutions-filters select{width:100%;min-height:46px;border:1px solid #d8e2e9;border-radius:10px;background:#fff;padding:9px 11px;color:#264056;font:600 13px Cairo,Tahoma,Arial,sans-serif}
.qsolutions-filters select:disabled{background:#f2f5f7;color:#9aa5ae}
.qsolutions-filters button{min-height:46px;border:0;border-radius:10px;padding:10px 18px;background:var(--qsol-purple);color:#fff;font:800 13px Cairo,Tahoma,Arial,sans-serif;cursor:pointer}
.qsolutions-empty{padding:36px 25px;border:1px dashed #cbd7df;border-radius:16px;background:#fff;text-align:center;color:var(--qsol-muted);font-size:14px;line-height:1.9}
.qsolutions-empty strong{display:block;color:var(--qsol-ink);font-size:18px}.qsolutions-empty p{margin:9px 0 0}.qsolutions-empty a{color:var(--qsol-purple)}
.qsolutions-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:26px 0}
.qsolutions-list a{display:flex;align-items:center;gap:12px;min-height:86px;padding:11px;border:1px solid #e1e8ef;border-radius:14px;background:#fff;color:var(--qsol-ink);text-decoration:none!important}
.qsolutions-list a.active{border:2px solid var(--qsol-purple);background:#f7f5ff}.qsolutions-list img{width:47px;height:62px;object-fit:contain}.qsolutions-list .dashicons{width:47px;height:47px;color:var(--qsol-purple);font-size:43px}
.qsolutions-list small{display:block;color:#079b88;font-size:11px}.qsolutions-list strong{display:block;font-size:13px;line-height:1.5}
.qsolutions-viewer{overflow:hidden;border:1px solid #dbe5ed;border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(23,54,79,.08)}
.qsolutions-viewer:fullscreen{overflow:auto}.qsolutions-viewer:fullscreen iframe{height:calc(100vh - 155px)}
.qsolutions-viewer-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:19px 22px}.qsolutions-viewer-heading small{color:#079b88;font-size:12px}.qsolutions-viewer-heading h2{margin:3px 0 0;color:var(--qsol-ink);font-size:20px}.qsolutions-viewer-heading>span{color:var(--qsol-muted);font-size:11px}
.qsolutions-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:11px 16px;background:#edf3f8}.qsolutions-toolbar button,.qsolutions-toolbar a{min-height:36px;padding:7px 10px;border:1px solid #d7e0ea;border-radius:8px;background:#fff;color:#263f57;font:700 12px Cairo,Tahoma,Arial,sans-serif;text-decoration:none!important;cursor:pointer}.qsolutions-toolbar button:hover,.qsolutions-toolbar a:hover{border-color:var(--qsol-purple);color:var(--qsol-purple)}.qsolutions-toolbar a:last-child{background:var(--qsol-purple);color:#fff}.qsolutions-toolbar label{font-size:12px}.qsolutions-toolbar input{width:62px;min-height:36px;border:1px solid #d7e0ea;border-radius:7px;text-align:center}.qsolutions-toolbar span{font-size:12px}
.qsolutions-viewer iframe{display:block;width:100%;height:min(78vh,950px);border:0;background:#eef2f6}.qsolutions-credit{margin:0;padding:12px 20px;color:var(--qsol-muted);font-size:11px;overflow-wrap:anywhere}.qsolutions-credit a{color:var(--qsol-purple)}
@media(max-width:900px){.qsolutions-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.qsolutions-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.qsolutions-shell{padding:0 12px}.qsolutions-hero{padding:28px 22px}.qsolutions-hero h1{font-size:25px}.qsolutions-filters,.qsolutions-list{grid-template-columns:1fr}.qsolutions-viewer-heading{display:block}.qsolutions-viewer-heading>span{display:block;margin-top:8px}.qsolutions-viewer iframe{height:72vh}}
