:root{--navy:#071d34;--navy2:#112d4d;--blue:#2b65c5;--blue2:#397ce8;--blue-light:#eef5ff;--ink:#12243a;--muted:#64738a;--line:#e0e6ee;--surface:#fff;--bg:#f6f8fb;--gold:#b18b42;--warn:#8d6621;--warn-bg:#fff9ed;--radius:15px;--shadow:0 14px 45px rgba(27,50,82,.055)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--bg);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);line-height:1.55}button,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #86aff3;outline-offset:3px}button:disabled{cursor:default}.app-shell{display:flex;min-height:100vh}.sidebar{background:var(--navy);color:#c7d6e6;width:253px;flex-shrink:0;min-height:100vh;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:20}.brand-area{padding:31px 23px 27px;border-bottom:1px solid rgba(255,255,255,.08)}.brand{display:flex;align-items:center;text-decoration:none;gap:12px;width:max-content;color:white}.brand-symbol{height:41px;width:41px;display:grid;place-items:center;background:linear-gradient(140deg,#4389ed,#1a56b2);border:1px solid rgba(255,255,255,.15);border-radius:13px;box-shadow:0 7px 17px rgba(8,31,64,.3);font-weight:900;font-size:26px;letter-spacing:-.09em}.brand-symbol span{transform:translateX(-2px)}.brand-text{display:flex;flex-direction:column;line-height:1.05}.brand-text strong{font-size:23px;letter-spacing:-.85px;font-weight:750}.brand-text small{font-weight:750;letter-spacing:.24em;color:#9dc7f9;font-size:10px;margin-top:6px}.sidebar-intro{font-size:12px;margin:23px 0 0;color:#8ea9c3;line-height:1.7}.main-nav{padding:25px 13px;display:flex;flex-direction:column;gap:6px}.nav-caption{font-size:10px;letter-spacing:.17em;font-weight:750;color:#6283a3;margin:0 12px 10px}.nav-caption-second{margin-top:27px}.nav-item{width:100%;min-height:45px;border:0;border-radius:9px;padding:9px 12px;display:flex;align-items:center;text-align:left;gap:12px;background:transparent;color:#aebfd2;font-size:13px;font-weight:560;transition:background .15s,color .15s}.nav-item:hover{background:#133553;color:white}.nav-item.active{background:#1b3d61;color:white;box-shadow:inset 3px 0 #5b9cf8;font-weight:650}.nav-ico{font-size:18px;width:19px;display:inline-grid;place-items:center;color:#8bb4dd}.active .nav-ico{color:#b8d8ff}.side-bottom{margin-top:auto;padding:18px 22px 24px;border-top:1px solid rgba(255,255,255,.1)}.prototype-tag{display:flex;align-items:center;gap:7px;font-size:10px;color:#cddbe9;letter-spacing:.04em}.prototype-tag strong{font-size:10px;white-space:nowrap}.prototype-tag>span:last-child{margin-left:auto;color:#7e9ebd}.pulse-dot,.status-dot{display:inline-block;width:7px;height:7px;background:#dbb56b;border-radius:50%;flex-shrink:0}.side-bottom p{font-size:11px;line-height:1.7;color:#88a5c0;margin:12px 0 20px}.side-bottom-line{font-size:10px;color:#637f9a}.main-shell{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:77px;background:#fff;border-bottom:1px solid #e9edf2;display:flex;align-items:center;justify-content:space-between;padding:0 46px;gap:20px}.topbar-left,.topbar-right{display:flex;align-items:center;gap:16px}.breadcrumb{font-size:12px;color:#9aa6b4}.breadcrumb strong{color:#405371;font-weight:650}.breadcrumb>span{display:inline-block;color:#c4cbd5;margin:0 12px}.status-pill{display:flex;align-items:center;gap:8px;border:1px solid #e6eaf0;background:#f8fafc;border-radius:100px;padding:6px 11px;color:#708096;font-size:11px;white-space:nowrap}.status-dot{background:#a1aebd}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e5ecf8;border:1px solid #cedbf0;color:#3a5c89;font-size:12px;font-weight:750}.menu-button{display:none;background:transparent;border:0;font-size:20px;color:#324b67}main{max-width:1470px;margin:0 auto;width:100%;padding:51px 50px 58px;flex:1}.view[hidden]{display:none!important}.page-overline{display:flex;align-items:center;gap:10px;font-size:10px;letter-spacing:.16em;font-weight:760;color:var(--gold);margin-bottom:19px}.page-overline-line{display:block;width:20px;height:1px;background:var(--gold)}.hero-grid{display:flex;align-items:flex-start;justify-content:space-between;gap:25px}.hero-grid h1,.inner-title{font-size:clamp(31px,3.1vw,45px);line-height:1.17;letter-spacing:-1.9px;font-weight:760;margin:0}.hero-grid h1 span{color:var(--blue)}.hero-copy{font-size:14px;line-height:1.8;color:#61748d;max-width:610px;margin:17px 0 0}.hero-mark{width:113px;height:113px;flex-shrink:0;margin-right:20px;margin-top:2px;border-radius:30px;transform:rotate(-12deg);background:linear-gradient(140deg,#ebf3ff,#d8e8ff);display:grid;place-items:center}.hero-mark-in{height:76px;width:76px;transform:rotate(12deg);border:2px solid #98bbed;border-radius:22px;display:flex;align-items:center;justify-content:center;color:#3979d9;font-size:49px;font-weight:350;position:relative}.hero-dot{position:absolute;font-size:30px;bottom:-8px;right:10px;color:#bb9a5b}.prototype-warning{margin:29px 0 25px;border:1px solid #eadcbb;background:var(--warn-bg);border-radius:11px;padding:13px 17px;display:flex;align-items:flex-start;gap:12px;font-size:11px;color:#846b3e;line-height:1.7}.prototype-warning strong{font-weight:720;color:#765922}.warning-icon{width:21px;height:21px;border:1.5px solid #d1a958;border-radius:50%;display:grid;place-items:center;flex-shrink:0;font-weight:750}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.89fr);gap:23px}.ask-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:var(--radius);padding:26px 28px 21px}.ask-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:24px}.ask-icon{border:1px solid #cfdef5;border-radius:12px;background:#eff6ff;color:#3a74cc;width:38px;height:38px;display:grid;place-items:center;font-size:20px;flex-shrink:0}.ask-head h2{font-size:18px;line-height:1.4;margin:0;letter-spacing:-.45px}.ask-head p{color:#7d8b9b;font-size:12px;margin:3px 0 0}.field-label{display:block;font-size:11px;color:#405471;font-weight:720;margin-bottom:8px}textarea{display:block;border:1px solid #dce4ef;border-radius:9px;background:#fbfcff;width:100%;resize:vertical;min-height:105px;padding:14px 15px;color:var(--ink);font-size:13px;line-height:1.7;transition:border-color .15s,box-shadow .15s}textarea::placeholder{color:#a3b0c0}textarea:focus{border-color:#80a6e2;box-shadow:0 0 0 3px rgba(64,125,223,.11);outline:none}.form-toolbar{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-top:17px}.school-choice{display:flex;flex-direction:column;gap:7px;color:#6b7b90;font-size:10px;font-weight:700}.school-choice select{appearance:none;background:#f7f9fc url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23536a87' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 9px center;border:1px solid #e1e7ef;border-radius:8px;padding:9px 33px 9px 11px;min-width:127px;color:#36506f;font-size:12px;font-weight:650}.primary-btn{border:0;background:linear-gradient(110deg,#2b64bd,#367adb);border-radius:9px;padding:12px 16px;color:white;font-size:12px;font-weight:750;display:flex;align-items:center;justify-content:center;gap:10px;min-height:41px;box-shadow:0 8px 21px rgba(47,111,209,.2)}.primary-btn:hover{background:linear-gradient(110deg,#2256ac,#2f6ccb)}.primary-btn span:last-child{font-size:17px;font-weight:400}.privacy-hint{font-size:10px;color:#9aa6b5;margin:15px 0 0}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:29px 1px 15px}.section-heading h2{margin:0;font-size:15px;font-weight:740}.section-heading>span{font-size:9px;color:#9eacbc;letter-spacing:.13em;font-weight:730}.prompt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.prompt-card{min-height:174px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:16px 16px 15px;transition:border-color .14s,transform .14s,box-shadow .14s}.prompt-card:hover{border-color:#8eb5ee;box-shadow:0 7px 18px rgba(48,104,177,.08);transform:translateY(-2px)}.prompt-top{display:flex;justify-content:space-between;color:#78a1d7;font-size:11px;font-weight:700;margin-bottom:21px}.prompt-top>span:last-child{font-size:15px}.prompt-card strong{font-size:12px;line-height:1.6;color:#244269;font-weight:710;flex:1}.prompt-bottom{border-top:1px solid #edf0f4;margin-top:18px;padding-top:12px;color:#8492a5;font-size:10px}.insight-card{border-radius:var(--radius);padding:30px 28px;background:linear-gradient(150deg,#0d3155,#09213b 65%,#081c33);color:#fff;min-height:384px}.insight-eyebrow{font-size:10px;letter-spacing:.15em;color:#91bce6;font-weight:750;margin-bottom:16px}.insight-card h2{font-size:26px;line-height:1.25;letter-spacing:-.8px;font-weight:730;margin:0 0 10px}.insight-card>p{font-size:12px;color:#a9c1d8;line-height:1.8;margin:0 0 23px}.method-list{padding:0;margin:0;list-style:none}.method-list li{display:flex;align-items:center;gap:13px;padding:12px 0;border-top:1px solid rgba(255,255,255,.12)}.method-list li>span{font-size:10px;color:#82b3e2;border:1px solid rgba(107,164,216,.4);width:30px;height:30px;display:grid;place-items:center;border-radius:9px;flex-shrink:0}.method-list li>div{display:flex;flex-direction:column}.method-list strong{font-size:12px;font-weight:680}.method-list small{font-size:10px;color:#8baac8;margin-top:2px}.library-mini{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:22px 23px;margin-top:15px}.library-mini-head{display:flex;align-items:center;gap:8px;color:#8e9db1;font-size:10px;font-weight:750;letter-spacing:.09em}.mini-icon{display:grid;place-items:center;background:#eef4ff;color:#4e82cb;border-radius:7px;width:24px;height:24px;font-size:14px}.library-mini>strong{display:block;font-size:21px;letter-spacing:-.6px;margin:11px 0 4px}.library-mini>p{font-size:11px;color:#75879c;line-height:1.7;margin:0 0 13px}.text-link{display:inline-flex;align-items:center;gap:8px;background:transparent;padding:0;border:0;color:#286bc7;font-weight:750;font-size:11px;text-align:left}.text-link:hover{text-decoration:underline}.footer{max-width:1470px;width:100%;margin:0 auto;padding:22px 50px 29px;display:flex;justify-content:space-between;gap:16px;border-top:1px solid #e7ecf2;color:#9aa8b8;font-size:9px;letter-spacing:.08em;font-weight:700}.answer-region:empty{display:none}.result-card{margin-top:21px;border:1px solid #d6e2f0;border-radius:15px;background:#fff;box-shadow:var(--shadow);overflow:hidden}.result-header{padding:20px 23px;background:linear-gradient(110deg,#eef5ff,#fbfdff);display:flex;align-items:flex-start;justify-content:space-between;gap:15px;border-bottom:1px solid #e0eaf6}.result-heading{font-size:17px;font-weight:760;margin:0 0 4px;line-height:1.4}.result-caption{color:#607c9a;font-size:10px}.result-status{white-space:nowrap;font-size:9px;border:1px solid #bbd2ec;background:white;color:#416c9f;border-radius:100px;padding:5px 10px;font-weight:740}.result-status.caution{color:#925f18;border-color:#ecd4ab;background:#fff8ec}.result-body{padding:19px 24px 22px}.result-section{margin-bottom:21px}.result-section:last-child{margin-bottom:0}.result-section h3{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#4f6b8e;font-weight:790;display:flex;align-items:center;gap:9px;margin:0 0 10px}.result-section h3::before{content:"";width:4px;height:16px;border-radius:5px;background:#4385d9;flex-shrink:0}.result-section p,.result-section li{font-size:12px;line-height:1.8;color:#405772;margin:7px 0}.result-section ul{padding-left:18px;margin:8px 0}.result-divider{height:1px;background:#ecf0f6;margin:18px 0}.finding-title{font-weight:770;color:#1a375a}.principle-line{border-left:2px solid #c5d9f4;padding-left:12px;margin:10px 0}.principle-line strong{font-size:12px;color:#29496d}.principle-line p{margin:3px 0}.scope-alert{background:#fff9ec;border:1px solid #f0dfbf;border-radius:8px;padding:11px 13px;color:#846330;font-size:11px;line-height:1.7;margin:16px 0}.source-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.source-link{font-size:10px;color:#255eaf;background:#eef5ff;border-radius:7px;border:1px solid #dce9fa;text-decoration:none;padding:7px 10px}.source-link:hover{text-decoration:underline;background:#e2efff}.result-footnote{background:#f7f9fc;border-top:1px solid #ebeff5;padding:11px 22px;font-size:10px;color:#8a99aa}.empty-note{border:1px solid #eddbc2;background:#fffaf2;border-radius:12px;padding:20px 22px}.empty-note h3{font-size:16px;color:#805c25;margin:0 0 8px}.empty-note p{font-size:12px;color:#735e3e;line-height:1.7;margin:0}.empty-note small{display:block;font-size:10px;margin-top:11px;color:#9c865f}.inner-title{max-width:780px;margin-bottom:15px}.inner-intro{font-size:14px;color:#65788f;max-width:780px;line-height:1.85;margin:0 0 26px}.section-tip{border:1px solid #e1eaf6;background:#eef5fd;border-radius:9px;color:#597291;font-size:11px;line-height:1.6;padding:13px 16px;margin-bottom:26px}.concept-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.concept-card,.source-card,.lead-card,.about-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:23px 24px;box-shadow:var(--shadow)}.concept-kicker{font-size:10px;font-weight:780;letter-spacing:.14em;color:#4a80c9;margin-bottom:12px}.concept-card h2,.source-card h2,.lead-card h2,.about-card h2{margin:0 0 9px;font-size:17px;letter-spacing:-.45px}.concept-card p,.source-card p,.lead-card p,.about-card p{font-size:12px;color:#65778b;line-height:1.75;margin:8px 0}.concept-detail{border-top:1px solid #edf0f4;margin-top:17px;padding-top:14px}.concept-detail strong{font-size:10px;color:#3b5576;text-transform:uppercase;letter-spacing:.05em}.ref-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.ref-tag{background:#eef5ff;color:#35669f;font-size:10px;border-radius:5px;padding:6px 9px;font-weight:660}.sources-list{display:grid;gap:13px}.source-card{display:flex;align-items:flex-start;gap:17px}.source-card-icon{display:grid;place-items:center;background:#eef5ff;border-radius:12px;width:45px;height:45px;flex-shrink:0;font-size:19px;color:#4f80bd}.source-card-main{flex:1}.source-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.source-card h2{margin-bottom:2px}.source-type{color:#4576b2;font-size:10px;font-weight:740}.source-card .tiny-meta{color:#92a0b1;font-size:10px}.source-link-btn{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;color:#286ac4;background:#f1f6ff;border-radius:8px;text-decoration:none;padding:8px 10px;font-weight:730;font-size:11px}.source-link-btn:hover{text-decoration:underline}.leadership-grid,.about-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.lead-card{display:flex;flex-direction:column;min-height:290px}.lead-icon{background:#edf5ff;border-radius:11px;color:#4c80c5;font-size:24px;width:47px;height:47px;display:grid;place-items:center;margin-bottom:20px}.lead-card h2{margin-bottom:3px}.lead-card p{flex:1}.lead-card button{margin-top:16px}.about-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-num{font-size:13px;color:#6d98cf;font-weight:770;display:block;margin-bottom:16px}.editor-note{border-left:3px solid #b6cce8;padding:12px 16px;font-size:12px;line-height:1.8;color:#60758d;background:#eff5fd;border-radius:0 9px 9px 0;margin-top:26px}.sidebar-overlay[hidden]{display:none}.skip-link{position:absolute;top:-90px}.skip-link:focus{top:0}
@media(max-width:1200px){main{padding:43px 33px}.topbar{padding:0 33px}.footer{padding-left:33px;padding-right:33px}.hero-mark{margin-right:3px}.workspace-grid{grid-template-columns:minmax(0,1.5fr) minmax(236px,.85fr);gap:15px}.ask-card{padding:22px}.insight-card{padding:24px}.prompt-card{padding:13px;min-height:172px}}
@media(max-width:980px){.sidebar{width:215px}.brand-area{padding:28px 16px}.brand-text strong{font-size:20px}.main-nav{padding:20px 8px}.side-bottom{padding:18px 15px}.hero-mark{display:none}.workspace-grid{grid-template-columns:1fr}.insight-col{display:grid;grid-template-columns:1.3fr 1fr;gap:14px}.insight-card{min-height:0}.library-mini{margin-top:0}.method-list li{padding:8px 0}.concept-grid{grid-template-columns:1fr}.leadership-grid{grid-template-columns:1fr 1fr}}
@media(max-width:740px){.sidebar{position:fixed;left:0;top:0;bottom:0;width:268px;transform:translateX(-101%);transition:transform .17s ease;box-shadow:20px 0 45px rgba(0,0,0,.18)}body.sidebar-open .sidebar{transform:translateX(0)}.sidebar-overlay:not([hidden]){display:block;position:fixed;inset:0;background:rgba(5,20,38,.55);z-index:15}.menu-button{display:inline-flex}.topbar{height:65px;padding:0 17px}.topbar-right{gap:8px}.status-pill{font-size:0;padding:7px;width:22px;height:22px;justify-content:center}.status-dot{width:8px;height:8px}.breadcrumb{font-size:11px}.breadcrumb>span{margin:0 4px}main{padding:31px 17px 45px}.hero-grid h1,.inner-title{font-size:33px;letter-spacing:-1.35px}.hero-copy{font-size:13px}.prototype-warning{margin:24px 0 20px}.insight-col{grid-template-columns:1fr}.insight-card{min-height:unset}.prompt-grid{grid-template-columns:1fr}.prompt-card{min-height:112px}.prompt-top{margin-bottom:8px}.prompt-bottom{margin-top:8px}.concept-grid,.leadership-grid,.about-grid{grid-template-columns:1fr}.footer{padding:18px 17px;flex-direction:column;font-size:9px}.result-header{flex-direction:column}.source-card-head{flex-direction:column}.source-card{padding:20px;gap:12px}.result-body{padding:18px}}
@media(max-width:390px){.form-toolbar{flex-direction:column;align-items:stretch}.primary-btn{width:100%}.school-choice select{width:100%}.status-pill{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Original Framvia wordmark, loaded from the unchanged public Framvia site. */
.brand{width:100%;align-items:flex-start;flex-direction:column;gap:8px}
.brand-logo-frame{display:flex;align-items:center;justify-content:center;width:100%;max-width:202px;padding:10px 12px;background:#f3f7ff;border:1px solid rgba(255,255,255,.17);border-radius:10px;min-height:76px}
.brand-logo{display:block;width:100%;max-width:180px;height:auto;aspect-ratio:1942/801;object-fit:contain}
.brand-subtitle{font-weight:800;font-size:11px;letter-spacing:.25em;color:#b9d6fa;padding-left:2px}
@media(max-width:980px){.brand-logo-frame{max-width:180px}}

/* Fallback until the original logo has really loaded (e.g. offline preview). */
.brand-logo{display:none}
.brand-logo.loaded{display:block}
.brand-logo-fallback{display:block;font-weight:800;font-size:27px;letter-spacing:-1.3px;line-height:1;color:#10345a;padding:20px 0}
.brand-logo.loaded + .brand-logo-fallback{display:none}

/* v0.2: robust branding, form ergonomics, source filtering and print. */
.brand-logo-frame{position:relative;overflow:hidden}.brand-logo-fallback{display:block;width:100%;height:auto;max-width:184px;padding:2px 0}.brand-logo{position:absolute;inset:0;margin:auto}.brand-logo.loaded{display:block;background:#f3f7ff}.brand-logo.loaded+.brand-logo-fallback{visibility:hidden}
.form-toolbar{align-items:end;justify-content:flex-start;flex-wrap:wrap}.form-toolbar .primary-btn{margin-left:auto}.school-choice select{min-width:145px}.question-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px;color:#8191a6;font-size:11px}.link-button{border:0;background:transparent;color:#245da7;text-decoration:underline;text-underline-offset:3px;padding:3px 0;font-size:11px}
.filter-input{display:block;width:100%;min-height:48px;margin:8px 0 10px;padding:12px 15px;border:1px solid #ced9e8;border-radius:10px;color:var(--ink);background:white;font:inherit;font-size:14px}.filter-input:focus{outline:3px solid #aac8f0;outline-offset:2px}.filter-label{display:block;margin-top:24px;font-size:12px;font-weight:730;color:#405371}.filter-count{color:#62748a;font-size:12px;margin:0 0 22px}.source-tools{max-width:700px}.result-action-bar{display:flex;gap:12px;align-items:center;justify-content:flex-end;flex-wrap:wrap;padding:14px 25px 16px;border-top:1px solid #edf1f6;background:#fafdff;border-radius:0 0 15px 15px}.result-action{border:1px solid #cddbf0;background:#fff;border-radius:9px;padding:9px 12px;color:#285f9f;font-size:12px;font-weight:700;cursor:pointer}.result-action:hover{background:#eef5ff}.result-section p{line-height:1.75}.result-footnote{line-height:1.7}.evidence-chip{background:#eaf5ee;color:#285e42;border:1px solid #cde6d5;border-radius:90px;padding:5px 10px;font-size:10px;font-weight:750;letter-spacing:.03em}.privacy-alert{background:#fff3ee;border:1px solid #f0c9b9;padding:17px;border-radius:10px;color:#843f2d}.source-card[hidden],.concept-card[hidden]{display:none!important}.ask-card textarea:focus-visible{outline:3px solid #bad7ff;outline-offset:2px}.prompt-card{text-align:left}.mini-statline{display:flex;gap:9px;flex-wrap:wrap;color:#79899b;font-size:10px;margin:13px 0}.mini-statline span{padding:5px 7px;background:#f0f5fc;border-radius:5px}.footer{flex-wrap:wrap}
@media(max-width:810px){.form-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:11px}.form-toolbar .primary-btn{margin:0;grid-column:1/-1}.form-toolbar .school-choice select{min-width:0;width:100%}.brand-logo-frame{min-width:150px}}
@media print{.sidebar,.topbar,.sidebar-overlay,.ask-card,.suggestions,.insight-col,.footer,.prototype-warning,.result-action-bar{display:none!important}html,body,.main-shell,main{background:#fff!important;box-shadow:none!important;margin:0!important;padding:0!important;max-width:none!important}.result-card{box-shadow:none!important;border:0!important}.result-body{padding:0!important}.result-header{border:0!important}.source-link{color:black!important}}

/* Explains blocked JavaScript in third-party HTML preview before any code executes. */
.runtime-warning{background:#fff5e7;border:1px solid #edcf9e;border-radius:9px;padding:14px 17px;margin:0 0 18px;color:#784e1d;font-size:12px;line-height:1.65}.runtime-warning[hidden]{display:none!important}

/* Guided legal reading – only static, non-case specific questions; nothing is stored. */
.workflow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}
.workflow-card{border:1px solid #dfe7f1;border-radius:15px;background:#fff;padding:24px;display:flex;flex-direction:column;min-height:235px;box-shadow:var(--shadow)}
.workflow-kicker{font-size:10px;letter-spacing:.12em;color:#436eae;font-weight:800;margin:0 0 12px;text-transform:uppercase}
.workflow-card h2{font-size:19px;line-height:1.25;letter-spacing:-.45px;margin:0 0 10px}
.workflow-card>p:not(.workflow-kicker){font-size:12px;color:#637790;line-height:1.65;margin:0 0 12px}
.workflow-card .workflow-meta{font-size:11px;color:#8a9baf;margin-top:auto!important;padding-top:13px}
.workflow-start{border:0;padding:0;background:transparent;text-align:left;font-size:12px;font-weight:760;color:#225da5;align-self:flex-start}
.workflow-detail{margin-top:28px;background:#fff;border:1px solid #d9e5f2;border-radius:16px;padding:28px;box-shadow:0 20px 60px rgba(27,50,82,.09);scroll-margin-top:25px}
.workflow-detail[hidden]{display:none!important}
.workflow-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.workflow-detail h2{margin:0;font-size:25px;letter-spacing:-.6px}
.workflow-progress{display:flex;gap:8px;margin:25px 0 22px}
.workflow-pip{height:7px;flex:1;border-radius:6px;background:#e5ebf4}
.workflow-pip.current{background:#3778d4}.workflow-pip.passed{background:#9dbdeb}
.workflow-step-count{font-size:11px;font-weight:760;letter-spacing:.1em;color:#4175b8}
.workflow-step-title{font-size:20px;margin:5px 0 14px;letter-spacing:-.4px}
.workflow-step-copy{font-size:14px;line-height:1.85;color:#384d68;max-width:800px}
.workflow-reflection{margin:25px 0 18px;border-left:4px solid #3678d4;padding:15px 20px;background:#f0f6ff;border-radius:0 9px 9px 0}
.workflow-reflection strong,.workflow-caution strong,.workflow-source-links strong{display:block;font-size:12px;margin-bottom:8px}
.workflow-reflection p,.workflow-caution p{font-size:13px;line-height:1.7;margin:0;color:#445d78}
.workflow-caution{background:#fff9ed;border:1px solid #eadcbb;border-radius:9px;padding:16px 20px;margin-bottom:23px}
.workflow-source-links{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:22px}
.workflow-source-links strong{width:100%;margin:0 0 2px}
.workflow-controls{display:flex;justify-content:space-between;align-items:center;gap:13px;border-top:1px solid #e8eef5;padding-top:20px}
.workflow-quiet-btn{border:1px solid #d4e0ef;background:#fff;color:#31577c;border-radius:9px;padding:9px 13px;font-weight:700;font-size:12px}
.workflow-quiet-btn:disabled{opacity:.42}
@media(max-width:1150px){.workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){.workflow-grid{grid-template-columns:1fr}.workflow-card{min-height:210px}.workflow-detail{padding:19px}.workflow-detail-head{flex-direction:column}.workflow-controls{flex-wrap:wrap}.workflow-controls .primary-btn{width:auto}}
.evidence-notes{margin-top:19px;background:#f5f8fc;border:1px solid #dce6f2;border-radius:10px;padding:16px 18px}
.evidence-notes>strong{display:block;color:#405a7b;font-size:12px;margin-bottom:12px}
.evidence-line{border-top:1px solid #e2eaf3;padding:11px 0 5px}.evidence-line:first-of-type{border-top:0}
.evidence-source-label{font-size:12px;font-weight:760;color:#285f9c}.evidence-line p{font-size:12px;color:#516981;line-height:1.7;margin:6px 0}
/* Show what the approved local paragraph selection actually contains. */
.source-evidence-list{margin-top:15px;border-top:1px solid #e1e8f1;padding:13px 0 0}
.source-evidence-list summary{cursor:pointer;display:list-item;font-size:12px;font-weight:740;color:#245da7;line-height:1.7}
.source-evidence-list summary:focus-visible{outline:2px solid #7faeff;outline-offset:3px}
.source-evidence-body{padding:10px 4px 0 9px;border-left:3px solid #e2ecf8;margin-top:9px}
.source-evidence-item{padding:11px 0;border-top:1px solid #e4ebf3}
.source-evidence-item strong{font-size:12px;color:#2e5c90}
.source-evidence-item p{margin:6px 0 0!important;color:#61748e;font-size:12px;line-height:1.7}

/* User-triggered, offline runtime self-test. No analytics or HTTP requests. */
.diagnostics-card{margin:24px 0;padding:25px 27px;background:#fff;border:1px solid #d7e4f2;box-shadow:0 14px 30px #1b3c690b;border-radius:15px}
.diagnostics-card h2{margin:0 0 8px;font-size:19px;color:#1e3757}.diagnostics-card p{color:#647790;font-size:13px;line-height:1.7}.diagnostics-trigger{background:#2168b4;color:#fff;border:0;border-radius:9px;padding:12px 17px;font-weight:700;cursor:pointer;margin:8px 0}
.diagnostics-trigger:focus-visible{outline:3px solid #98bded;outline-offset:3px}
.diagnostics-result:empty{display:none}.diagnostics-result{border-top:1px solid #dce8f5;margin-top:12px;padding-top:15px}
.diagnostics-result strong{font-size:13px;color:#2c4a6e}.diagnostics-result p{margin:6px 0;font-size:12px}.diagnostics-pass{color:#246c48!important}.diagnostics-fail{color:#a33f2d!important}

.coverage-notice{background:#eff6fd;border:1px solid #cfdff1;padding:13px 18px;margin:12px auto;max-width:1080px;border-radius:10px;font-size:12px;line-height:1.7;color:#294c75}.coverage-notice a{color:#1b5da9;font-weight:750;margin-left:10px}

/* v0.7.1 decision studio: integrated in original sidebar/design, strictly scoped. */
.decision-studio .desk-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 26px}
.decision-studio .desk-tabs button{border:1px solid #cbd9ec;border-radius:12px;padding:12px 17px;background:#fff;color:#284d7d;font-weight:750;font-size:13px;cursor:pointer}
.decision-studio .desk-tabs button[aria-selected="true"]{background:#1e5da7;color:#fff;border-color:#1e5da7;box-shadow:0 6px 17px #164b8917}
.decision-studio .card{background:#fff;border:1px solid #dbe6f3;border-radius:16px;padding:25px;box-shadow:0 16px 48px #183b6a0b;margin:12px 0 20px}
.decision-studio .card h2{font-size:22px;letter-spacing:-.45px;color:#1d3655;margin:0 0 9px}
.decision-studio .muted{font-size:13px;line-height:1.75;color:#5d7088}
.decision-studio .hidden{display:none!important}
.decision-studio .cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}
.decision-studio label{display:block;font-weight:700;font-size:12px;color:#394e68;margin:14px 0 6px}
.decision-studio :is(input,textarea,select){font:inherit;font-size:13px;display:block;width:100%;max-width:100%;border:1px solid #c8d6e8;border-radius:10px;padding:12px;background:#fff;color:#243e5c}
.decision-studio textarea{min-height:112px;resize:vertical}
.decision-studio :is(input,textarea,select):focus-visible{outline:3px solid #a9d1fd;outline-offset:1px}
.decision-studio .action{border:0;border-radius:9px;padding:12px 16px;background:#2166b0;color:#fff;font-weight:750;font-size:12px;cursor:pointer;margin:15px 9px 0 0}
.decision-studio .action.secondary{background:#e9f2fc;color:#245f9f}
.decision-studio .action:disabled{opacity:.5;cursor:not-allowed}
.decision-studio #mandateResult:not(:empty),.decision-studio #changeResult:not(:empty){padding:15px 17px;margin-top:19px;background:#f7fbff;border:1px solid #dce9f8;border-radius:12px;color:#31485e}
.decision-studio #mandateResult :is(h3,p),.decision-studio #changeResult :is(h3,p){margin:8px 0;line-height:1.65}
.decision-studio #mandateResult h3,.decision-studio #changeResult h3{font-size:16px}
.decision-studio #mandateResult ul{font-size:13px;line-height:1.7;padding-left:24px}
.decision-studio .status{font-weight:700;color:#9b5e11}
.decision-studio .warning{color:#825121;font-weight:650}
.decision-studio .source-change{padding:11px;background:#fff;border:1px solid #d9e5f2;border-radius:8px;margin:9px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.decision-studio .source-change.code{font-family:ui-monospace,monospace;font-size:12px}
.decision-studio .readout{white-space:pre-wrap;background:#f8fbff;border:1px solid #dde8f5;border-radius:12px;padding:18px;overflow-wrap:anywhere;min-height:100px;line-height:1.7;font-size:12px;color:#2e4866;margin-top:18px}
.studio-shortcut{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:16px 0 22px;border:1px solid #cfe0f4;border-radius:14px;padding:17px 20px;background:#f5faff}
.studio-shortcut strong{font-size:13px;color:#214a79}
.studio-shortcut p{font-size:12px;line-height:1.65;color:#617998;margin:5px 0 0}
.studio-shortcut-btn{border:0;border-radius:9px;padding:11px 15px;white-space:nowrap;background:#236ab8;color:#fff;font-size:12px;font-weight:750;cursor:pointer}
@media(max-width:780px){.decision-studio .cols{grid-template-columns:1fr}.decision-studio .card{padding:17px}.decision-studio .desk-tabs button{flex:1 1 auto}.studio-shortcut{align-items:stretch;flex-direction:column}.studio-shortcut-btn{width:100%}}
@media print {body.print-decision-memo .decision-studio .desk-tabs,body.print-decision-memo .decision-studio #mandate,body.print-decision-memo .decision-studio #changes,body.print-decision-memo .decision-studio .action,body.print-decision-memo .decision-studio .prototype-warning,body.print-decision-memo .decision-studio .page-overline,body.print-decision-memo .decision-studio .inner-intro{display:none!important}body.print-decision-memo #view-beslut{display:block!important}body.print-decision-memo #memo{display:block!important}body.print-decision-memo .decision-studio .card{box-shadow:none;border:0}}

/* Isolated experimental AI-lab presentation, retaining the existing design. */
.ai-panel,.ai-readiness{background:var(--surface,#fff);border:1px solid #dce6ef;border-radius:17px;padding:24px;margin:24px 0;box-shadow:0 8px 30px rgba(15,43,72,.04)}
.ai-panel h2,.ai-readiness h2{font-size:20px;margin:0 0 15px}
.ai-panel label{display:block;font-size:13px;font-weight:650;margin:14px 0 8px}
.ai-panel textarea,.ai-panel select{background:white;width:100%;border:1px solid #becddd;border-radius:9px;padding:12px;color:#1d3554;max-width:100%}
.ai-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.ai-output{margin-top:16px;padding:17px;border:1px solid #d3dfed;border-radius:10px;background:#f7fafc;white-space:pre-wrap;overflow-wrap:anywhere}
.ai-output p{margin:9px 0}.ai-warning{font-weight:600;color:#864d1e}.ai-citation{padding:10px;background:#eaf2fa;border-radius:7px}
.ai-hint{font-size:13px;color:#60768d}
.ai-readiness li{margin:8px 0}
@media(max-width:580px){.ai-panel,.ai-readiness{padding:16px}.ai-fields{grid-template-columns:1fr}}

.ai-panel .primary-btn:disabled{opacity:.53;filter:grayscale(.35);box-shadow:none;cursor:not-allowed}
.ai-legacy-btn{display:block;margin-top:13px;border:0;background:transparent;color:#2b64bd;font-size:12px;font-weight:700;padding:7px 0;text-align:left}
.ai-legacy-btn:hover{text-decoration:underline}
/* Keep desktop and mobile sidebar content inside its own scrollable surface. */
.sidebar{overflow-y:auto;overscroll-behavior:contain}

/* Etapp 8: rector-first UX refresh. Completely local; preserves the existing logic. */
:root {
  --navy:#071d34;
  --navy2:#123453;
  --blue:#2566b5;
  --blue2:#3778c9;
  --ink:#172b43;
  --muted:#52657a;
  --line:#dce5ed;
  --bg:#f4f7fa;
  --gold:#d1a963;
  --radius:17px;
  --shadow:0 12px 34px rgba(17,43,69,.045);
}
html {scroll-padding-top:24px;}
body {font-size:14px; line-height:1.6; -webkit-font-smoothing:antialiased; background:var(--bg);}
:where(button,a,input,textarea,select,summary):focus-visible {outline:3px solid #3f85d7;outline-offset:3px;}
.skip-link {position:fixed;z-index:1000;top:-80px;left:16px;background:#fff;color:#123453;padding:12px 18px;font-weight:750;border-radius:0 0 12px 12px;border:2px solid #2271c4;box-shadow:0 8px 28px #071d3440;}
.skip-link:focus {top:0;}
.sidebar {width:262px; background:linear-gradient(160deg,#0a2138 0%,#06192d 65%,#0b2b46 100%); scrollbar-color:#32516b transparent;}
.brand-area {padding:28px 22px 22px;}
.brand-logo-frame {max-width:205px;min-height:70px;border-radius:13px;padding:10px;background:#f8fbff;box-shadow:0 10px 24px #00000015;}
.brand-subtitle {color:#a9cff0;font-size:11px;font-weight:800;letter-spacing:.28em;margin-top:2px;}
.sidebar-intro {color:#a8bdcf;font-size:12px;margin:20px 0 0;line-height:1.65;}
.main-nav {padding:22px 12px;gap:3px;}
.nav-caption {font-size:10px;letter-spacing:.14em;color:#82a9c9;margin:6px 12px 9px;font-weight:800;}
.nav-caption-second {margin-top:22px;}
.nav-item {min-height:46px;padding:10px 12px;border-radius:11px;font-size:13px;font-weight:600;gap:12px;color:#c1d2e3;line-height:1.3;}
.nav-item:hover {background:#1a3a57;color:#fff;}
.nav-item.active {background:#21476b;box-shadow:inset 3px 0 #6abaf0,0 6px 14px #00000018;color:white;}
.nav-ico {font-size:18px;color:#a6c8e7;width:21px;}
.side-bottom {padding:16px 20px 21px;background:#06192d6b;}
.prototype-tag {font-size:10px;flex-wrap:wrap;}
.prototype-tag>span:last-child{color:#c1d4e7;}
.side-bottom p {color:#adbed0;margin:12px 0 14px;font-size:11px;}
.side-bottom-line {color:#819aae;}
.main-shell {background:var(--bg);}
.topbar {height:70px;padding:0 clamp(24px,3.5vw,56px);position:relative;z-index:2;border-bottom:1px solid #e1e9f0;}
.topbar-left,.topbar-right{gap:14px;}
.breadcrumb {color:#5d7187;font-size:12px;}
.breadcrumb strong {color:#163b61;font-weight:750;}
.status-pill {color:#526a83;background:#edf4f9;border-color:#dae7f2;font-size:11px;font-weight:750;letter-spacing:.025em;padding:7px 12px;}
.status-dot{background:#e6a953;box-shadow:0 0 0 3px #e6a95326;}
.topbar-status-link{border:1px solid #d5e2ef;border-radius:10px;background:white;color:#235a92;font-size:12px;font-weight:760;padding:9px 13px;min-height:40px;white-space:nowrap;}
.topbar-status-link:hover{background:#eaf3fc;border-color:#b7d0eb;}
main {max-width:1490px;padding:38px clamp(24px,3.5vw,56px) 62px;}
.welcome-hero{background:radial-gradient(circle at 88% -30%,#2b6f9b 0%,transparent 31%),linear-gradient(120deg,#0c2947 0%,#0b3353 56%,#124365 100%);border:1px solid #0b3855;border-radius:22px;padding:32px 39px 0;position:relative;overflow:hidden;color:#f8fbff;box-shadow:0 17px 38px rgba(11,45,73,.115);}
.welcome-hero::after{content:'';position:absolute;right:-68px;top:-106px;width:340px;height:340px;border-radius:50%;border:1px solid rgba(255,255,255,.095);box-shadow:0 0 0 45px rgba(255,255,255,.019),0 0 0 97px rgba(255,255,255,.012);pointer-events:none;}
.welcome-hero .page-overline {color:#a8cfe7;margin:0 0 20px;font-weight:850;letter-spacing:.16em;}
.welcome-hero .page-overline-line {background:#83c8e6;width:19px;}
.welcome-hero .hero-grid h1 {font-size:clamp(33px,3.2vw,49px);line-height:1.13;letter-spacing:-1.75px;font-weight:770;color:#fff;}
.welcome-hero .hero-grid h1 span {color:#92d3f5;}
.welcome-hero .hero-copy {color:#c4d9e8;font-size:15px;line-height:1.68;max-width:650px;margin:15px 0 26px;}
.welcome-hero .hero-mark{width:92px;height:92px;border-radius:25px;background:#cfe9fa1c;border:1px solid #c4eaff44;transform:rotate(-11deg);margin:0 5px 0 0;position:relative;z-index:1;}
.welcome-hero .hero-mark-in {width:66px;height:66px;border-radius:19px;border:1.6px solid #aad7f0aa;color:#d1ecfb;font-size:43px;}
.welcome-hero .hero-dot {color:#e6c48e;font-size:19px;right:12px;bottom:-5px;}
.hero-points{display:flex;gap:0;border-top:1px solid #ffffff26;color:#a9d1e7;font-size:11px;font-weight:720;letter-spacing:.03em;}
.hero-points span{padding:14px 28px 14px 0;white-space:nowrap;}
.hero-points span+span{padding-left:25px;border-left:1px solid #ffffff22;}
.prototype-warning {background:#fff9ec;border:1px solid #e9d9b8;color:#715628;border-radius:13px;margin:20px 0 19px;padding:15px 18px;font-size:12px;line-height:1.72;box-shadow:none;}
.prototype-warning strong {font-size:13px;color:#59411e;font-weight:800;}
.warning-icon {width:23px;height:23px;color:#865c1c;border-color:#bb8f47;}
.quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 21px;}
.quick-action {width:100%;background:#fff;text-align:left;border:1px solid #e0e7f0;border-radius:15px;display:flex;align-items:center;gap:12px;padding:17px 16px;min-height:87px;box-shadow:var(--shadow);color:#213b55;transition:border-color .16s,transform .16s,box-shadow .16s;}
.quick-action:hover{border-color:#a6c3e5;box-shadow:0 16px 28px #184b7717;transform:translateY(-2px);}
.quick-action>span:nth-child(2){display:flex;flex-direction:column;gap:3px;min-width:0;flex:1;}
.quick-action strong {font-size:13px;font-weight:800;line-height:1.35;}
.quick-action small{font-size:11px;color:#61748a;line-height:1.45;}
.quick-action>span:last-child{color:#2370bd;font-size:18px;align-self:flex-start;}
.quick-symbol{width:42px;height:42px;display:grid;place-items:center;background:#edf5fb;border:1px solid #dceaf5;color:#2b6caa;border-radius:12px;font-size:19px;flex:none;}
.workspace-grid{grid-template-columns:minmax(0,1.62fr) minmax(264px,.90fr);gap:19px;align-items:start;}
.work-col,.insight-col{min-width:0;}
.ask-card {padding:26px 27px 21px;border-radius:17px;box-shadow:0 14px 38px #0e38590a;border:1px solid #e0e7ef;}
.ask-head{margin-bottom:18px;gap:13px;}
.ask-icon{background:#e9f4fb;border-color:#d9eafb;color:#1c6fab;width:42px;height:42px;border-radius:13px;}
.ask-head h2{font-size:20px;color:#142d48;letter-spacing:-.5px;}
.ask-head p{font-size:12px;color:#596f85;margin-top:3px;line-height:1.6;}
.question-suggestions{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:3px 0 21px;}
.example-caption{font-size:10px;letter-spacing:.1em;color:#687d93;font-weight:780;margin-right:3px;}
.example-chip{display:inline-flex;gap:7px;align-items:center;min-height:36px;padding:7px 11px;border:1px solid #d4e4f0;background:#f4f9fd;color:#285b87;border-radius:9px;font-size:11px;font-weight:750;line-height:1.3;}
.example-chip:hover{background:#e7f3fc;border-color:#99c1e1;}
.example-chip span{color:#5392c9;}
.field-label{font-size:12px;color:#344e69;margin-bottom:9px;}
#question{min-height:117px;font-size:14px;background:#fcfdff;border:1px solid #cddce9;border-radius:11px;padding:14px 15px;line-height:1.65;}
#question::placeholder{color:#72869a;opacity:1;}
#question:focus {outline:3px solid #b7d6f3;outline-offset:1px;border-color:#2a7cc0;box-shadow:none;}
.form-toolbar {gap:11px;margin-top:17px;flex-wrap:wrap;}
.school-choice{gap:7px;color:#4e657e;font-size:11px;}
.school-choice select{background-color:#f9fbfe;min-width:138px;min-height:44px;font-size:13px;color:#244460;border-color:#d6e2ee;border-radius:9px;}
.primary-btn{min-height:46px;font-size:13px;font-weight:790;border-radius:10px;box-shadow:0 5px 14px #164a8924;background:linear-gradient(120deg,#286cb9,#1e5a9c);padding:12px 16px;}
.primary-btn:hover {filter:brightness(1.045);}
.question-actions {font-size:11px;color:#526981;margin-top:13px;}
.link-button{color:#2665a2;font-size:12px;min-height:30px;}
.privacy-hint{font-size:11px;color:#617388;border-top:1px solid #edf1f5;padding-top:14px;margin-top:13px;line-height:1.65;}
.insight-card{padding:27px;border-radius:18px;background:linear-gradient(160deg,#0d2d4a,#09253e 72%);border:1px solid #0f3956;box-shadow:0 16px 32px #0e38540d;}
.insight-eyebrow{color:#9ccbea;font-size:10px;letter-spacing:.13em;}
.insight-card h2{font-size:26px;line-height:1.15;letter-spacing:-.9px;margin:17px 0 13px;}
.insight-card>p{color:#bacfe0;font-size:13px;line-height:1.7;margin-bottom:20px;}
.method-list{margin-top:16px;}
.method-list li{padding:13px 0;}
.method-list strong{font-size:13px;}
.method-list small{font-size:11px;color:#adc1d5;}
.library-mini{border:1px solid #e0e8f0;background:#fff;border-radius:16px;padding:24px;box-shadow:var(--shadow);}
.library-mini strong{font-size:18px;color:#132d46;}
.library-mini p{font-size:12px;line-height:1.7;color:#5a6d83;}
.library-mini-head{font-size:10px;}
.text-link{color:#1f62a0;min-height:34px;padding:5px 0;text-align:left;}
.library-status-inline{display:block;margin-top:4px;border-top:1px solid #e7eef4;padding-top:10px;}
.studio-shortcut{background:#edf6fd;border:1px solid #d2e6f4;border-radius:14px;margin:17px 0 21px;padding:18px 20px;}
.studio-shortcut strong{font-size:13px;color:#204d78;}
.studio-shortcut p{font-size:12px;color:#5c738b;}
.studio-shortcut-btn{min-height:42px;border-radius:9px;background:#2568ac;padding:11px 15px;font-size:12px;}
.suggestions{margin-top:34px;}
.section-heading h2{font-size:19px;}
.prompt-grid{gap:12px;}
.prompt-card{border:1px solid #e2e9ef;border-radius:13px;min-height:155px;box-shadow:none;transition:box-shadow .15s,border-color .15s;}
.prompt-card:hover{border-color:#a9cae6;box-shadow:0 10px 25px #19548a10;}
.prompt-card strong{font-size:13px;line-height:1.5;}
.prompt-bottom{font-size:11px;}
.result-card {border-radius:16px;border-color:#dce7f1;box-shadow:0 14px 34px #1240670c;}
.result-heading{font-size:18px;}
.result-caption{font-size:11px;}
.result-section h3{font-size:12px;letter-spacing:.055em;line-height:1.5;}
.result-section p,.result-section li{font-size:13px;line-height:1.8;color:#374f68;}
.result-footnote{font-size:11px;color:#536982;line-height:1.6;}
.scope-alert{font-size:12px;line-height:1.72;}
.empty-note h3{font-size:17px;}
.empty-note p{font-size:13px;}
.inner-title{font-size:clamp(29px,3.2vw,43px);letter-spacing:-1.3px;color:#172e47;}
.inner-intro {font-size:15px;color:#536b83;line-height:1.78;}
.section-tip {font-size:12px;line-height:1.75;color:#385c80;border-radius:12px;}
.filter-input{font-size:14px;min-height:50px;border-radius:10px;}
.concept-card,.source-card,.lead-card,.about-card{padding:24px;border-color:#dfe7ef;box-shadow:var(--shadow);}
.concept-card h2,.source-card h2,.lead-card h2,.about-card h2{font-size:18px;}
.concept-card p,.source-card p,.lead-card p,.about-card p{font-size:13px;}
.inline-view-link {border:0;background:transparent;color:#175e9b;font-weight:800;font-size:12px;text-decoration:underline;text-underline-offset:3px;margin-left:4px;padding:5px;}
/* Transparent and genuinely actionable corpus dashboard. */
.library-overview{max-width:1120px;}
.library-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0 18px;}
.library-stat {padding:24px 23px;background:#fff;border:1px solid #dce7ef;border-radius:17px;min-height:165px;box-shadow:var(--shadow);display:flex;flex-direction:column;}
.library-stat .stat-number {font-size:46px;line-height:1;letter-spacing:-2.2px;font-weight:780;color:#164e7f;font-variant-numeric:tabular-nums;margin-bottom:14px;}
.library-stat strong{font-size:14px;color:#1b344d;font-weight:800;}
.library-stat small{font-size:12px;line-height:1.6;color:#5d7187;margin-top:5px;}
.library-stat:last-child {background:#f9fafc;}
.library-stat:last-child .stat-number{color:#9f6122;}
.library-caution{display:flex;gap:13px;align-items:flex-start;background:#fff8eb;border:1px solid #ead7b4;color:#6d502b;border-radius:14px;padding:20px 23px;}
.library-caution-icon{display:grid;place-items:center;border:1.5px solid #bc8f4f;color:#80581d;border-radius:50%;height:24px;width:24px;flex:none;font-weight:800;}
.library-caution strong{font-size:14px;color:#5a4326;}
.library-caution p{font-size:13px;line-height:1.75;margin:5px 0 0;}
.library-section-header{margin:34px 0 18px;}
.library-section-header h2,.library-how h2{font-size:22px;letter-spacing:-.55px;margin:0 0 6px;}
.library-section-header p{font-size:12px;color:#5e7287;line-height:1.65;margin:0;}
.library-section-header code{padding:2px 5px;border-radius:4px;background:#e9eff6;color:#31526f;}
.library-resource-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.library-resource{text-decoration:none;background:#fff;border:1px solid #dfe8f0;border-radius:17px;padding:23px 21px;display:flex;flex-direction:column;gap:11px;min-height:276px;box-shadow:var(--shadow);transition:border-color .16s,box-shadow .16s,transform .16s;}
.library-resource:hover {border-color:#9dc2e1;box-shadow:0 16px 30px #17558b16;transform:translateY(-2px);}
.library-resource-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:#e9f4fc;color:#2366a3;font-size:20px;}
.library-resource-kind{font-size:10px;letter-spacing:.1em;color:#587ea3;font-weight:800;margin-top:2px;}
.library-resource strong{font-size:17px;color:#203850;font-weight:800;line-height:1.3;}
.library-resource>span:not(.library-resource-icon,.library-resource-kind,.library-resource-link){font-size:12px;color:#5b7086;line-height:1.7;flex:1;}
.library-resource-link{font-size:12px;font-weight:800;color:#216baa;margin-top:auto;}
.library-how{margin-top:30px;background:#ecf4f9;border:1px solid #d7e7f0;border-radius:18px;padding:25px 27px;}
.library-how ol{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0 0;padding:0;counter-reset:library-steps;}
.library-how li{counter-increment:library-steps;border-left:2px solid #bad3e5;padding:3px 12px 4px 14px;}
.library-how li::before{content:counter(library-steps,decimal-leading-zero);font-size:11px;font-weight:850;color:#3c77a5;display:block;letter-spacing:.09em;margin-bottom:7px;}
.library-how li strong{font-size:13px;color:#1a3651;display:block;}
.library-how li span{font-size:12px;line-height:1.7;color:#587087;display:block;margin-top:5px;}
.footer{color:#60758a;gap:12px;}
@media(max-width:1260px){
 .quick-actions{gap:9px;}
 .quick-action{padding:13px 11px;gap:9px;}
 .quick-symbol{width:38px;height:38px;}
 .quick-action strong{font-size:12px;}
 .welcome-hero{padding:28px 29px 0;}
 .workspace-grid{grid-template-columns:minmax(0,1.3fr) minmax(240px,.8fr);gap:15px;}
}
@media(max-width:1050px){
 .sidebar{width:224px;}
 .brand-area{padding:26px 16px 20px;}
 .main-nav{padding:17px 9px;}
 .side-bottom{padding:15px 15px 20px;}
 .workspace-grid{grid-template-columns:1fr;}
 .insight-col{display:grid;grid-template-columns:1.1fr 1fr;gap:14px;}
 .insight-card{padding:23px;min-height:unset;}
 .library-mini{margin:0;padding:22px;}
 .quick-actions{grid-template-columns:1fr 1fr;}
 .quick-action:last-child{grid-column:1/-1;}
 .library-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:740px){
 body.sidebar-open{overflow:hidden;}
 .sidebar{width:min(300px,87vw);visibility:hidden;transform:translateX(-102%);box-shadow:18px 0 35px #071b3060;}
 body.sidebar-open .sidebar{visibility:visible;transform:translateX(0);}
 .menu-button{display:inline-flex;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;border:1px solid #dae6ef;border-radius:11px;background:#f4f8fb;color:#143f62;}
 .topbar{padding:0 18px;height:66px;}
 .topbar-status-link{display:none;}
 .status-pill{font-size:10px;width:auto;height:auto;padding:6px 10px;}
 .welcome-hero{padding:27px 23px 0;border-radius:19px;}
 .welcome-hero .hero-grid h1{font-size:clamp(31px,7vw,39px);letter-spacing:-1.25px;}
 .welcome-hero .hero-copy{font-size:13px;line-height:1.7;margin:14px 0 22px;}
 .welcome-hero .hero-mark{display:none;}
 .hero-points{flex-wrap:wrap;padding:10px 0;gap:4px 11px;}
 .hero-points span,.hero-points span+span{border:0;padding:3px 0;font-size:10px;}
 .hero-points span+span::before{content:'·';margin-right:10px;color:#71b4d8;}
 .prototype-warning{font-size:12px;line-height:1.65;margin:16px 0;padding:15px;}
 .quick-actions{grid-template-columns:1fr;gap:9px;margin-bottom:17px;}
 .quick-action{min-height:70px;padding:12px 15px;}
 .quick-action:last-child{grid-column:auto;}
 .workspace-grid{gap:15px;}
 .ask-card{padding:21px 19px 15px;}
 #question{font-size:16px;min-height:112px;}
 .insight-col{display:grid;grid-template-columns:1fr;}
 .library-stats{grid-template-columns:1fr;gap:10px;}
 .library-stat{min-height:unset;padding:18px 20px;}
 .library-stat .stat-number{font-size:35px;margin-bottom:7px;}
 .library-resource-grid{grid-template-columns:1fr;}
 .library-resource{min-height:unset;}
 .library-how ol{grid-template-columns:1fr;gap:17px;}
 .library-how{padding:22px 20px;}
 .footer{font-size:10px;}
}
@media(max-width:420px){
 main{padding:21px 14px 43px;}
 .topbar{padding:0 13px;}
 .breadcrumb{font-size:11px;}
 .status-pill{display:none;}
 .question-suggestions{gap:6px;}
 .example-caption{flex-basis:100%;margin-bottom:2px;}
 .example-chip{font-size:11px;}
 .school-choice{flex:1 1 45%;}
 .school-choice select{width:100%;min-width:0;}
 .form-toolbar{display:grid;grid-template-columns:1fr 1fr;}
 .form-toolbar .primary-btn{grid-column:1/-1;width:100%;margin:0;}
 .welcome-hero{padding:25px 18px 0;}
 .hero-points span+span::before{margin-right:6px;}
}
@media(prefers-reduced-motion:reduce){.quick-action,.library-resource{transition:none!important;transform:none!important;}}
@media print{
 .quick-actions,.welcome-hero,.library-overview,.topbar-status-link,.question-suggestions{display:none!important;}
 .result-section p,.result-section li{color:#111!important;}
}

/* Compact mobile question discovery, with progressive disclosure. */
.show-more-examples{display:none;min-height:44px;width:100%;margin-top:12px;border:1px solid #c9deec;background:#edf5fb;border-radius:10px;color:#245e90;font-weight:800;font-size:12px;padding:11px 14px;}
.show-more-examples span{margin-left:7px;}
@media(max-width:740px){
 .prompt-grid:not(.examples-expanded) .prompt-card:nth-child(n+4){display:none!important;}
 .show-more-examples{display:block;}
}

/* Browsable concepts without a 21-card wall. */
.principle-categories{display:flex;flex-wrap:wrap;gap:9px;margin:-7px 0 22px;}
.category-filter{min-height:41px;padding:10px 15px;border-radius:100px;border:1px solid #cbdce9;background:#fff;color:#345d83;font-size:12px;font-weight:760;line-height:1.2;}
.category-filter:hover{border-color:#85b1d6;background:#ecf5fc;}
.category-filter[aria-pressed="true"]{color:#fff;border-color:#2469ab;background:#2469ab;box-shadow:0 3px 10px #174b7c18;}
@media(max-width:740px){.principle-categories{gap:7px}.category-filter{padding:9px 12px;min-height:40px;font-size:11px;}}

/* Mobile drawer has its own reachable close control and contains keyboard focus. */
.sidebar-close{display:none;}
@media(max-width:740px){
 .brand-area{position:relative;padding-right:56px;}
 .sidebar-close{position:absolute;top:17px;right:12px;display:grid;place-items:center;width:42px;height:42px;border-radius:11px;border:1px solid #52728b;background:#214360;color:#fff;font-size:26px;line-height:1;}
 .sidebar-close:hover{background:#2b5679;}
}

.library-resource-static{cursor:default;}
.library-resource-static:hover{border-color:#dfe8f0;box-shadow:var(--shadow);transform:none;}
/* Legibility pass: all small informational text must remain readable on white. */
.view:not(#view-fraga) .page-overline{color:#77541e;}
.view:not(#view-fraga) .page-overline-line{background:#a97734;}
.section-heading span{color:#506982;font-size:10px;letter-spacing:.085em;}
.prompt-bottom{color:#506982;font-size:11px;}
.library-mini-head{color:#506982;}
.tiny-meta{color:#526a82;font-size:11px;line-height:1.65;}
.footer{color:#506881;font-size:10px;line-height:1.65;}
#question::placeholder{color:#5c7085;}
.example-caption{color:#526b83;}

/* A conservative refusal must not become a dead end. */
.empty-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px;}
.empty-action{min-height:43px;border:1px solid #b8d3e8;background:#235f9b;color:#fff;border-radius:9px;padding:10px 13px;font-size:12px;font-weight:800;}
.empty-action:hover{background:#1e5185;}
.empty-action.secondary{color:#275d8e;background:white;border-color:#c9d9e6;}
.empty-action.secondary:hover{background:#f2f7fc;}

/* Mobile ergonomics: important secondary actions need finger-sized tap areas. */
@media(max-width:740px){
 .example-chip{min-height:44px;display:inline-flex;align-items:center;padding:10px 12px;}
 .text-link{min-height:44px;display:inline-flex;align-items:center;}
 .link-button{min-height:44px;padding:9px 0;}
 .workflow-start{min-height:44px;display:inline-flex;align-items:center;}
 .category-filter{min-height:44px;}
}
