
:root{--bg:#f4f7fb;--surface:#fff;--surface2:#edf3f8;--surface3:#f9fbfd;--ink:#13233a;--muted:#506277;--border:#c9d5e2;--blue:#2f4f75;--blue2:#203b5d;--gold:#a88646;--gold2:#f3ead7;--green:#0b7a59;--green2:#dff4ec;--amber:#926000;--amber2:#fff0c7;--red:#a83e3e;--red2:#fde8e8;--violet:#6d55a8;--shadow:0 10px 30px rgba(34,56,85,.09);--radius:16px;--radius2:12px;--font:18px;--editor:18px}
[data-theme="dark"]{--bg:#0d1622;--surface:#151f2d;--surface2:#1c2a3a;--surface3:#101a27;--ink:#eef4fb;--muted:#bec9d8;--border:#34465d;--blue:#93b5dd;--blue2:#b9d3f0;--gold:#d9bd7a;--gold2:#352e22;--green:#72d7b0;--green2:#17382d;--amber:#f0c66b;--amber2:#3a301c;--red:#ff9898;--red2:#3b2225;--violet:#c3aeff;--shadow:0 12px 34px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{font-size:var(--font);scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:400 1rem/1.62 Inter,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}body.focus .studio-sidebar{display:none}body.focus .layout{grid-template-columns:1fr}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}code,kbd,.mono{font-family:'JetBrains Mono',monospace}.app-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}.header-inner{max-width:1720px;margin:auto;min-height:76px;padding:10px 24px;display:flex;align-items:center;gap:18px}.brand{display:flex;align-items:center;gap:12px;min-width:max-content;color:var(--ink)}.brand:hover{text-decoration:none}.mark{width:46px;height:46px;border-radius:13px;background:linear-gradient(135deg,#233b57,#a88646);display:grid;place-items:center;color:#fff;font:800 1.35rem ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.brand strong{font:800 1.2rem Outfit,Inter,"Segoe UI",sans-serif}.brand small{display:block;color:var(--muted);font-size:1rem}.global-project{margin-left:auto;display:flex;gap:10px;align-items:center}.global-project select{min-width:280px}.top-actions{display:flex;gap:8px}.iconbtn,.btn{border:1px solid var(--border);border-radius:10px;background:var(--surface);padding:10px 15px;font-weight:750;min-height:46px}.btn:hover,.iconbtn:hover{filter:brightness(.98);box-shadow:0 5px 14px rgba(34,56,85,.09)}.btn.primary{background:var(--blue2);color:#fff;border-color:var(--blue2)}.btn.gold{background:var(--gold);color:#fff;border-color:var(--gold)}.btn.soft{background:var(--surface2)}.btn.good{background:var(--green2);color:var(--green);border-color:color-mix(in srgb,var(--green) 28%,var(--border))}.btn.danger{background:var(--red2);color:var(--red);border-color:color-mix(in srgb,var(--red) 30%,var(--border))}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.layout{max-width:1720px;margin:auto;display:grid;grid-template-columns:270px minmax(0,1fr);min-height:calc(100vh - 77px)}.studio-sidebar{border-right:1px solid var(--border);padding:20px 14px;background:var(--surface);position:sticky;top:77px;height:calc(100vh - 77px);overflow:auto}.nav-group{margin-bottom:22px}.nav-label{font:800 1rem Outfit,Inter,"Segoe UI",sans-serif;color:var(--muted);margin:0 10px 8px}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 12px;margin:4px 0;border-radius:10px;color:var(--ink);font-weight:700}.nav-link:hover{background:var(--surface2);text-decoration:none}.nav-link.active{background:var(--gold2);color:var(--blue2);box-shadow:inset 3px 0 0 var(--gold)}.nav-ico{width:27px;text-align:center}.sidebar-footer{border-top:1px solid var(--border);padding:16px 10px 4px;color:var(--muted)}.page{min-width:0;padding:30px}.page-head{display:flex;gap:18px;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.page-head h1{font:850 clamp(2rem,4vw,3rem)/1.05 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin:6px 0 10px;letter-spacing:-.025em}.page-head p{margin:0;max-width:980px;color:var(--muted);font-size:1.05rem}.eyebrow{display:inline-flex;align-items:center;padding:5px 12px;background:var(--gold2);border:1px solid color-mix(in srgb,var(--gold) 35%,var(--border));border-radius:999px;color:var(--blue2);font-weight:800}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.card-head{padding:16px 19px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;gap:14px;align-items:center}.card-head h2,.card-head h3{margin:0;font:800 1.28rem ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.card-body{padding:19px}.card-body>:first-child{margin-top:0}.card-body>:last-child{margin-bottom:0}.feature{padding:22px}.feature h2,.feature h3{font:800 1.3rem ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin:0 0 8px}.feature p{color:var(--muted);margin:0}.feature .feature-icon{width:48px;height:48px;border-radius:13px;background:var(--surface2);display:grid;place-items:center;margin-bottom:14px;font-size:1.35rem}.feature:hover{transform:translateY(-2px);transition:.18s ease;box-shadow:0 16px 38px rgba(34,56,85,.14)}.section-title{font:800 1.32rem ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;margin:28px 0 12px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kpi{padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.kpi b{display:block;font:800 1.75rem ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.kpi span{color:var(--muted)}.kpi a{font-weight:700}.notice{padding:15px 17px;border:1px solid var(--border);border-left:4px solid var(--blue);background:var(--surface2);border-radius:11px}.notice.good{border-left-color:var(--green);background:var(--green2)}.notice.warn{border-left-color:var(--amber);background:var(--amber2)}.notice.bad{border-left-color:var(--red);background:var(--red2)}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:15px}.field label{font-weight:780}.field small,.muted{color:var(--muted);font-size:1rem}.input,select,input,textarea{width:100%;border:1.5px solid var(--border);border-radius:10px;background:var(--surface);padding:11px 13px;outline:none;min-height:46px}input:focus,textarea:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 14%,transparent)}textarea{resize:vertical}.editor{min-height:540px;font:500 var(--editor)/1.58 ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace;tab-size:4;white-space:pre;background:color-mix(in srgb,var(--surface) 97%,var(--blue) 3%)}.editor.short{min-height:320px}.toolbar{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:12px 0}.toolbar .spacer{flex:1}.statusbar{display:flex;flex-wrap:wrap;gap:14px;padding:10px 0;color:var(--muted);border-top:1px solid var(--border);margin-top:10px}.badge{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;padding:5px 10px;background:var(--surface2);font-weight:750}.badge.good{background:var(--green2);color:var(--green)}.badge.warn{background:var(--amber2);color:var(--amber)}.badge.gold{background:var(--gold2);color:var(--blue2)}.badge.bad{background:var(--red2);color:var(--red)}.list{display:flex;flex-direction:column;gap:10px}.list-item{padding:14px 15px;border:1px solid var(--border);border-radius:12px;background:var(--surface);display:flex;gap:12px;align-items:flex-start}.list-item.clickable{cursor:pointer}.list-item.active{border-color:var(--blue);background:var(--surface2)}.list-main{flex:1;min-width:0}.list-main strong{display:block}.list-main p{margin:4px 0;color:var(--muted)}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.row.between{justify-content:space-between}.split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:18px}.workspace{display:grid;grid-template-columns:270px minmax(0,1fr) 350px;gap:16px}.filetree{display:flex;flex-direction:column;gap:5px}.filebtn{width:100%;text-align:left;border:0;background:transparent;padding:9px 10px;border-radius:8px;min-height:44px}.filebtn:hover,.filebtn.active{background:var(--surface2)}.console{background:#0e1728;color:#eef4ff;border-radius:12px;min-height:160px;padding:15px;font:500 1rem/1.55 ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace;white-space:pre-wrap;overflow:auto}.preview{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:22px;min-height:500px;overflow:auto}.preview h1,.preview h2,.preview h3{font-family:Outfit,Inter,"Segoe UI",sans-serif}.preview p{max-width:78ch}.outline a{display:block;padding:6px 4px}.progress{height:12px;background:var(--surface2);border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--gold))}.checkline{display:flex;gap:10px;align-items:flex-start;padding:8px 0}.checkline input{width:auto;min-height:auto;margin-top:7px}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px}table{width:100%;border-collapse:collapse;background:var(--surface)}th,td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top;min-width:120px}th{background:var(--surface2);font-weight:800}.figure-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.figure-card img{width:100%;height:190px;object-fit:contain;background:#fff;border-bottom:1px solid var(--border)}.audio-item audio{width:100%;margin-top:9px}.canvas-wrap{position:relative;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fff}.canvas-wrap canvas{display:block;width:100%;height:650px;touch-action:none}.board-overlay{position:absolute;border:2px solid rgba(47,79,117,.35);background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.12);resize:both;overflow:auto;min-width:180px;min-height:120px}.board-overlay img{width:100%;height:100%;object-fit:contain}.board-overlay .overlay-bar{position:absolute;left:0;right:0;top:0;background:rgba(15,23,42,.78);color:#fff;padding:5px 8px;font-size:1rem;cursor:move;z-index:2}.board-overlay iframe{width:100%;height:100%;border:0}.discovery-type{font-weight:800;color:var(--gold)}.footer{max-width:1720px;margin:auto;padding:20px 30px 36px;color:var(--muted);border-top:1px solid var(--border)}.empty{padding:30px;text-align:center;color:var(--muted)}kbd{font:700 1rem ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace;border:1px solid var(--border);background:var(--surface2);padding:2px 6px;border-radius:6px}.tabs{display:flex;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--border);padding-bottom:10px;margin-bottom:14px}.tab{border:0;background:transparent;padding:9px 12px;border-radius:9px;font-weight:750}.tab.active{background:var(--gold2);color:var(--blue2)}.pill-group{display:flex;gap:8px;flex-wrap:wrap}.mini-card{border:1px solid var(--border);background:var(--surface3);border-radius:12px;padding:14px}.record-dot{width:11px;height:11px;border-radius:50%;background:var(--red);display:inline-block;animation:pulse 1.2s ease-in-out infinite}.timer{font:700 1.15rem ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace}.scientific-chain{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.scientific-chain .node{border:1px solid var(--border);background:var(--surface2);padding:8px 10px;border-radius:9px}.scientific-chain .arrow{color:var(--muted)}.health-list{display:grid;gap:8px}.health-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border)}.health-row:last-child{border-bottom:0}.source-chip{display:inline-flex;gap:6px;align-items:center;padding:5px 9px;border-radius:999px;background:var(--surface2);border:1px solid var(--border)}
.tera-dialog{width:min(760px,calc(100vw - 32px));max-height:90vh;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--ink);padding:0;box-shadow:0 30px 80px rgba(0,0,0,.24)}.tera-dialog.wide{width:min(1120px,calc(100vw - 32px))}.tera-dialog::backdrop{background:rgba(12,22,35,.55);backdrop-filter:blur(3px)}.dialog-head,.dialog-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 19px;border-bottom:1px solid var(--border)}.dialog-head h2{margin:0;font:800 1.35rem ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.dialog-body{padding:19px;max-height:68vh;overflow:auto}.dialog-actions{border-top:1px solid var(--border);border-bottom:0;justify-content:flex-end}.toast-host{position:fixed;right:22px;bottom:22px;z-index:9999;display:grid;gap:10px}.toast{opacity:0;transform:translateY(8px);transition:.2s;padding:13px 16px;border-radius:11px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);max-width:460px}.toast.show{opacity:1;transform:none}.toast.good{border-left:4px solid var(--green)}.toast.bad{border-left:4px solid var(--red)}.toast.warn{border-left:4px solid var(--amber)}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.4}}
@media(max-width:1200px){.workspace{grid-template-columns:230px 1fr}.workspace>.studio-context{grid-column:1/-1}.grid.four{grid-template-columns:repeat(2,1fr)}.grid.three{grid-template-columns:repeat(2,1fr)}}
@media(max-width:920px){.layout{grid-template-columns:1fr}.studio-sidebar{display:none}.global-project{display:none}.page{padding:20px 16px}.grid.two,.grid.three,.grid.four,.split,.workspace,.kpis{grid-template-columns:1fr}.page-head{flex-direction:column}.header-inner{padding:8px 12px}.brand small{display:none}.canvas-wrap canvas{height:500px}.top-actions .focus-btn{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* v5.3 privacy/verification additions */
.privacy-chip{display:inline-flex;align-items:center;min-height:40px;padding:7px 11px;border:1px solid var(--border);border-radius:999px;background:var(--green2);color:var(--green);font-weight:800;text-decoration:none}.privacy-chip:hover{border-color:var(--green)}.save-bad{color:var(--red);font-weight:800}.nav-ico{font-size:1rem;font-weight:850;letter-spacing:-.03em}.health-blocker{border-left:4px solid var(--red)}.health-warn{border-left:4px solid var(--amber)}.health-good{border-left:4px solid var(--green)}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace}.privacy-meter{height:12px;border-radius:999px;background:var(--surface2);overflow:hidden}.privacy-meter>span{display:block;height:100%;background:var(--blue)}.kv{display:grid;grid-template-columns:minmax(130px,.38fr) 1fr;gap:8px 14px;padding:8px 0;border-bottom:1px solid var(--border)}.kv:last-child{border-bottom:0}.experiment-card{border-left:4px solid var(--blue)}.experiment-card.completed{border-left-color:var(--green)}.experiment-card.invalidated{border-left-color:var(--red)}.tag{display:inline-flex;border:1px solid var(--border);border-radius:8px;padding:3px 8px;background:var(--surface2);font-size:1rem}.code-note{padding:10px 12px;border-radius:10px;background:#0e1728;color:#eef4ff;font-family:ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace;white-space:pre-wrap;overflow:auto}.network-log{max-height:520px;overflow:auto}.danger-zone{border-color:color-mix(in srgb,var(--red) 35%,var(--border))}.local-badge{background:var(--green2);color:var(--green);border:1px solid color-mix(in srgb,var(--green) 25%,var(--border));border-radius:999px;padding:5px 9px;font-weight:800}

/* canonical TERA Coding Space + elastic research workspaces */
.app-header.tera-canonical{position:sticky;top:0;background:var(--surface);border-bottom:1px solid var(--border);backdrop-filter:none}.brand-strip{max-width:1720px;margin:auto;min-height:102px;display:grid;grid-template-columns:minmax(310px,.9fr) minmax(480px,1.25fr) minmax(330px,.85fr);border-bottom:2px solid var(--gold);background:linear-gradient(90deg,color-mix(in srgb,var(--surface) 97%,var(--gold) 3%),color-mix(in srgb,var(--gold2) 64%,var(--surface)));color:var(--ink)}[data-theme="dark"] .brand-strip{background:linear-gradient(90deg,#151f2d,#2b2419)}.brand-block{display:flex;align-items:center;gap:14px;padding:13px 20px;color:var(--ink);border-right:1px solid color-mix(in srgb,var(--gold) 42%,var(--border));text-decoration:none}.brand-block:hover{text-decoration:none}.brand-block small{display:block;font-weight:750;color:var(--muted);line-height:1.2}.brand-block strong{display:block;font:850 1.15rem/1.2 ui-sans-serif,system-ui,sans-serif;color:var(--blue2)}[data-theme="dark"] .brand-block strong{color:var(--gold)}.brand-block em{display:block;font-style:normal;color:var(--muted);font-size:1rem}.gamma-mark{width:54px;height:54px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;font:600 2.1rem Georgia,serif;color:var(--gold);background:color-mix(in srgb,var(--surface) 86%,var(--gold2))}.principles{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:10px 20px;border-right:1px solid color-mix(in srgb,var(--gold) 42%,var(--border))}.principles strong{font-size:1rem}.principles span{color:var(--gold);font-weight:800;letter-spacing:.03em;margin-top:4px}.proof-line{display:flex;flex-direction:column;justify-content:center;padding:10px 20px;gap:4px}.proof-line strong{font-family:Georgia,serif;font-style:italic;color:var(--blue2)}[data-theme="dark"] .proof-line strong{color:#f4e7c7}.proof-line span{font-size:1rem;font-weight:850;letter-spacing:.045em;color:var(--gold);text-transform:uppercase}.app-header .header-inner{min-height:58px;padding:7px 20px}.product-line{display:flex;gap:10px;align-items:center;white-space:nowrap}.product-line span{color:var(--muted)}.canonical-footer{max-width:1720px;margin:auto;display:grid;grid-template-columns:minmax(260px,.8fr) minmax(420px,1.35fr) minmax(260px,.7fr);gap:18px;align-items:center;padding:18px 26px;border-top:2px solid var(--gold);background:var(--surface);color:var(--muted)}.canonical-footer>div:first-child strong{color:var(--blue2)}[data-theme="dark"] .canonical-footer>div:first-child strong{color:var(--gold)}.footer-links{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;font-weight:700}.footer-meta{text-align:right}.save-state{grid-column:1/-1;border-top:1px solid var(--border);padding-top:8px;font-size:1rem}.elastic-workspace{display:flex;align-items:stretch;min-height:650px;height:calc(100vh - 275px);max-height:1100px;gap:0;min-width:0}.elastic-pane{min-width:0;overflow:hidden;display:flex;flex-direction:column}.elastic-pane>.card{height:100%;display:flex;flex-direction:column;border-radius:0;box-shadow:none}.elastic-pane:first-child>.card{border-radius:var(--radius) 0 0 var(--radius)}.elastic-pane:last-child>.card{border-radius:0 var(--radius) var(--radius) 0}.elastic-pane .card-body{flex:1;overflow:auto;min-height:0}.splitter{flex:0 0 10px;position:relative;cursor:col-resize;background:transparent;outline:none}.splitter::before{content:"";position:absolute;left:4px;top:0;bottom:0;width:2px;background:var(--border)}.splitter::after{content:"⋮";position:absolute;top:50%;left:0;transform:translateY(-50%);width:10px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:18px;line-height:34px;text-align:center}.splitter:hover::before,.splitter:focus::before{background:var(--gold);width:3px}.splitter:hover::after,.splitter:focus::after{border-color:var(--gold);color:var(--gold)}.workspace-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:-10px 0 16px}.pane-fill{height:100%;display:flex;flex-direction:column;min-height:0}.pane-fill>.scroll-fill{flex:1;overflow:auto;min-height:0}.sticky-bottom{margin-top:auto;padding-top:14px}.subtabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--border);padding:0 0 9px;margin-bottom:12px}.subtab{border:1px solid transparent;background:transparent;border-radius:8px;padding:7px 10px;font-weight:760}.subtab.active{background:var(--gold2);border-color:color-mix(in srgb,var(--gold) 35%,var(--border));color:var(--blue2)}.data-stage{display:flex;gap:6px;flex-wrap:wrap}.data-stage .node{padding:6px 9px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);font-weight:700}.data-stage .node.active{background:var(--gold2);border-color:var(--gold)}.dataset-raw{border-left:4px solid var(--blue)}.dataset-derived{border-left:4px solid var(--gold)}.quality-flag{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border)}.quality-flag:last-child{border-bottom:0}.quality-flag .level{font-weight:850}.quality-flag.good .level{color:var(--green)}.quality-flag.warn .level{color:var(--amber)}.quality-flag.bad .level{color:var(--red)}.chart-surface{border:1px solid var(--border);border-radius:12px;background:#fff;min-height:320px;padding:10px;overflow:auto}.chart-surface svg{width:100%;height:auto;display:block}.lineage-step{position:relative;padding:10px 12px 10px 30px;border-left:2px solid var(--border);margin-left:10px}.lineage-step::before{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:var(--gold);left:-6px;top:17px}.evidence-list{display:grid;gap:8px}.evidence-item{padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface3)}.current-section{border-left:4px solid var(--gold)}.figure-preview-stage{display:grid;place-items:center;background:#fff;border:1px solid var(--border);border-radius:12px;min-height:420px;overflow:auto}.figure-preview-stage img,.figure-preview-stage svg{max-width:100%;max-height:680px;object-fit:contain}.status-dot{width:10px;height:10px;border-radius:50%;display:inline-block;background:var(--muted)}.status-dot.good{background:var(--green)}.status-dot.warn{background:var(--amber)}.status-dot.bad{background:var(--red)}.section-meter{display:grid;grid-template-columns:minmax(170px,1fr) auto;gap:8px;padding:8px 0;border-bottom:1px solid var(--border)}.run-mode{display:flex;gap:6px}.run-mode .btn.active{background:var(--gold2);color:var(--blue2);border-color:var(--gold)}.graph-view{position:relative;min-height:420px;border:1px solid var(--border);border-radius:12px;background:var(--surface3);overflow:auto;padding:18px}.graph-node{display:inline-flex;margin:7px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);font-weight:750}.graph-edge{color:var(--muted);font-size:1rem;margin:3px 8px}.compact-pre{max-height:260px;overflow:auto}.publication-check{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--border)}
@media(max-width:1320px){.brand-strip{grid-template-columns:1fr 1.3fr}.proof-line{display:none}.global-project select{min-width:210px}.elastic-workspace{height:auto;min-height:620px}.canonical-footer{grid-template-columns:1fr 1fr}.canonical-footer .footer-links{grid-column:1/-1;order:3}.footer-meta{text-align:right}}
@media(max-width:920px){.brand-strip{display:none}.app-header .header-inner{min-height:64px}.product-line{display:none}.elastic-workspace{display:grid;height:auto;max-height:none;min-height:0;gap:16px}.elastic-pane{flex:auto!important;min-height:420px}.splitter{display:none}.elastic-pane>.card,.elastic-pane:first-child>.card,.elastic-pane:last-child>.card{border-radius:var(--radius);box-shadow:var(--shadow)}.canonical-footer{grid-template-columns:1fr}.footer-meta{text-align:left}.footer-links{justify-content:flex-start}.save-state{grid-column:1}.page{padding:18px 14px}}
.tera-canonical + .layout .studio-sidebar{top:160px;height:calc(100vh - 160px)}
@media(max-width:920px){.tera-canonical + .layout .studio-sidebar{top:64px;height:calc(100vh - 64px)}}
.workspace-toolbar .spacer{flex:1}

/* v5.6 elastic shell, explicit state controls, scientific surfaces */
:root{--sidebar-width:270px}
.brand-strip,.header-inner,.layout,.canonical-footer{max-width:none;width:100%}
.layout{grid-template-columns:var(--sidebar-width) 10px minmax(0,1fr);margin:0;min-height:calc(100vh - 160px);width:100%}
.studio-sidebar{grid-column:1;min-width:0;width:auto;padding:18px 12px;overflow-x:hidden}
.shell-splitter{grid-column:2;position:sticky;top:160px;height:calc(100vh - 160px);cursor:col-resize;z-index:14;background:transparent;outline:none}
.shell-splitter::before{content:"";position:absolute;left:4px;top:0;bottom:0;width:2px;background:var(--border)}
.shell-splitter::after{content:"⋮";position:absolute;left:0;top:50%;transform:translateY(-50%);width:10px;line-height:36px;text-align:center;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:18px}
.shell-splitter:hover::before,.shell-splitter:focus::before{background:var(--gold);width:3px}.shell-splitter:hover::after,.shell-splitter:focus::after{border-color:var(--gold);color:var(--gold)}
.page{grid-column:3;width:100%;max-width:none;min-width:0;padding:26px;overflow-x:hidden}
/* Focus mode must never remove the canonical TERA shell. Navigation and branding stay available. */
.sidebar-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 4px 8px}.sidebar-tools .nav-label{margin:0;min-width:0}.sidebar-collapse{border:1px solid var(--border);background:var(--surface2);color:var(--ink);border-radius:8px;min-width:34px;height:34px;font:800 18px/1 ui-sans-serif,system-ui;cursor:pointer}
.sidebar-collapsed .nav-text,.sidebar-collapsed .nav-section-label,.sidebar-collapsed .sidebar-footer .nav-text{display:none}.sidebar-collapsed .nav-link{justify-content:center;padding-inline:8px}.sidebar-collapsed .nav-ico{width:auto;font-size:18px}.sidebar-collapsed .plan-chip{display:none}.sidebar-collapsed .sidebar-tools .nav-label{display:none}.sidebar-collapsed .sidebar-tools{justify-content:center}.sidebar-collapsed .sidebar-footer{text-align:center;padding-inline:2px}
.segmented{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:10px;padding:3px;background:var(--surface2);min-height:46px}.seg-btn{min-height:38px;padding:6px 10px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-weight:800;cursor:pointer}.seg-btn.active{background:var(--gold2);color:var(--blue2);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gold) 55%,var(--border))}[data-theme="dark"] .seg-btn.active{color:#f4e7c7}
.top-actions{align-items:center;flex-wrap:wrap}.global-project{min-width:0}.global-project select{max-width:min(340px,28vw)}
.local-loading{min-height:320px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted);text-align:center}.local-loading strong{color:var(--ink)}

/* Research text minimums */
small,.field small,.muted,.save-state,.brand-block em,.proof-line span,.graph-edge,.tag{font-size:1rem}.brand-block small{font-size:1rem}.nav-ico{font-size:1rem}

/* Scientific outputs use controlled publication-readable surfaces independent of app theme. */
.scientific-surface,.chart-surface{background:#fff!important;color:#13233a!important;border:1px solid #c9d5e2;border-radius:12px}.scientific-surface h1,.scientific-surface h2,.scientific-surface h3,.chart-surface h1,.chart-surface h2,.chart-surface h3{color:#13233a!important}.scientific-surface .muted,.chart-surface .muted{color:#506277!important}.scientific-surface .table-wrap,.chart-surface .table-wrap{border-color:#c9d5e2!important}.scientific-surface table,.chart-surface table{background:#fff!important;color:#13233a!important}.scientific-surface th,.chart-surface th{background:#edf3f8!important;color:#13233a!important;border-color:#c9d5e2!important}.scientific-surface td,.chart-surface td{background:#fff!important;color:#13233a!important;border-color:#c9d5e2!important}.scientific-surface code,.chart-surface code{color:#13233a!important}.scientific-note{padding:12px 14px;background:#f7f9fc;color:#13233a;border:1px solid #c9d5e2;border-radius:10px}
.box-plot-svg,.corr-heatmap-svg{width:100%;height:auto;display:block}.chart-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:end}.chart-controls .field{margin-bottom:0}

/* Compact identity and action placement */
.compact-identity{min-width:0}.compact-identity h2{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(58vw,900px)}.compact-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:5px}.dataset-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.editor-actionbar{display:flex;gap:7px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.mode-strip{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.mode-group{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.mode-label{font-weight:800;color:var(--muted)}
.dataset-check{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:flex-start;padding:9px 0}.dataset-check input{width:auto;min-height:auto;margin-top:7px}.dataset-name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dataset-meta{display:block;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Project/experiment workspaces */
.form-grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.workspace-empty{min-height:260px;display:grid;place-items:center;align-content:center;gap:12px;text-align:center;color:var(--muted);padding:30px}.workspace-empty strong{color:var(--ink);font-size:1.15rem}.context-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--border);padding-bottom:9px;margin-bottom:12px}.context-tab{border:1px solid transparent;background:transparent;padding:7px 10px;border-radius:8px;font-weight:800;cursor:pointer}.context-tab.active{background:var(--gold2);border-color:color-mix(in srgb,var(--gold) 35%,var(--border));color:var(--blue2)}

/* Avoid detached/right-floating page actions and dead header space. */
.page-head{align-items:flex-start}.page-head>.row{align-self:center}.page-head.no-actions{margin-bottom:18px}

/* Flexible panes fill the usable viewport. */
.elastic-workspace{width:100%;min-width:0;max-width:none;height:clamp(650px,calc(100vh - 245px),1050px)}.elastic-pane{max-width:none}.elastic-pane .card-body{overflow:auto}.workspace-toolbar{width:100%}

@media(max-width:1320px){.global-project select{max-width:240px}.top-actions{gap:5px}.seg-btn{padding-inline:8px}.page{padding:22px}.form-grid-two{grid-template-columns:1fr}.elastic-workspace{height:clamp(620px,calc(100vh - 220px),980px)}}
@media(max-width:920px){.layout{display:grid;grid-template-columns:1fr}.studio-sidebar{grid-column:1;position:relative;top:auto;height:auto}.shell-splitter{display:none}.page{grid-column:1}.top-actions{width:100%}.global-project{margin-left:0;flex:1}.global-project select{max-width:none}.segmented{min-height:42px}.elastic-workspace{height:auto}.form-grid-two{grid-template-columns:1fr}}

/* v5.6 discovery and context refinements */
body[data-page="discovery"] .subtabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}
body[data-page="discovery"] .subtab{white-space:nowrap;flex:0 0 auto}
body[data-page="python"] .editor-actionbar{max-width:100%}
body[data-page="python"] .card-head{align-items:flex-start}
/* Minimum readable shell text: keep navigation and TERA principles at the 18 px baseline. */
.principles strong,.nav-ico{font-size:1rem}

/* v5.6 premium dark system, canonical TERA identity, publication canvas */
.tera-mark{width:54px;height:54px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;font:800 1.7rem Georgia,serif;color:var(--gold);background:color-mix(in srgb,var(--surface) 86%,var(--gold2))}.tera-wordmark{display:block;font:850 2rem/1 Georgia,serif;letter-spacing:.055em;color:var(--gold);margin-bottom:7px}.principles strong{font-weight:850}.proof-line span::first-letter{font-family:Georgia,serif}
[data-theme="dark"]{--action-primary:#dfc37a;--action-primary-ink:#17130b;--action-secondary:#1a2737;--action-secondary-hover:#213247;--action-disabled:#233044;--action-disabled-ink:#8290a3}
[data-theme="dark"] .btn.primary{background:var(--action-primary);color:var(--action-primary-ink);border-color:#e7cf91;box-shadow:0 6px 18px rgba(0,0,0,.18)}
[data-theme="dark"] .btn.gold{background:var(--action-primary);color:var(--action-primary-ink);border-color:#e7cf91}
[data-theme="dark"] .btn.soft,[data-theme="dark"] .iconbtn{background:var(--action-secondary);color:var(--ink);border-color:#3a4e68}
[data-theme="dark"] .btn.soft:hover,[data-theme="dark"] .iconbtn:hover{background:var(--action-secondary-hover);filter:none}
[data-theme="dark"] .btn:disabled,[data-theme="dark"] .btn.primary:disabled,[data-theme="dark"] .btn.gold:disabled{background:var(--action-disabled);color:var(--action-disabled-ink);border-color:#314058;opacity:1}
[data-theme="dark"] .notice.good{background:var(--surface2);color:var(--ink);border-left-color:var(--green)}
[data-theme="dark"] .notice.warn{background:color-mix(in srgb,var(--surface2) 88%,#6f5312 12%);color:var(--ink);border-left-color:var(--amber)}
[data-theme="dark"] .notice.bad{background:color-mix(in srgb,var(--surface2) 88%,#6b2428 12%);color:var(--ink);border-left-color:var(--red)}
[data-theme="dark"] .badge.good{background:color-mix(in srgb,var(--surface2) 82%,#0d5b43 18%);color:#79e1ba}
[data-theme="dark"] .badge.gold{background:#302a20;color:#efd48d}
[data-theme="dark"] .privacy-chip{background:color-mix(in srgb,var(--surface2) 82%,#0d5b43 18%);color:#79e1ba}
[data-theme="dark"] .subtab.active,[data-theme="dark"] .context-tab.active,[data-theme="dark"] .run-mode .btn.active{background:#352e22;color:#f4e7c7;border-color:#8e7542}
[data-theme="dark"] .nav-link.active{background:#352e22;color:#f4e7c7;box-shadow:inset 3px 0 0 var(--gold)}
[data-theme="dark"] select,[data-theme="dark"] input,[data-theme="dark"] textarea{color-scheme:dark}
[data-theme="dark"] ::-webkit-scrollbar{width:12px;height:12px}[data-theme="dark"] ::-webkit-scrollbar-track{background:#0f1825}[data-theme="dark"] ::-webkit-scrollbar-thumb{background:#46566d;border:3px solid #0f1825;border-radius:999px}[data-theme="dark"] ::-webkit-scrollbar-thumb:hover{background:#66758a}
html[data-theme="dark"]{scrollbar-color:#46566d #0f1825}

/* Publication/scientific artifacts do not invert with application chrome. */
.publication-surface,.paper-surface,.pdf-surface{background:#fff!important;color:#13233a!important;border:1px solid #c9d5e2!important}.publication-surface *,.paper-surface *,.pdf-surface *{color:inherit}.publication-surface a,.paper-surface a,.pdf-surface a{color:#264f7b!important}.publication-surface .muted,.paper-surface .muted,.pdf-surface .muted{color:#506277!important}

/* Cleaner KPI structure prevents bound labels/actions. */
.kpi{display:grid;grid-template-rows:auto auto auto;align-content:start;gap:5px}.kpi b{margin:0}.kpi span{display:block;line-height:1.35}.kpi a{display:inline-flex;margin-top:4px;align-self:start;width:max-content}

/* Compact utility hierarchy. */
.utility-menu{margin-left:auto}.quiet-status{color:var(--muted);font-weight:700}.workspace-toolbar.utility-row{margin-top:-4px}.page-head .header-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}

/* Avoid horizontal tab scrollers on compact research panes. */
.subtabs.fit-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(86px,1fr));overflow:visible}.subtabs.fit-tabs .subtab{min-width:0;white-space:normal;text-align:center}

/* Publication Canvas */
.pub-workspace{display:flex;min-height:700px;height:calc(100vh - 260px);gap:0}.pub-pane{min-width:0;overflow:hidden;display:flex;flex-direction:column}.pub-pane>.card{height:100%;display:flex;flex-direction:column;border-radius:0;box-shadow:none}.pub-pane:first-child>.card{border-radius:var(--radius) 0 0 var(--radius)}.pub-pane:last-child>.card{border-radius:0 var(--radius) var(--radius) 0}.pub-pane .card-body{flex:1;overflow:auto;min-height:0}.pub-canvas-stage{height:100%;min-height:620px;display:grid;place-items:center;overflow:auto;padding:24px;background:color-mix(in srgb,var(--surface3) 92%,#cbd5e1 8%)}.pub-canvas-shell{position:relative;background:#fff;box-shadow:0 18px 50px rgba(0,0,0,.22);transform-origin:center center}.pub-canvas-shell canvas{display:block;background:#fff;max-width:none}.pub-dimension{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1rem;color:var(--muted)}.pub-swatch{width:46px;height:46px;padding:3px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.pub-checks{display:grid;gap:8px}.pub-check{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface3)}.pub-check.good{border-left:4px solid var(--green)}.pub-check.warn{border-left:4px solid var(--amber)}.pub-check.bad{border-left:4px solid var(--red)}
@media(max-width:920px){.pub-workspace{display:grid;height:auto}.pub-pane{min-height:420px}.pub-canvas-stage{min-height:520px}}

.gamma-proof{display:inline-block;width:18px;height:27px;vertical-align:-6px;margin-right:5px;background:var(--gold);-webkit-mask:url('tera-gamma.png') center/contain no-repeat;mask:url('tera-gamma.png') center/contain no-repeat;flex:0 0 auto}

/* v5.7 local runtimes + Book Works */
.file-trigger{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center}.file-trigger input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.full{width:100%;justify-content:center}.text-good{color:var(--green);font-weight:800}.text-bad{color:var(--red);font-weight:800}.text-warn{color:var(--amber);font-weight:800}.math-source{white-space:pre-wrap;background:#f7f9fc;color:#13233a;border:1px solid #c9d5e2;border-radius:8px;padding:3px 6px}
.figure-result{border:1px solid var(--border);border-radius:12px;background:var(--surface3);padding:12px;margin-bottom:14px}.figure-result img{display:block;max-width:100%;max-height:520px;margin:0 auto 12px;background:#fff;border-radius:8px}
[data-theme="dark"] .file-trigger{background:var(--action-secondary);color:var(--ink);border-color:#3a4e68}

/* Book Studio */
.book-workspace{min-height:720px}.book-card{width:100%;display:flex;flex-direction:column;gap:4px;text-align:left;padding:13px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface3);color:var(--ink);margin-bottom:10px}.book-card:hover,.book-card.active{background:var(--surface2);border-color:var(--blue)}.book-card span,.book-card small,.book-card em{color:var(--muted);font-style:normal}.book-tree{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.book-chapter{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;text-align:left;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--ink);padding:8px 9px}.book-chapter:hover,.book-chapter.active{background:var(--surface2);border-color:var(--border)}.book-chapter span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--surface2);font-weight:800}.book-chapter small{color:var(--muted);white-space:nowrap}.completion-map{display:grid;gap:8px;margin-bottom:14px}.completion-row{display:grid;grid-template-columns:112px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface3)}.completion-state{display:inline-flex;justify-content:center;border-radius:999px;padding:3px 8px;font-weight:800;border:1px solid var(--border)}.completion-state.present,.completion-state.resolved{color:var(--green);background:color-mix(in srgb,var(--green2) 80%,transparent)}.completion-state.missing,.completion-state.needs-review{color:var(--amber);background:color-mix(in srgb,var(--amber2) 65%,transparent)}.continuity-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:9px}.continuity-grid .mini-card{display:flex;justify-content:space-between;align-items:center}.book-context-actions{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:1100px){.completion-row{grid-template-columns:1fr}.book-chapter{grid-template-columns:32px minmax(0,1fr)}.book-chapter small{grid-column:2}}

/* Publication Canvas v5.7 */
.layer-list{display:grid;gap:8px;margin-bottom:14px}.layer-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface3)}.layer-row input{width:auto;min-height:auto}.layer-row em{font-style:normal;color:var(--muted);font-size:1rem}.pub-canvas-stage{background:linear-gradient(45deg,color-mix(in srgb,var(--surface3) 94%,#fff 6%),color-mix(in srgb,var(--surface2) 94%,#000 6%));background-size:24px 24px}.pub-canvas-shell{outline:1px solid rgba(0,0,0,.15)}details{border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin-bottom:14px;background:var(--surface3)}details>summary{cursor:pointer;font-weight:800;margin-bottom:8px}.pub-checks+.notice{margin-top:12px}

/* Local runtime status is calm and explicit. */
.runtime-local{border-left:4px solid var(--green);background:var(--surface3)}
[data-theme="dark"] .runtime-local{background:#172432}

/* v5.7 premium dark hierarchy: no pale-blue action windows. */
[data-theme="dark"] .btn.primary,[data-theme="dark"] .btn.gold{background:#dfc37a!important;color:#17130b!important;border-color:#ead69f!important}
[data-theme="dark"] .btn.primary:hover,[data-theme="dark"] .btn.gold:hover{background:#ead38f!important;filter:none}
[data-theme="dark"] .btn.soft,[data-theme="dark"] .iconbtn{background:#1a2737!important;color:#eef4fb!important;border-color:#3a4e68!important}
[data-theme="dark"] .btn.danger{background:#342128!important;color:#ffb1b1!important;border-color:#70404a!important}
[data-theme="dark"] .btn:disabled{background:#233044!important;color:#8290a3!important;border-color:#314058!important}

/* Ensure publication/PDF artifacts stay paper-like even in dark chrome. */
[data-theme="dark"] .paper-surface,[data-theme="dark"] .pdf-surface,[data-theme="dark"] .publication-surface{background:#fff!important;color:#13233a!important}
[data-theme="dark"] .paper-surface *:not(.btn),[data-theme="dark"] .pdf-surface *:not(.btn),[data-theme="dark"] .publication-surface *:not(.btn){color:inherit}

/* v5.8 Trust + Completion */
.backend-state{font-size:1rem;opacity:.8;border:1px solid var(--line);border-radius:999px;padding:7px 10px;white-space:nowrap}.backend-state.bad{border-color:var(--bad);color:var(--bad)}
.backend-mismatch{position:sticky;top:0;z-index:9999;display:flex;gap:14px;align-items:center;padding:12px 18px;background:#5b2529;color:#fff;border-bottom:2px solid #ff8d94}.backend-mismatch span{font-size:1rem}
.nav-groups{display:flex;flex-direction:column;gap:4px}.nav-groups .nav-section-label{margin-top:10px;padding-top:8px;border-top:1px solid var(--line)}.nav-groups .nav-group:first-child .nav-section-label{margin-top:0;border-top:0}.sidebar-collapsed .nav-section-label{display:none}
.global-search-overlay{position:fixed;inset:0;z-index:10020;background:rgba(2,8,18,.72);backdrop-filter:blur(5px);display:flex;align-items:flex-start;justify-content:center;padding-top:9vh}.global-search-panel{width:min(820px,92vw);max-height:78vh;background:var(--panel);border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.42);overflow:hidden}.global-search-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}.global-search-input{width:calc(100% - 32px);margin:16px;font-size:1rem}.global-search-results{max-height:56vh;overflow:auto;padding:0 10px 14px}.search-result{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 12px;border-radius:10px;color:var(--text);text-decoration:none}.search-result:hover,.search-result:focus{background:var(--panel2)}.search-result span:first-child{display:grid;gap:3px}.search-result small{color:var(--muted)}

/* v5.9 Data Intelligence Workbench */
.data-journey{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel);font-weight:800}.data-journey b{color:var(--gold)}
.data-workspace{height:calc(100vh - 285px);min-height:620px}.dataset-library-tools{display:flex;gap:8px;margin-bottom:10px}.dataset-library-tools input{min-width:0;flex:1}.btn.compact{padding:7px 10px}
.workflow-groups{display:flex;gap:8px;flex-wrap:wrap;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}.workflow-group{display:flex;align-items:center;gap:7px;padding:4px 6px;border-right:1px solid var(--line)}.workflow-group:last-child{border-right:0}.workflow-label{font-size:1rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:900}.workflow-buttons{display:flex;gap:5px;flex-wrap:wrap}.workflow-buttons .node{padding:7px 10px;white-space:nowrap}
.data-main-pane{padding-top:12px}.context-tabs{margin-bottom:10px}.context-stack .kv,.wrap-anywhere{overflow-wrap:anywhere;word-break:break-word}.next-action{margin-top:10px}.next-action-btn{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;text-align:left;border:1px solid color-mix(in srgb,var(--gold) 55%,var(--line));background:color-mix(in srgb,var(--gold) 10%,var(--panel));border-radius:12px;padding:10px 14px;color:var(--text)}.next-action-btn span{color:var(--muted)}
.corr-selector{display:flex;gap:8px 14px;flex-wrap:wrap;max-height:140px;overflow:auto;padding:10px;border:1px solid var(--line);border-radius:10px;margin:8px 0 12px}.corr-selector label{display:flex;gap:6px;align-items:center}.correlation-surface{padding:16px;overflow:auto}.correlation-surface svg{min-width:580px;max-width:100%;height:auto}.recipe-pre,.report-preview{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;overflow-x:hidden}.pipeline-order{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pipeline-order span{padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2);font-weight:800}.pipeline-order b{color:var(--gold)}
.leakage-head{align-items:flex-start}.quality-flag.review{border-left-color:var(--gold)}.evidence-list{line-height:1.8}.missing-bar{display:grid;grid-template-columns:minmax(150px,220px) 1fr 70px;gap:10px;align-items:center;margin:9px 0}.dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;margin-top:14px}.dash-kpi,.dash-card{border:1px solid var(--line);border-radius:14px;padding:16px;background:var(--panel)}.dash-kpi span{display:block;font-size:1.8rem;font-weight:900;margin-top:5px}.dash-card{grid-column:span 2}.completion-list{display:grid;gap:8px}.completion-list>div{display:grid;grid-template-columns:16px 1fr auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.status-dot{width:10px;height:10px;border-radius:50%;background:var(--warn)}.status-dot.done{background:var(--good)}
@media(max-width:1250px){.workflow-group{border-right:0;width:100%}.dashboard-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}.data-workspace{height:auto;min-height:720px}}

.validation-strip{padding:8px 10px;border-top:1px solid var(--border);background:var(--surface3);min-height:38px}.fit-tabs{align-items:stretch}.fit-tabs .subtab{overflow-wrap:anywhere}.run-history .list-item{min-width:0}.math-preview{font-family:Georgia,'Times New Roman',serif;font-size:1.08em}.display-math{font-size:1.28em;text-align:center;padding:16px;margin:10px 0;background:#fff;color:#13233a;border-radius:8px}.frac{display:inline-flex;flex-direction:column;vertical-align:middle;text-align:center;line-height:1.05;margin:0 .12em}.frac>span:first-child{border-bottom:1px solid currentColor;padding:0 .15em}.frac>span:last-child{padding:0 .15em}
:root{--line:var(--border);--panel:var(--surface);--panel2:var(--surface2);--panel-2:var(--surface2);--text:var(--ink);--bad:var(--red);--good:var(--green);--warn:var(--amber)}

.data-workspace.data-focus>.elastic-pane:first-child,.data-workspace.data-focus>.elastic-pane:last-child,.data-workspace.data-focus>.splitter{display:none}.data-workspace.data-focus>.elastic-pane:nth-of-type(2){flex:1 1 100%!important}.data-journey .spacer{flex:1}.dash-viz{margin-top:10px;max-height:420px;overflow:auto}.dash-viz .scientific-surface,.dash-viz svg{max-height:390px}.subtabs.fit-tabs{grid-template-columns:repeat(auto-fit,minmax(105px,1fr))}.validation-strip .text-good{color:var(--green)}.validation-strip .text-bad{color:var(--red)}


/* v5.9.2 canonical shell restore: Focus may emphasize work, but it never removes navigation, branding, or footer. */
body.focus .brand-strip{display:grid}
body.focus .canonical-footer{display:grid}
body.focus .studio-sidebar{display:block}
body.focus .shell-splitter{display:block}
body.focus .layout{grid-template-columns:var(--sidebar-width) 10px minmax(0,1fr);min-height:calc(100vh - 160px)}
body.focus .page{grid-column:3}
body.focus .tera-canonical + .layout .studio-sidebar{top:160px;height:calc(100vh - 160px)}
body.focus .shell-splitter{top:160px;height:calc(100vh - 160px)}
.focus-btn.active{background:var(--gold2);color:var(--blue2);border-color:color-mix(in srgb,var(--gold) 55%,var(--border));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--gold) 35%,transparent)}
@media(max-width:920px){body.focus .brand-strip{display:none}body.focus .canonical-footer{display:grid}body.focus .studio-sidebar{display:block;position:relative;top:auto;height:auto}body.focus .shell-splitter{display:none}body.focus .layout{grid-template-columns:1fr}body.focus .page{grid-column:1}}

/* v5.10 canonical-shell lock */
.history-nav{display:flex;gap:5px;align-items:center}.history-btn{min-width:42px;padding-inline:10px;font-size:1.15rem}.history-btn:disabled{opacity:.38;cursor:not-allowed}.proof-line>span{display:flex;align-items:center}.subtabs.fit-tabs{display:flex!important;flex-wrap:wrap!important;gap:6px;overflow:visible!important}.subtabs.fit-tabs .subtab{flex:1 1 112px;min-width:96px;max-width:180px;white-space:nowrap!important;overflow-wrap:normal!important}.audio-provenance{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:10px 0}.audio-provenance .kv{display:block}.artifact-picker{min-width:0}


/* v5.11 identity + governance + strict theme surfaces */
html[data-theme="light"]{color-scheme:light}
html[data-theme="dark"]{color-scheme:dark}
html[data-theme="light"] .console{background:var(--surface3);color:var(--ink);border:1px solid var(--border)}
html[data-theme="dark"] .console{background:#0e1728;color:#eef4ff;border:1px solid #34465d}
html[data-theme="light"] .runtime-local,html[data-theme="light"] .compact-pre{background:var(--surface3);color:var(--ink)}
html[data-theme="dark"] .compact-pre{background:var(--surface3);color:var(--ink)}
.control-plane-link{white-space:nowrap}
.control-header{position:sticky;top:0;z-index:70;min-height:94px;padding:14px 24px;display:grid;grid-template-columns:minmax(300px,1fr) auto minmax(520px,1fr);align-items:center;gap:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--blue2) 96%,#07121f 4%),color-mix(in srgb,var(--blue) 84%,#061323 16%));color:#f7fbff;border-bottom:2px solid var(--gold)}
.control-brand{display:flex;gap:14px;align-items:center}.control-brand>div{display:grid}.control-brand small{font-weight:800;color:#d9e7f7}.control-brand strong{font:850 1.35rem ui-sans-serif,system-ui}.control-brand span:last-child{font-size:1rem;color:#d9e7f7}.control-wordmark{text-align:center;display:grid}.control-wordmark b{font:800 1.65rem Georgia,serif;color:#e8cf91}.control-wordmark span{font-size:1rem;color:#e7eef8}.control-header .top-actions{justify-content:flex-end;align-items:center;flex-wrap:wrap}.control-header .backend-state{color:#e7eef8}.control-header .segmented{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.28)}.control-header .seg-btn{color:#eef5ff}.control-header .seg-btn.active{background:#f3ead7;color:#203b5d}
.control-layout{display:grid;grid-template-columns:260px minmax(0,1fr) 330px;min-height:calc(100vh - 168px);background:var(--bg)}.control-sidebar,.control-context{background:var(--surface);padding:18px 14px;overflow:auto}.control-sidebar{border-right:1px solid var(--border)}.control-context{border-left:1px solid var(--border)}.control-side-title{font:850 1.15rem ui-sans-serif,system-ui;padding:6px 10px 14px}.control-side-foot{border-top:1px solid var(--border);margin-top:18px;padding:16px 10px}.control-page{padding:28px;min-width:0}.control-context h2{font-size:1.05rem;margin:8px 0 12px}.control-context .kv{grid-template-columns:minmax(110px,.9fr) minmax(0,1.1fr)}.control-footer{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:start}.control-footer .footer-meta{text-align:right}
.profile-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}.identity-card{display:grid;grid-template-columns:84px 1fr;gap:18px;align-items:center}.identity-avatar{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:var(--blue2);color:#fff;font:850 1.8rem ui-sans-serif,system-ui;border:3px solid var(--gold)}
.legal-layout{display:grid;grid-template-columns:minmax(210px,270px) minmax(0,1fr);gap:18px}.legal-nav{position:sticky;top:178px;align-self:start}.legal-nav a{display:block;padding:10px 12px;border-radius:9px;font-weight:750}.legal-nav a.active{background:var(--gold2);color:var(--blue2)}.legal-copy h2{font:850 1.45rem ui-sans-serif,system-ui;margin:24px 0 8px}.legal-copy h3{font:800 1.12rem ui-sans-serif,system-ui;margin:18px 0 6px}.legal-copy p,.legal-copy li{max-width:90ch}.legal-meta{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.trust-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.trust-tile{padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface3)}
.management-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.management-kpi{padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.management-kpi b{display:block;font-size:1.55rem}.authority-warning{border-left:4px solid var(--gold);background:var(--gold2);padding:14px 16px;border-radius:10px}
@media(max-width:1180px){.control-header{grid-template-columns:1fr}.control-wordmark{text-align:left}.control-header .top-actions{justify-content:flex-start}.control-layout{grid-template-columns:220px minmax(0,1fr)}.control-context{grid-column:1/-1;border-left:0;border-top:1px solid var(--border)}.profile-grid{grid-template-columns:1fr}.management-grid,.trust-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.control-layout{grid-template-columns:1fr}.control-sidebar{position:relative}.control-page{padding:18px}.legal-layout{grid-template-columns:1fr}.legal-nav{position:static}.management-grid,.trust-strip{grid-template-columns:1fr}.control-footer{grid-template-columns:1fr}.control-footer .footer-meta{text-align:left}}

/* v5.12 profile, product navigation, governance, and explicit light/dark systems */
html[data-theme="light"]{
  --bg:#f4f8fd;--surface:#ffffff;--surface2:#eef4fa;--surface3:#f8fbff;--ink:#10233e;--muted:#526983;--border:#c9d8e7;
  --blue:#174e86;--blue2:#0c3764;--gold:#b48b3f;--gold2:#f8eed8;--green:#087b55;--green2:#e0f5ed;--amber:#996300;--amber2:#fff2cf;--red:#b23f42;--red2:#fee9ea;
  --shadow:0 9px 24px rgba(17,57,99,.08);color-scheme:light
}
html[data-theme="dark"]{
  --bg:#071728;--surface:#0d2135;--surface2:#132b43;--surface3:#091c2f;--ink:#eef6ff;--muted:#b7c7da;--border:#2c4a67;
  --blue:#73b7ff;--blue2:#9dceff;--gold:#e1be68;--gold2:#332913;--green:#5fe0ae;--green2:#123b30;--amber:#f0c76d;--amber2:#3a2e13;--red:#ff8c92;--red2:#3f1e25;
  --shadow:0 12px 32px rgba(0,0,0,.32);color-scheme:dark
}
.app-header.tera-canonical{background:var(--surface);border-bottom:1px solid var(--border)}
.brand-strip{min-height:98px;background:
 radial-gradient(circle at 84% 24%,rgba(45,161,255,.34),transparent 18%),
 radial-gradient(circle at 20% 120%,rgba(36,136,238,.2),transparent 28%),
 linear-gradient(120deg,#052f58 0%,#06477d 42%,#022846 100%);color:#f6fbff;border-bottom:2px solid var(--gold)}
html[data-theme="dark"] .brand-strip{background:
 radial-gradient(circle at 84% 24%,rgba(45,161,255,.28),transparent 18%),
 radial-gradient(circle at 20% 120%,rgba(36,136,238,.18),transparent 28%),
 linear-gradient(120deg,#031b31 0%,#063a66 44%,#021525 100%)}
.brand-strip .brand-block,.brand-strip .principles{border-color:rgba(224,190,104,.42)}
.brand-strip .brand-block small,.brand-strip .brand-block em{color:#dbeaff}.brand-strip .brand-block strong{color:#fff!important}
.brand-strip .tera-mark{background:rgba(3,28,50,.64);color:#f0cc76;border-color:#e5bd62}
.brand-strip .tera-wordmark{color:#edc86d}.brand-strip .principles strong{color:#f7fbff}.brand-strip .principles span{color:#e8c168}
.brand-strip .proof-line strong{color:#fff!important}.brand-strip .proof-line span{color:#efc86b}
.brand-strip .gamma-proof{background:#efc86b}
.ecosystem-toolbar{min-height:62px;padding:7px 16px;display:flex;align-items:center;gap:10px;background:var(--surface);border-bottom:1px solid var(--border);position:relative;z-index:4}
.workbench-id{display:flex;gap:9px;align-items:center;white-space:nowrap}.workbench-id span{color:var(--muted)}
.ecosystem-links{display:flex;align-items:center;gap:3px;white-space:nowrap}.ecosystem-links a{padding:8px 10px;border-radius:8px;color:var(--ink);font-weight:780}.ecosystem-links a:hover{background:var(--surface2);text-decoration:none}
.toolbar-spacer{flex:1}.compact-project{margin-left:0;min-width:0}.compact-project select{min-width:230px;max-width:300px}.compact-search{white-space:nowrap}
.system-chip{display:inline-flex;align-items:center;min-height:40px;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface2);color:var(--ink);font-weight:780;white-space:nowrap}.system-chip.good{background:var(--green2);color:var(--green);border-color:color-mix(in srgb,var(--green) 28%,var(--border))}.ai-chip{background:color-mix(in srgb,var(--green2) 60%,var(--surface2))}
.identity-menu{position:relative}.identity-menu>summary{list-style:none}.identity-menu>summary::-webkit-details-marker{display:none}.identity-summary{display:flex;align-items:center;gap:8px;min-height:46px;padding:5px 8px;border:1px solid var(--border);border-radius:11px;background:var(--surface);cursor:pointer}.identity-mini-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--blue2);color:#fff;border:2px solid var(--gold);font-weight:900}.identity-summary-text{display:grid;line-height:1.15;min-width:0;max-width:150px}.identity-summary-text strong,.identity-summary-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity-summary-text small{color:var(--muted);font-size:1rem}
.identity-popover{position:absolute;right:0;top:calc(100% + 7px);width:330px;background:var(--surface);border:1px solid var(--border);border-radius:13px;box-shadow:0 20px 48px rgba(0,0,0,.22);padding:8px;z-index:120}.identity-popover-head{display:grid;padding:10px 12px 12px;border-bottom:1px solid var(--border);margin-bottom:5px}.identity-popover-head span{color:var(--muted)}.identity-popover a{display:grid;padding:9px 11px;border-radius:9px;color:var(--ink)}.identity-popover a:hover{background:var(--surface2);text-decoration:none}.identity-popover a span{font-size:1rem;color:var(--muted)}.identity-note{border-top:1px solid var(--border);margin-top:5px;padding:10px 11px;color:var(--muted);font-size:1rem}
.theme-segmented{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--border) 80%,transparent)}
html[data-theme="light"] .theme-segmented .seg-btn[data-theme-choice="light"].active{background:#fff;color:#0d3763;box-shadow:0 1px 4px rgba(20,54,90,.12),inset 0 0 0 1px #d3b468}
html[data-theme="dark"] .theme-segmented{background:#0b1c2d;border-color:#34506c}html[data-theme="dark"] .theme-segmented .seg-btn[data-theme-choice="dark"].active{background:#0b3158;color:#f4f9ff;box-shadow:inset 0 0 0 1px #4c8bc7}
html[data-theme="light"] body,html[data-theme="light"] .studio-sidebar,html[data-theme="light"] .canonical-footer{background:#f7faff}html[data-theme="light"] .studio-sidebar,html[data-theme="light"] .canonical-footer{background:#fff}
html[data-theme="dark"] body,html[data-theme="dark"] .studio-sidebar,html[data-theme="dark"] .canonical-footer{background:#071728}html[data-theme="dark"] .studio-sidebar,html[data-theme="dark"] .canonical-footer{background:#0a1d31}
html[data-theme="dark"] .card,html[data-theme="dark"] .list-item,html[data-theme="dark"] .kpi,html[data-theme="dark"] .management-kpi{background:#0d2135}
html[data-theme="dark"] .input,html[data-theme="dark"] input,html[data-theme="dark"] textarea,html[data-theme="dark"] select{background:#0a1c2f;border-color:#35516e;color:#eef6ff}
html[data-theme="light"] .console,html[data-theme="light"] .compact-pre,html[data-theme="light"] .runtime-local{background:#f6f9fd;color:#10233e;border-color:#c9d8e7}
html[data-theme="dark"] .footer a,html[data-theme="dark"] .canonical-footer a{color:#b9d9fb}
/* Scientific/publication outputs may remain controlled white surfaces in both themes. */
.scientific-surface,.chart-surface,.publication-surface,.paper-surface,.pdf-surface{background:#fff!important;color:#13233a!important}

/* Profile hierarchy: one identity, multiple authorized contexts. */
.profile-shell{display:grid;grid-template-columns:minmax(190px,230px) minmax(0,1fr) minmax(280px,360px);gap:0;min-height:690px;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}
.profile-nav{padding:16px;border-right:1px solid var(--border);background:var(--surface3)}.profile-nav a{display:block;padding:10px 11px;border-radius:9px;color:var(--ink);font-weight:760;margin-bottom:4px}.profile-nav a.active,.profile-nav a:hover{background:var(--gold2);color:var(--blue2);text-decoration:none}.profile-main{padding:20px;min-width:0;overflow:auto}.profile-context{padding:18px;border-left:1px solid var(--border);background:var(--surface3);overflow:auto}.profile-context h2{font-size:1.08rem;margin:6px 0 12px}.context-switches{display:grid;gap:8px}.context-switch{display:flex;justify-content:space-between;gap:10px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.context-switch span{color:var(--muted)}
.governance-boundary{border-left:4px solid var(--gold);background:var(--gold2);padding:12px 14px;border-radius:10px}.plan-card{border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:14px}.plan-card strong{display:block;font-size:1.1rem}

/* Product discovery pages stay informative and quiet inside the authenticated shell. */
.product-hero{padding:28px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--blue) 10%,var(--surface)),var(--surface));margin-bottom:18px}.product-hero h2{font-size:1.8rem;margin:0 0 6px}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.catalog-card{padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.catalog-card h3{margin:0 0 7px}.catalog-card p{color:var(--muted)}
.template-card{display:grid;gap:8px}.template-card .tag{width:max-content}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pricing-card{padding:20px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.pricing-card.recommended{border-color:var(--gold);box-shadow:inset 0 3px 0 var(--gold),var(--shadow)}

/* Manager/Owner governed-profile workflows. */
.people-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 200px auto;gap:10px;margin-bottom:14px}.person-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center}.person-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted)}.authority-banner{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--gold);border-radius:12px;background:var(--gold2)}
.governed-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:18px}.audit-line{padding:9px 0;border-bottom:1px solid var(--border)}

/* Studio: global left navigation + movable center/right research context. */
.studio-dashboard{height:clamp(690px,calc(100vh - 250px),1100px)}.studio-dashboard .elastic-pane:first-child{min-width:480px}.studio-dashboard .elastic-pane:last-child{min-width:285px}.studio-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(290px,.8fr);gap:12px}.math-hero{min-height:280px;border-radius:14px;padding:18px;overflow:hidden;background:linear-gradient(145deg,#062847,#073b65);color:#fff;position:relative}.math-hero h3{margin:0 0 6px;color:#f4d47d}.math-surface{height:190px;display:grid;place-items:center;margin-top:6px}.math-surface svg{width:100%;height:100%}.math-caption{display:flex;justify-content:space-between;gap:10px;color:#d9ecff;font-size:1rem}.continue-card{border:1px solid var(--border);border-radius:14px;padding:16px;background:var(--surface3)}.research-state-strip{display:grid;grid-template-columns:repeat(6,minmax(90px,1fr));gap:8px;margin:12px 0}.state-tile{padding:11px;border:1px solid var(--border);border-radius:11px;background:var(--surface);text-align:center}.state-tile b{display:block;font-size:1.35rem}.dashboard-lower{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.context-section{padding:12px 0;border-bottom:1px solid var(--border)}.context-section:last-child{border-bottom:0}.status-list{display:grid;gap:6px}.status-line{display:grid;grid-template-columns:14px 1fr auto;gap:8px;align-items:center}.status-line .dot{width:9px;height:9px;border-radius:50%;background:var(--green)}.status-line.info .dot{background:var(--blue)}.status-line.warn .dot{background:var(--amber)}

/* References: elastic library / editor / evidence-context alignment. */
.reference-workspace{height:clamp(650px,calc(100vh - 250px),1050px)}.reference-workspace .elastic-pane:first-child{min-width:250px}.reference-workspace .elastic-pane:nth-of-type(2){min-width:420px}.reference-workspace .elastic-pane:last-child{min-width:280px}.reference-compact-card{display:grid;gap:5px;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);margin-bottom:8px}.reference-compact-card.active{border-color:var(--gold);background:var(--gold2)}

/* Control Plane keeps light/dark semantics as distinct as the Research Workbench. */
.control-header{background:linear-gradient(120deg,#052f58,#073e6a,#03233d)}html[data-theme="dark"] .control-header{background:linear-gradient(120deg,#02182b,#052d4e,#01111f)}
html[data-theme="light"] .control-sidebar,html[data-theme="light"] .control-context{background:#fff}html[data-theme="dark"] .control-sidebar,html[data-theme="dark"] .control-context{background:#0a1d31}

@media(max-width:1500px){.ecosystem-links a{padding-inline:7px}.identity-summary-text{display:none}.compact-project select{min-width:190px;max-width:230px}.system-chip.ai-chip{display:none}}
@media(max-width:1320px){.ecosystem-links{display:none}.system-chip{display:none}.compact-project select{max-width:240px}.studio-hero{grid-template-columns:1fr}.research-state-strip{grid-template-columns:repeat(3,1fr)}.dashboard-lower{grid-template-columns:1fr 1fr}.catalog-grid,.pricing-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.ecosystem-toolbar{flex-wrap:wrap}.compact-project{flex:1}.identity-popover{right:0}.profile-shell{grid-template-columns:1fr}.profile-nav,.profile-context{border:0;border-bottom:1px solid var(--border)}.governed-grid{grid-template-columns:1fr}.people-toolbar{grid-template-columns:1fr}.studio-dashboard{height:auto}.dashboard-lower{grid-template-columns:1fr}.research-state-strip{grid-template-columns:repeat(2,1fr)}.catalog-grid,.pricing-grid{grid-template-columns:1fr}}
/* v5.12 support cards behave like surfaces, not inline text links. */
a.link-card{display:block;color:var(--ink);text-decoration:none}a.link-card:hover{text-decoration:none;border-color:var(--blue);box-shadow:var(--shadow)}

/* v5.13 LaTeX Research Studio */
.latex-menubar{display:flex;align-items:center;gap:3px;min-height:46px;padding:4px 8px;margin:0 0 8px;border:1px solid var(--border);border-radius:12px;background:var(--surface);position:relative;z-index:15}.latex-menu{position:relative}.latex-menu>summary{list-style:none;cursor:pointer;padding:7px 11px;border-radius:8px;font-weight:800}.latex-menu>summary::-webkit-details-marker{display:none}.latex-menu[open]>summary,.latex-menu>summary:hover{background:var(--surface2)}.latex-menu-panel{position:absolute;top:calc(100% + 4px);left:0;min-width:270px;max-width:360px;padding:7px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 18px 45px rgba(16,35,60,.18);z-index:120}.latex-menu-panel button{display:block;width:100%;border:0;background:transparent;color:var(--ink);padding:9px 10px;border-radius:8px;text-align:left;font-weight:650}.latex-menu-panel button:hover,.latex-menu-panel button:focus{background:var(--surface2)}
.latex-modebar{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:10px;padding:6px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}.mode-tab{border:1px solid transparent;background:transparent;color:var(--ink);padding:8px 14px;border-radius:9px;font-weight:850}.mode-tab.active{background:var(--blue2);border-color:var(--blue2);color:#fff}.latex-research-workspace{height:clamp(650px,calc(100vh - 330px),1050px)}
.latex-code-shell{display:grid;grid-template-columns:62px minmax(0,1fr);height:100%;min-height:520px;border:1.5px solid var(--border);border-radius:11px;overflow:hidden;background:color-mix(in srgb,var(--surface) 97%,var(--blue) 3%)}.latex-line-numbers{margin:0;padding:11px 0;background:var(--surface2);border-right:1px solid var(--border);overflow:hidden;font:500 var(--editor)/1.58 ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace;text-align:right;user-select:none;color:var(--muted);height:100%}.latex-line-numbers span{display:block;padding:0 12px 0 4px;min-height:1.58em}.latex-line-numbers span.current{background:color-mix(in srgb,var(--gold) 18%,var(--surface2));color:var(--ink);font-weight:850}.latex-editor{border:0!important;border-radius:0!important;box-shadow:none!important;resize:none;min-height:0!important;height:100%;white-space:pre;overflow:auto;padding:11px 14px}.latex-editor.wrap{white-space:pre-wrap;overflow-wrap:anywhere}.latex-pdf-frame{width:100%;height:640px;border:1px solid var(--border);border-radius:10px;background:#fff}.latex-quick-preview{min-height:480px}.latex-log{min-height:500px;white-space:pre-wrap;overflow-wrap:anywhere}.structure-row{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:9px 10px;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--ink);text-align:left}.structure-row:hover{background:var(--surface2)}.structure-row small{color:var(--muted)}.structure-row.level-chapter,.structure-row.level-part{font-weight:900}.structure-row.level-subsection{padding-left:24px}.structure-row.level-subsubsection{padding-left:38px}.diagnostic-list{display:grid;gap:8px}.diagnostic-item{display:grid;grid-template-columns:32px 1fr;gap:8px;align-items:start;width:100%;border:1px solid var(--border);border-left:4px solid var(--amber);border-radius:10px;background:var(--surface);padding:10px 12px;text-align:left;color:var(--ink)}.diagnostic-item.error{border-left-color:var(--red)}.diag-marker{font-weight:900;color:var(--amber)}.diagnostic-item.error .diag-marker{color:var(--red)}
.library-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin:12px 0 18px}.library-toolbar h2{margin:0;font-size:1.6rem}.library-toolbar p{margin:4px 0 0}.compact-field{min-width:320px;margin:0}.latex-library-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px}.template-card,.example-card{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:17px;box-shadow:var(--shadow)}.template-card h3,.example-card h3{margin:11px 0 8px}.template-meta{display:grid;gap:5px;color:var(--muted)}.example-card .compact-pre{max-height:250px;overflow:auto}.package-list{display:grid;gap:7px}.package-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border)}.preflight-list{display:grid;gap:9px;margin:14px 0}.preflight-row{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:start;border:1px solid var(--border);border-left:4px solid var(--green);border-radius:10px;background:var(--surface);padding:11px 13px}.preflight-row.warn{border-left-color:var(--amber)}.preflight-row.fail{border-left-color:var(--red)}.preflight-row>span{font-weight:950;color:var(--green)}.preflight-row.warn>span{color:var(--amber)}.preflight-row.fail>span{color:var(--red)}.preflight-row small{display:block;color:var(--muted);margin-top:2px}.badge.bad{background:var(--red2);color:var(--red);border-color:color-mix(in srgb,var(--red) 30%,var(--border))}
html[data-theme="dark"] .latex-code-shell{background:#071524;border-color:#28445f}html[data-theme="dark"] .latex-line-numbers{background:#0b1d31;border-color:#28445f;color:#8ca4bd}html[data-theme="dark"] .latex-line-numbers span.current{background:#243244;color:#f1cf78}html[data-theme="dark"] .latex-editor{background:#071524;color:#e8f0f8}html[data-theme="dark"] .latex-menu-panel{background:#0c2035}html[data-theme="dark"] .paper-surface,html[data-theme="dark"] .latex-pdf-frame{background:#fff;color:#13233a}
@media(max-width:1100px){.latex-menubar{overflow-x:auto;flex-wrap:nowrap}.latex-menu>summary{white-space:nowrap}.library-toolbar{align-items:stretch;flex-direction:column}.compact-field{min-width:0}.latex-library-grid{grid-template-columns:1fr}.latex-code-shell{grid-template-columns:52px minmax(0,1fr)}}


/* v5.14 LaTeX authoring-first refinement */
body[data-page="latex"] .page{padding-top:18px}
body[data-page="latex"] .page-head{margin-bottom:10px;align-items:center}
body[data-page="latex"] .page-head h1{font-size:clamp(1.8rem,3vw,2.35rem);margin:4px 0 6px}
body[data-page="latex"] .page-head p{font-size:1rem;line-height:1.45;max-width:1050px}
body[data-page="latex"] .eyebrow{padding:4px 10px}
.latex-commandbar{display:flex;align-items:center;gap:6px;width:100%;min-height:48px;margin:0 0 10px;padding:4px 6px;border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:visible;white-space:nowrap;position:relative;z-index:18}
.latex-command-menus,.latex-command-modes{display:flex;align-items:center;gap:2px;flex:0 0 auto}.latex-command-menus .latex-menubar{display:contents}.latex-command-separator{width:1px;height:28px;background:var(--border);margin:0 5px;flex:0 0 auto}.latex-command-spacer{flex:1 1 auto;min-width:10px}.latex-compile-action{flex:0 0 auto;min-height:38px;padding:7px 14px}.latex-commandbar .latex-menu>summary{padding:7px 9px}.latex-commandbar .mode-tab{padding:7px 10px;border-radius:8px;min-height:36px}.latex-commandbar .mode-tab.active{background:var(--gold2);border:1px solid var(--gold);color:var(--blue2)}.latex-signal{font-size:1em;color:var(--amber)}
.latex-research-workspace{height:clamp(690px,calc(100vh - 225px),1200px);min-height:690px}
.latex-pane-head{padding:11px 14px;min-height:58px}.latex-pane-head h2{font-size:1.17rem}.latex-pane-head .muted{font-size:1rem}.btn.micro{min-height:34px;padding:6px 10px;border-radius:8px;font-size:1rem}.compact-toolbar{margin:8px 0;gap:6px}.latex-runtime-card{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}.latex-runtime-card p{margin:6px 0}
.latex-structure-tabs{display:flex;gap:2px;overflow-x:auto;white-space:nowrap;border-bottom:1px solid var(--border);padding:0 0 7px;margin-bottom:8px}.latex-structure-tabs .subtab{padding:6px 8px;font-size:1rem;flex:0 0 auto}
.latex-editor-stack{position:relative;min-width:0;height:100%;overflow:hidden;background:var(--surface)}.latex-code-shell{grid-template-columns:54px minmax(0,1fr);min-height:0;height:100%}.latex-editor-stack .latex-editor,.latex-editor-stack .latex-syntax-layer{font:500 var(--editor)/1.58 ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace;tab-size:4;padding:11px 14px;white-space:pre;letter-spacing:0}.latex-syntax-layer{position:absolute;inset:0;margin:0;pointer-events:none;overflow:visible;color:var(--ink);background:transparent;transform-origin:0 0;z-index:1}.latex-editor-stack .latex-editor{position:relative;z-index:2;background:transparent!important;color:transparent!important;caret-color:var(--ink)!important;overflow:auto}.latex-editor-stack .latex-editor::selection{background:color-mix(in srgb,var(--blue) 32%,transparent);color:transparent}.latex-editor-stack .latex-editor.wrap,.latex-editor-stack .latex-editor.wrap + *{white-space:pre-wrap}.tex-command{color:#1365b3;font-weight:650}.tex-comment{color:#54825f;font-style:italic}.tex-brace{color:#9a5d11}.tex-math{color:#8c3db0;font-weight:800}.latex-editor-empty{position:absolute;inset:18px;z-index:3;display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;text-align:center;border:1px dashed var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface) 92%,transparent);color:var(--muted);pointer-events:auto}.latex-editor-empty[hidden]{display:none}.latex-editor-empty strong{color:var(--ink)}
.latex-statusbar{gap:10px;font-size:1rem;white-space:nowrap;overflow-x:auto;padding:7px 0;margin-top:7px}.latex-output-controls{display:flex;align-items:center;gap:6px}.latex-layout-select{min-height:34px;width:auto;max-width:180px;padding:5px 8px}.latex-result-host{flex:1;min-height:0;overflow:auto}.latex-quick-preview{min-height:100%;height:auto;background:var(--surface3);color:var(--ink);border-color:var(--border)}.preview-authority-note{margin-top:8px;padding:7px 9px;border-left:3px solid var(--blue);color:var(--muted);font-size:1rem;background:var(--surface2);border-radius:7px}.latex-pdf-stage{height:calc(100% - 48px);min-height:540px;padding:12px;background:color-mix(in srgb,var(--surface3) 90%,#cbd5e1 10%);border:1px solid var(--border);border-radius:10px}.latex-pdf-frame{height:100%;min-height:540px;background:#fff}.latex-log{margin:0;min-height:100%;height:100%;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--surface3);color:var(--ink);font:500 1rem/1.55 ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace;white-space:pre-wrap;overflow:auto}.latex-asset-list{display:grid;gap:7px}.latex-output-controls .attention{box-shadow:0 0 0 2px color-mix(in srgb,var(--gold) 45%,transparent)}
html[data-theme="dark"] .latex-quick-preview,html[data-theme="dark"] .latex-log{background:#071524!important;color:#e8f0f8!important;border-color:#28445f!important}html[data-theme="dark"] .latex-syntax-layer{color:#e8f0f8}html[data-theme="dark"] .tex-command{color:#76b9ff}html[data-theme="dark"] .tex-comment{color:#78b88d}html[data-theme="dark"] .tex-brace{color:#f0bd6d}html[data-theme="dark"] .tex-math{color:#d7a3f2}html[data-theme="dark"] .latex-editor-empty{background:rgba(7,21,36,.93)}
html[data-theme="light"] .latex-quick-preview,html[data-theme="light"] .latex-log{background:#f8fbff!important;color:#13233a!important;border-color:#cbd8e6!important}html[data-theme="light"] .latex-syntax-layer{color:#13233a}html[data-theme="light"] .latex-editor-empty{background:rgba(255,255,255,.95)}
@media(max-width:1280px){.latex-commandbar{gap:3px}.latex-commandbar .latex-menu>summary,.latex-commandbar .mode-tab{padding-left:7px;padding-right:7px}.latex-output-controls .latex-layout-select{display:none}}
@media(max-width:920px){.latex-commandbar{position:static}.latex-research-workspace{height:auto;min-height:0}.latex-output-controls{flex-wrap:wrap}.latex-pdf-stage{height:640px}.latex-code-shell{min-height:560px}}

.latex-syntax-layer.wrap{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:1280px){.latex-commandbar{overflow-x:auto;overflow-y:hidden}}

/* v5.15 LaTeX Scientific IDE */
.latex-context-toolbar{display:flex;align-items:center;gap:5px;min-height:38px;padding:4px 6px;margin:-2px 0 7px;border:1px solid var(--border);border-radius:9px;background:var(--surface2);overflow-x:auto;white-space:nowrap}.latex-context-toolbar .toolbtn{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:7px;padding:5px 8px;min-height:29px;font:inherit;font-size:1rem;font-weight:760;cursor:pointer}.latex-context-toolbar .toolbtn:hover{border-color:var(--blue);background:var(--surface3)}.latex-context-toolbar .context-label{margin-left:3px;padding-left:8px;border-left:1px solid var(--border);color:var(--muted);font-size:1rem;text-transform:capitalize}.latex-filetree{display:grid;gap:3px}.latex-file-row{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;border-radius:8px}.latex-file-row.active{background:var(--surface2)}.latex-file-row .filebtn{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:0;background:transparent;color:var(--ink);padding:8px 9px;text-align:left}.main-file-mark{font-size:1rem;color:var(--gold);font-weight:950;letter-spacing:.04em}.latex-file-actions{position:relative}.latex-file-actions>summary{list-style:none;cursor:pointer;text-align:center;padding:6px;border-radius:7px;font-weight:900}.latex-file-actions>summary::-webkit-details-marker{display:none}.latex-file-actions[open]>summary{background:var(--surface3)}.latex-file-actions>div{position:absolute;right:0;top:100%;z-index:45;min-width:210px;padding:6px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);display:grid}.latex-file-actions button{border:0;background:transparent;color:var(--ink);text-align:left;padding:8px 9px;border-radius:6px;font:inherit;font-weight:700}.latex-file-actions button:hover{background:var(--surface2)}.danger-text{color:var(--red)!important}.math-palette-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;max-height:55vh;overflow:auto}.math-palette-item{display:grid;gap:5px;text-align:left;border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:10px;padding:10px;cursor:pointer}.math-palette-item:hover{border-color:var(--gold);background:var(--surface2)}.math-palette-item code{color:var(--muted);white-space:pre-wrap}.command-palette-list{display:grid;gap:5px;max-height:55vh;overflow:auto}.command-palette-list button{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:9px;padding:9px 11px;text-align:left}.command-palette-list button:hover{background:var(--surface2);border-color:var(--blue)}.command-palette-list button span{color:var(--muted);font-size:1rem}.latex-table-preview{margin:18px 0}.latex-table-preview table{width:100%;border-collapse:collapse;background:var(--surface);color:var(--ink)}.latex-table-preview th,.latex-table-preview td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left}.latex-table-preview figcaption{margin-top:7px;color:var(--muted);font-size:1rem}.preview-limitation{display:grid;gap:6px;margin:12px 0;padding:11px 12px;border:1px solid var(--border);border-left:3px solid var(--amber);border-radius:8px;background:var(--surface2);color:var(--ink)}.preview-limitation span{color:var(--muted)}.preview-limitation code{white-space:pre-wrap;overflow-wrap:anywhere}.latex-menu-panel{max-height:70vh;overflow:auto}
html[data-theme="dark"] .latex-context-toolbar{background:#0b1d31}html[data-theme="dark"] .latex-file-actions>div,html[data-theme="dark"] .math-palette-item,html[data-theme="dark"] .command-palette-list button{background:#0c2035}

.latex-hero{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(360px,.65fr);gap:18px;align-items:end;margin:0 0 10px;padding:10px 12px 12px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:linear-gradient(90deg,color-mix(in srgb,var(--surface) 94%,var(--gold2) 6%),var(--surface))}.latex-hero-copy .eyebrow{display:inline-flex;padding:5px 10px;border:1px solid color-mix(in srgb,var(--gold) 45%,var(--border));border-radius:999px;background:var(--gold2);color:var(--blue2);font-weight:900;font-size:1rem}.latex-hero-copy h1{margin:7px 0 2px;font-size:clamp(2rem,3vw,2.65rem);line-height:1}.latex-hero-copy p{margin:0;max-width:920px;color:var(--muted);font-size:1rem}.latex-hero-status{display:grid;grid-template-columns:1fr 1fr;gap:6px}.latex-hero-status>div{display:grid;gap:2px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}.latex-hero-status span{color:var(--muted);font-size:1rem}.latex-hero-status strong{font-size:1rem;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:1150px){.latex-hero{grid-template-columns:1fr}.latex-hero-status{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:760px){.latex-hero-status{grid-template-columns:1fr 1fr}}
html[data-theme="dark"] .latex-hero{background:linear-gradient(90deg,#071524,#0b1d31)}

/* v5.16: mathematical Quick Preview follows application theme; PDF remains paper. */
.latex-quick-preview .math-preview{color:var(--ink);background:transparent;max-width:100%;overflow-x:auto}
.latex-quick-preview .display-math{display:block;margin:12px 0;padding:12px 8px;border-radius:9px;background:var(--surface2);color:var(--ink)}
.latex-quick-preview .inline-math{display:inline-block;vertical-align:middle;padding:0 2px}
.latex-quick-preview .tera-math-pending{opacity:.85}
.latex-quick-preview .math-wait{font-family:var(--font,system-ui);font-size:1rem;font-style:italic;color:var(--muted)}
.latex-quick-preview .tera-math-error{display:grid;gap:6px;padding:12px;border:1px solid var(--amber);background:var(--surface2);color:var(--ink);font-family:inherit;text-align:left;font-size:1rem}
.latex-quick-preview .tera-math-error span,.latex-quick-preview .tera-math-error small{white-space:normal;overflow-wrap:anywhere}
.latex-quick-preview mjx-container{max-width:100%;color:inherit}
html[data-theme="dark"] .latex-quick-preview .display-math{background:#10283e!important;color:#e6effa!important}
html[data-theme="light"] .latex-quick-preview .display-math{background:#edf4fb!important;color:#10283e!important}

/* v5.17 Python Research Studio. Scoped: other pages and canonical shell stay frozen. */
body[data-page="python"] .page{padding-top:18px}
body[data-page="python"] .page-head{margin-bottom:12px;align-items:center}
body[data-page="python"] .page-head h1{font-size:clamp(1.8rem,2.65vw,2.35rem);margin:4px 0 5px}
body[data-page="python"] .page-head p{font-size:1rem;line-height:1.42;max-width:940px}
body[data-page="python"] .eyebrow{padding:3px 10px}
.py-commandbar{display:flex;align-items:center;gap:10px;min-width:0;min-height:54px;padding:5px 8px;margin:0 0 6px;background:var(--surface);border:1px solid var(--border);border-radius:12px}
.py-menu-group,.py-mode-group{display:flex;align-items:center;min-width:0;overflow-x:auto;scrollbar-width:thin;white-space:nowrap}
.py-menu-group{flex:0 1 auto;border-right:1px solid var(--border);padding-right:9px}
.py-mode-group{flex:1 1 auto}
.py-menu-btn,.py-mode-btn{flex:0 0 auto;min-height:37px;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--ink);padding:5px 8px;font-size:1rem;font-weight:740}
.py-menu-btn:hover,.py-mode-btn:hover{background:var(--surface2);border-color:var(--border)}
.py-mode-btn.active{background:var(--gold2);border-color:var(--gold);color:var(--ink)}
.py-commandbar>.btn.primary{flex:0 0 auto;min-height:39px;padding:6px 12px;white-space:nowrap}
.py-utility{margin:0 0 10px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;min-height:45px}
.py-utility .btn{min-height:39px;padding:6px 10px;white-space:nowrap;font-size:1rem}
body[data-page="python"] .elastic-workspace{height:clamp(660px,calc(100vh - 255px),1150px)}
body[data-page="python"] .elastic-pane .card-body{padding:12px;min-width:0}
body[data-page="python"] .card-head{padding:12px;min-height:65px}
body[data-page="python"] .card-head h2{font-size:1.1rem}
body[data-page="python"] .editor-actionbar{gap:5px}
body[data-page="python"] .editor-actionbar .btn{min-height:38px;padding:5px 9px;font-size:1rem}
.py-file-entry{display:flex;min-width:0;align-items:center;gap:2px}
.py-file-entry .filebtn{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;text-align:left}
.py-file-more{flex:0 0 33px;min-height:35px;border:1px solid transparent;border-radius:8px;background:var(--surface2);color:var(--ink)}
.py-file-more:hover,.py-file-more:focus-visible{border-color:var(--gold)}
.py-editor-frame{display:flex;flex:1 1 auto;min-height:0;overflow:hidden;border:1px solid var(--border);border-radius:11px;background:var(--surface3)}
.py-line-gutter{flex:0 0 55px;overflow:hidden;padding:12px 8px 12px 0;text-align:right;user-select:none;border-right:1px solid var(--border);color:var(--muted);background:var(--surface2);font:400 1rem/1.6 Consolas,monospace;white-space:pre}
.py-gutter-line{height:1.6em}.py-current-line{background:color-mix(in srgb,var(--gold) 15%,var(--surface2));color:var(--ink)}
body[data-page="python"] textarea.py-source{flex:1 1 auto;min-width:0;min-height:0;resize:none;border:0;border-radius:0;padding:12px;background:var(--surface3);color:var(--ink);font:400 1rem/1.6 Consolas,'Courier New',monospace;white-space:pre;tab-size:4;overflow:auto;outline-offset:-3px}
body[data-page="python"] textarea.py-source:focus-visible{outline:2px solid var(--gold)}
.py-result-tabs{flex-wrap:nowrap!important;align-items:center;overflow:hidden;min-width:0}
.py-result-tabs .subtab{flex:0 0 auto;white-space:nowrap;font-size:1rem;padding:6px 9px}
.py-result-tabs .subtab[hidden],.py-more-tabs[hidden]{display:none!important}
.py-more-tabs{min-width:0;max-width:125px;min-height:38px;flex:1 1 auto;padding:4px 8px;border-radius:8px;border:1px solid var(--border);background:var(--surface2);color:var(--ink);font-size:1rem;font-weight:750}
.py-more-tabs.py-more-active{background:var(--gold2);border-color:var(--gold)}
.py-provenance{display:grid;gap:9px;min-width:0}.py-provenance h3{margin:8px 0 3px;font-size:1.04rem}
.py-provenance-field{display:grid;grid-template-columns:minmax(90px,.75fr) minmax(0,1.2fr) auto;align-items:center;gap:7px;padding:7px 0;border-bottom:1px solid var(--border);font-size:1rem;min-width:0}
.py-provenance-field strong{overflow-wrap:anywhere}.py-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Consolas,monospace}
.py-copy{min-height:30px;padding:2px 7px;font-size:1rem;border:1px solid var(--border);border-radius:7px;background:var(--surface2);color:var(--ink)}
.py-input-record{min-width:0;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}
.py-input-record small{display:block;color:var(--muted);overflow-wrap:anywhere}
.py-diff{max-height:350px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
body[data-page="python"] .validation-strip{flex:0 0 auto}
body[data-page="python"] .statusbar{flex-wrap:wrap}
@media(max-width:1450px){.py-menu-btn,.py-mode-btn{font-size:1rem;padding-inline:6px}.py-commandbar{gap:4px}}
@media(max-width:920px){body[data-page="python"] .elastic-workspace{height:auto}.py-commandbar{flex-wrap:wrap}.py-menu-group,.py-mode-group{flex:1 1 100%}.py-utility{flex-wrap:wrap}}

body[data-page="python"] .editor-actionbar #runBtn{display:none}

/* TERA v5.18 Python-only scientific animation and execution controls. */
body[data-page="python"] .py-timeout-label{display:flex;align-items:center;gap:7px;font-weight:650;white-space:nowrap;font-size:1rem}
body[data-page="python"] .py-timeout-label select{width:auto;min-height:35px;padding:3px 8px;background:var(--surface2);color:var(--ink);border:1px solid var(--border);border-radius:7px}
body[data-page="python"] .py-cancel{border-color:var(--gold);white-space:nowrap}
body[data-page="python"] .py-cancel[hidden]{display:none!important}
body[data-page="python"] #runBtn{display:none!important}
body[data-page="python"] .py-animations{display:grid;gap:13px;margin-bottom:14px;min-width:0}
body[data-page="python"] .py-animation-card{min-width:0;border:1px solid var(--border);border-radius:12px;background:var(--surface2);padding:12px;display:grid;gap:10px}
body[data-page="python"] .py-animation-head{display:flex;justify-content:space-between;gap:8px;align-items:center;min-width:0}
body[data-page="python"] .py-animation-head strong{overflow-wrap:anywhere}body[data-page="python"] .py-animation-head p{color:var(--muted);margin:3px 0 0;font-size:1rem}
body[data-page="python"] .py-animation-screen{display:grid;place-items:center;min-width:0;min-height:220px;max-height:65vh;overflow:auto;background:var(--surface3);border:1px solid var(--border);border-radius:10px;padding:8px}
body[data-page="python"] .py-animation-screen img,body[data-page="python"] .py-animation-screen video{display:block;max-width:100%;max-height:60vh;object-fit:contain}
body[data-page="python"] .py-animation-controls{display:flex;gap:5px;flex-wrap:wrap;align-items:center}
body[data-page="python"] .py-animation-controls .btn{min-height:36px;padding:5px 9px}
body[data-page="python"] .py-animation-controls label{display:flex;align-items:center;gap:5px;font-size:1rem}
body[data-page="python"] .py-animation-controls select{width:auto;min-height:36px;background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:7px}
body[data-page="python"] .py-anim-loop input{min-height:auto;width:auto}
body[data-page="python"] .py-animation-timeline{display:flex;gap:10px;align-items:center;min-width:0}
body[data-page="python"] .py-animation-timeline input{min-width:30px;flex:1 1 auto;accent-color:var(--gold)}
body[data-page="python"] .py-animation-timeline span{font-size:1rem;white-space:normal}
body[data-page="python"] .py-animation-actions{display:flex;gap:10px;flex-wrap:wrap}
body[data-page="python"] .py-animation-note{font-size:1rem;color:var(--muted);margin:0}
body[data-page="python"] .py-generated-files{display:grid;gap:9px;min-width:0}
body[data-page="python"] .py-generated-file{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:9px;padding:11px;border:1px solid var(--border);border-radius:9px;background:var(--surface2)}
body[data-page="python"] .py-generated-file>div{min-width:0}body[data-page="python"] .py-generated-file strong{overflow-wrap:anywhere}
body[data-page="python"] .py-generated-file p{margin:5px 0;font-size:1rem;color:var(--muted);overflow-wrap:anywhere}

/* v5.20 Data Workbench: compact scientific workspace, preserve canonical shell */
body[data-page="data"] .page{padding:15px 20px 24px}
body[data-page="data"] .page-head{margin-bottom:10px;align-items:center}
body[data-page="data"] .page-head h1{font-size:clamp(1.8rem,2.7vw,2.3rem);margin:3px 0 5px}
body[data-page="data"] .page-head p{font-size:1rem;line-height:1.42;max-width:900px}
body[data-page="data"] .data-journey{padding:6px 11px;gap:8px;border-radius:10px;margin-bottom:9px;font-size:1rem}
body[data-page="data"] .data-workspace{height:clamp(680px,calc(100vh - 205px),1400px)}
body[data-page="data"] .data-empty-start{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:300px}
body[data-page="data"] .data-empty-start .toolbar{justify-content:center}
body[data-page="data"] .workflow-groups{gap:4px;padding:7px;border-radius:9px}
body[data-page="data"] .workflow-group{gap:5px;padding:3px 4px}
body[data-page="data"] .workflow-buttons .node{padding:6px 8px}
@media(max-width:1250px){body[data-page="data"] .data-workspace{height:auto;min-height:720px}}

/* v5.25 separate research/customer and administration identity surfaces */
.identity-popover .identity-action{display:grid;width:100%;text-align:left;padding:9px 11px;border:0;border-radius:9px;background:transparent;color:var(--ink);min-height:0}
.identity-popover .identity-action:hover{background:var(--surface2);box-shadow:none;filter:none}
.identity-popover .identity-action b{font-weight:800}.identity-popover .identity-action span{font-size:1rem;color:var(--muted)}
.identity-popover .identity-action.logout{margin-top:4px;border-top:1px solid var(--border);border-radius:0 0 9px 9px;padding-top:12px}
.control-side-foot{display:grid;gap:10px}.control-side-foot .admin-signout{width:100%;margin-top:2px}


/* v5.27.0 · canonical TERA institutional footer */
.tera-institutional-footer{width:100%;border-top:2px solid var(--blue);background:var(--surface);color:var(--ink);box-shadow:0 -2px 18px rgba(25,58,99,.035)}
.tera-footer-main{display:grid;grid-template-columns:minmax(290px,.9fr) minmax(520px,1.45fr) minmax(300px,.9fr);gap:24px;align-items:center;padding:28px clamp(18px,4vw,72px);border-bottom:1px solid var(--border)}
.tera-footer-identity{display:flex;gap:20px;align-items:center;padding-right:24px;border-right:1px solid var(--border)}
.tera-footer-mark{width:72px;height:72px;flex:0 0 72px;border-radius:50%;display:grid;place-items:center;background:#071b38;color:#e5b83e;border:2px solid #c79a24;box-shadow:0 4px 12px rgba(6,31,64,.18);font:800 2rem Georgia,serif}
.tera-footer-identity strong{display:block;font:800 1.55rem Georgia,serif;color:var(--blue2);letter-spacing:.01em}.tera-footer-identity span,.tera-footer-identity small{display:block;color:var(--muted);margin-top:3px}.tera-footer-identity small{font-size:1rem}
.tera-footer-principles{display:grid;grid-template-columns:repeat(4,minmax(110px,1fr));gap:12px;align-items:start;text-align:center;position:relative;padding:0 20px 28px}
.tera-footer-principles>div{display:grid;justify-items:center;gap:7px}.tera-footer-principles strong{font-size:1rem;color:var(--blue2)}.tera-footer-icon{width:27px;height:27px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;color:#071b38}.tera-footer-principles>div:nth-child(2) .tera-footer-icon path{fill:#071b38;stroke:none}
.tera-footer-domain{position:absolute;left:0;right:0;bottom:0;color:var(--blue);font-size:1rem}
.tera-footer-legal{padding-left:24px;border-left:1px solid var(--border)}.tera-footer-legal nav{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:12px}.tera-footer-legal a{font-weight:800;color:#0656c9}.tera-footer-legal>span,.tera-footer-legal small{display:block;color:var(--muted);margin-top:4px}
.tera-footer-lower{display:grid;grid-template-columns:minmax(250px,.75fr) minmax(520px,1.5fr) minmax(250px,.75fr);gap:20px;align-items:center;padding:18px clamp(18px,4vw,72px);background:color-mix(in srgb,var(--surface2) 56%,var(--surface));color:var(--blue2)}
.tera-footer-lower>strong{text-align:center;font-size:1rem}.tera-footer-lower>span:last-child{text-align:right;color:var(--blue)}.tera-footer-lower i{font-style:normal;color:var(--border);padding:0 7px}.tera-footer-language{display:flex;align-items:center;gap:9px;color:var(--blue)}.tera-footer-language button{border:0;background:transparent;padding:1px 2px;color:#0757c8;font-weight:850}.tera-footer-language button.active{text-decoration:underline;text-underline-offset:4px}.tera-institutional-footer .save-state{margin:0;padding:8px clamp(18px,4vw,72px);background:var(--surface);font-size:1rem}
[data-theme="dark"] .tera-footer-mark{background:#06152a}.tera-institutional-footer .tera-footer-icon{color:var(--ink)}[data-theme="dark"] .tera-footer-principles>div:nth-child(2) .tera-footer-icon path{fill:var(--ink)}

/* v5.27.0 · professional pricing */
.pricing-page-wrap{max-width:1480px;margin:0 auto}.pricing-hero{text-align:center;padding:4px 0 8px}.pricing-hero h1{font:850 clamp(2.4rem,5vw,4.05rem)/1.04 Georgia,serif;color:var(--blue2);margin:8px 0}.pricing-hero p{font-size:1.15rem;color:var(--muted);margin:4px auto;max-width:820px}.pricing-motto{color:var(--blue);font-weight:650}
.pricing-entitlement{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin:20px 0 22px;padding:14px 18px;border:1px solid color-mix(in srgb,var(--blue) 24%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--surface2) 70%,#e9f3ff 30%)}.pricing-entitlement strong{color:var(--blue2)}
.billing-switch{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--border);border-radius:999px;background:var(--surface);padding:4px}.billing-switch button{border:0;border-radius:999px;background:transparent;min-width:112px;padding:9px 18px;font-weight:800;color:var(--blue2)}.billing-switch button.active{background:#0757b8;color:#fff}.annual-save{display:inline-flex;align-items:center;margin-left:10px;padding:7px 11px;border:1px solid color-mix(in srgb,var(--gold) 60%,var(--border));border-radius:999px;background:var(--gold2);color:#7a5511;font-weight:800;font-size:1rem}
.pricing-professional-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch;margin-top:10px}.plan-card{position:relative;display:flex;flex-direction:column;min-height:650px;border:1px solid color-mix(in srgb,var(--blue) 24%,var(--border));border-radius:16px;background:var(--surface);padding:28px 26px;box-shadow:0 9px 24px rgba(34,56,85,.055)}.plan-card.recommended{border:1.5px solid #b9881f;box-shadow:0 12px 30px rgba(168,134,70,.13);background:linear-gradient(180deg,color-mix(in srgb,var(--gold2) 30%,var(--surface)) 0,var(--surface) 17%)}.plan-ribbon{position:absolute;left:-1px;right:-1px;top:-1px;border-radius:16px 16px 0 0;background:linear-gradient(90deg,#aa7718,#d4a83a,#aa7718);color:#fff;text-align:center;padding:6px 10px;font-weight:850;text-transform:uppercase;letter-spacing:.025em}.plan-card.recommended .plan-inner{padding-top:22px}.plan-icon{width:54px;height:54px;display:grid;place-items:center;color:#0757b8;margin-bottom:12px}.plan-card.recommended .plan-icon{color:#ad7b17}.plan-icon svg{width:48px;height:48px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.plan-card h2{font:850 1.45rem/1.2 ui-sans-serif,system-ui;margin:0 0 4px;color:var(--blue2)}.plan-tagline{color:var(--muted);margin:0 0 14px}.plan-price{display:flex;align-items:baseline;gap:6px;margin:8px 0}.plan-price strong{font:850 2.4rem/1 ui-sans-serif,system-ui;color:var(--blue2)}.plan-price span{font-weight:800}.plan-secondary-price{min-height:30px;color:var(--blue2);font-weight:750}.plan-save{color:#9a6810;font-weight:850}.plan-description{color:var(--muted);min-height:72px;margin:12px 0 18px}.plan-divider{height:1px;background:var(--border);margin-bottom:15px}.plan-feature-list{list-style:none;padding:0;margin:0;display:grid;gap:9px}.plan-feature-list li{display:grid;grid-template-columns:20px 1fr;gap:9px;align-items:start}.plan-feature-list li::before{content:'✓';font-weight:900;color:#0870db}.plan-card.recommended .plan-feature-list li::before{color:#b37e17}.plan-card .plan-cta{margin-top:auto;padding-top:24px}.plan-card .plan-cta .btn,.plan-card .plan-cta a.btn{width:100%;display:flex;justify-content:center;text-decoration:none}.pricing-checkout-status{display:none;margin-top:10px;font-size:1rem;color:var(--muted)}.pricing-checkout-status.show{display:block}
.intelligence-economics{margin-top:22px;padding:24px 26px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.intelligence-economics h2{margin:0;font:850 1.45rem ui-sans-serif,system-ui;color:var(--blue2)}.intelligence-economics>.muted{margin-top:2px}.intelligence-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:20px}.intelligence-item{display:grid;grid-template-columns:54px 1fr;gap:14px;padding:8px 26px;border-left:1px solid var(--border)}.intelligence-item:first-child{border-left:0;padding-left:0}.intelligence-item:last-child{padding-right:0}.intelligence-item svg{width:46px;height:46px;fill:none;stroke:currentColor;stroke-width:1.8;color:#0757b8}.intelligence-item:nth-child(1) svg{color:#3a8b2c}.intelligence-item:nth-child(3) svg{color:#7b44cf}.intelligence-item strong{display:block;margin-bottom:4px;color:var(--blue2)}.commercial-boundary{margin-top:14px}.pricing-trust-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:16px 0 8px;border-top:1px solid var(--border);padding-top:18px}.pricing-trust-item{display:grid;grid-template-columns:42px 1fr;gap:10px;padding:0 18px;border-left:1px solid var(--border)}.pricing-trust-item:first-child{border-left:0;padding-left:0}.pricing-trust-item svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:1.9;color:var(--blue2)}.pricing-trust-item strong{display:block;font-size:1rem}.pricing-trust-item span{display:block;color:var(--muted);font-size:1rem;line-height:1.35}
@media(max-width:1180px){.tera-footer-main{grid-template-columns:1fr 1.5fr}.tera-footer-legal{grid-column:1/-1;border-left:0;border-top:1px solid var(--border);padding:18px 0 0}.tera-footer-lower{grid-template-columns:1fr}.tera-footer-lower>strong,.tera-footer-lower>span:last-child{text-align:left}.pricing-professional-grid{grid-template-columns:1fr 1fr}.plan-card:last-child{grid-column:1/-1;min-height:auto}.pricing-trust-strip{grid-template-columns:1fr 1fr;gap:18px}.pricing-trust-item:nth-child(3){border-left:0;padding-left:0}}
@media(max-width:780px){.tera-footer-main{grid-template-columns:1fr}.tera-footer-identity{border-right:0;border-bottom:1px solid var(--border);padding:0 0 18px}.tera-footer-principles{grid-template-columns:1fr 1fr;padding-inline:0}.tera-footer-legal{padding-top:18px}.tera-footer-lower{padding-block:14px}.pricing-entitlement{grid-template-columns:1fr}.billing-switch{width:max-content}.annual-save{margin-left:4px}.pricing-professional-grid{grid-template-columns:1fr}.plan-card:last-child{grid-column:auto}.plan-card{min-height:0}.intelligence-grid,.pricing-trust-strip{grid-template-columns:1fr}.intelligence-item,.intelligence-item:first-child,.intelligence-item:last-child,.pricing-trust-item,.pricing-trust-item:first-child{border-left:0;border-top:1px solid var(--border);padding:16px 0}.intelligence-item:first-child,.pricing-trust-item:first-child{border-top:0}.pricing-hero h1{font-size:2.5rem}}


/* v5.28.0 · platform readability, canonical TERA mark, and true theme surfaces */
html{font-size:18px}
body,button,input,select,textarea{font-size:1rem;line-height:1.48}
small,.muted,.badge,.nav-label,.nav-text,.system-chip,.identity-note,.identity-summary-text small,.tera-footer-identity small,.tera-footer-principles strong,.tera-footer-domain,.tera-footer-lower>strong,.save-state{font-size:1rem!important;line-height:1.45}
h1{font-size:clamp(2rem,3vw,3rem)}h2{font-size:1.55rem}h3{font-size:1.25rem}

/* Canonical circular T mark: stable letter, animated outer gold ring only. */
.tera-mark,.tera-footer-mark,.auth-brand-t{position:relative;isolation:isolate;overflow:visible;background:#071b38!important;color:#f2bd2c!important;border:2px solid #d3a62a!important;box-shadow:inset 0 0 0 1px rgba(255,224,132,.16),0 4px 14px rgba(6,31,64,.18)!important;font-family:Georgia,serif!important;font-weight:800!important;text-align:center}
.tera-mark::after,.tera-footer-mark::after,.auth-brand-t::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(229,184,62,.58);box-shadow:0 0 0 0 rgba(229,184,62,.24);pointer-events:none;animation:teraRingPulse 3.6s ease-in-out infinite}
@keyframes teraRingPulse{0%,100%{opacity:.45;transform:scale(.985);box-shadow:0 0 0 0 rgba(229,184,62,.15)}50%{opacity:1;transform:scale(1.04);box-shadow:0 0 0 5px rgba(229,184,62,0)}}
@media(prefers-reduced-motion:reduce){.tera-mark::after,.tera-footer-mark::after,.auth-brand-t::after{animation:none;opacity:.72;transform:none}}

/* Light means light: body/workspace panels do not become dark feature slabs. */
html[data-theme="light"] body{background:#f7faff;color:#10233e}
html[data-theme="light"] .page,html[data-theme="light"] .card,html[data-theme="light"] .continue-card,html[data-theme="light"] .state-tile,html[data-theme="light"] .list-item,html[data-theme="light"] .context-section{background:#fff;color:#10233e}
html[data-theme="light"] .math-hero{background:#fff;color:#12355d;border:1px solid #c9d8e7;box-shadow:0 7px 20px rgba(17,57,99,.04)}
html[data-theme="light"] .math-hero h3{color:#0757b8}.math-hero .mono{font-weight:800}
html[data-theme="light"] .math-caption{color:#355b83}
html[data-theme="light"] .studio-dashboard .btn.primary,html[data-theme="light"] .studio-action-btn{background:#0b66d4;color:#fff;border-color:#0b66d4;box-shadow:none}
html[data-theme="light"] .studio-dashboard .btn.primary:hover,html[data-theme="light"] .studio-action-btn:hover{background:#0958b8;border-color:#0958b8}

/* Dark theme: professional navy-gray hierarchy rather than large flat near-black slabs. */
html[data-theme="dark"]{--bg:#101824;--surface:#182433;--surface2:#202e40;--surface3:#151f2d;--ink:#f1f6fb;--muted:#c4d0dd;--border:#40536a;--blue:#7ebaff;--blue2:#b4d7ff;--gold:#e2bf6a;--gold2:#3b311b;--green:#65deb0;--green2:#183d33;--amber:#efca75;--amber2:#3f341b;--red:#ff9aa0;--red2:#45252a;--shadow:0 12px 28px rgba(0,0,0,.24)}
html[data-theme="dark"] body{background:#101824}html[data-theme="dark"] .studio-sidebar,html[data-theme="dark"] .canonical-footer,html[data-theme="dark"] .tera-institutional-footer{background:#162231}
html[data-theme="dark"] .card,html[data-theme="dark"] .list-item,html[data-theme="dark"] .kpi,html[data-theme="dark"] .management-kpi{background:#182433}
html[data-theme="dark"] .continue-card,html[data-theme="dark"] .state-tile{background:#1c2a3a}
html[data-theme="dark"] .math-hero{background:#1c2a3a;color:#f0f6fc;border:1px solid #40536a}.math-hero h3{color:#e3bf68}
html[data-theme="dark"] .math-caption{color:#c6d7e8}

/* Approved light-mode Research Discovery Workspace treatment. */
.studio-dashboard .card{border-color:#cbdcec}
.studio-hero{gap:16px}.math-hero{min-height:330px;padding:22px;border-radius:14px}.math-surface{height:220px}.math-caption{font-weight:600}
.continue-card{padding:20px}.continue-card h3{margin-top:0;color:var(--blue2)}.continue-card .context-section{padding:16px 0}.continue-card .context-section>a{font-weight:800}
.research-state-strip{gap:10px;margin:14px 0}.state-tile{min-height:84px;display:grid;place-items:center;align-content:center;gap:3px}.state-tile b{font-size:1.35rem}.state-tile span{color:var(--blue2)}
.dashboard-lower{gap:14px}.dashboard-lower>.card{overflow:hidden}.dashboard-lower .card-head{background:color-mix(in srgb,var(--surface2) 48%,var(--surface));border-bottom:1px solid var(--border)}
.studio-action-cue{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;padding:16px;border:1px solid color-mix(in srgb,var(--blue) 30%,var(--border));border-radius:12px;background:color-mix(in srgb,#eaf4ff 70%,var(--surface));color:var(--ink)}
.studio-action-cue.attention{border-color:color-mix(in srgb,var(--gold) 46%,var(--border));background:color-mix(in srgb,var(--gold2) 62%,var(--surface))}.studio-action-cue.blocking{border-color:color-mix(in srgb,var(--red) 45%,var(--border));background:var(--red2)}
.studio-action-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#0b66d4;color:#fff}.studio-action-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.studio-action-cue strong{display:block;color:var(--blue2);margin-bottom:4px}.studio-action-cue p{margin:0 0 12px;color:var(--ink)}.studio-action-btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border-radius:8px;text-decoration:none;font-weight:800}
.text-attention{color:#8b650e;font-weight:750}
html[data-theme="light"] .notice.warn{background:#fff7e2;border-color:#e2c26d;color:#654a0a}
html[data-theme="light"] .notice.bad{background:#fff0f1;border-color:#db8d92;color:#7b2f34}
.status-line.info .dot{background:#6f8daa}.status-line .dot{width:10px;height:10px}

@media(max-width:980px){.math-hero{min-height:300px}.math-surface{height:190px}.studio-action-cue{grid-template-columns:40px 1fr}.studio-action-icon{width:38px;height:38px}}

.state-tile{grid-template-columns:42px auto;column-gap:10px;text-align:left;justify-content:center}.state-tile .state-icon{grid-row:1/3;width:36px;height:36px;display:grid;place-items:center;color:#0b66d4}.state-icon svg,.activity-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.state-tile b,.state-tile span:not(.state-icon){justify-self:start}.studio-activity-item{display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:start}.activity-icon{width:34px;height:34px;color:#0b66d4;margin-top:2px}
@media(max-width:1320px){.state-tile{grid-template-columns:36px auto}.state-tile .state-icon{width:32px;height:32px}}

/* v5.29.0 · product shell and administration UI hardening */
html,body{max-width:100%;overflow-x:hidden}

/* The normal product shell shows the release number only in the canonical footer. */
.workbench-id{min-width:0}.workbench-id strong{white-space:nowrap}

/* Research header: participate in normal layout flow; never layer controls over text. */
.ecosystem-toolbar{flex-wrap:wrap;align-content:center;overflow:visible;row-gap:8px}
.ecosystem-toolbar>*{position:relative;min-width:0;max-width:100%}
.toolbar-spacer{flex:1 1 24px;min-width:0}
.compact-project{flex:0 1 320px;min-width:220px;max-width:360px}
.compact-project label{flex:0 0 auto;white-space:nowrap}
.compact-project select{flex:1 1 auto;width:100%;min-width:0!important;max-width:none!important}
.compact-search,.system-chip,.focus-btn,.segmented,.history-nav,.identity-menu{flex:0 0 auto}
.ecosystem-links{flex:0 1 auto;min-width:0}
.ecosystem-links a{white-space:nowrap}

/* Admin profile actions are a content-driven responsive grid rather than overlapping buttons. */
.admin-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;align-items:stretch}
.admin-action-card{width:100%;min-height:58px;display:flex;align-items:center;justify-content:center;text-align:center;white-space:normal;overflow-wrap:anywhere;line-height:1.35}

/* Profile menus stay inside the visible viewport and remain keyboard/touch reachable. */
.identity-popover{overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;max-width:min(360px,calc(100vw - 24px));overflow-x:hidden}
.app-header .identity-popover{max-height:calc(100vh - 185px)}
.control-header .identity-popover{max-height:calc(100vh - 118px)}
.identity-popover a,.identity-popover .identity-action,.identity-popover-head{min-width:0;overflow-wrap:anywhere}
.identity-popover a span,.identity-popover .identity-action span,.identity-popover-head span{white-space:normal;overflow-wrap:anywhere}

/* Canonical footer and its legal controls must reflow without horizontal scrolling. */
.tera-institutional-footer,.tera-footer-main,.tera-footer-lower,.tera-footer-identity,.tera-footer-principles,.tera-footer-legal{min-width:0;max-width:100%}
.tera-footer-legal nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.tera-footer-legal nav a:hover,.tera-footer-legal nav a:focus-visible{text-decoration:underline;text-underline-offset:4px}
.tera-footer-legal nav a:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 35%,transparent);outline-offset:2px;border-radius:4px}

/* Narrow product shell: one-column body, no horizontal page scrolling, no clipped controls. */
@media(max-width:1640px){
 .ecosystem-links{display:none}
 .compact-project{flex-basis:280px}
}
@media(max-width:1320px){
 .ecosystem-toolbar{gap:8px}
 .toolbar-spacer{display:none}
 .compact-project{flex:1 1 280px;max-width:none}
 .compact-search{flex:0 0 auto}
}
@media(max-width:980px){
 .ecosystem-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px 10px;align-items:center}
 .workbench-id{grid-column:1/-1}
 .history-nav{grid-column:auto}
 .compact-project{grid-column:1/-1;width:100%;max-width:none;min-width:0}
 .compact-search{grid-column:auto}
 .focus-btn{grid-column:auto}
 .segmented{max-width:100%}
 .identity-menu{justify-self:end}
 .app-header .identity-popover{max-height:calc(100vh - 145px)}
 .grid.two,.grid.three,.grid.four{grid-template-columns:1fr}
}
@media(max-width:720px){
 .ecosystem-toolbar{grid-template-columns:1fr 1fr;padding-inline:12px}
 .workbench-id,.compact-project{grid-column:1/-1}
 .history-nav,.compact-search,.focus-btn,.segmented,.identity-menu{min-width:0;max-width:100%}
 .history-nav{justify-self:start}
 .compact-search,.focus-btn{width:100%;white-space:normal}
 .segmented{width:100%;display:grid;grid-template-columns:1fr 1fr}
 .seg-btn{min-width:0;padding-inline:6px}
 .identity-menu{justify-self:stretch}
 .identity-summary{width:100%;justify-content:space-between}
 .identity-summary-text{display:grid;max-width:none}
 .app-header .identity-popover{position:fixed;left:12px;right:12px;top:72px;width:auto;max-width:none;max-height:calc(100vh - 84px)}
 .control-header .identity-popover{position:fixed;left:12px;right:12px;top:86px;width:auto;max-width:none;max-height:calc(100vh - 98px)}
 .page,.control-page{padding-left:12px;padding-right:12px}
 .card,.table-wrap,.preview,.chart-surface,.figure-preview-stage{max-width:100%}
 .table-wrap{overflow-x:auto;overscroll-behavior-inline:contain}
 .tera-footer-main,.tera-footer-lower{padding-left:14px;padding-right:14px}
 .tera-footer-identity{display:grid;grid-template-columns:58px minmax(0,1fr);gap:14px;padding-right:0}
 .tera-footer-mark{width:56px;height:56px;flex-basis:56px;font-size:1.7rem}
 .tera-footer-principles{grid-template-columns:1fr 1fr;padding-inline:0}
 .tera-footer-domain{position:static;grid-column:1/-1;margin-top:8px;text-align:left}
 .tera-footer-legal{padding-left:0}
 .tera-footer-legal nav{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}
 .tera-footer-lower>strong,.tera-footer-lower>span:last-child{text-align:left}
 .tera-footer-lower>strong i{display:none}
 .tera-footer-lower>strong{display:grid;gap:3px}
 .admin-actions-grid{grid-template-columns:1fr}
}
@media(max-width:420px){
 .ecosystem-toolbar{grid-template-columns:1fr}
 .workbench-id,.compact-project,.history-nav,.compact-search,.focus-btn,.segmented,.identity-menu{grid-column:1}
 .history-nav,.identity-menu{justify-self:stretch}
 .history-nav .history-btn{flex:1}
 .tera-footer-principles,.tera-footer-legal nav{grid-template-columns:1fr}
 .tera-footer-identity{grid-template-columns:1fr}
 .tera-footer-mark{margin-bottom:4px}
}

/* v5.31.0 · canonical foundation restoration and page-isolated shell hardening */
:root{--shell-header-height:160px}

/* Header: one coherent toolbar. User preferences/account stay on the far right. */
.ecosystem-toolbar{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;gap:8px!important;min-width:0;overflow:visible}
.ecosystem-toolbar>*{min-width:0}
.workbench-id{flex:0 0 auto}
.history-nav{flex:0 0 auto}
.ecosystem-links{flex:0 1 auto;min-width:0}
.toolbar-spacer{display:none!important}
.compact-project{flex:1 1 250px!important;min-width:190px!important;max-width:320px!important}
.compact-project select{min-width:0!important;max-width:none!important;width:100%}
.compact-search{flex:0 0 auto}
.user-controls{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto;min-width:0}
.user-controls .segmented,.user-controls .identity-menu{flex:0 0 auto}
.user-controls .identity-summary-text{display:grid!important;max-width:175px}

/* Collapse operational status into one truthful menu instead of consuming header width. */
.system-status-menu{position:relative;flex:0 0 auto}
.system-status-menu>summary{list-style:none;cursor:pointer}
.system-status-menu>summary::-webkit-details-marker{display:none}
.system-status-popover{position:absolute;right:0;top:calc(100% + 8px);z-index:80;width:min(330px,calc(100vw - 24px));padding:10px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow);display:grid;gap:6px}
.system-status-row{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;width:100%;min-height:46px;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:var(--ink);text-align:left;text-decoration:none}
.system-status-row:hover,.system-status-row:focus-visible{background:var(--surface2);text-decoration:none}
.system-status-row span{color:var(--muted);text-align:right;overflow-wrap:anywhere}
.focus-row{font:inherit;cursor:pointer}

/* Canonical shell recovery: the sidebar is viewport-contained and independently scrollable.
   Its full navigation height must never determine the document height. */
.layout{grid-template-columns:minmax(78px,var(--sidebar-width)) 10px minmax(0,1fr)!important;max-width:100%!important;width:100%!important;min-height:calc(100dvh - var(--shell-header-height))!important;align-items:start!important;overflow:visible}
.studio-sidebar{position:sticky!important;top:var(--shell-header-height)!important;height:calc(100dvh - var(--shell-header-height))!important;max-height:calc(100dvh - var(--shell-header-height))!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;scrollbar-gutter:stable;align-self:start!important;min-width:0;background:var(--surface)}
.shell-splitter{position:sticky!important;top:var(--shell-header-height)!important;height:calc(100dvh - var(--shell-header-height))!important;min-height:0!important;align-self:start!important}
.page{min-width:0!important;max-width:100%!important;width:100%!important;overflow-x:hidden!important}
.page>*{max-width:100%;min-width:0}

/* Prevent page-specific toolbars/cards from forcing the right edge outside the shell. */
.card,.card-body,.card-head,.toolbar,.workspace-toolbar,.tabs,.subtabs,.fit-tabs,.row,.list,.mini-card,.preview,.table-wrap,.elastic-workspace,.elastic-pane{min-width:0;max-width:100%}
.card-head,.toolbar,.workspace-toolbar,.tabs,.subtabs,.row{flex-wrap:wrap}
.elastic-workspace{overflow:hidden}
.elastic-pane{overflow:hidden}
.elastic-pane .card-body{min-width:0}

/* Profile is a professional account workspace, not a long document. */
.profile-shell{grid-template-columns:minmax(210px,240px) minmax(0,1fr)!important;min-height:0!important;max-width:1480px;margin:0 auto;align-items:start;overflow:visible!important;background:transparent;box-shadow:none}
.profile-nav{align-self:start;position:sticky;top:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface3)}
.profile-main{padding:0 0 0 18px!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;overflow:visible!important;align-items:start}
.profile-main>section{margin-top:0!important;min-height:0!important;height:auto!important}
.profile-main>section#overview,.profile-main>section#plan{grid-column:1/-1}
.profile-context{display:none!important}
.profile-main .plan-card{display:block!important;min-height:0!important;height:auto!important;padding:16px!important;box-shadow:none!important;background:var(--surface)!important}
.profile-main .plan-card .kv{margin-top:8px}

/* Pricing reflows to the actual content width left after the sidebar. */
.pricing-page-wrap{container-type:inline-size;max-width:1480px;width:100%}
.pricing-professional-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))!important;align-items:stretch}
.pricing-professional-grid>.plan-card{min-height:0!important;height:auto!important}
.intelligence-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))!important;gap:0}
.pricing-entitlement{min-width:0}
.billing-switch{min-width:0}
.annual-save{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid #c99825;border-radius:999px;background:#e8c65f;color:#10233d!important;font-weight:900;white-space:nowrap}
html[data-theme="dark"] .annual-save{background:#e8c65f!important;color:#10233d!important;border-color:#f3d77f!important}
html[data-theme="dark"] .plan-save{color:#f0cf78!important}

/* Customer UI does not explain hidden administrative architecture. */
.identity-note{display:none!important}

/* Narrow layouts: preserve the canonical shell without overlap or horizontal overflow. */
@media(max-width:1840px){
 .ecosystem-links a{padding-inline:6px}
 .compact-project{max-width:270px!important}
 .user-controls{gap:6px}
}
@media(max-width:1680px){
 .ecosystem-links{display:none!important}
 .compact-project{max-width:340px!important}
}
@media(max-width:1280px){
 .ecosystem-toolbar{display:flex!important;flex-wrap:nowrap!important;gap:7px!important}
 .workbench-id,.history-nav{display:none!important}
 .compact-project{flex:1 1 210px!important;min-width:170px!important;max-width:300px!important}
 .compact-search{flex:0 0 auto;padding-inline:10px}
 .system-status-menu{flex:0 0 auto}
 .user-controls{margin-left:auto!important;justify-content:flex-end!important;flex:0 0 auto!important}
 .profile-main{grid-template-columns:1fr}
 .profile-main>section#overview,.profile-main>section#plan{grid-column:auto}
}
@media(max-width:920px){
 .layout{grid-template-columns:1fr!important}
 .studio-sidebar{display:none!important}
 .shell-splitter{display:none!important}
 .page{grid-column:1!important;padding:18px 14px}
 .ecosystem-toolbar{grid-template-columns:1fr auto!important}
 .workbench-id{grid-column:1}
 .history-nav{grid-column:2}
 .compact-project,.compact-search,.system-status-menu,.user-controls{grid-column:1/-1;width:100%;max-width:none!important}
 .compact-search{white-space:normal}
 .user-controls{justify-content:flex-end;flex-wrap:wrap}
 .user-controls .identity-menu{min-width:min(100%,260px)}
 .profile-shell{grid-template-columns:1fr!important}
 .profile-nav{position:static;display:flex;gap:6px;flex-wrap:wrap;border-right:1px solid var(--border)}
 .profile-nav a{margin:0}
 .profile-main{padding:18px 0 0!important;grid-template-columns:1fr}
}
@media(max-width:620px){
 .user-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}
 .user-controls .identity-menu{grid-column:1/-1;width:100%}
 .user-controls .identity-summary{width:100%;justify-content:space-between}
 .system-status-popover{position:fixed;left:12px;right:12px;top:auto;width:auto}
 .pricing-entitlement{grid-template-columns:1fr!important}
 .billing-switch{width:100%;display:grid;grid-template-columns:1fr 1fr}
 .annual-save{width:max-content;max-width:100%}
}
.system-status-menu .system-chip{display:inline-flex!important}

/* v5.32.0 foundation recovery invariants */
.page{align-self:start}
.page>.card,.page>.grid,.page>.split,.page>.profile-shell,.page>.pricing-page-wrap{align-self:start}
html[data-theme="dark"] .annual-save{background:#f0cf78!important;color:#0d2138!important;border-color:#f6dfa0!important}
@media(max-width:920px){
 .layout{min-height:0!important}
 .studio-sidebar{display:none!important;position:relative!important;top:auto!important;height:auto!important;max-height:none!important}
 .shell-splitter{display:none!important}
}

/* v5.33.0 · canonical shell, account workspace, and customer assistant refinement */
:root{--shell-header-height:160px}

/* Research shell: sidebar and splitter are viewport utilities and never determine document height. */
@media(min-width:921px){
 .layout{display:grid!important;grid-template-columns:minmax(78px,var(--sidebar-width)) 10px minmax(0,1fr)!important;min-height:0!important;height:auto!important;align-items:start!important;position:relative!important;overflow:visible!important}
 .studio-sidebar{position:fixed!important;left:0!important;top:var(--shell-header-height)!important;bottom:0!important;width:var(--sidebar-width)!important;height:auto!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;z-index:18!important;align-self:auto!important;scrollbar-gutter:stable}
 .shell-splitter{position:fixed!important;left:var(--sidebar-width)!important;top:var(--shell-header-height)!important;bottom:0!important;width:10px!important;height:auto!important;min-height:0!important;z-index:19!important}
 .page{grid-column:3!important;min-height:0!important;height:auto!important;align-self:start!important;padding-bottom:28px!important}
 .tera-institutional-footer{position:relative;z-index:35;background:var(--surface)}
}
@media(max-width:920px){.layout{min-height:0!important;height:auto!important}.page{min-height:0!important;height:auto!important}}

/* Header: keep utility/account controls on the right while protecting the project/workspace controls. */
.user-controls{margin-left:auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;flex:0 0 auto!important;min-width:0}
.system-time-menu{position:relative;flex:0 0 auto;min-width:0}
.system-time-menu>summary{list-style:none;cursor:pointer}
.system-time-menu>summary::-webkit-details-marker{display:none}
.system-time-summary{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:7px 10px;border:1px solid var(--border);border-radius:11px;background:var(--surface);font-weight:800;white-space:nowrap;color:var(--ink)}
.system-time-summary:hover,.system-time-summary:focus-visible{background:var(--surface2);text-decoration:none}
.time-calendar{font-size:1.15rem;color:var(--blue)}
.system-time-popover{position:absolute;right:0;top:calc(100% + 8px);z-index:130;width:min(380px,calc(100vw - 24px));padding:12px;border:1px solid var(--border);border-radius:13px;background:var(--surface);box-shadow:var(--shadow);display:grid;gap:4px}
.time-row{display:grid;grid-template-columns:minmax(115px,.8fr) minmax(0,1.2fr);gap:14px;align-items:center;padding:9px 8px;border-bottom:1px solid var(--border)}
.time-row:last-of-type{border-bottom:0}.time-row span{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}
.time-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:8px}.time-actions .btn{min-height:42px;padding:7px 12px}
@media(max-width:1500px){.system-time-summary #systemClockCompact{max-width:128px;overflow:hidden;text-overflow:ellipsis}}
@media(max-width:1280px){.system-time-summary{padding-inline:8px}.system-time-summary #systemClockCompact{max-width:76px}}
@media(max-width:1040px){.system-time-summary #systemClockCompact{display:none}.system-time-summary{min-width:44px;justify-content:center}}
@media(max-width:620px){.system-time-menu{grid-column:1/-1;justify-self:end}.system-time-popover{position:fixed;left:12px;right:12px;top:88px;width:auto}}

/* Optional profile photo: local-only, square-cropped, with initials fallback. */
.profile-avatar-host{overflow:hidden;position:relative}
.profile-avatar-host img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.profile-avatar-host .profile-avatar-fallback{display:grid;place-items:center;width:100%;height:100%}
.profile-photo-block{display:grid;justify-items:center;gap:9px;min-width:150px}
.profile-photo-avatar{width:112px!important;height:112px!important;border-radius:50%!important;font-size:2rem!important}
.profile-photo-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.profile-photo-actions .btn{min-height:42px;padding:7px 11px}
.profile-photo-block small{text-align:center;color:var(--muted)}
.profile-identity-card{grid-template-columns:auto minmax(0,1fr)!important;gap:24px!important}.profile-identity-copy h2{margin:0 0 4px}.profile-identity-copy p{margin:0 0 12px}

/* Customer account settings: horizontal navigation and content-driven professional layout. */
.profile-account-shell{display:block!important;max-width:1480px!important;width:100%!important;margin:0 auto!important;min-height:0!important}
.profile-nav-horizontal{position:static!important;display:flex!important;align-items:stretch!important;gap:0!important;overflow-x:auto!important;overflow-y:hidden!important;width:100%!important;max-width:100%!important;margin:0 0 18px!important;padding:0!important;border:0!important;border-bottom:3px solid #e3e7eb!important;border-radius:0!important;background:transparent!important;scrollbar-width:thin}
.profile-nav-horizontal a{flex:0 0 auto!important;display:flex!important;align-items:center!important;min-height:54px!important;margin:0!important;padding:10px 16px 9px!important;border:0!important;border-bottom:4px solid transparent!important;border-radius:0!important;background:transparent!important;color:var(--muted)!important;font-weight:780!important;white-space:nowrap!important;text-decoration:none!important}
.profile-nav-horizontal a:hover,.profile-nav-horizontal a:focus-visible{color:var(--ink)!important;background:color-mix(in srgb,var(--surface2) 65%,transparent)!important}
.profile-nav-horizontal a.active{color:var(--ink)!important;border-bottom-color:var(--gold)!important;background:transparent!important;box-shadow:none!important}
.profile-account-main{padding:0!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important;align-items:start!important;overflow:visible!important}
.profile-account-main>section{margin:0!important;height:auto!important;min-height:0!important}
.profile-account-main>#overview,.profile-account-main>#plan{grid-column:1/-1!important}
.profile-account-main .card{box-shadow:0 5px 18px rgba(25,49,77,.06)}
.profile-account-main .card-body{padding:18px}.profile-card-action{padding-top:0!important}
.profile-account-main .readonly-field{background:var(--surface2);color:var(--muted);cursor:not-allowed}
.profile-plan-card{min-height:0!important;height:auto!important;padding:16px!important;background:var(--surface)!important;box-shadow:none!important}
.profile-plan-card .kv{margin-top:8px}
html[data-theme="light"] body[data-page="profile"]{background:#fff!important}
html[data-theme="light"] body[data-page="profile"] .page{background:#fff!important}
html[data-theme="light"] body[data-page="profile"] .card{background:#fff!important}
html[data-theme="light"] body[data-page="profile"] .profile-nav-horizontal{background:#fff!important}
@media(max-width:1120px){.profile-account-main{grid-template-columns:1fr!important}.profile-account-main>#overview,.profile-account-main>#plan{grid-column:auto!important}}
@media(max-width:700px){.profile-identity-card{grid-template-columns:1fr!important;text-align:center}.profile-identity-copy .row{justify-content:center}.profile-account-main .grid.two{grid-template-columns:1fr}.profile-nav-horizontal a{padding-inline:12px}}

/* Customer profile dropdown stays simple and product-facing. */
.identity-popover-customer{width:min(300px,calc(100vw - 24px))!important}
.identity-popover-customer .identity-popover-head{margin-bottom:6px}

/* Customer Tera: professional compact conversation, without internal authority architecture in the UI. */
body[data-page="assistant"] .tera-public{max-width:1120px!important;margin:0 auto!important}
body[data-page="assistant"] .authority-warning{margin:0!important;padding:11px 14px!important;border-left-width:3px!important;background:var(--surface2)!important;color:var(--ink)!important}
body[data-page="assistant"] .tera-chat{min-height:0!important;height:auto!important;margin-top:14px!important}
body[data-page="assistant"] .tera-chat>.card-body{display:grid!important;grid-template-rows:auto minmax(220px,1fr) auto auto!important;gap:10px!important;min-height:0!important}
body[data-page="assistant"] .tera-log{min-height:220px!important;max-height:46vh!important;overflow-y:auto!important;padding:2px!important}
body[data-page="assistant"] .tera-compose{position:static!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important}
body[data-page="assistant"] .tera-compose textarea{min-height:78px!important;max-height:180px!important}
body[data-page="assistant"] .scope-pill{font-weight:700;color:var(--muted)}
@media(max-width:700px){body[data-page="assistant"] .tera-compose{grid-template-columns:1fr!important}body[data-page="assistant"] .tera-compose .btn{width:100%}}

/* Right-edge safety: toolbars must reflow rather than clip primary actions. */
.latex-commandbar{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:5px!important;overflow:visible!important;white-space:normal!important;max-width:100%!important}
.latex-command-menus,.latex-command-modes{display:flex!important;flex-wrap:wrap!important;min-width:0!important;max-width:100%!important;flex:1 1 auto!important}
.latex-command-separator{display:none!important}.latex-command-spacer{display:none!important}
.latex-compile-action{margin-left:auto!important;flex:0 0 auto!important;max-width:100%!important}
@media(max-width:1320px){.latex-compile-action{order:5;margin-left:auto!important}.latex-command-modes{flex:1 1 100%!important}}
@media(max-width:760px){.latex-compile-action{width:100%!important;margin-left:0!important}.latex-command-menus,.latex-command-modes{width:100%!important}}

/* Generic action-row hardening for every page. */
.toolbar,.workspace-toolbar,.card-head,.row.between{max-width:100%!important;min-width:0!important}
.toolbar>.spacer,.workspace-toolbar>.spacer{min-width:0!important;flex:1 1 12px!important}
.toolbar .btn,.workspace-toolbar .btn,.card-head .btn{max-width:100%}

/* Dark pricing savings must remain high-contrast. */
html[data-theme="dark"] .annual-save{background:#f0cf78!important;color:#0d2138!important;border-color:#f6dfa0!important;text-shadow:none!important}

/* Footer stays above fixed shell utilities when a short page ends. */
.tera-institutional-footer{position:relative!important;z-index:40!important}
.control-header .system-time-summary{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.28);color:#f5f9ff}.control-header .system-time-summary .time-calendar{color:#f0cf78}.control-header .system-time-popover{color:var(--ink)}

/* v5.33.0 · responsive product navigation keeps the canonical one-row header usable. */
.ecosystem-product-menu{display:none;position:relative;flex:0 0 auto;min-width:0}
.ecosystem-product-menu>summary{list-style:none;cursor:pointer;white-space:nowrap}
.ecosystem-product-menu>summary::-webkit-details-marker{display:none}
.ecosystem-product-popover{position:absolute;left:0;top:calc(100% + 8px);z-index:140;display:grid;min-width:250px;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}
.ecosystem-product-popover a{display:block;padding:10px 12px;border-radius:8px;color:var(--ink);font-weight:760;text-decoration:none;white-space:nowrap}
.ecosystem-product-popover a:hover,.ecosystem-product-popover a:focus-visible{background:var(--surface2);text-decoration:none}
@media(max-width:2050px){.ecosystem-links{display:none!important}.ecosystem-product-menu{display:block!important}.compact-project{max-width:300px!important}}
@media(max-width:1380px){.compact-project{max-width:240px!important}.compact-search{padding-inline:10px!important}}
@media(max-width:1160px){.compact-project{max-width:205px!important}.system-status-menu .system-chip{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}


/* v5.34.0 · canonical shell visual acceptance recovery
   Shared-shell only: protected scientific page bodies remain unchanged. */
:root{--sidebar-width:270px;--shell-sidebar-max:340px}

/* Sidebar belongs to the grid again. It starts exactly where page content starts,
   stays below the sticky header while scrolling, and cannot manufacture a giant
   empty document or cover the footer. */
@media(min-width:921px){
  .layout{
    display:grid!important;
    grid-template-columns:minmax(78px,min(var(--sidebar-width),var(--shell-sidebar-max))) 10px minmax(0,1fr)!important;
    align-items:start!important;
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
  }
  .studio-sidebar{
    grid-column:1!important;
    position:sticky!important;
    left:auto!important;right:auto!important;bottom:auto!important;
    top:var(--shell-header-height)!important;
    width:auto!important;
    height:calc(100dvh - var(--shell-header-height))!important;
    max-height:calc(100dvh - var(--shell-header-height))!important;
    min-height:0!important;
    align-self:start!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
    z-index:18!important;
  }
  .shell-splitter{
    grid-column:2!important;
    position:sticky!important;
    left:auto!important;right:auto!important;bottom:auto!important;
    top:var(--shell-header-height)!important;
    width:10px!important;
    height:calc(100dvh - var(--shell-header-height))!important;
    max-height:calc(100dvh - var(--shell-header-height))!important;
    min-height:0!important;
    align-self:start!important;
    z-index:19!important;
  }
  .page{
    grid-column:3!important;
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    height:auto!important;
    align-self:start!important;
    overflow-x:clip!important;
    padding-bottom:28px!important;
  }
}

/* The shared header must adapt before it can steal width from scientific pages. */
.ecosystem-toolbar{
  width:100%!important;max-width:100vw!important;min-width:0!important;
  display:flex!important;flex-wrap:nowrap!important;align-items:center!important;
  gap:8px!important;padding-inline:14px!important;overflow:visible!important;
}
.ecosystem-toolbar>*{min-width:0!important}
.ecosystem-product-menu{flex:0 0 auto!important}
.compact-project{flex:1 1 250px!important;min-width:150px!important;max-width:280px!important}
.compact-project select{width:100%!important;min-width:0!important;max-width:none!important;text-overflow:ellipsis}
.user-controls{margin-left:auto!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex:0 0 auto!important;min-width:0!important}
.user-controls .segmented{flex:0 0 auto!important}
.user-controls .identity-menu{flex:0 0 auto!important}

/* Proactive compaction at ordinary laptop/desktop widths. */
@media(max-width:1720px){
  .workbench-id{display:none!important}
  .compact-project{max-width:260px!important}
  .user-controls .identity-summary-text{display:none!important}
  .system-time-summary #systemClockCompact{display:none!important}
  .system-time-summary{width:44px!important;min-width:44px!important;padding-inline:7px!important;justify-content:center!important}
}
@media(max-width:1540px){
  .history-nav{display:none!important}
  .compact-project label{display:none!important}
  .compact-project{max-width:235px!important;min-width:145px!important}
  .compact-search{width:44px!important;min-width:44px!important;padding:7px!important;font-size:0!important;justify-content:center!important}
  .compact-search::before{content:"⌕";font-size:18px;line-height:1;color:currentColor}
  .system-status-menu>summary{width:44px!important;min-width:44px!important;padding:7px!important;font-size:0!important;justify-content:center!important}
  .system-status-menu>summary::before{content:"●";font-size:18px;line-height:1;color:var(--green)}
  .user-controls{gap:5px!important}
  .seg-btn{padding-inline:8px!important}
}
@media(max-width:1320px){
  .compact-project{max-width:205px!important;min-width:130px!important}
  .ecosystem-product-menu>summary{padding-inline:10px!important}
  .user-controls .seg-btn{padding-inline:7px!important}
}
@media(max-width:1080px) and (min-width:921px){
  .compact-project{max-width:180px!important}
  .ecosystem-product-menu>summary{font-size:0!important;width:44px!important;padding:7px!important}
  .ecosystem-product-menu>summary::before{content:"≡";font-size:20px;line-height:1}
}

/* Protected page action bars: primary actions may reflow, but never be clipped. */
.latex-commandbar{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-rows:auto auto!important;
  gap:8px!important;
  align-items:start!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
  overflow:visible!important;white-space:normal!important;
}
.latex-command-menus{
  grid-column:1!important;grid-row:1!important;
  display:flex!important;flex-wrap:wrap!important;gap:4px!important;
  min-width:0!important;max-width:100%!important;overflow:visible!important;
}
.latex-compile-action{
  grid-column:2!important;grid-row:1!important;
  margin:0!important;align-self:start!important;justify-self:end!important;
  flex:0 0 auto!important;max-width:100%!important;white-space:normal!important;
}
.latex-command-modes{
  grid-column:1/-1!important;grid-row:2!important;
  display:flex!important;flex-wrap:wrap!important;gap:4px!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
}
.latex-command-separator,.latex-command-spacer{display:none!important}
@media(max-width:760px){
  .latex-commandbar{grid-template-columns:1fr!important}
  .latex-command-menus,.latex-compile-action,.latex-command-modes{grid-column:1!important}
  .latex-command-menus{grid-row:1!important}.latex-command-modes{grid-row:2!important}
  .latex-compile-action{grid-row:3!important;width:100%!important;justify-self:stretch!important}
}

/* All generic toolbar/card rows honor the center workspace boundary. */
.page .toolbar,.page .workspace-toolbar,.page .card-head,.page .row.between,.page .tabs,.page .subtabs{
  width:100%;max-width:100%;min-width:0;box-sizing:border-box
}
.page .toolbar,.page .workspace-toolbar,.page .card-head,.page .row.between{flex-wrap:wrap}
.page .btn,.page button,.page select,.page input,.page textarea{max-width:100%}

/* Account page stays compact and horizontal; no second internal sidebar. */
body[data-page="profile"] .profile-account-shell{min-height:0!important;height:auto!important;max-width:1480px!important}
body[data-page="profile"] .profile-account-main{align-items:start!important;grid-auto-rows:max-content!important}
body[data-page="profile"] .profile-account-main>section,
body[data-page="profile"] .profile-account-main .card,
body[data-page="profile"] .profile-account-main .card-body{min-height:0!important;height:auto!important}
body[data-page="profile"] .profile-nav-horizontal{position:static!important;top:auto!important}

/* Customer Tera is a normal product assistant. Internal authority implementation
   remains enforced by the backend and is not the visual center of the customer UI. */
body[data-page="assistant"] .authority-warning{max-width:100%;margin:0 0 12px!important;padding:10px 13px!important;background:var(--surface2)!important;border-left:3px solid var(--gold)!important}
body[data-page="assistant"] .tera-chat{min-height:0!important;height:auto!important}
body[data-page="assistant"] .tera-chat>.card-body{min-height:0!important;height:auto!important;grid-template-rows:auto minmax(180px,42vh) auto!important}
body[data-page="assistant"] .tera-log{min-height:180px!important;max-height:42vh!important}
body[data-page="assistant"] .scope-pill{display:none!important}

/* Short pages end naturally. The footer follows the grid instead of a fixed utility. */
.tera-institutional-footer{position:relative!important;clear:both!important;z-index:35!important}

/* Mobile shell remains single-column and free of horizontal overflow. */
@media(max-width:920px){
  .layout{display:block!important;min-height:0!important;height:auto!important}
  .studio-sidebar,.shell-splitter{display:none!important}
  .page{width:100%!important;max-width:100%!important;min-height:0!important;height:auto!important;padding:18px 14px!important;overflow-x:clip!important}
}

/* v5.34.0 narrow-shell acceptance: utilities remain inside the viewport. */
@media(max-width:920px){
  .ecosystem-toolbar{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto auto!important;
    grid-auto-rows:auto!important;
    gap:8px!important;
    align-items:center!important;
    width:100%!important;
    padding:8px 12px!important;
    overflow:visible!important;
  }
  .workbench-id,.history-nav{display:none!important}
  .ecosystem-product-menu{grid-column:1!important;grid-row:1!important}
  .compact-project{grid-column:2!important;grid-row:1!important;width:100%!important;max-width:none!important;min-width:0!important}
  .compact-project label{display:none!important}
  .compact-search{grid-column:3!important;grid-row:1!important;width:44px!important;min-width:44px!important;font-size:0!important;padding:7px!important}
  .compact-search::before{content:"⌕";font-size:18px;line-height:1}
  .system-status-menu{grid-column:4!important;grid-row:1!important}
  .system-status-menu>summary{width:44px!important;min-width:44px!important;font-size:0!important;padding:7px!important;justify-content:center!important}
  .system-status-menu>summary::before{content:"●";font-size:18px;line-height:1;color:var(--green)}
  .user-controls{
    grid-column:1/-1!important;grid-row:2!important;
    width:100%!important;max-width:100%!important;
    margin-left:0!important;justify-content:flex-end!important;
    flex-wrap:wrap!important;gap:6px!important;
  }
  .system-time-summary{width:44px!important;min-width:44px!important;padding-inline:7px!important;justify-content:center!important}
  .system-time-summary #systemClockCompact{display:none!important}
  .user-controls .identity-summary-text{display:none!important}
}
@media(max-width:620px){
  .ecosystem-toolbar{grid-template-columns:auto minmax(0,1fr) auto!important}
  .system-status-menu{display:none!important}
  .user-controls{justify-content:stretch!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr) auto!important}
  .user-controls .segmented{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important}
  .user-controls .identity-menu{width:auto!important;min-width:0!important;grid-column:auto!important}
  .identity-summary{width:46px!important;min-width:46px!important;padding:5px!important;justify-content:center!important}
}


/* v5.35.0 · Adaptive Research Workspace & TeraShell
   Geometry hardening: continuous splitters, no dead gutters, compact scientific headings. */
:root{--shell-splitter-visual:2px;--shell-splitter-hit:10px}

/* Canonical shell divider: the whole full-height edge is active; the grip is attached to it. */
@media(min-width:921px){
 .layout{column-gap:0!important}
 .shell-splitter{background:transparent!important;touch-action:none!important}
 .shell-splitter::before{left:4px!important;top:0!important;bottom:0!important;width:var(--shell-splitter-visual)!important;background:var(--border)!important}
 .shell-splitter::after{left:0!important;top:50%!important;transform:translateY(-50%)!important;width:10px!important;line-height:36px!important;margin:0!important}
 .shell-splitter:hover::before,.shell-splitter:focus-visible::before,.shell-splitter:active::before{background:var(--gold)!important;width:3px!important}
 .page{margin:0!important}
}

/* Manuscript uses the whole research viewport. Header content is compact; workbench reaches both useful edges. */
body[data-page="manuscript"] .page{padding-left:0!important;padding-right:0!important}
body[data-page="manuscript"] .page-head,
body[data-page="manuscript"] .workspace-toolbar{margin-left:24px!important;margin-right:24px!important}
body[data-page="manuscript"] .page-head{margin-top:0!important;margin-bottom:12px!important;align-items:center!important}
body[data-page="manuscript"] .page-head>div:first-child{display:grid!important;grid-template-columns:max-content minmax(0,1fr)!important;column-gap:16px!important;row-gap:4px!important;align-items:baseline!important;min-width:0!important;flex:1 1 auto!important}
body[data-page="manuscript"] .page-head .eyebrow{grid-column:1/-1!important;justify-self:start!important}
body[data-page="manuscript"] .page-head h1{grid-column:1!important;margin:2px 0 0!important;white-space:nowrap!important}
body[data-page="manuscript"] .page-head p{grid-column:2!important;margin:0!important;max-width:none!important;min-width:0!important;align-self:center!important}
body[data-page="manuscript"] .page-head>.row{flex:0 0 auto!important;align-self:center!important}
body[data-page="manuscript"] .workspace-toolbar{margin-top:0!important;margin-bottom:12px!important}
body[data-page="manuscript"] #manuscriptWorkspace{width:100%!important;margin:0!important}
body[data-page="manuscript"] #manuscriptWorkspace>.elastic-pane:first-child>.card{border-left:0!important;border-radius:0!important}
body[data-page="manuscript"] #manuscriptWorkspace>.elastic-pane:last-child>.card{border-right:0!important;border-radius:0!important}

/* Every workbench splitter is one continuous control: no spacer gutter, no detached handle. */
body[data-page="manuscript"] #manuscriptWorkspace>.splitter,
body[data-page="python"] #pythonWorkspace>.splitter{flex-basis:10px!important;width:10px!important;background:transparent!important;touch-action:none!important}
body[data-page="manuscript"] #manuscriptWorkspace>.splitter::before,
body[data-page="python"] #pythonWorkspace>.splitter::before{left:4px!important;top:0!important;bottom:0!important;width:2px!important}
body[data-page="manuscript"] #manuscriptWorkspace>.splitter::after,
body[data-page="python"] #pythonWorkspace>.splitter::after{left:0!important;top:50%!important;transform:translateY(-50%)!important;margin:0!important}

/* Python: preserve the authored studio and add a native TERA execution surface. */
body[data-page="python"] .page{padding-left:0!important;padding-right:0!important}
body[data-page="python"] .page-head,body[data-page="python"] .py-commandbar,body[data-page="python"] .py-utility{margin-left:24px!important;margin-right:24px!important}
body[data-page="python"] #pythonWorkspace{width:100%!important;margin:0!important}
body[data-page="python"] #pythonWorkspace>.elastic-pane:first-child>.card{border-left:0!important;border-radius:0!important}
body[data-page="python"] #pythonWorkspace>.elastic-pane:last-child>.card{border-right:0!important;border-radius:0!important}
.tera-shell{height:100%;min-height:360px;display:flex;flex-direction:column;background:#071421;border:1px solid color-mix(in srgb,var(--border) 75%,#000);border-radius:10px;overflow:hidden;color:#d9e8f7}
.tera-shell-head{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid #28415c;background:#0b1b2c;flex-wrap:wrap}
.tera-shell-head strong{color:#f0cf7b}.tera-shell-head span{color:#9db2c8;font-size:1rem}.tera-shell-head .spacer{flex:1}
.tera-shell-body{flex:1;min-height:0;overflow:auto;padding:13px 14px;font:500 1rem/1.55 ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.tera-shell-line{margin:0 0 7px}.tera-shell-prompt{color:#6ee7c7}.tera-shell-ok{color:#77e0a0}.tera-shell-bad{color:#ff9d9d}.tera-shell-muted{color:#8fa7bd}.tera-shell-section{color:#f0cf7b;font-weight:800}
.tera-shell-commandbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px;border-top:1px solid #28415c;background:#0b1b2c}
.tera-shell-commandbar input{min-height:42px;background:#071421;border-color:#35506c;color:#eaf4ff;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.tera-shell-help{padding:8px 12px;border-top:1px solid #20364d;color:#8fa7bd;font-size:1rem;background:#091827}
@media(max-width:1180px){body[data-page="manuscript"] .page-head>div:first-child{grid-template-columns:1fr!important}body[data-page="manuscript"] .page-head h1,body[data-page="manuscript"] .page-head p{grid-column:1!important}body[data-page="manuscript"] .page-head h1{white-space:normal!important}}
@media(max-width:920px){body[data-page="manuscript"] .page,body[data-page="python"] .page{padding:18px 14px!important}body[data-page="manuscript"] .page-head,body[data-page="manuscript"] .workspace-toolbar,body[data-page="python"] .page-head,body[data-page="python"] .py-commandbar,body[data-page="python"] .py-utility{margin-left:0!important;margin-right:0!important}.tera-shell-commandbar{grid-template-columns:1fr}}

/* v5.37.0 · Canonical Edge-to-Edge Research Workspace
   One shell, no duplicated page, no manufactured edge voids. Shared rules only. */
:root{
  --canonical-edge-gap:0px;
  --canonical-content-inset:24px;
  --canonical-divider-hit:10px;
  --canonical-divider-line:2px;
}

@media(min-width:921px){
  /* The sidebar, divider and page are contiguous. The hit target overlays the edge;
     it must never become a visible gutter. */
  .layout{
    grid-template-columns:minmax(78px,min(var(--sidebar-width),var(--shell-sidebar-max))) var(--canonical-divider-hit) minmax(0,1fr)!important;
    column-gap:0!important;
    row-gap:0!important;
    margin:0!important;
    padding:0!important;
  }
  .studio-sidebar{margin:0!important;border-radius:0!important}
  .shell-splitter{margin:0!important;padding:0!important;background:transparent!important}
  .shell-splitter::before{left:4px!important;width:var(--canonical-divider-line)!important}
  .page{
    margin:0!important;
    padding:22px var(--canonical-content-inset) 0!important;
    min-height:0!important;
    height:auto!important;
    border-radius:0!important;
  }

  /* Canonical scientific heading: use horizontal room before consuming height. */
  .page>.page-head{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:12px 20px!important;
    margin:0 0 12px!important;
  }
  .page>.page-head>div:first-child{
    min-width:0!important;
    display:grid!important;
    grid-template-columns:max-content minmax(260px,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:22px!important;
    row-gap:4px!important;
    align-items:baseline!important;
  }
  .page>.page-head .eyebrow{grid-column:1/-1!important;grid-row:1!important;justify-self:start!important}
  .page>.page-head h1{grid-column:1!important;grid-row:2!important;margin:2px 0 0!important;white-space:nowrap!important}
  .page>.page-head p{grid-column:2!important;grid-row:2!important;margin:0!important;max-width:none!important;min-width:0!important;align-self:center!important}
  .page>.page-head>.row{align-self:center!important;justify-self:end!important;margin:0!important}

  /* Work surfaces meet their own edges. Splitters are controls, not spacer columns. */
  .elastic-workspace{gap:0!important;margin-left:0!important;margin-right:0!important}
  .elastic-workspace>.splitter{margin:0!important;padding:0!important;background:transparent!important}
  .elastic-workspace>.splitter::before{width:var(--canonical-divider-line)!important}

  /* The page ends at its useful content. No artificial dark band before the footer. */
  .page>:last-child{margin-bottom:0!important}
  .tera-institutional-footer{margin-top:0!important}
}

/* The obsolete boxed collapse/expand control is not part of the canonical splitter model. */
.sidebar-collapse{display:none!important}
.sidebar-tools{justify-content:flex-start!important}

/* Python is the certification surface for the canonical geometry. */
@media(min-width:921px){
  body[data-page="python"] .page{padding-left:0!important;padding-right:0!important;padding-bottom:0!important}
  body[data-page="python"] .page-head,
  body[data-page="python"] .py-commandbar,
  body[data-page="python"] .py-utility{margin-left:var(--canonical-content-inset)!important;margin-right:var(--canonical-content-inset)!important}
  body[data-page="python"] .page-head{margin-top:0!important;margin-bottom:10px!important}
  body[data-page="python"] #pythonWorkspace{margin:0!important;width:100%!important;max-width:none!important}
  body[data-page="python"] #pythonWorkspace>.elastic-pane:first-child>.card{border-left:0!important;border-radius:0!important}
  body[data-page="python"] #pythonWorkspace>.elastic-pane:last-child>.card{border-right:0!important;border-radius:0!important}
  body[data-page="python"] #pythonWorkspace>.splitter{flex:0 0 var(--canonical-divider-hit)!important;width:var(--canonical-divider-hit)!important}
  body[data-page="python"] #pythonWorkspace>.splitter::before{left:4px!important}
  body[data-page="python"] .elastic-workspace{height:clamp(620px,calc(100dvh - var(--shell-header-height) - 215px),1100px)!important;min-height:620px!important}
}

/* On narrower screens the description returns below the title rather than creating overflow. */
@media(max-width:1320px) and (min-width:921px){
  .page>.page-head>div:first-child{grid-template-columns:1fr!important}
  .page>.page-head h1,.page>.page-head p{grid-column:1!important}
  .page>.page-head h1{white-space:normal!important}
}

/* Canonical full-height sidebar refinement.
   Python is the certification surface; because this lives in the shared shell,
   every research page inherits the same no-dead-space behavior. */
@media(min-width:921px){
  .studio-sidebar{
    display:flex!important;
    flex-direction:column!important;
    padding:0!important;
    overflow:hidden!important;
    min-height:0!important;
  }
  .sidebar-nav-scroll{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
    padding:18px 12px 8px!important;
  }
  .sidebar-footer{
    flex:0 0 auto!important;
    margin:0!important;
    padding:12px 14px 14px!important;
    border-top:1px solid var(--border)!important;
    background:var(--surface)!important;
    line-height:1.35!important;
  }
  .sidebar-footer strong{display:block;color:var(--ink);font-weight:800}
  .sidebar-footer br{display:none}
  .sidebar-footer .nav-text{display:block;margin-top:3px;font-size:1rem;color:var(--muted)}
  .sidebar-collapsed .sidebar-footer{padding:10px 4px!important}
  .sidebar-collapsed .sidebar-footer strong{font-size:0;text-align:center}
  .sidebar-collapsed .sidebar-footer strong::after{content:'T';font-size:1.05rem}
}

/* A light theme must remain light even inside TeraShell. */
html[data-theme="light"] .tera-shell{background:var(--surface);color:var(--ink);border-color:var(--border)}
html[data-theme="light"] .tera-shell-head,
html[data-theme="light"] .tera-shell-commandbar,
html[data-theme="light"] .tera-shell-help{background:var(--surface2);border-color:var(--border);color:var(--muted)}
html[data-theme="light"] .tera-shell-head strong,
html[data-theme="light"] .tera-shell-section{color:var(--gold)}
html[data-theme="light"] .tera-shell-head span,
html[data-theme="light"] .tera-shell-muted{color:var(--muted)}
html[data-theme="light"] .tera-shell-commandbar input{background:var(--surface);border-color:var(--border);color:var(--ink)}
html[data-theme="light"] .tera-shell-prompt{color:var(--green)}
html[data-theme="light"] .tera-shell-ok{color:var(--green)}
html[data-theme="light"] .tera-shell-bad{color:var(--red)}

/* Canonical motion + edge/theme hardening. */
.math-wave{stroke-dasharray:980;animation:teraMathTrace 9s ease-in-out infinite}.math-runner{filter:drop-shadow(0 2px 5px rgba(255,210,92,.45))}.math-contour{transform-box:fill-box;transform-origin:center;animation:teraContour 6.5s ease-in-out infinite}.contour-b{animation-delay:.7s}.contour-c{animation-delay:1.4s}
@keyframes teraMathTrace{0%,100%{stroke-dashoffset:0}50%{stroke-dashoffset:-120}}
@keyframes teraContour{0%,100%{transform:scale(1);opacity:.42}50%{transform:scale(1.055,.9);opacity:.78}}
@media(prefers-reduced-motion:reduce){.math-wave,.math-contour{animation:none!important}.math-runner{display:none}}
/* Sidebar = navigation (1fr) + identity (auto), with no remainder below identity. */
@media(min-width:921px){.studio-sidebar{bottom:0!important}.sidebar-nav-scroll{height:auto!important;max-height:none!important}.sidebar-footer{margin-top:auto!important}}
/* Content-driven dashboard cards: no manufactured tall empty card in short states. */
.studio-dashboard{height:auto!important;min-height:0!important}.dashboard-lower>.card{align-self:start!important}.studio-action-cue{min-height:0!important}
/* Theme tokens own informational/action surfaces; no light card hard-coding in dark mode. */
.studio-action-cue{background:var(--surface2)!important;color:var(--ink)!important;border-color:var(--border)!important}.studio-action-cue p{color:var(--muted)!important}.studio-action-btn{background:var(--surface)!important;color:var(--blue)!important;border-color:var(--border)!important}
html[data-theme="dark"] .studio-action-cue{background:var(--surface2)!important;color:var(--ink)!important}

/* Canonical final geometry correction: the grid owns sidebar height; no fixed/sticky
   utility may continue behind the institutional footer on short pages. */
@media(min-width:921px){
  .layout{align-items:stretch!important;min-height:0!important;height:auto!important}
  .studio-sidebar{
    position:relative!important;top:auto!important;bottom:auto!important;left:auto!important;
    height:100%!important;max-height:none!important;align-self:stretch!important;
    overflow:hidden!important;display:flex!important;flex-direction:column!important;
  }
  .sidebar-nav-scroll{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important}
  .sidebar-footer{flex:0 0 auto!important;margin-top:auto!important}
  .shell-splitter{position:relative!important;left:auto!important;top:auto!important;bottom:auto!important;height:100%!important;align-self:stretch!important}
}
/* Dynamic canvas replaces the formerly static hero-surface image. */
.auth-science-research canvas.surface-art{display:block;object-fit:contain;animation:none!important}


/* Studio approved scientific surface image */
.math-hero.math-hero-image{
  min-height:0;
  padding:0;
  overflow:hidden;
  background:#fff;
  border:1px solid var(--border);
  border-radius:14px;
}
.math-hero-image img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1836/856;
  object-fit:cover;
  object-position:center;
}
html[data-theme="dark"] .math-hero.math-hero-image,
html[data-theme="light"] .math-hero.math-hero-image{background:#fff;}


/* v5.37.1 · Studio hero correction + content-driven page ending
   Use the approved scientific surface while removing manufactured vertical voids. */
@media(min-width:921px){
  /* The research shell utilities must never set the document height. */
  .layout{
    display:grid!important;
    grid-template-columns:minmax(78px,min(var(--sidebar-width),var(--shell-sidebar-max))) var(--canonical-divider-hit) minmax(0,1fr)!important;
    align-items:start!important;
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
  }
  .studio-sidebar{
    position:fixed!important;
    left:0!important;
    top:var(--shell-header-height)!important;
    bottom:0!important;
    width:min(var(--sidebar-width),var(--shell-sidebar-max))!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    z-index:18!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    align-self:auto!important;
  }
  .sidebar-nav-scroll{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
  }
  .sidebar-footer{flex:0 0 auto!important;margin-top:auto!important}
  .shell-splitter{
    position:fixed!important;
    left:min(var(--sidebar-width),var(--shell-sidebar-max))!important;
    top:var(--shell-header-height)!important;
    bottom:0!important;
    width:var(--canonical-divider-hit)!important;
    height:auto!important;
    max-height:none!important;
    align-self:auto!important;
    z-index:19!important;
  }
  .page{
    grid-column:3!important;
    align-self:start!important;
    min-height:0!important;
    height:auto!important;
    padding-bottom:24px!important;
  }

  /* Full scientific workbenches keep canonical pane stretch.
     Content-driven behavior is scoped only to pages that explicitly opt into it below. */

  /* Studio page: image keeps its natural aspect ratio and the left column no longer stretches. */
  #studioWorkspace{height:auto!important;min-height:0!important;max-height:none!important}
  #studioWorkspace>.elastic-pane:first-child,
  #studioWorkspace>.elastic-pane:first-child>.card,
  #studioWorkspace>.elastic-pane:first-child>.card>.studio-dashboard-body{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
  #studioWorkspace>.elastic-pane:last-child,
  #studioWorkspace>.elastic-pane:last-child>.card,
  #studioWorkspace>.elastic-pane:last-child>.card>.studio-context-body{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  .studio-dashboard-body{display:block!important}
  .studio-context-body{overflow:visible!important}
  .studio-hero{align-items:start!important}
  .math-hero.math-hero-image{align-self:start!important}
  .math-hero-image img{width:100%!important;height:auto!important;object-fit:contain!important}

  /* Footer follows the real end of page content. */
  .tera-institutional-footer{
    position:relative!important;
    clear:both!important;
    margin-top:0!important;
    z-index:40!important;
  }
}


/* v5.37.2 · Canonical shell alignment + Studio/Projects de-stretching */
@media(min-width:921px){
  /* Shared shell: sidebar starts exactly where the page starts. */
  .layout{
    display:grid!important;
    grid-template-columns:minmax(78px,min(var(--sidebar-width),var(--shell-sidebar-max))) var(--canonical-divider-hit) minmax(0,1fr)!important;
    align-items:start!important;
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
  }
  .studio-sidebar{
    grid-column:1!important;
    position:sticky!important;
    top:0!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:auto!important;
    height:calc(100dvh - 0px)!important;
    max-height:100dvh!important;
    min-height:0!important;
    align-self:start!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
    z-index:18!important;
  }
  .sidebar-nav-scroll{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
  }
  .sidebar-footer{flex:0 0 auto!important;margin-top:auto!important}
  .shell-splitter{
    grid-column:2!important;
    position:sticky!important;
    top:0!important;
    left:auto!important;
    bottom:auto!important;
    width:var(--canonical-divider-hit)!important;
    height:100dvh!important;
    max-height:100dvh!important;
    align-self:start!important;
    z-index:19!important;
  }
  .page{
    grid-column:3!important;
    align-self:start!important;
    min-height:0!important;
    height:auto!important;
    padding-bottom:24px!important;
  }

  /* Content-driven workspaces for non-console scientific pages. */
  body[data-page="studio"] .elastic-workspace,
  body[data-page="projects"] .elastic-workspace,
  body[data-page="figures"] .elastic-workspace,
  body[data-page="tera"] .elastic-workspace{
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    align-items:flex-start!important;
    overflow:visible!important;
  }
  body[data-page="studio"] .elastic-pane,
  body[data-page="projects"] .elastic-pane,
  body[data-page="figures"] .elastic-pane,
  body[data-page="tera"] .elastic-pane{align-self:flex-start!important;overflow:visible!important}
  body[data-page="studio"] .elastic-pane>.card,
  body[data-page="projects"] .elastic-pane>.card,
  body[data-page="figures"] .elastic-pane>.card,
  body[data-page="tera"] .elastic-pane>.card{height:auto!important}
  body[data-page="studio"] .elastic-pane>.card>.card-body,
  body[data-page="projects"] .elastic-pane>.card>.card-body,
  body[data-page="figures"] .elastic-pane>.card>.card-body,
  body[data-page="tera"] .elastic-pane>.card>.card-body{min-height:0!important;overflow:visible!important}

  /* Studio page */
  #studioWorkspace{height:auto!important;min-height:0!important;max-height:none!important}
  .studio-dashboard{height:auto!important;min-height:0!important}
  .studio-dashboard-body{display:block!important}
  .studio-hero{align-items:start!important;grid-template-columns:minmax(0,1.55fr) minmax(290px,.78fr)!important}
  .math-hero.math-hero-image{
    align-self:start!important;
    min-height:0!important;
    padding:0!important;
    background:transparent!important;
    border:1px solid var(--border)!important;
    border-radius:14px!important;
    box-shadow:none!important;
  }
  .math-hero-image img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    object-fit:contain!important;
    aspect-ratio:auto!important;
    border-radius:14px!important;
  }
  .continue-card{align-self:start!important}
  .research-state-strip{align-items:start!important}
  .dashboard-lower{display:grid!important;grid-template-columns:1fr 1fr 1fr!important;gap:14px!important;align-items:start!important}
  .dashboard-lower>.card{align-self:start!important;height:auto!important}
  .dashboard-lower>.card>.card-body{overflow:visible!important}
  #studioWorkspace>.elastic-pane:last-child>.card>.card-body{overflow:auto!important}

  /* Projects page: compact left summary/registry rather than equal-height dark void. */
  #projectWorkspace{height:auto!important;min-height:0!important;max-height:none!important}
  #projectWorkspace>.elastic-pane:first-child,
  #projectWorkspace>.elastic-pane:first-child>.card,
  #projectWorkspace>.elastic-pane:first-child>.card>.card-body{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }
  #projectWorkspace>.elastic-pane:first-child>.card>.card-body.pane-fill{
    display:block!important;
    overflow:visible!important;
  }
  #projectWorkspace>.elastic-pane:first-child .scroll-fill{flex:0 0 auto!important;overflow:visible!important;min-height:0!important}
  #projectWorkspace>.elastic-pane:last-child,
  #projectWorkspace>.elastic-pane:last-child>.card,
  #projectWorkspace>.elastic-pane:last-child>.card>.card-body{height:auto!important;min-height:0!important;max-height:none!important}

  /* Footer remains canonical and follows real content end. */
  .tera-institutional-footer{position:relative!important;clear:both!important;margin-top:0!important;z-index:40!important}
}


/* v5.37.3 · Canonical shell geometry repair
   Dynamic header metrics drive fixed navigation; page content alone determines document height. */
@media(min-width:921px){
  .layout{
    display:grid!important;
    grid-template-columns:minmax(78px,min(var(--sidebar-width),var(--shell-sidebar-max))) var(--canonical-divider-hit) minmax(0,1fr)!important;
    align-items:start!important;
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
  }
  .studio-sidebar{
    position:fixed!important;
    left:0!important;
    top:var(--shell-header-height)!important;
    bottom:0!important;
    width:min(var(--sidebar-width),var(--shell-sidebar-max))!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    z-index:18!important;
  }
  .sidebar-nav-scroll{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-gutter:stable!important;
  }
  .sidebar-footer{flex:0 0 auto!important;margin-top:auto!important}
  .shell-splitter{
    position:fixed!important;
    left:min(var(--sidebar-width),var(--shell-sidebar-max))!important;
    top:var(--shell-header-height)!important;
    bottom:0!important;
    width:var(--canonical-divider-hit)!important;
    height:auto!important;
    max-height:none!important;
    z-index:19!important;
  }
  .page{grid-column:3!important;min-height:0!important;height:auto!important;align-self:start!important}

  /* Studio: compact lower work area with internal scrolling instead of a tall empty row. */
  #studioWorkspace{height:auto!important;min-height:0!important;max-height:none!important;align-items:flex-start!important;overflow:visible!important}
  #studioWorkspace>.elastic-pane{align-self:flex-start!important;overflow:visible!important}
  #studioWorkspace>.elastic-pane>.card{height:auto!important}
  #studioWorkspace>.elastic-pane:first-child>.card>.studio-dashboard-body{overflow:visible!important}
  #studioWorkspace>.elastic-pane:last-child>.card>.studio-context-body{max-height:760px!important;overflow:auto!important}
  .studio-hero{align-items:start!important;grid-template-columns:minmax(0,1.55fr) minmax(300px,.78fr)!important}
  .math-hero.math-hero-image{align-self:start!important;background:var(--surface2)!important;padding:0!important;min-height:0!important;overflow:hidden!important}
  .math-hero-image-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:16px!important;padding:14px 16px 8px!important;background:var(--surface2)!important;color:var(--ink)!important}
  .math-hero-image-head h3{margin:0!important;color:var(--gold)!important;font-size:1.15rem!important}
  .math-hero-image-head p{margin:2px 0 0!important;color:var(--ink)!important;font-size:1rem!important}
  .math-hero-image-head .mono{font-weight:800!important;white-space:nowrap!important;color:var(--ink)!important}
  .math-hero-image img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;background:#102033!important}
  .research-state-strip{align-items:start!important}
  .dashboard-lower{display:grid!important;grid-template-columns:1.08fr .92fr .92fr!important;gap:14px!important;align-items:stretch!important;grid-auto-rows:310px!important}
  .dashboard-lower>.card{height:310px!important;min-height:0!important;display:flex!important;flex-direction:column!important}
  .dashboard-lower>.card>.card-head{flex:0 0 auto!important}
  .dashboard-lower>.card>.card-body{flex:1 1 auto!important;min-height:0!important;overflow:auto!important}

  /* Projects: bounded two-pane workbench. Long charter content scrolls inside its pane. */
  #projectWorkspace{
    height:clamp(620px,calc(100dvh - var(--shell-header-height) - 165px),820px)!important;
    min-height:620px!important;
    max-height:820px!important;
    align-items:stretch!important;
    overflow:hidden!important;
  }
  #projectWorkspace>.elastic-pane{align-self:stretch!important;overflow:hidden!important}
  #projectWorkspace>.elastic-pane>.card{height:100%!important;display:flex!important;flex-direction:column!important}
  #projectWorkspace>.elastic-pane>.card>.card-head{flex:0 0 auto!important}
  #projectWorkspace>.elastic-pane>.card>.card-body{flex:1 1 auto!important;min-height:0!important;overflow:auto!important}
  #projectWorkspace>.elastic-pane:first-child>.card>.card-body.pane-fill{display:flex!important;flex-direction:column!important}
  #projectWorkspace>.elastic-pane:first-child .scroll-fill{flex:1 1 auto!important;min-height:0!important;overflow:auto!important}

  .tera-institutional-footer{position:relative!important;clear:both!important;margin-top:0!important;z-index:40!important}
}

@media(max-width:1320px) and (min-width:921px){
  .studio-hero{grid-template-columns:1fr!important}
  .dashboard-lower{grid-template-columns:1fr 1fr!important;grid-auto-rows:300px!important}
  .dashboard-lower>.card{height:300px!important}
}


/* v5.37.4 · Canonical workbench recovery
   Workspace navigation stays reachable; authored multi-pane tools fill their workbench instead of
   leaving unowned dark document voids. */
@media(min-width:921px){
  /* The primary research navigation never scrolls out of sight. */
  .studio-sidebar{display:flex!important;flex-direction:column!important;overflow:hidden!important}
  .sidebar-primary-nav{
    flex:0 0 auto!important;
    padding:16px 12px 10px!important;
    background:var(--surface)!important;
    border-bottom:1px solid var(--border)!important;
    position:relative!important;
    z-index:3!important;
  }
  .sidebar-primary-nav .sidebar-tools{padding:0!important;margin:0 0 4px!important}
  .sidebar-primary-nav .nav-group{margin:0!important}
  .sidebar-primary-nav .nav-link{margin:3px 0!important}
  .sidebar-nav-scroll{
    flex:1 1 auto!important;
    min-height:0!important;
    padding:10px 12px 8px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
  }

  /* Canonical viewport workbenches: panes stretch to the workbench and scroll internally. */
  body[data-page="discovery"] #discoveryWorkspace,
  body[data-page="manuscript"] #manuscriptWorkspace,
  body[data-page="book"] #bookWorkspace,
  body[data-page="data"] #dataWorkspace,
  body[data-page="references"] #referenceWorkspace,
  body[data-page="audio"] #audioWorkspace,
  body[data-page="experiments"] #experimentWorkspace,
  body[data-page="latex"] #latexWorkspace,
  body[data-page="publication-canvas"] #publicationWorkspace{
    height:clamp(560px,calc(100dvh - var(--shell-header-height) - 185px),900px)!important;
    min-height:560px!important;
    max-height:900px!important;
    align-items:stretch!important;
    overflow:hidden!important;
  }
  body[data-page="discovery"] #discoveryWorkspace>.elastic-pane,
  body[data-page="manuscript"] #manuscriptWorkspace>.elastic-pane,
  body[data-page="book"] #bookWorkspace>.elastic-pane,
  body[data-page="data"] #dataWorkspace>.elastic-pane,
  body[data-page="references"] #referenceWorkspace>.elastic-pane,
  body[data-page="audio"] #audioWorkspace>.elastic-pane,
  body[data-page="experiments"] #experimentWorkspace>.elastic-pane,
  body[data-page="latex"] #latexWorkspace>.elastic-pane,
  body[data-page="publication-canvas"] #publicationWorkspace>.elastic-pane{
    align-self:stretch!important;
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  body[data-page="discovery"] #discoveryWorkspace>.elastic-pane>.card,
  body[data-page="manuscript"] #manuscriptWorkspace>.elastic-pane>.card,
  body[data-page="book"] #bookWorkspace>.elastic-pane>.card,
  body[data-page="data"] #dataWorkspace>.elastic-pane>.card,
  body[data-page="references"] #referenceWorkspace>.elastic-pane>.card,
  body[data-page="audio"] #audioWorkspace>.elastic-pane>.card,
  body[data-page="experiments"] #experimentWorkspace>.elastic-pane>.card,
  body[data-page="latex"] #latexWorkspace>.elastic-pane>.card,
  body[data-page="publication-canvas"] #publicationWorkspace>.elastic-pane>.card{
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
  }
  body[data-page="discovery"] #discoveryWorkspace>.elastic-pane>.card>.card-body,
  body[data-page="manuscript"] #manuscriptWorkspace>.elastic-pane>.card>.card-body,
  body[data-page="book"] #bookWorkspace>.elastic-pane>.card>.card-body,
  body[data-page="data"] #dataWorkspace>.elastic-pane>.card>.card-body,
  body[data-page="references"] #referenceWorkspace>.elastic-pane>.card>.card-body,
  body[data-page="audio"] #audioWorkspace>.elastic-pane>.card>.card-body,
  body[data-page="experiments"] #experimentWorkspace>.elastic-pane>.card>.card-body,
  body[data-page="latex"] #latexWorkspace>.elastic-pane>.card>.card-body,
  body[data-page="publication-canvas"] #publicationWorkspace>.elastic-pane>.card>.card-body{
    flex:1 1 auto!important;
    min-height:0!important;
  }

  /* Empty Discovery states occupy the pane instead of ending early above a large void. */
  body[data-page="discovery"] #entryDetail{height:100%!important;min-height:0!important;overflow:auto!important}
  body[data-page="discovery"] #entryDetail>.workspace-empty{height:100%!important;min-height:0!important}

  /* Manuscript authoring surface uses the available center pane height. */
  body[data-page="manuscript"] #manuscriptWorkspace .pane-fill{height:100%!important;min-height:0!important}
  body[data-page="manuscript"] #manuscriptWorkspace #ed{flex:1 1 auto!important;height:auto!important;min-height:0!important;resize:none!important}
  body[data-page="manuscript"] #manuscriptWorkspace #preview{flex:1 1 auto!important;min-height:0!important}

  /* The institutional footer follows the workbench, never an artificial document spacer. */
  .tera-institutional-footer{position:relative!important;clear:both!important;margin-top:0!important}
}

/* v5.37.5 · Primary research navigation is a structural shell region, never scroll content. */
@media(min-width:921px){
  .studio-sidebar>.sidebar-primary-nav{display:block!important;visibility:visible!important;flex:0 0 auto!important;order:0!important;overflow:visible!important}
  .studio-sidebar>.sidebar-nav-scroll{order:1!important;flex:1 1 auto!important;min-height:0!important}
  .studio-sidebar>.sidebar-footer{order:2!important;flex:0 0 auto!important}
}

/* v7.0.0 · Time in TERA: the session duration next to the date, and its details. */
.system-time-summary .time-session{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-weight:750;font-variant-numeric:tabular-nums}
.system-time-summary .time-session::before{content:'';width:1px;height:20px;background:var(--border)}
.system-time-summary .time-session[hidden]{display:none!important}
.control-header .system-time-summary .time-session::before{background:rgba(255,255,255,.35)}
.system-time-popover .time-break{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 8px 4px;font-weight:700;color:var(--ink)}
.system-time-popover .time-break select{min-height:40px;font-size:18px;max-width:230px}
.system-time-popover .time-note{margin:6px 8px 2px;color:var(--muted);font-size:18px;line-height:1.45}
.tc-card{margin-bottom:18px}
.tc-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tc-head h2{margin:0}
.tc-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.tc-row{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
.tc-row p{margin:4px 0 0;color:var(--muted)}
.tc-ico{flex:0 0 auto;display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;font-weight:800;background:var(--surface2);color:var(--muted)}
.tc-ok .tc-ico{background:var(--green2);color:var(--green)}
.tc-bad{border-color:color-mix(in srgb,var(--red) 50%,var(--border))}
.tc-bad .tc-ico{background:var(--red2);color:var(--red)}
.tc-log{margin-top:12px}
.tc-log summary{cursor:pointer;font-weight:750}
.tc-log table{font-size:18px}
@media (max-width:1999px){.control-header .system-time-summary .time-session{display:none!important}}
.tc-row p.tc-choice{color:var(--ink)}.tc-choice .btn{margin-left:8px}

/* Official TeraSystemsAI documents open on terasystems.ai in a new tab. */
.official-doc-link::after{content:"\2197";margin-left:4px;font-weight:700;opacity:.85}

.notice.official-doc{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 16px}
.notice.official-doc strong{flex-basis:100%}
.notice.official-doc .official-doc-link{margin-left:auto;text-decoration:none}
.official-mail{margin:8px 0;padding-left:20px}.official-mail li{margin:4px 0}.official-mail span{color:var(--muted)}

.my-allowed{list-style:none;margin:8px 0;padding:0;display:grid;gap:8px}.my-allowed li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
#trustCheckHost:empty{display:none}#trustCheckHost .tc-card{box-shadow:none;border:0;margin:0}#trustCheckHost .tc-card>.card-body{padding:0}

/* Equations in activity lists: typeset on one line, never shown as LaTeX source. */
.act-tex{display:inline-block;max-width:min(100%,520px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;vertical-align:middle;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--ink)}
.act-tex.tex-ok{font-family:inherit;overflow-x:hidden;mask-image:linear-gradient(90deg,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent)}
.act-tex svg{display:inline-block;height:auto;max-height:1.7em;width:auto;vertical-align:middle}

/* References (elevated): stats that filter, a library you can sort, a clear reference view. */
.rf-ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vertical-align:-4px}
.rf-ico-l{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rf-stats{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px}
.rf-stat{display:flex;align-items:baseline;gap:8px;padding:8px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer}
.rf-stat strong{font-size:22px;font-variant-numeric:tabular-nums}.rf-stat span{color:var(--muted)}
.rf-stat:hover{border-color:var(--gold)}.rf-stat.on{border-color:var(--blue2);box-shadow:inset 0 0 0 1px var(--blue2)}
.rf-stat.rf-good strong{color:var(--green)}.rf-stat.rf-warn strong{color:var(--amber)}.rf-stat.rf-bad{cursor:help;border-color:color-mix(in srgb,var(--red) 45%,var(--border))}.rf-stat.rf-bad strong{color:var(--red)}
.rf-search{display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--muted)}
.rf-search input{border:0;background:transparent;min-width:0;flex:1;box-shadow:none;padding-left:0}.rf-search:focus-within{border-color:var(--blue2)}
.rf-sort{display:flex;align-items:center;gap:8px;margin:10px 0}.rf-sort label{margin:0;white-space:nowrap}.rf-sort select{flex:1;min-width:0}
.rf-list{display:grid;align-content:start;gap:8px}
.rf-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.rf-card:hover{border-color:var(--gold)}.rf-card.active{border-color:var(--blue2);box-shadow:inset 3px 0 0 var(--gold)}
.rf-card-ico{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--surface2);color:var(--blue)}
.rf-card-main{display:grid;gap:3px;min-width:0}.rf-card-main>strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.3}
.rf-card-main>span:not(.rf-card-tags){color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rf-card-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.rf-key{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--gold-ink,var(--ink));background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:0 6px;font-size:18px;overflow-wrap:anywhere}
.rf-head{display:grid;gap:8px;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:12px}
.rf-head h2{margin:0;font-size:24px;line-height:1.25}.rf-byline{margin:0;color:var(--muted)}
.rf-type{display:inline-flex;align-items:center;gap:6px;color:var(--blue);font-weight:700}
.rf-chips,.rf-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.rf-actions .btn{display:inline-flex;align-items:center;gap:6px}
.rf-sec{margin:6px 0 10px}.rf-sec h3{margin:0 0 8px;font-size:19px}.rf-sec .grid.two{gap:0 14px}.rf-wide{grid-column:1/-1}
.rf-save{margin:10px 0}.rf-save .btn{display:inline-flex;align-items:center;gap:6px}
.rf-bib{margin-top:10px}.rf-bib summary{cursor:pointer;font-weight:700}
.rf-files{margin:6px 0;padding-left:18px}.rf-formatted{margin:6px 0 0;line-height:1.5}.rf-boundary{margin-top:12px}
.rf-welcome{display:grid;justify-items:center;gap:10px;max-width:720px;margin:24px auto;text-align:center}
.rf-welcome h2{margin:0}.rf-welcome p{margin:0;color:var(--muted)}
.rf-welcome-ico{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:var(--surface2);color:var(--gold)}
.rf-ways{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;width:100%;margin-top:10px}
.rf-way{display:grid;justify-items:start;gap:4px;padding:14px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.rf-way:hover{border-color:var(--gold);transform:translateY(-1px)}.rf-way .rf-ico{color:var(--blue);width:26px;height:26px}.rf-way small{color:var(--muted);font-size:18px;line-height:1.35}
.rf-card:focus-visible,.rf-way:focus-visible,.rf-stat:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.reference-workspace .rf-sort{display:flex!important;flex-direction:row!important;align-items:center;gap:8px}.reference-workspace .rf-sort label{margin:0!important;text-align:left}
.rf-card .rf-key{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rf-search input,html[data-theme] .rf-search input{background:transparent!important;border:0!important;box-shadow:none!important}

/* Experiments (elevated): a lifecycle you can see, a protocol that shows what is still to plan, an outcome checked
   against the declared target, and runs you can link and compare by choice. */
.ex-ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vertical-align:-4px}
.ex-ico-l{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.ex-btn{display:inline-flex;align-items:center;gap:6px}.ex-icon{padding:6px 9px}
.ex-workspace{height:clamp(660px,calc(100vh - 230px),1150px)}
.ex-status{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:999px;border:1px solid;font-weight:700;line-height:1.4;white-space:nowrap}
.ex-status::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.ex-tone-muted{color:var(--muted)}.ex-tone-blue{color:var(--blue)}.ex-tone-amber{color:var(--amber)}.ex-tone-green{color:var(--green)}.ex-tone-red{color:var(--red)}
.ex-status.ex-tone-muted{border-color:var(--border);background:var(--surface2)}
.ex-status.ex-tone-blue{border-color:color-mix(in srgb,var(--blue) 40%,transparent);background:color-mix(in srgb,var(--blue) 9%,transparent)}
.ex-status.ex-tone-amber{border-color:color-mix(in srgb,var(--amber) 45%,transparent);background:color-mix(in srgb,var(--amber) 10%,transparent)}
.ex-status.ex-tone-green{border-color:color-mix(in srgb,var(--green) 45%,transparent);background:color-mix(in srgb,var(--green) 9%,transparent)}
.ex-status.ex-tone-red{border-color:color-mix(in srgb,var(--red) 45%,transparent);background:color-mix(in srgb,var(--red) 8%,transparent)}
.ex-search{display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--muted)}
.ex-search input,html[data-theme] .ex-search input{flex:1;min-width:0;border:0!important;background:transparent!important;box-shadow:none!important;padding-left:0}
.ex-search:focus-within{border-color:var(--blue2)}
.ex-filters{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.ex-filter{padding:4px 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer}
.ex-filter.on{background:var(--gold2);border-color:var(--gold);font-weight:700}
.ex-list{display:grid;align-content:start;gap:8px}
.ex-card{display:grid;gap:6px;width:100%;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.ex-card:hover{border-color:color-mix(in srgb,var(--gold) 60%,var(--border))}
.ex-card.active{border-color:var(--gold);box-shadow:inset 4px 0 0 var(--gold);background:color-mix(in srgb,var(--gold2) 40%,var(--surface))}
.ex-card:focus-visible,.ex-filter:focus-visible,.ex-life-step:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.ex-card-top{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ex-card>strong{line-height:1.3}
.ex-card-q{color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}
.ex-card-meta{display:flex;flex-wrap:wrap;gap:12px;align-items:center;color:var(--muted)}.ex-card-meta>span{display:inline-flex;align-items:center;gap:4px}
.ex-card-meta .ex-ico{width:17px;height:17px}
.ex-verdict{font-weight:700}
.ex-tag{display:inline-flex;align-items:center;padding:1px 9px;border:1px dashed var(--border);border-radius:999px;color:var(--muted);background:transparent;font:inherit}
.ex-tag-link{cursor:pointer}.ex-tag-link:hover{color:var(--ink);border-style:solid}
.ex-empty-list{display:grid;gap:6px;padding:14px;border:1px dashed var(--border);border-radius:12px;color:var(--muted)}.ex-empty-list strong{color:var(--ink)}
.ex-welcome{display:grid;justify-items:center;gap:12px;max-width:640px;margin:28px auto;text-align:center}
.ex-welcome h2{margin:0}.ex-welcome>p{margin:0;color:var(--muted);line-height:1.5}
.ex-welcome-ico{display:grid;place-items:center;width:70px;height:70px;border-radius:50%;background:var(--surface2);color:var(--gold)}
.ex-steps{counter-reset:exs;list-style:none;display:grid;gap:8px;width:100%;margin:6px 0;padding:0;text-align:left}
.ex-steps li{counter-increment:exs;display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 12px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.ex-steps li::before{content:counter(exs);grid-row:span 2;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--surface2);font-weight:800}
.ex-steps span{color:var(--muted)}
.ex-head{display:grid;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:14px}
.ex-head-top{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ex-id{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted)}
.ex-head h2{margin:0;font-size:26px;line-height:1.25}
.ex-life{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ex-life-step{display:inline-flex;align-items:center;gap:8px;padding:4px 12px 4px 5px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font:inherit;font-weight:650;cursor:pointer}
.ex-life-step>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;border:2px solid var(--border);font-weight:800}
.ex-life-step.past{color:var(--ink)}.ex-life-step.past>span{border-color:var(--green);color:var(--green)}
.ex-life-step.on{background:var(--gold2);border-color:var(--gold);color:var(--ink)}.ex-life-step.on>span{background:var(--gold);border-color:var(--gold);color:#1d1606}
.ex-life-other{width:auto!important;min-height:38px;border-radius:999px;padding:0 12px}
.ex-actions{display:flex;flex-wrap:wrap;gap:8px}
.ex-question{display:grid;gap:10px;margin-bottom:14px}
.ex-question small,.ex-tile small{display:block;color:var(--muted);font-size:18px;font-weight:650}
.ex-question p{margin:2px 0 0;line-height:1.5}
.ex-question blockquote{margin:4px 0 0;padding:10px 14px;border-left:4px solid var(--gold);background:var(--surface2);border-radius:0 10px 10px 0;font-size:19px;line-height:1.5}
.ex-missing-text{color:var(--amber);font-weight:600;margin:4px 0 0}
.ex-sec{margin:0 0 14px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.ex-sec-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.ex-sec-head h3{margin:0;font-size:19px}.ex-sec-head>span{color:var(--muted)}
.ex-ready{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-weight:650}
.ex-ready-bar{display:inline-block;width:90px;height:8px;border-radius:999px;background:var(--surface2);overflow:hidden}.ex-ready-bar>span{display:block;height:100%;background:var(--amber)}
.ex-ready.full{color:var(--green)}.ex-ready.full .ex-ready-bar>span{background:var(--green)}
.ex-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
.ex-tile{display:flex;gap:10px;align-items:flex-start;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface2);min-width:0}
.ex-tile .ex-ico{color:var(--blue);margin-top:4px}.ex-tile>span{min-width:0}.ex-tile strong{display:block;overflow-wrap:anywhere}
.ex-tile em{display:block;margin-top:4px;color:var(--amber);font-style:normal;font-size:18px;line-height:1.35}
.ex-tile.ex-missing{border-style:dashed;background:transparent}.ex-tile.ex-missing strong{color:var(--amber)}
.ex-todo{display:flex;gap:6px;align-items:flex-start;margin:10px 0 0;color:var(--amber);font-weight:600}
.ex-outcome{border-left-width:4px}
.ex-outcome.ex-tone-green{border-left-color:var(--green)}.ex-outcome.ex-tone-red{border-left-color:var(--red)}.ex-outcome.ex-tone-blue{border-left-color:var(--blue)}.ex-outcome.ex-tone-muted{border-left-color:var(--border)}
.ex-outcome{color:var(--ink)}.ex-outcome .ex-sec-head h3{color:var(--ink)}
.ex-outcome-body{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px}
.ex-outcome-body>div{display:grid;gap:2px}
.ex-outcome-v{font-size:32px;line-height:1.1;font-variant-numeric:tabular-nums}
.ex-outcome.ex-tone-green .ex-outcome-v{color:var(--green)}.ex-outcome.ex-tone-red .ex-outcome-v{color:var(--red)}
.ex-outcome-body small{color:var(--muted);font-size:18px}
.ex-authority{margin:10px 0 0}
.ex-spark{width:260px;max-width:100%;height:64px;overflow:visible}
.ex-spark-line{fill:none;stroke:var(--blue);stroke-width:2.2;stroke-linejoin:round}
.ex-spark-dot{fill:var(--surface);stroke:var(--blue);stroke-width:2}.ex-spark-dot.miss{stroke:var(--red)}
.ex-spark-target{stroke:var(--green);stroke-width:1.6;stroke-dasharray:5 4}
.ex-spark-band{fill:color-mix(in srgb,var(--green) 16%,transparent)}
.ex-params{display:flex;flex-wrap:wrap;gap:8px}
.ex-param{display:inline-flex;gap:8px;align-items:baseline;padding:4px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface2)}
.ex-data{display:grid;gap:6px}.ex-data-row{display:flex;gap:10px;align-items:flex-start}.ex-data-row .ex-ico{color:var(--blue);margin-top:4px}.ex-data-row small{display:block;color:var(--muted);overflow-wrap:anywhere}
.ex-notes{white-space:pre-wrap;line-height:1.55;margin:0}
.ex-count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--surface2);font-size:18px}
.ex-ctx-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}
.ex-runs{display:grid;gap:8px}
.ex-run{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
.ex-run-dot{width:10px;height:10px;border-radius:50%;background:var(--red)}.ex-run-dot.ok{background:var(--green)}
.ex-run-main{display:grid;min-width:0}.ex-run-main small{color:var(--muted);overflow-wrap:anywhere}
.ex-run-v{font-weight:800;font-variant-numeric:tabular-nums;padding:2px 8px;border-radius:8px;background:var(--surface2)}
.ex-run-v.ok{color:var(--green)}.ex-run-v.bad{color:var(--red)}
.ex-unlink{display:grid;place-items:center;width:34px;height:34px;border:0;border-radius:8px;background:none;color:var(--muted);cursor:pointer}.ex-unlink:hover{background:var(--surface2);color:var(--red)}
.ex-table th,.ex-table td{text-align:left;vertical-align:top}
.ex-table .ex-pm{background:color-mix(in srgb,var(--gold2) 55%,transparent)}
.ex-cmp-pick{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.ex-cmp-pick label{display:grid;gap:4px;font-weight:800}
.ex-cmp-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.ex-cmp-summary>span{padding:2px 10px;border-radius:999px;border:1px solid var(--border);color:var(--muted)}
.ex-cmp-summary .same{color:var(--green);border-color:color-mix(in srgb,var(--green) 45%,var(--border))}.ex-cmp-summary .changed{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 45%,var(--border))}
.ex-cmp tr.ex-diff td{background:color-mix(in srgb,var(--amber) 12%,transparent);font-weight:700}
.ex-cmp tr.ex-cmp-group th{padding-top:12px;color:var(--muted)}
.ex-guide p{line-height:1.5}
.ex-chain{counter-reset:exc;list-style:none;display:grid;gap:6px;padding:0;margin:10px 0 14px}
.ex-chain li{counter-increment:exc;display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
.ex-chain li::before{content:counter(exc);display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--surface2);font-weight:800}
.ex-fieldset{border:1px solid var(--border);border-radius:12px;padding:14px}
.ex-link-list{display:grid;gap:4px;max-height:50vh;overflow:auto}
/* Experiments evidence pane: compact head, even tabs, run rows that read well in a narrow pane */
.ex-ctx-head{flex-wrap:nowrap;gap:10px}.ex-ctx-head h2{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ex-ctx-head .row{flex:0 0 auto;flex-wrap:nowrap;gap:6px}
.ex-icon svg{width:20px;height:20px;display:block}
.context-tabs.ex-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:6px}
.ex-tabs .context-tab{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:0;white-space:nowrap;border-color:var(--border);background:var(--surface)}
.ex-tabs .context-tab.active{background:var(--gold2);border-color:color-mix(in srgb,var(--gold) 45%,var(--border))}
.ex-run{grid-template-columns:minmax(0,1fr) auto auto;align-items:start}
.ex-run-main{gap:2px}.ex-run-main strong{overflow-wrap:anywhere}
.ex-run-state{display:flex;align-items:center;gap:8px;color:var(--ink)!important;font-weight:700}
.ex-run-state .ex-run-dot{flex:0 0 auto}
.ex-run-v{align-self:center}
.ex-unlink{align-self:center}
.card-head.ex-ctx-head{flex-wrap:nowrap!important;align-items:center}
.ex-cmp{table-layout:fixed;width:100%;min-width:0!important}.ex-cmp th:first-child{width:36%}.ex-cmp td,.ex-cmp th{overflow-wrap:anywhere;word-break:break-word}
.ex-cmp-pick select{min-width:0;width:100%}
.ex-cmp-box{container:excmp/inline-size}
@container excmp (max-width:440px){
 .ex-cmp-pick{grid-template-columns:1fr}
 .ex-cmp-pick label{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px}
 .ex-cmp thead{display:none}
 .ex-cmp,.ex-cmp tbody{display:block;width:100%}
 .ex-cmp tr{display:grid;grid-template-columns:minmax(0,1fr);border-bottom:1px solid var(--border);padding-bottom:6px}
 .ex-cmp tr>th:first-child{grid-column:1/-1;width:auto;padding-bottom:2px;border:0}
 .ex-cmp tr>td{border:0;padding:2px 12px;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none}
 .ex-cmp tr>td:nth-child(2)::before{content:'A';display:inline-block;width:24px;color:var(--muted);font-weight:800}
 .ex-cmp tr>td:nth-child(3)::before{content:'B';display:inline-block;width:24px;color:var(--muted);font-weight:800}
}
.ex-filter{display:inline-flex;align-items:center;gap:8px}
.ex-filter-n{min-width:26px;padding:0 7px;border-radius:999px;background:var(--surface2);color:var(--muted);font-weight:800;text-align:center;font-variant-numeric:tabular-nums}
.ex-filter.on .ex-filter-n{background:color-mix(in srgb,var(--gold) 30%,var(--surface));color:var(--ink)}
.ex-empty-list .btn{justify-self:start;margin-top:6px}
.ex-empty-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.ex-empty-actions .btn{margin:0;text-decoration:none}
/* Top bar: the product links always live in the Product menu. Shown inline next to the menu they were squeezed
   by the project picker and search on wide or zoomed-out windows and their words ran over each other. */
html body .ecosystem-toolbar .ecosystem-links{display:none!important}
html body .ecosystem-toolbar .ecosystem-product-menu{display:block!important}
/* v7.0.0 · My Profile, linked sign-in (Google, ORCID, institution). */
.signin-links{display:grid;gap:10px}
.signin-links-lead{margin:0 0 14px}
.signin-link-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.signin-link-row.is-off{background:color-mix(in srgb,var(--surface2) 70%,var(--surface))}
.signin-link-row.is-off .signin-link-icon svg{filter:grayscale(1);opacity:.55}
.signin-link-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;border:1px solid var(--border);background:var(--surface)}
.signin-link-icon svg{width:24px;height:24px}
.signin-link-icon svg.line{fill:none;stroke:var(--blue);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.signin-link-main{min-width:0;display:grid;gap:4px}
.signin-link-state{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
.signin-link-who{overflow-wrap:anywhere}
@media(max-width:640px){.signin-link-row{grid-template-columns:40px minmax(0,1fr)}.signin-link-row>.btn{grid-column:1/-1}}
/* v7.0.0 · Owner Console, sign-in providers. */
.signin-redirect{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:12px 0;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}
.signin-redirect>span{font-weight:800}
.signin-redirect code{flex:1 1 320px;min-width:0;overflow-wrap:anywhere;font-size:18px}
.signin-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;margin-top:14px}
.signin-admin-item{display:grid;gap:10px;align-content:start;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.signin-admin-item .field{margin:0}
.signin-admin-item .field :is(input,select){width:100%}
.signin-admin-item>.muted{margin:0}
.signin-admin-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.signin-admin-head strong{font-size:20px}
#account-settings .signin-admin-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);align-items:start}
#account-settings .signin-admin-item[data-section="registration"]{grid-column:1;grid-row:1}
#account-settings .signin-admin-item[data-section="recaptcha"]{grid-column:1;grid-row:2}
#account-settings .signin-admin-item[data-section="email"]{grid-column:2;grid-row:1/span 2}
@media(max-width:1100px){#account-settings .signin-admin-grid{grid-template-columns:1fr}#account-settings .signin-admin-item[data-section]{grid-column:1;grid-row:auto}}
/* v7.0.0 · Customer operations: People, Support Desk, Communications, notices and the Support center. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.ops-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--border);padding-bottom:10px}
.ops-tab{border:1px solid transparent;background:transparent;padding:9px 14px;border-radius:10px;font-weight:780;display:inline-flex;align-items:center;gap:8px;color:var(--ink)}
.ops-tab:hover{background:var(--surface2)}
.ops-tab.active{background:var(--gold2);color:var(--blue2);border-color:color-mix(in srgb,var(--gold) 35%,var(--border))}
.ops-count:not(:empty){min-width:28px;padding:1px 8px;border-radius:999px;background:var(--blue2);color:#fff;font-weight:800;text-align:center}
.ops-chip{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:6px 13px;font-weight:760;color:var(--ink)}
.ops-chip.active{background:var(--blue2);border-color:var(--blue2);color:#fff}
.management-kpi.warn{border-color:color-mix(in srgb,var(--amber) 45%,var(--border));background:var(--amber2)}
.management-kpi.bad{border-color:color-mix(in srgb,var(--red) 45%,var(--border));background:var(--red2)}
.management-kpi span{color:var(--muted)}
.ops-toolbar{grid-template-columns:minmax(220px,1fr) 240px auto}
.ops-table td,.ops-table th{min-width:0;vertical-align:middle}
.ops-person{display:grid;gap:2px;color:var(--ink)}
.ops-person span,.ops-person a{color:var(--muted);overflow-wrap:anywhere}
a.ops-person:hover{text-decoration:none}a.ops-person:hover strong{text-decoration:underline}
td.ops-row-actions{white-space:nowrap;text-align:right}
td.ops-row-actions .btn{margin-left:8px;display:inline-flex;align-items:center}
.ops-table th,.ops-table .badge{white-space:nowrap}
.ops-link{display:flex;gap:10px;align-items:center;margin-top:10px;flex-wrap:wrap}
.ops-link code{flex:1 1 320px;overflow-wrap:anywhere;font-size:18px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}
.ops-callout{margin-bottom:16px}.ops-callout .btn{margin-left:8px}
.ops-subhead{margin:4px 0 8px;font-size:1.1rem}
.ops-overview{margin-bottom:18px}
.ops-actions{display:grid;gap:10px}
.nav-badge:not([hidden]){margin-left:auto;min-width:28px;padding:0 8px;border-radius:999px;background:var(--amber);color:#fff;font-weight:800;text-align:center}
.nav-badge.bad{background:var(--red)}
/* Support Desk */
.desk-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}
.desk-grid{display:grid;grid-template-columns:minmax(340px,420px) minmax(0,1fr);gap:16px;align-items:start}
.desk-queue .card-body{display:flex;flex-direction:column;gap:12px}
.desk-views{display:flex;gap:6px;flex-wrap:wrap}
.desk-list{display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 470px);min-height:220px;overflow:auto;padding-right:2px}
.desk-item{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--border);border-left:5px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink)}
.desk-item:hover{text-decoration:none;background:var(--surface2)}
.desk-item.active{border-color:var(--blue);background:var(--surface2)}
.desk-item.prio-urgent{border-left-color:var(--red)}.desk-item.prio-high{border-left-color:var(--amber)}.desk-item.prio-normal{border-left-color:var(--blue)}
.desk-item-top{display:flex;justify-content:space-between;gap:8px;align-items:center}
.desk-item-subject{font-weight:760;overflow-wrap:anywhere}
.desk-item-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;color:var(--muted)}
.desk-item-foot{color:var(--muted)}
.prio-tag{font-weight:760}
.badge.status-new{background:var(--blue2);color:#fff;border-color:var(--blue2)}
.badge.status-open{background:var(--amber2);color:var(--amber)}
.badge.status-pending,.badge.status-on_hold{background:var(--surface2)}
.badge.status-solved,.badge.status-closed{background:var(--green2);color:var(--green)}
.desk-source{margin:0}
.desk-empty{padding:40px 30px}
.desk-head h2{margin:6px 0 4px}
.desk-head p{margin:0}
.desk-props{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin-bottom:14px}
.desk-props label{display:grid;gap:6px;font-weight:760;min-width:180px}
.desk-split{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}
.desk-thread{display:flex;flex-direction:column;gap:10px;min-width:0}
.desk-msg{border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:var(--surface)}
.desk-msg header{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.desk-msg header span{color:var(--muted)}
.desk-msg-body,.support-msg>div,.notice-body{white-space:pre-wrap;overflow-wrap:anywhere}
.desk-msg.agent{background:color-mix(in srgb,var(--blue) 7%,var(--surface));margin-left:28px}
.desk-msg.internal{background:var(--amber2);border-color:color-mix(in srgb,var(--amber) 40%,var(--border))}
.desk-msg.system{border:0;background:transparent;padding:2px 4px;color:var(--muted);text-align:center}
.desk-composer{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--surface2)}
.desk-composer.is-note{background:var(--amber2)}
.desk-send{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap}
.desk-send label{display:grid;gap:6px;font-weight:760}
.desk-aside{display:grid;gap:14px}
.desk-aside section{border:1px solid var(--border);border-radius:12px;padding:12px 14px;background:var(--surface)}
.desk-aside h3{margin:0 0 8px;font-size:1.1rem}
.desk-aside p{margin:0 0 8px;overflow-wrap:anywhere}
.desk-other{display:flex;justify-content:space-between;gap:8px;padding:6px 0;border-bottom:1px solid var(--border);color:var(--ink)}
.desk-other span{color:var(--muted)}
@media(max-width:1600px){.desk-split{grid-template-columns:1fr}.desk-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.desk-grid{grid-template-columns:1fr}.desk-list{max-height:none}}
/* Communications */
.comms-grid{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}
.comms-pick{border:1px solid var(--border);border-radius:12px;padding:12px;margin-bottom:15px;display:grid;gap:10px}
.comms-pick[hidden]{display:none}
.comms-pick-list{max-height:260px;overflow:auto;display:grid;gap:4px}
.comms-pick-row{display:flex;gap:10px;align-items:center;padding:6px 4px;border-radius:8px}
.comms-pick-row:hover{background:var(--surface2)}
.comms-pick-row input{width:auto;min-height:auto}
.comms-item{align-items:center}
.comms-item.is-withdrawn{opacity:.6}
.comms-item-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.comms-bars{display:grid;grid-template-columns:auto minmax(120px,1fr);gap:6px 12px;align-items:center;margin-top:8px;max-width:620px}
.comms-bars i{display:block;height:10px;border-radius:6px;background:var(--surface2);overflow:hidden}
.comms-bars b{display:block;height:100%;background:var(--blue)}.comms-bars b.ack{background:var(--green)}
/* Notices: the pop-up researchers see, its preview, and the Messages list */
dialog.tera-notice{width:min(640px,92vw);border:1px solid var(--border);border-radius:18px;padding:0;background:var(--surface);color:var(--ink);box-shadow:0 30px 80px rgba(6,24,44,.35)}
dialog.tera-notice::backdrop{background:rgba(6,20,36,.45)}
dialog.tera-notice form{padding:24px 26px;display:grid;gap:12px}
dialog.tera-notice h2{margin:0;font-size:1.5rem}
.notice-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.notice-kind{display:inline-flex;padding:4px 12px;border-radius:999px;font-weight:800;background:var(--surface2);border:1px solid var(--border)}
.kind-security .notice-kind,.badge.kind-security{background:var(--red2);color:var(--red);border-color:color-mix(in srgb,var(--red) 35%,var(--border))}
.kind-maintenance .notice-kind,.badge.kind-maintenance{background:var(--amber2);color:var(--amber);border-color:color-mix(in srgb,var(--amber) 35%,var(--border))}
.kind-reminder .notice-kind,.badge.kind-reminder{background:color-mix(in srgb,var(--blue) 12%,var(--surface));color:var(--blue2)}
.kind-policy .notice-kind,.badge.kind-policy{background:var(--gold2);color:var(--blue2)}
.notice-count{color:var(--muted);font-weight:760}
.notice-provenance{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start;padding-top:12px;border-top:1px solid var(--border)}
.notice-provenance div{display:grid;gap:2px}
.notice-provenance span{color:var(--muted)}
.notice-prov-mark{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#071b38;color:#f2bd2c;border:1px solid #d3a62a;font:700 1.1rem Georgia,serif}
.notice-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.notice-preview{border:1px solid var(--border);border-radius:16px;padding:18px 20px;display:grid;gap:10px;background:var(--surface)}
.notice-preview h3{margin:0;font-size:1.3rem}
.notice-preview.is-past{opacity:.7}
.notice-preview .btn{pointer-events:none}
.support-messages .notice-preview .btn{pointer-events:auto}
/* New support request alerts in the control plane */
.desk-alerts{position:fixed;right:20px;bottom:64px;z-index:200;display:grid;gap:10px;width:min(440px,calc(100vw - 40px))}
.desk-alert{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 16px;border:1px solid var(--border);border-left:6px solid var(--blue);border-radius:14px;background:var(--surface);box-shadow:0 18px 40px rgba(6,24,44,.25)}
.desk-alert.prio-urgent{border-left-color:var(--red)}.desk-alert.prio-high{border-left-color:var(--amber)}
.desk-alert div:first-child{display:grid;gap:2px;min-width:0}
.desk-alert span{overflow-wrap:anywhere}.desk-alert small{color:var(--muted);font-size:18px}
.desk-alert-actions{display:flex;gap:8px}
/* Researcher Support center (Help) */
.support-pane{margin-top:16px}
.support-new{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}
.support-side{border:1px solid var(--border);border-radius:14px;padding:16px 18px;background:var(--surface2)}
.support-side h3{margin:0 0 6px;font-size:1.1rem}.support-side h3:not(:first-child){margin-top:14px}
.support-side p{margin:0}
.support-sla{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}
.support-requests{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:16px;align-items:start}
.support-list{display:grid;gap:8px}
.support-req{display:grid;gap:6px;text-align:left;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink)}
.support-req:hover{background:var(--surface2)}
.support-req.active{border-color:var(--blue);background:var(--surface2)}
.support-req-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--muted)}
.support-thread{display:grid;gap:10px;border:1px solid var(--border);border-radius:14px;padding:16px 18px;background:var(--surface);min-width:0}
.support-thread>header h3{margin:6px 0 4px;font-size:1.3rem}.support-thread>header p{margin:0}
.support-msg{border:1px solid var(--border);border-radius:12px;padding:12px 14px}
.support-msg header{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:6px}
.support-msg header span{color:var(--muted)}
.support-msg.agent{background:color-mix(in srgb,var(--blue) 7%,var(--surface));margin-left:28px}
.support-reply,.support-rate{display:grid;gap:10px}
.support-rate{padding:12px 14px;border:1px dashed var(--border);border-radius:12px}
.support-rate p{margin:0}
.support-messages{display:grid;gap:12px}
@media(max-width:1100px){.support-new,.support-requests,.comms-grid{grid-template-columns:1fr}}
.auth-card [hidden]{display:none!important}
/* Help & Resources with the Support center: the page scrolls; sections keep their natural height. */
html body.research-shell-body[data-page="help"] #pageRoot{display:flex!important;flex-direction:column!important;overflow-y:auto!important;overflow-x:hidden!important}
html body.research-shell-body[data-page="help"] #pageRoot>*{flex:0 0 auto!important;align-self:stretch!important;max-width:none!important}
html body.research-shell-body[data-page="help"] #pageRoot>.support-center{overflow:visible}
html[data-theme="dark"] :is(.ops-chip.active,.badge.status-new,.ops-count:not(:empty)){color:#06182c}

/* ===== TERA Community: questions, discussions, ideas, blog ===================================================== */
body.community-body .community-layout{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden;background:var(--bg)}
.community-header .community-brand{color:inherit;text-decoration:none}
.community-search{display:flex;align-items:center;gap:10px;justify-self:center;width:min(640px,100%);min-width:0;height:46px;padding:0 18px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.32);color:#eef5ff;font-size:20px}
.community-search input{flex:1;min-width:0;border:0!important;background:transparent!important;color:#fff!important;font-size:18px;outline:none;padding:0;box-shadow:none!important;height:100%}
.community-search input::placeholder{color:#d3e1f0;opacity:1}
.community-search:focus-within{background:rgba(255,255,255,.2);border-color:#e9c46a}
.community-actions{display:flex;gap:12px;align-items:center;flex-wrap:nowrap!important}
.cm-bell{position:relative;display:inline-grid;place-items:center;width:46px;height:46px;border-radius:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.3);text-decoration:none;font-size:20px;color:#fff}
.cm-bell:hover{background:rgba(255,255,255,.2)}
.cm-bell-count{position:absolute;top:-8px;right:-10px;min-width:28px;height:28px;padding:0 7px;border-radius:14px;background:#d94848;color:#fff;font:700 18px/28px Inter,"Segoe UI",system-ui,sans-serif;text-align:center;box-shadow:0 0 0 2px #073e6a}
.cm-identity-slot{display:flex;gap:10px;align-items:center}
.community-header .cm-signin{background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:rgba(255,255,255,.4)!important}
@media(max-width:1599px){body.community-body .control-brand>div>span{display:none!important}}
@media(max-width:1439px){.community-header .cm-me .identity-summary-text small{display:none}}
.community-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 28px;background:var(--surface);border-bottom:1px solid var(--border);min-height:64px;position:relative;z-index:5}
.cm-tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;min-width:0}
.cm-tabs::-webkit-scrollbar{display:none}
.cm-tab{display:inline-flex;align-items:center;height:64px;padding:0 16px;font-size:18px;font-weight:650;color:var(--muted);text-decoration:none;border-bottom:3px solid transparent;white-space:nowrap}
.cm-tab:hover{color:var(--ink);background:var(--surface3)}
.cm-tab.active{color:var(--ink);border-bottom-color:var(--gold)}
.cm-nav-actions{display:flex;gap:10px;align-items:center;flex:0 0 auto}
.cm-new{position:relative}.cm-new>summary{list-style:none;cursor:pointer}.cm-new>summary::-webkit-details-marker{display:none}
.cm-menu{position:absolute;right:0;top:calc(100% + 8px);z-index:60;min-width:280px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:8px;display:grid}
.cm-menu a{padding:12px 14px;border-radius:10px;color:var(--ink);text-decoration:none;font-size:18px}.cm-menu a:hover{background:var(--surface2)}
.community-page{overflow:auto;min-height:0;scroll-behavior:smooth}
.cm-wrap{max-width:1560px;margin:0 auto;padding:26px 28px 44px}
.cm-narrow{max-width:1080px}
.cm-cols{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:24px;align-items:start}
.cm-main,.cm-aside{display:grid;gap:20px;min-width:0;align-content:start}
@media(max-width:1500px){.cm-cols{grid-template-columns:minmax(0,1fr) 350px}}
@media(max-width:1180px){.cm-cols{grid-template-columns:1fr}}
.cm-eyebrow{font-size:18px;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
.cm-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}
.cm-page-head h1{font-size:34px;line-height:1.15;margin:6px 0 8px}
.cm-page-head p{font-size:19px;color:var(--muted);margin:0;max-width:880px}
.cm-head-filter{color:var(--muted);font-weight:600}
.cm-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px;align-items:center;padding:34px 38px;border-radius:22px;background:radial-gradient(circle at 92% 12%,rgba(233,196,106,.28),transparent 42%),linear-gradient(120deg,#052f58,#0a477a 58%,#0b3a66);color:#f4f8ff;margin-bottom:24px;box-shadow:var(--shadow)}
html[data-theme="dark"] .cm-hero{background:radial-gradient(circle at 92% 12%,rgba(233,196,106,.2),transparent 42%),linear-gradient(120deg,#03203c,#062f52 58%,#04223e);border:1px solid #2a4562}
.cm-hero .cm-eyebrow{color:#e9c46a}
.cm-hero h1{font-size:38px;line-height:1.12;margin:8px 0 12px;color:#fff}
.cm-hero p{font-size:20px;line-height:1.55;margin:0 0 22px;color:#dce8f6;max-width:760px}
.cm-hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.btn.ghost-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}.btn.ghost-light:hover{background:rgba(255,255,255,.12)}
.cm-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cm-hero-stat{padding:18px 20px;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);display:grid;gap:4px}
.cm-hero-stat b{font-size:32px;line-height:1.1;color:#fff}
.cm-hero-stat span{font-size:18px;color:#d3e1f0}
@media(max-width:1100px){.cm-hero{grid-template-columns:1fr}}
.cm-block{padding:6px 0;overflow:hidden}
.cm-block-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 22px 6px}
.cm-side .cm-block-head{padding:0}
.cm-block-head h2,.cm-side h2{font-size:22px;margin:0}
.cm-block-head a{font-size:18px;font-weight:650;white-space:nowrap}
.cm-row{display:grid;grid-template-columns:240px minmax(0,1fr);gap:20px;padding:18px 22px;border-top:1px solid var(--border)}
.cm-block>.cm-row:first-child{border-top:0}
.cm-row.pinned{background:color-mix(in srgb,var(--gold2) 45%,transparent)}
.cm-row-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-self:start}
.cm-row-stats>div{display:grid;justify-items:center;gap:2px;padding:8px 4px;border-radius:12px;border:1px solid transparent;color:var(--muted)}
.cm-row-stats b{font-size:20px;color:var(--ink)}
.cm-row-stats span{font-size:18px}
.cm-row-stats>.solved{background:var(--green2);border-color:color-mix(in srgb,var(--green) 45%,transparent);color:var(--green)}
.cm-row-stats>.solved b{color:var(--green)}
.cm-row-stats>.on b{color:var(--gold)}
.cm-row-main{display:grid;gap:8px;min-width:0}
.cm-row-main h3{font-size:20px;line-height:1.35;margin:0}
.cm-row-main h3 a{color:var(--ink);text-decoration:none}.cm-row-main h3 a:hover{color:var(--blue);text-decoration:underline}
.cm-row-main p{font-size:18px;line-height:1.5;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cm-row-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.cm-row-badges:empty{display:none}
.cm-row-meta{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;font-size:18px}
.cm-sep{flex:1 1 auto}
@media(max-width:900px){.cm-row{grid-template-columns:1fr}.cm-row-stats{grid-template-columns:repeat(3,minmax(0,110px))}}
.cm-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 12px;border-radius:999px;font-size:18px;font-weight:650;line-height:1.4;background:var(--surface2);color:var(--ink);border:1px solid var(--border);white-space:nowrap}
.cm-badge.q-solved,.cm-badge.idea-shipped{background:var(--green2);color:var(--green);border-color:color-mix(in srgb,var(--green) 45%,transparent)}
.cm-badge.q-answered{background:color-mix(in srgb,var(--blue) 12%,var(--surface));color:var(--blue2);border-color:color-mix(in srgb,var(--blue) 35%,transparent)}
.cm-badge.q-open,.cm-badge.idea-review{background:var(--surface2);color:var(--muted)}
.cm-badge.idea-planned{background:color-mix(in srgb,var(--violet) 14%,var(--surface));color:var(--violet);border-color:color-mix(in srgb,var(--violet) 40%,transparent)}
html[data-theme="dark"] .cm-badge.idea-planned{color:#c9b8ff}
.cm-badge.idea-progress,.cm-badge.warn{background:var(--amber2);color:var(--amber);border-color:color-mix(in srgb,var(--amber) 45%,transparent)}
.cm-badge.idea-declined{background:var(--red2);color:var(--red);border-color:color-mix(in srgb,var(--red) 40%,transparent)}
.cm-badge.pin{background:var(--gold2);color:var(--ink);border-color:color-mix(in srgb,var(--gold) 55%,transparent)}
.cm-badge.team{background:color-mix(in srgb,var(--blue) 14%,var(--surface));color:var(--blue2);border-color:color-mix(in srgb,var(--blue) 35%,transparent)}
.cm-badge.kind{background:transparent}
.cm-team{display:inline-flex;align-items:center;padding:1px 10px;border-radius:999px;background:linear-gradient(90deg,#0b3a66,#1d5a92);color:#fff;font-size:18px;font-weight:700;line-height:1.5;white-space:nowrap}
.cm-standing{display:inline-flex;align-items:center;padding:1px 10px;border-radius:999px;background:var(--surface2);color:var(--muted);font-size:18px;font-weight:600;white-space:nowrap}
.cm-cat{font-weight:700;color:var(--blue2);text-decoration:none}.cm-cat:hover{text-decoration:underline}
.cm-tag{display:inline-flex;align-items:center;gap:6px;padding:1px 10px;border-radius:8px;background:var(--surface2);color:var(--ink);font-size:18px;text-decoration:none;border:1px solid transparent}
.cm-tag:hover{border-color:var(--border)}
.cm-tag span{color:var(--muted)}
.cm-tags{display:flex;flex-wrap:wrap;gap:8px}
.cm-avatar{display:inline-grid;place-items:center;flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:linear-gradient(140deg,color-mix(in srgb,var(--blue) 18%,var(--surface)),var(--surface2));color:var(--blue2);font:750 18px/1 Inter,"Segoe UI",system-ui,sans-serif;border:1px solid var(--border)}
.cm-avatar.team{background:linear-gradient(140deg,#e9c46a,#c9a24c);color:#0b2540;border-color:#c9a24c}
.cm-avatar.sm{width:36px;height:36px}
.cm-avatar.lg{width:68px;height:68px;font-size:24px}
.cm-avatar.xl{width:108px;height:108px;font-size:38px}
.cm-who{display:inline-flex;align-items:center;gap:10px;font-size:18px;min-width:0}
.cm-who a{color:var(--ink);font-weight:700;text-decoration:none}.cm-who a:hover{text-decoration:underline}
.cm-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:16px}
.cm-sorts{display:flex;flex-wrap:wrap;gap:8px}
.cm-sorts .ops-chip{text-decoration:none}
.cm-count{margin-left:auto;font-size:18px}
.cm-cat-select select,.cm-inline-search input{font-size:18px;padding:9px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--ink);min-width:240px}
.cm-more{display:flex;justify-content:center}
.cm-side{padding:20px 22px;display:grid;gap:12px;align-content:start}
.cm-side p{font-size:18px;margin:0;line-height:1.5}
.cm-sub{font-size:19px;margin:8px 0 0}
.cm-cat-item{display:grid;gap:2px;padding:10px 12px;border-radius:12px;text-decoration:none;color:var(--ink);border:1px solid transparent}
.cm-cat-item strong{font-size:18px}.cm-cat-item span{font-size:18px;color:var(--muted);line-height:1.4}
.cm-cat-item:hover{background:var(--surface2)}.cm-cat-item.active{background:var(--gold2);border-color:color-mix(in srgb,var(--gold) 50%,transparent)}
.cm-tips{margin:0;padding-left:24px;display:grid;gap:8px;font-size:18px;line-height:1.5}
.cm-empty{display:grid;gap:6px;justify-items:center;text-align:center;padding:36px 24px;color:var(--muted)}
.cm-empty strong{font-size:20px;color:var(--ink)}.cm-empty p{font-size:18px;margin:0}
.cm-empty-big{padding:40px;text-align:center;display:grid;gap:12px;justify-items:center}
.cm-feature{display:grid;gap:10px;padding:26px 28px;text-decoration:none;color:var(--ink);border-left:5px solid var(--gold)}
.cm-feature h2{font-size:28px;line-height:1.2;margin:0}
.cm-feature p{font-size:19px;color:var(--muted);margin:0;line-height:1.55}
.cm-feature:hover h2{color:var(--blue)}
.cm-feature-wide{margin-bottom:20px}
.cm-feature-meta{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:18px;color:var(--muted)}
.cm-post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px}
.cm-post-card{display:grid;gap:10px;padding:22px 24px;text-decoration:none;color:var(--ink);align-content:start}
.cm-post-card h3{font-size:22px;line-height:1.25;margin:0}.cm-post-card p{font-size:18px;color:var(--muted);margin:0;line-height:1.5}
.cm-post-card:hover h3{color:var(--blue)}
.cm-blog-mini{display:grid;gap:4px;padding:10px 0;border-top:1px solid var(--border);text-decoration:none;color:var(--ink)}
.cm-blog-mini strong{font-size:18px;line-height:1.35}.cm-blog-mini span{font-size:18px}
.cm-idea-mini{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;align-items:center;padding:10px 0;border-top:1px solid var(--border);text-decoration:none;color:var(--ink);font-size:18px}
.cm-idea-mini .cm-badge{grid-column:2;justify-self:start}
.cm-vote-mini{grid-row:span 2;display:grid;place-items:center;min-width:64px;padding:6px 8px;border-radius:10px;background:var(--surface2);font-weight:750;font-size:18px}
.cm-shipped{display:block;font-size:18px;color:var(--green);text-decoration:none;padding:4px 0}
.cm-person{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;text-decoration:none;color:var(--ink);padding:6px 0}
.cm-person strong{display:block;font-size:18px}.cm-person small{display:block;font-size:18px;color:var(--muted)}.cm-person b{font-size:18px;color:var(--green)}
.cm-compact{display:grid;gap:6px;padding:12px 0;border-top:1px solid var(--border);text-decoration:none;color:var(--ink)}
.cm-compact-title{font-size:18px;font-weight:650;line-height:1.35}
.cm-compact-meta{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:18px;color:var(--muted)}
.cm-compact:hover .cm-compact-title{color:var(--blue)}
.cm-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}
.cm-board-col{display:grid;gap:12px;padding:14px;border-radius:18px;background:var(--surface2);border:1px solid var(--border);align-content:start}
.cm-board-col>header{display:flex;justify-content:space-between;align-items:center;font-size:18px}
.cm-col-empty{font-size:18px;margin:6px 4px}
@media(max-width:1400px){.cm-board{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.cm-board{grid-template-columns:1fr}}
.cm-idea{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);align-items:start}
.cm-idea h3{font-size:19px;line-height:1.35;margin:0 0 6px}.cm-idea h3 a{color:var(--ink);text-decoration:none}.cm-idea h3 a:hover{color:var(--blue);text-decoration:underline}
.cm-idea p{font-size:18px;color:var(--muted);margin:0 0 8px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cm-idea-list{padding:14px;display:grid;gap:12px}
.cm-vote{display:grid;justify-items:center;gap:2px;min-width:66px;padding:10px 8px;border-radius:14px;border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;font-size:18px}
.cm-vote b{font-size:20px}.cm-vote small{font-size:18px;color:var(--muted)}
.cm-vote:hover{border-color:var(--gold)}
.cm-vote.on{background:var(--gold2);border-color:var(--gold);color:var(--ink)}
.cm-vote.big{min-width:86px;padding:14px 10px}
.cm-crumbs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:18px;margin-bottom:14px;color:var(--muted)}
.cm-crumbs a{color:var(--blue2);text-decoration:none;font-weight:600}.cm-crumbs a:hover{text-decoration:underline}
.cm-topic{padding:28px 30px;display:grid;gap:16px}
.cm-topic-head{display:flex;gap:20px;align-items:flex-start}
.cm-topic-head>div{display:grid;gap:10px;min-width:0}
.cm-topic h1{font-size:32px;line-height:1.2;margin:0}
.cm-topic.is-article h1{font-size:38px}
.cm-lead{font-size:21px;line-height:1.55;color:var(--muted);margin:0}
.cm-md{font-size:19px;line-height:1.7;color:var(--ink);overflow-wrap:anywhere}
.cm-md>*{margin:0 0 14px}.cm-md>*:last-child{margin-bottom:0}
.cm-md h3{font-size:24px;margin-top:22px}.cm-md h4{font-size:21px;margin-top:18px}
.cm-md ul,.cm-md ol{padding-left:28px}.cm-md li{margin:4px 0}
.cm-md blockquote{border-left:4px solid var(--gold);padding:6px 16px;color:var(--muted);background:var(--surface3);border-radius:0 10px 10px 0}
.cm-md code{font:18px/1.5 "JetBrains Mono",Consolas,ui-monospace,monospace;background:var(--surface2);padding:1px 6px;border-radius:6px}
.cm-md pre.cm-code{background:#0d1b2c;color:#e8f0fa;padding:16px 18px;border-radius:12px;overflow:auto;max-height:520px}
.cm-md pre.cm-code code{background:transparent;padding:0;color:inherit;white-space:pre}
.cm-md a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.cm-mention{font-weight:700;text-decoration:none!important}
.cm-math{overflow-x:auto;padding:8px 0;text-align:center;font-size:19px}
.cm-math svg,.cm-math-inline svg{max-width:100%}
.cm-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:6px}
.cm-act{display:inline-flex;align-items:center;gap:6px;font-size:18px;padding:8px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;line-height:1.3}
.cm-act:hover{background:var(--surface2)}
.cm-act.on{background:var(--green2);color:var(--green);border-color:color-mix(in srgb,var(--green) 45%,transparent)}
.cm-act.static{cursor:default;background:var(--surface3)}
.cm-replies-head{font-size:24px;margin:8px 0 0}
.cm-post{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:20px 24px;display:grid;gap:12px;box-shadow:0 2px 8px rgba(20,40,70,.04);scroll-margin-top:24px}
.cm-post>header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;font-size:18px}
.cm-post.accepted{border:2px solid var(--green);box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 12%,transparent)}
.cm-post.by-team{border-left:5px solid #1d5a92}
.cm-post.deleted{background:var(--surface3)}
.cm-accepted-label{justify-self:start;font-size:18px;font-weight:750;color:var(--green);background:var(--green2);padding:3px 12px;border-radius:999px}
.cm-system{font-size:18px;color:var(--muted);text-align:center;padding:8px}
.cm-composer-card{padding:22px 24px;display:grid;gap:14px}
.cm-composer-card h2{font-size:22px;margin:0}
.cm-composer-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font-size:18px}
.cm-signin-card p{font-size:18px;margin:0}
.cm-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.cm-facts>div{display:grid;gap:2px}.cm-facts span{font-size:18px;color:var(--muted)}.cm-facts b{font-size:20px}
.cm-team-panel{border:1px dashed color-mix(in srgb,var(--blue) 45%,var(--border))}
.cm-mod-grid{display:flex;flex-wrap:wrap;gap:8px}
.cm-field{display:grid;gap:8px;min-width:0}
.cm-field>span{font-size:18px;font-weight:650}
.cm-field input,.cm-field select,.cm-field textarea{font-size:18px;padding:11px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--ink);width:100%;box-sizing:border-box;font-family:inherit}
.cm-field textarea{resize:vertical;line-height:1.5}
.cm-field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(max-width:900px){.cm-field-row{grid-template-columns:1fr}}
.cm-check{display:flex;gap:10px;align-items:center;font-size:18px}
.cm-check input{width:20px;height:20px}
.cm-form{padding:24px 26px;display:grid;gap:18px}
.cm-kinds{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.cm-kind{display:grid;gap:4px;padding:14px 16px;border-radius:14px;border:1px solid var(--border);text-decoration:none;color:var(--ink);background:var(--surface)}
.cm-kind strong{font-size:19px}.cm-kind span{font-size:18px;color:var(--muted)}
.cm-kind.active{border:2px solid var(--gold);background:var(--gold2)}
.cm-similar{display:grid;gap:4px;padding:14px 18px;border-radius:14px;background:var(--amber2);border:1px solid color-mix(in srgb,var(--amber) 40%,transparent)}
.cm-similar>strong{font-size:18px}
.cm-editor{display:grid;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface)}
.cm-editor-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:6px 8px;background:var(--surface2);border-bottom:1px solid var(--border);flex-wrap:wrap}
.cm-editor-tabs,.cm-editor-tools{display:flex;gap:4px}
.cm-editor-tabs button,.cm-editor-tools button{font-size:18px;min-width:42px;height:40px;padding:0 12px;border-radius:9px;border:1px solid transparent;background:transparent;color:var(--ink);cursor:pointer}
.cm-editor-tabs button.active{background:var(--surface);border-color:var(--border);font-weight:700}
.cm-editor-tools button:hover,.cm-editor-tabs button:hover{background:var(--surface)}
.cm-editor textarea{border:0!important;border-radius:0!important;min-height:220px;padding:14px 16px;font-size:18px;line-height:1.55;resize:vertical;background:var(--surface);color:var(--ink);font-family:inherit;width:100%;box-sizing:border-box;box-shadow:none!important}
.cm-preview{padding:14px 18px;min-height:220px}
.cm-reasons{border:0;padding:0;margin:0;display:grid;gap:10px}
.cm-reasons label{display:flex;gap:10px;align-items:center;font-size:18px}
.cm-dialog{border:0;border-radius:20px;padding:0;max-width:580px;width:calc(100% - 32px);background:var(--surface);color:var(--ink);box-shadow:0 30px 80px rgba(0,0,0,.35)}
.cm-dialog::backdrop{background:rgba(5,20,40,.55)}
.cm-dialog form{padding:26px 28px;display:grid;gap:16px}
.cm-dialog h2{font-size:24px;margin:0}.cm-dialog p{font-size:18px;margin:0;color:var(--muted)}
.cm-dialog .row{justify-content:flex-end}
.cm-member-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}
.cm-member{display:grid;justify-items:center;text-align:center;gap:6px;padding:24px 20px;text-decoration:none;color:var(--ink);font-size:18px}
.cm-member strong{font-size:20px}
.cm-member-foot{display:flex;gap:10px;align-items:center;margin-top:6px}.cm-member-foot b{font-size:20px;color:var(--green)}
.cm-badge-row{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.cm-medal{display:inline-flex;align-items:center;padding:2px 12px;border-radius:999px;background:var(--gold2);color:var(--ink);font-size:18px;font-weight:650;border:1px solid color-mix(in srgb,var(--gold) 50%,transparent)}
.cm-medal::before{content:"★";color:var(--gold);margin-right:6px}
.cm-badge-list{display:grid;gap:10px}.cm-medal-row{display:grid;gap:4px;justify-items:start;font-size:18px}
.cm-profile-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:24px;align-items:center;padding:26px 30px;margin-bottom:20px}
.cm-profile-id{display:grid;gap:6px;min-width:0}.cm-profile-id h1{font-size:32px;margin:0}.cm-profile-id p{font-size:18px;margin:0}
.cm-bio{color:var(--ink)!important;max-width:820px;line-height:1.55}
.cm-rep{display:grid;justify-items:center;padding:14px 22px;border-radius:16px;background:var(--surface2)}
.cm-rep b{font-size:34px;line-height:1.1}.cm-rep span,.cm-rep small{font-size:18px;color:var(--muted)}
@media(max-width:1000px){.cm-profile-hero{grid-template-columns:auto minmax(0,1fr)}}
.cm-profile-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cm-profile-stats>div{display:grid;justify-items:center;padding:10px 4px;border-radius:12px;background:var(--surface2)}
.cm-profile-stats b{font-size:22px}.cm-profile-stats span{font-size:18px;color:var(--muted);text-align:center}
.cm-profile-form{max-width:980px}
.cm-prefs{border:1px solid var(--border);border-radius:14px;padding:14px 18px;display:grid;gap:10px}
.cm-prefs legend{font-size:18px;font-weight:700;padding:0 6px}
.cm-notif{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 22px;border-top:1px solid var(--border);text-decoration:none;color:var(--ink);font-size:18px}
.cm-block>.cm-notif:first-child{border-top:0}
.cm-notif.unread{background:color-mix(in srgb,var(--blue) 7%,transparent)}
.cm-notif.unread .cm-notif-text::before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:#d94848;margin-right:10px;vertical-align:middle}
.cm-notif-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--surface2);font-size:20px}
.cm-notif-text{display:grid;gap:4px;line-height:1.45}.cm-notif-text small{font-size:18px;color:var(--muted)}
.cm-guide{padding:22px 26px;margin-bottom:16px}.cm-guide h2{font-size:24px;margin:0 0 10px}
.cm-guide ul{margin:0;padding-left:24px;display:grid;gap:8px;font-size:19px;line-height:1.55}
.community-page [hidden],.community-body .cm-preview[hidden]{display:none!important}
.cm-new{border:0!important;background:none!important;box-shadow:none!important;padding:0!important;margin:0!important}
.community-header .cm-avatar{background:#e7eef8;color:#0b2540;border-color:rgba(255,255,255,.6)}
.community-header .cm-avatar.team{background:linear-gradient(140deg,#e9c46a,#c9a24c);color:#0b2540}
.cm-member{align-content:start}
.cm-wrap{max-width:1760px}
.cm-identity-slot>.btn{display:inline-flex;align-items:center;height:46px;padding:0 18px}
/* Community moderation (Control Plane) */
.cmod-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}
@media(max-width:1300px){.cmod-grid{grid-template-columns:1fr}}
.cmod-ideas{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}
.cmod-idea{display:grid;justify-items:center;padding:14px 8px;border-radius:14px;background:var(--surface2);text-decoration:none;color:var(--ink)}
.cmod-idea b{font-size:28px}.cmod-idea span{font-size:18px;color:var(--muted);text-align:center}
.cmod-person{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:10px 0;border-bottom:1px solid var(--border);text-decoration:none;color:var(--ink);font-size:18px}
.cmod-person span{grid-column:1}.cmod-person b{grid-row:1/3;grid-column:2;align-self:center;color:var(--green);font-size:20px}
.cmod-tags{display:flex;flex-wrap:wrap;gap:8px}
.cmod-queue{display:grid;gap:16px}
.cmod-item{padding:20px 22px;display:grid;gap:12px}
.cmod-item h3{font-size:20px;margin:8px 0 4px}.cmod-item h3 a{color:var(--ink)}
.cmod-item p{margin:0;font-size:18px}
.cmod-body{margin:0;padding:12px 16px;border-left:4px solid var(--gold);background:var(--surface3);border-radius:0 10px 10px 0;font-size:18px;white-space:pre-wrap;max-height:260px;overflow:auto}
.cmod-flags{margin:0;padding-left:22px;font-size:18px;display:grid;gap:6px}
.cmod-clear{text-align:center;padding:40px}
.cmod-cats{display:grid;gap:14px;margin-bottom:16px}
.cmod-cat{padding:16px;border:1px solid var(--border);border-radius:14px;display:grid;gap:10px}
.cmod-switches{display:grid;gap:12px;margin-bottom:18px}
.cmod-switch{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:14px 16px;border:1px solid var(--border);border-radius:14px;font-size:18px}
.cmod-switch input{width:22px;height:22px;margin-top:3px}
.cmod-switch strong{display:block;font-size:19px}.cmod-switch small{display:block;font-size:18px;color:var(--muted);line-height:1.45}
.support-suggest{display:grid;gap:8px;margin-top:10px;padding:14px 16px;border-radius:14px;background:var(--green2);border:1px solid color-mix(in srgb,var(--green) 40%,transparent)}
.support-suggest strong{font-size:18px}
.support-suggest a{display:grid;gap:2px;font-size:18px;font-weight:650;color:var(--ink);text-decoration:none;padding:6px 0;border-top:1px solid color-mix(in srgb,var(--green) 25%,transparent)}
.support-suggest a span{font-weight:400;color:var(--muted)}
.support-suggest small{font-size:18px;color:var(--muted)}
.community-page{padding:10px}.cm-wrap{padding:16px 18px 34px}
.cmod-ideas{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}
/* Dialog field checks: the reason sits under the field, in the page language. */
.tera-dialog .field-error{margin:6px 0 0;font-size:18px;font-weight:600;color:var(--red);display:flex;gap:8px;align-items:flex-start}
.tera-dialog .field-error::before{content:"!";flex:0 0 26px;height:26px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font-size:18px;font-weight:800;line-height:26px;text-align:center}
.tera-dialog [aria-invalid="true"]{border-color:var(--red)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--red) 18%,transparent)!important}
.tera-dialog .dialog-error[hidden]{display:none!important}
.tera-dialog .dialog-error{margin-bottom:14px}
/* Community charter: objectives with live figures, ten principles, rules ladder */
.cm-objectives{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0 0 24px}
.cm-objectives.compact{margin-top:-6px}
@media(max-width:1400px){.cm-objectives{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.cm-objectives{grid-template-columns:1fr}}
.cm-guide .cm-objectives{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:14px 0 0}
.cm-objective{display:grid;gap:8px;align-content:start;padding:16px 18px;border-radius:16px;background:var(--surface);border:1px solid var(--border);border-top:4px solid var(--border)}
.cm-objective strong{font-size:18px;line-height:1.35}
.cm-objective small{font-size:18px;color:var(--muted);line-height:1.45}
.cm-objective.on-track{border-top-color:var(--green)}.cm-objective.behind{border-top-color:var(--amber)}.cm-objective.commit{border-top-color:var(--gold)}
.cm-meter{position:relative;height:10px;border-radius:5px;background:var(--surface2);overflow:visible}
.cm-meter>span{position:absolute;inset:0 auto 0 0;border-radius:5px;background:var(--blue)}
.cm-objective.on-track .cm-meter>span{background:var(--green)}.cm-objective.behind .cm-meter>span{background:var(--amber)}
.cm-meter>i{position:absolute;top:-4px;bottom:-4px;width:3px;margin-left:-1px;border-radius:2px;background:var(--ink)}
.cm-obj-value{font-size:18px;color:var(--muted)}.cm-obj-value b{color:var(--ink)}
.cm-charter{padding:22px 24px;margin-top:24px;display:grid;gap:16px}
.cm-charter .cm-block-head{padding:0}.cm-charter h2{font-size:26px;margin:4px 0 0}
.cm-principles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.cm-guide .cm-principles{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1500px){.cm-principles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.cm-principles,.cm-guide .cm-principles{grid-template-columns:1fr}}
.cm-principles li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:14px 16px;border-radius:14px;background:var(--surface3);border:1px solid var(--border)}
.cm-pr-num{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(140deg,#0b3a66,#1d5a92);color:#fff;font:750 18px/1 Inter,"Segoe UI",system-ui,sans-serif}
html[data-theme="dark"] .cm-pr-num{background:linear-gradient(140deg,#e9c46a,#c9a24c);color:#0b2540}
.cm-principles strong{display:block;font-size:18px;margin-bottom:4px}.cm-principles span:not(.cm-pr-num){display:block;font-size:18px;color:var(--muted);line-height:1.45}
.cm-agree{align-items:flex-start;padding:12px 14px;border-radius:12px;background:var(--gold2);border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);line-height:1.45}
.cm-agree input{margin-top:3px;flex:0 0 auto}
.cm-agree.need{border:2px solid var(--red);background:var(--red2)}
.cm-toc{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.cm-toc a{font-size:18px;padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--ink);text-decoration:none}
.cm-toc a:hover{border-color:var(--gold)}
.cm-guide{scroll-margin-top:16px}
.cm-guide-lead{font-size:19px;margin:0;color:var(--muted)}
.cm-guide h3{font-size:20px;margin:18px 0 8px}
.cm-rules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cm-rules>div{padding:14px 18px;border-radius:14px;background:var(--surface3);border:1px solid var(--border)}
.cm-rules>div:first-child{border-top:4px solid var(--green)}.cm-rules>div:last-child{border-top:4px solid var(--red)}
.cm-rules h3{margin-top:0}
@media(max-width:900px){.cm-rules{grid-template-columns:1fr}}
.cm-ladder{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.cm-ladder li{display:flex;gap:12px;align-items:center;font-size:19px}
.cm-ladder li>span{flex:0 0 34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:750;font-size:18px;background:var(--amber2);color:var(--amber);border:1px solid color-mix(in srgb,var(--amber) 40%,transparent)}
.cm-ladder li:nth-child(n+4)>span{background:var(--red2);color:var(--red)}
/* Back and Forward on the Community and Control Plane headers */
.community-mid{display:flex;align-items:center;gap:14px;min-width:0;justify-self:center;width:min(760px,100%)}
.community-mid .community-search{flex:1 1 auto;width:auto}
.community-header .history-btn,.control-header .history-btn{width:44px;height:44px;min-width:44px;padding:0;display:inline-grid;place-items:center;border-radius:12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.3);color:#fff;font-size:20px;cursor:pointer}
.community-header .history-btn:hover:not(:disabled),.control-header .history-btn:hover:not(:disabled){background:rgba(255,255,255,.22)}
.community-header .history-btn:disabled,.control-header .history-btn:disabled{opacity:.4;cursor:not-allowed}
.control-header .top-actions .history-nav{margin-right:4px}
html[data-theme="dark"] .nav-badge:not([hidden]){color:#0b2540}
.community-header .history-nav,.control-header .history-nav{display:flex!important;gap:6px;flex:0 0 auto}
body.community-body .community-header .identity-summary .cm-avatar{color:#0b2540!important;background:#e7eef8!important;font-weight:750}body.community-body .community-header .identity-summary .cm-avatar.team{background:linear-gradient(140deg,#e9c46a,#c9a24c)!important}
/* ===== Versions: timeline, line-by-line changes, integrity ===================================================== */
.vx-kpis .kpi{display:grid;gap:4px;align-content:start}
.vx-kpis .kpi small{font-size:18px;color:var(--muted)}
.vx-work.warn{border-color:color-mix(in srgb,var(--amber) 55%,var(--border))}
.vx-work.warn b{color:var(--amber)}
.vx-work.good b{color:var(--green)}
.vx-mini{justify-self:start;margin-top:4px}
.vx-split{margin-top:18px}
.vx-tools{display:grid;gap:10px;padding:0 20px 12px}
.vx-tools input{font-size:18px;padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--ink);width:100%;box-sizing:border-box}
.vx-chips{display:flex;flex-wrap:wrap;gap:8px}
.vx-list{display:grid;gap:10px;align-content:start}
.vx-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;width:100%;text-align:left;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);color:var(--ink);cursor:pointer;font:inherit}
.vx-item:hover{border-color:var(--gold)}
.vx-item:focus-visible{outline:3px solid color-mix(in srgb,var(--blue) 60%,transparent);outline-offset:2px}
.vx-item.active{border:2px solid var(--gold);background:color-mix(in srgb,var(--gold) 8%,var(--surface))}
.vx-num{display:grid;place-items:center;min-width:54px;height:42px;padding:0 8px;border-radius:12px;background:linear-gradient(140deg,#0b3a66,#1d5a92);color:#fff;font:750 18px/1 Inter,"Segoe UI",system-ui,sans-serif}
html[data-theme="dark"] .vx-num{background:linear-gradient(140deg,#e9c46a,#c9a24c);color:#0b2540}
.vx-num.big{min-width:68px;height:56px;font-size:22px}
.vx-main{display:grid;gap:6px;min-width:0}
.vx-main strong{font-size:19px;line-height:1.3;overflow-wrap:anywhere}
.vx-meta{font-size:18px;color:var(--muted)}
.vx-tags{display:flex;flex-wrap:wrap;gap:6px}
.vx-empty{display:grid;gap:10px;justify-items:center;text-align:center;padding:30px 16px}
.vx-empty strong{font-size:20px}.vx-empty p{font-size:18px;color:var(--muted);margin:0;max-width:520px}
.vx-dhead{display:flex;gap:16px;align-items:center;margin-bottom:12px}
.vx-dhead h3{margin:6px 0 2px;font-size:22px}
.vx-dhead p{margin:0}
.vx-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 16px}
.vx-facts.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.vx-facts .mini-card{display:grid;gap:4px;align-content:start}
.vx-facts .mini-card p{margin:0;font-size:20px;font-weight:700}
@media(max-width:1500px){.vx-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.vx-dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:10px 18px;margin:0;font-size:18px}
.vx-dl dt{font-weight:700}.vx-dl dd{margin:0;overflow-wrap:anywhere}
.vx-h{font-size:19px;margin:16px 0 8px}
.vx-fields{display:grid;gap:8px}
.vx-field{display:grid;grid-template-columns:minmax(140px,max-content) minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:baseline;font-size:18px;padding:10px 12px;border-radius:10px;background:var(--surface3);border:1px solid var(--border)}
.vx-field .vx-del,.vx-field .vx-add{overflow-wrap:anywhere}
.vx-add{color:var(--green);font-weight:650}.vx-del{color:var(--red);font-weight:650}
.vx-file{border:1px solid var(--border);border-radius:12px;background:var(--surface);margin-bottom:8px}
.vx-file>summary,.vx-file.same{display:flex;gap:10px;align-items:center;padding:10px 14px;font-size:18px;cursor:pointer;list-style:none;flex-wrap:wrap}
.vx-file.same{cursor:default;color:var(--muted)}
.vx-file>summary::-webkit-details-marker{display:none}
.vx-file>summary::before{content:"▸";color:var(--muted)}.vx-file[open]>summary::before{content:"▾"}
.vx-file strong{overflow-wrap:anywhere}
.vx-hint{margin-left:auto;font-size:18px;color:var(--blue2)}
.vx-file[open] .vx-hint{display:none}
.vx-filebody{padding:0 12px 12px}
.vx-diffstat{font-size:18px;margin:4px 0 8px}
.vx-diff{border:1px solid var(--border);border-radius:10px;overflow:auto;max-height:440px;background:var(--surface);font:18px/1.5 "JetBrains Mono",Consolas,ui-monospace,monospace}
.vx-line{display:grid;grid-template-columns:52px 52px 24px minmax(0,1fr);min-width:max-content}
.vx-line code{white-space:pre;padding-right:14px;font:inherit;background:none}
.vx-line.add{background:color-mix(in srgb,var(--green) 13%,transparent)}
.vx-line.del{background:color-mix(in srgb,var(--red) 12%,transparent)}
.vx-n{color:var(--muted);text-align:right;padding-right:10px;user-select:none;border-right:1px solid var(--border)}
.vx-n+.vx-n{margin-right:6px}
.vx-sign{text-align:center;font-weight:800}
.vx-line.add .vx-sign{color:var(--green)}.vx-line.del .vx-sign{color:var(--red)}
.vx-gap{padding:2px 12px;color:var(--muted);background:var(--surface2);text-align:center}
.vx-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.vx-count{display:grid!important;gap:4px}.vx-count p{margin:0;font-size:19px}
.vx-count.changed{border-color:color-mix(in srgb,var(--gold) 55%,var(--border))}
@media(max-width:1500px){.vx-counts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.vx-frow{align-items:center}.vx-frow .row{flex:0 0 auto;gap:8px}
.vx-frow code{font-size:18px}
.vx-viewer{max-height:60vh;overflow:auto;white-space:pre;font-size:18px}
.vx-raw{margin-top:14px}.vx-raw summary{cursor:pointer;font-size:18px;font-weight:650}
.vx-raw pre{max-height:360px;overflow:auto;font-size:18px}
.vx-pkgs{display:flex;flex-wrap:wrap;gap:8px}
.vx-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding-top:14px;border-top:1px solid var(--border)}
.vx-compare{max-height:62vh;overflow:auto}
#integrityPane .notice{margin-top:12px}

/* v7.0.0 · pricing, October 2026 list: regional bands, four plans, groups, seat calculator, value, questions. */
.pricing-controls{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:flex-end;min-width:0}
.band-select{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:var(--blue2);min-width:0}
.band-select select{font-size:18px;padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--ink);max-width:100%;font-family:inherit}
.founding-offer{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:16px;align-items:center;margin:0 0 22px;padding:16px 20px;border:1.5px solid #c99825;border-radius:14px;background:linear-gradient(90deg,color-mix(in srgb,var(--gold2) 85%,var(--surface)),var(--surface))}
.founding-offer svg{width:42px;height:42px;fill:none;stroke:#ad7b17;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.founding-offer strong{display:block;font-size:20px;color:var(--blue2)}.founding-offer span{display:block;font-size:18px;color:var(--muted)}
.founding-offer .btn{white-space:nowrap;text-decoration:none}
.founding-offer.band{grid-template-columns:48px minmax(0,1fr);border-color:color-mix(in srgb,var(--blue) 40%,var(--border));background:color-mix(in srgb,var(--surface2) 70%,var(--surface))}
.founding-offer.band svg{stroke:#0757b8}
.pricing-professional-grid.four{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px}
@container (min-width:1240px){.pricing-professional-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@container (max-width:700px){.pricing-professional-grid.four{grid-template-columns:1fr!important}.founding-offer{grid-template-columns:1fr}.founding-offer .btn{white-space:normal}}
.pricing-professional-grid.four .plan-card{padding:24px 22px}
.pricing-professional-grid.four .plan-card:last-child{grid-column:auto}
.pricing-professional-grid.four .plan-price strong{font-size:2.3rem}
.pricing-professional-grid.four .plan-description{min-height:0}
.plan-note{margin:6px 0 0;padding:9px 12px;border-radius:10px;background:var(--green2);color:var(--green);font-size:18px;font-weight:700;line-height:1.35}
.pricing-groups,.pricing-value,.pricing-faq{margin-top:22px;padding:24px 26px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.pricing-section-head>div{display:grid;grid-template-columns:54px minmax(0,1fr);gap:14px;align-items:start}
.pricing-section-head svg{width:46px;height:46px;fill:none;stroke:#0757b8;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pricing-groups h2,.pricing-value h2,.pricing-faq h2{margin:0;font:850 1.45rem ui-sans-serif,system-ui;color:var(--blue2)}
.groups-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;margin-top:18px;align-items:start}
@container (max-width:1240px){.groups-grid{grid-template-columns:1fr}.seat-calc{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.seat-calc h3{grid-column:1/-1}}
.groups-table{width:100%;border-collapse:collapse;font-size:18px}
.groups-table th,.groups-table td{padding:12px 12px;border-bottom:1px solid var(--border);text-align:left;font-size:18px}
.groups-table td:nth-child(3){font-weight:800;color:var(--blue2)}
.groups-table td:last-child{color:var(--muted)}
.seat-calc{display:grid;gap:14px;padding:20px;border:1.5px solid color-mix(in srgb,var(--blue) 35%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--surface2) 60%,var(--surface))}
.seat-calc h3{margin:0;font-size:20px;color:var(--blue2)}
.seat-total{display:grid;gap:2px}.seat-total b{font:850 2.1rem/1.1 ui-sans-serif,system-ui;color:var(--blue2)}.seat-total span{font-size:18px;color:var(--muted)}
.seat-calc .btn{justify-content:center;text-decoration:none}
.value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0 12px}
@container (max-width:1050px){.value-grid{grid-template-columns:1fr}}
.value-card{display:grid;gap:12px;padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface3)}
.value-card>strong{font-size:20px;color:var(--blue2)}.value-card small{font-size:18px;color:var(--muted);line-height:1.4}
.value-bars{display:grid;gap:10px}
.value-bars>div{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 12px;column-gap:10px;row-gap:4px;align-items:center;font-size:18px}
.value-bars span{color:var(--muted)}.value-bars b{grid-row:1;grid-column:2;color:var(--ink)}
.value-bars i{grid-column:1/-1;display:block;height:12px;border-radius:999px;background:color-mix(in srgb,var(--muted) 45%,var(--surface2))}
.value-bars .tera i{background:linear-gradient(90deg,#aa7718,#d4a83a)}.value-bars .tera b,.value-bars .tera span{color:var(--blue2);font-weight:800}
.pricing-faq details{border:1px solid var(--border);border-radius:12px;padding:14px 20px;margin:12px 0 0;background:var(--surface3)}.pricing-faq details[open]{border-color:color-mix(in srgb,var(--blue) 35%,var(--border))}
.pricing-faq summary{cursor:pointer;font-size:19px;font-weight:800;color:var(--blue2)}
.pricing-faq details p{margin:10px 0 2px;padding:0;font-size:18px;line-height:1.55;color:var(--ink);max-width:1100px}
html[data-theme="dark"] .pricing-entitlement{background:var(--surface2)}
html[data-theme="dark"] .founding-offer{background:linear-gradient(90deg,#3b311b,var(--surface));border-color:#c99825}
html[data-theme="dark"] .founding-offer svg{stroke:#f0cf78}
html[data-theme="dark"] .founding-offer.band{background:var(--surface2);border-color:var(--border)}
html[data-theme="dark"] .founding-offer.band svg,html[data-theme="dark"] .pricing-section-head svg{stroke:#7ebaff}
html[data-theme="dark"] .billing-switch button.active{background:#7ebaff;color:#0d2138}
html[data-theme="dark"] .plan-card.recommended{background:linear-gradient(180deg,#2b2a22 0,var(--surface) 17%)}
.legal-copy .plan-rules{display:grid;gap:12px;padding-left:22px;margin:8px 0 18px}.legal-copy .plan-rules li{font-size:18px;line-height:1.55}.legal-copy #plan-rules{scroll-margin-top:calc(var(--shell-header-height,160px) + 16px)}
.support-suggest[hidden]{display:none!important}
@container (max-width:1300px){.pricing-entitlement{grid-template-columns:1fr!important}.pricing-controls{justify-content:flex-start}}
.band-select select{max-width:min(100%,460px)}

/* v7.0.0 · paid plans through Stripe: the pricing page states and the Billing console. */
.plan-current{display:flex;align-items:center;justify-content:center;min-height:48px;margin-bottom:10px;border-radius:12px;background:var(--green2);color:var(--green);font-size:18px;font-weight:800}
.plan-card .plan-cta .btn+.btn{margin-top:10px}
.plan-status{margin-top:6px;font-size:18px;font-weight:700;line-height:1.4}.plan-status.good{color:var(--green)}.plan-status.warn{color:var(--amber)}.plan-status.bad{color:var(--red)}
.plan-status a{margin-left:6px}
.pricing-entitlement .row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px}
.plan-return,.plan-testmode{margin:0 0 18px;font-size:18px}
.founding-cta{display:grid;gap:8px;justify-items:stretch}
.pricing-secure{display:flex;align-items:center;justify-content:center;gap:10px;margin:14px auto 0;max-width:1100px;text-align:center;font-size:18px;color:var(--muted)}
.pricing-secure svg{flex:0 0 26px;width:26px;height:26px;fill:none;stroke:var(--green);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.profile-plan-card .plan-status{margin:4px 0 8px}.profile-plan-card #profPortal{margin:6px 0 10px}
.nav-badge.warn{background:var(--amber)}
.bl-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px;margin-top:18px}
@media(max-width:1200px){.bl-grid{grid-template-columns:1fr}}
.bl-health{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.bl-health li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start;font-size:18px;line-height:1.45}
.bl-health li>span:first-child{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-weight:900;color:#fff;background:var(--amber)}
.bl-health li.good>span:first-child{background:var(--green)}
html[data-theme="dark"] .bl-health li>span:first-child{color:#0b2540}
.bl-tools{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;margin-bottom:16px}.bl-tools .cm-field{flex:1 1 320px}
.bl-chips{display:flex;flex-wrap:wrap;gap:8px}
.bl-scroll{overflow-x:auto;max-width:100%}
.bl-subs td,.bl-links td{vertical-align:top}.bl-subs .muted{font-size:18px}
.bl-review{display:grid;gap:14px}
.bl-item{padding:18px 20px;display:grid;gap:8px}.bl-item header{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.bl-item.done{opacity:.8}.bl-detail{margin:0;font-size:19px;font-weight:650}.bl-help{margin:0;padding:10px 14px;border-left:4px solid var(--blue);background:var(--surface2);border-radius:8px;font-size:18px}
.bl-item .row{display:flex;flex-wrap:wrap;gap:10px}
.bl-setup{display:grid;gap:18px}
.bl-kv{display:grid;grid-template-columns:240px minmax(0,1fr) auto;gap:12px;align-items:start;margin:0 0 14px;font-size:18px}
.bl-kv>span{font-weight:700;color:var(--blue2)}.bl-kv code{font-size:18px;overflow-wrap:anywhere;padding:8px 12px;border-radius:10px;background:var(--surface2);border:1px solid var(--border)}
@media(max-width:1100px){.bl-kv{grid-template-columns:1fr}}
.bl-band{margin:18px 0 8px;font-size:19px;color:var(--blue2)}
.bl-links input{width:100%;min-width:0;box-sizing:border-box;font-size:18px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.bl-links{table-layout:fixed;width:100%}.bl-links th:first-child{width:44%}.bl-links td .muted{font-size:18px;margin-top:4px}
.bl-setup .field input{font-size:18px}
.bl-save{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.bl-guide{padding:18px 22px}.bl-guide summary{cursor:pointer;font-size:20px;font-weight:800;color:var(--blue2)}
.bl-guide ol{margin:14px 0 0;padding-left:26px;display:grid;gap:14px}.bl-guide li{font-size:18px;line-height:1.55}.bl-guide li strong{display:block;color:var(--blue2)}
.bl-neg{color:var(--red);font-weight:700}
.bl-events code{font-size:18px}

.bl-kv>span{padding-top:9px}
@media(max-width:1600px){.bl-links,.bl-links tbody,.bl-links tr,.bl-links td{display:block;width:auto}.bl-links thead{display:none}.bl-links tr{padding:14px 0;border-bottom:1px solid var(--border)}.bl-links td{border:0;padding:4px 0}.bl-links td+td{padding-top:10px}}
.plan-renew{margin:10px 0 0;font-size:18px;line-height:1.4;color:var(--muted);text-align:center}
.pricing-secure a{font-weight:700}
.legal-copy h2[id]{scroll-margin-top:calc(var(--shell-header-height,160px) + 16px)}

/* v7.0.0 · public frame: pricing, plan rules and legal pages for visitors who have not signed in. */
.public-body{min-height:100vh;background:var(--bg)}
.public-header{position:sticky;top:0;z-index:50;display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;padding:12px 24px;background:#0b2540;color:#fff;border-bottom:3px solid var(--gold)}
.public-brand{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.public-brand small{display:block;font-size:18px;opacity:.8}.public-brand strong{display:block;font-size:20px}
.public-nav{display:flex;flex-wrap:wrap;gap:6px;flex:1 1 auto}
.public-nav a{color:#e9f1fb;text-decoration:none;font-size:18px;font-weight:700;padding:8px 12px;border-radius:10px}
.public-nav a:hover,.public-nav a.active{background:rgba(255,255,255,.14);color:#fff}
.public-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.public-actions .btn{text-decoration:none}
.public-page{max-width:1520px;margin:0 auto;padding:24px}
html:has(body.public-body),body.public-body{overflow:visible!important;height:auto!important;min-height:100vh}
/* The header keeps slack for a two-digit date and a long name: the name shortens with an ellipsis instead of pushing the bar. */
.user-controls .identity-summary-text{max-width:150px!important;overflow:hidden}
.user-controls .identity-summary-text :is(strong,small){display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Pricing, four plans (October 2026): Free establishes human capability; paid plans add scope, collaboration, cloud
   services, support and commercial rights. Annual price leads, monthly equivalent below it; the five parts of each
   card (head, price, audience, features, action) line up across cards through subgrid so plans compare row by row. */
.pricing-principle{font-weight:750;color:var(--blue2)!important;max-width:900px!important}
.tier-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 16px;margin:20px 0 0;align-items:stretch}
@container (max-width:1360px){.tier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (max-width:760px){.tier-grid{grid-template-columns:minmax(0,1fr)}}
.tier-card{position:relative;display:grid;grid-row:span 5;grid-template-rows:subgrid;row-gap:0;min-width:0;padding:22px 22px 20px;border:1px solid color-mix(in srgb,var(--blue) 22%,var(--border));border-radius:16px;background:var(--surface);box-shadow:0 8px 22px rgba(34,56,85,.05)}
.tier-card.recommended{border:1.5px solid var(--gold);box-shadow:0 10px 26px rgba(168,134,70,.12);background:linear-gradient(180deg,color-mix(in srgb,var(--gold2) 55%,var(--surface)) 0,var(--surface) 150px)}
.tier-head{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:center;align-content:start}
.tier-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:var(--surface2);color:var(--blue)}
.tier-card.recommended .tier-icon{background:color-mix(in srgb,var(--gold2) 80%,var(--surface));color:var(--gold)}
.tier-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.tier-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0}
.tier-title h2{margin:0;font:850 1.35rem/1.2 ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--blue2)}
.tier-badge{position:absolute;top:-15px;left:50%;transform:translateX(-50%);white-space:nowrap;display:inline-flex;padding:2px 12px;border-radius:999px;border:1px solid var(--gold);background:var(--gold2);color:var(--blue2);font-weight:800;font-size:18px;line-height:1.35}
.tier-tag{grid-column:1/-1;margin:10px 0 0;color:var(--muted);line-height:1.4}
.tier-price{padding:16px 0 4px;align-self:start}
.tier-amount{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}
.tier-amount strong{font:850 2.5rem/1 ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--blue2);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.tier-amount span{font-weight:800;color:var(--blue2)}
.tier-sub{margin-top:6px;color:var(--muted);font-size:18px;line-height:1.35}
.tier-desc{margin:10px 0 0;padding:12px 0 14px;border-bottom:1px solid var(--border);color:var(--ink);line-height:1.45}
.tier-features{list-style:none;margin:0;padding:14px 0 0;display:grid;gap:7px;align-content:start}
.tier-features li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;line-height:1.4}
.tier-features li::before{content:'';width:10px;height:6px;margin-top:8px;border-left:2.5px solid var(--blue);border-bottom:2.5px solid var(--blue);transform:rotate(-45deg)}
.tier-card.recommended .tier-features li::before{border-color:var(--gold)}
.tier-cta{padding-top:20px;align-self:start}
@container (min-width:1180px) and (max-width:1360px){.tier-features{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:22px}}
.tier-cta>.btn{width:100%;display:flex;justify-content:center;text-decoration:none;min-height:48px;align-items:center}
.tier-cta .plan-renew{margin:8px 0 0;text-align:left}
.plan-monthly{display:inline-block;margin-top:6px;padding:4px 0;border:0;background:none;color:var(--blue);font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer;text-align:left}
.plan-monthly:hover{color:var(--blue2)}
.plan-monthly:focus-visible,.tier-cta .btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:8px}
.tier-clarify{margin:18px auto 0;max-width:1180px;padding:14px 18px;border-left:4px solid var(--blue);border-radius:10px;background:var(--surface2);color:var(--ink);line-height:1.5}
.plan-rules-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 0}
@container (max-width:1360px){.plan-rules-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (max-width:760px){.plan-rules-grid{grid-template-columns:minmax(0,1fr)}}
.plan-rule{padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.plan-rule.pro{border-color:color-mix(in srgb,var(--gold) 55%,var(--border))}
.plan-rule h3{margin:0 0 6px;font:800 1.1rem/1.3 ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--blue2)}
.plan-rule p{margin:0;color:var(--muted);line-height:1.45}
.pricing-page-wrap>.founding-offer{margin-top:18px}
html[data-theme="dark"] .tier-card{box-shadow:none}
html[data-theme="dark"] .tier-card.recommended{background:linear-gradient(180deg,#2b2a22 0,var(--surface) 150px);border-color:#c99825}
.plan-rules-title{grid-column:1/-1;margin:8px 0 0;font:850 1.3rem/1.25 ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--blue2)}
.pricing-page-wrap>.founding-offer{grid-template-columns:48px minmax(0,1fr) minmax(240px,360px)}
.founding-cta .plan-renew{text-align:left;margin-top:0}
@container (max-width:760px){.pricing-page-wrap>.founding-offer{grid-template-columns:1fr}}
@container (max-width:640px){.groups-table,.groups-table tbody,.groups-table tr,.groups-table td{display:block;width:100%}.groups-table thead{display:none}.groups-table tr{padding:10px 0;border-bottom:1px solid var(--border)}.groups-table td{border:0;padding:2px 0}}
.credit-packs{display:flex!important;flex-wrap:wrap;gap:8px;margin-top:8px}.credit-packs b{display:inline-flex!important;padding:3px 10px;border:1px solid var(--border);border-radius:999px;background:var(--surface2);color:var(--blue2);font-weight:800;white-space:nowrap}
.tier-cta .btn[disabled]{opacity:.6;cursor:not-allowed}

/* Profile photo: the photo replaces the initial (the initial was shown on top of it), and the photo editor. */
.profile-avatar-host{position:relative}
.profile-avatar-host>[hidden]{display:none!important}
.profile-avatar-host>img:not([hidden]){position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.profile-photo-edit{padding:0;border:0;background:none;border-radius:50%;cursor:pointer}
.profile-photo-edit:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.profile-photo-block.drop{outline:2px dashed var(--blue);outline-offset:6px;border-radius:14px}
.pe-wrap{display:grid;grid-template-columns:auto minmax(220px,1fr);gap:22px;align-items:start}
.pe-stage{position:relative;width:min(320px,70vw);aspect-ratio:1;border-radius:14px;overflow:hidden;background:repeating-conic-gradient(var(--surface2) 0 25%,var(--surface) 0 50%) 0 0/24px 24px;touch-action:none;cursor:grab;outline-offset:3px}
.pe-stage.dragging{cursor:grabbing}
.pe-stage:focus-visible{outline:3px solid var(--gold)}
.pe-stage canvas{width:100%;height:100%;display:block}
.pe-mask{position:absolute;inset:0;border-radius:50%;box-shadow:0 0 0 400px rgba(8,18,32,.58);outline:2px solid rgba(255,255,255,.9);pointer-events:none}
.pe-side{display:grid;gap:14px;align-content:start;min-width:0}
.pe-previews{display:flex;align-items:end;gap:18px}
.pe-previews span{display:grid;justify-items:center;gap:4px;color:var(--muted)}
.pe-previews canvas{border-radius:50%;border:3px solid var(--gold);background:var(--surface2)}
#pePrevL{width:96px;height:96px}#pePrevS{width:40px;height:40px;border-width:2px}
.pe-zoom{display:grid;gap:6px;font-weight:700;color:var(--blue2)}
.pe-zoom input{width:100%;accent-color:var(--blue)}
.pe-tools{display:flex;flex-wrap:wrap;gap:8px}
.pe-hint{margin:0;color:var(--muted);line-height:1.45}
@media(max-width:700px){.pe-wrap{grid-template-columns:1fr;justify-items:center}.pe-side{width:100%}}

/* Pricing: billing period selector, savings, student verification line, active subscription card. */
.cadence-switch{display:inline-flex;gap:2px;padding:4px;border:1px solid var(--border);border-radius:999px;background:var(--surface)}
.cadence-switch button{min-width:108px;padding:8px 16px;border:0;border-radius:999px;background:transparent;color:var(--blue2);font:inherit;font-weight:800;cursor:pointer}
.cadence-switch button.active{background:var(--blue2);color:var(--surface)}
.cadence-switch button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.tier-save{margin-top:6px;display:inline-block;padding:3px 10px;border-radius:10px;background:var(--green2);color:var(--green);font-weight:800;font-size:18px}
.tier-desc{display:grid;gap:8px;align-content:start}.tier-desc>p{margin:0}
.tier-student{margin:0;padding:8px 10px;border-radius:10px;background:var(--surface2);color:var(--muted);line-height:1.4}
.tier-student.ok{background:var(--green2);color:var(--green);font-weight:700}
.tier-student.warn{background:var(--amber2);color:var(--amber);font-weight:700}
.link-btn{border:0;background:none;padding:0;color:var(--blue);font:inherit;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.link-btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:4px}
.sub-active{margin:0 0 20px;padding:18px 20px;border:1.5px solid color-mix(in srgb,var(--green) 55%,var(--border));border-radius:14px;background:var(--surface)}
.sub-active.fresh{box-shadow:0 0 0 4px color-mix(in srgb,var(--green) 18%,transparent)}
.sub-active-head{display:flex;align-items:center;gap:14px}
.sub-active-head h2{margin:0;font:850 1.35rem/1.25 ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--blue2)}
.sub-active-head p{margin:2px 0 0;color:var(--muted)}
.sub-active-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--green2);color:var(--green);font-weight:900;font-size:1.3rem;flex:0 0 auto}
.sub-active-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:16px 0}
.sub-active-facts div{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}
.sub-active-facts dt{color:var(--muted);font-weight:700}
.sub-active-facts dd{margin:4px 0 0;font-weight:800;color:var(--ink)}
.sub-active-facts dd.warn{color:var(--amber)}.sub-active-facts dd.bad{color:var(--red)}
.sub-active-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}
.sub-active-actions .btn{text-decoration:none}
.sub-active>.muted{margin:0}
@container (max-width:760px){.pricing-controls{justify-content:flex-start}.cadence-switch{width:100%}.cadence-switch button{flex:1}}
.intelligence-item>div{min-width:0}.credit-packs{flex-direction:column;align-items:flex-start}.credit-packs b{white-space:normal!important;max-width:100%}
.bl-price{margin-top:6px;width:100%}.bl-student{margin-bottom:14px}.bl-student .row{gap:10px;flex-wrap:wrap}.bl-student input{flex:1 1 260px;min-width:0}

.intelligence-item .credit-def{display:block;margin-bottom:6px;color:var(--text);font-weight:750}.intelligence-item .credit-note{display:block;margin-top:8px;color:var(--muted)}
@container (max-width:760px){.band-select{flex-direction:column;align-items:stretch;gap:6px;width:100%}.band-select select{max-width:100%;width:100%}}
.tier-cta .cta-error{margin:10px 0 0;color:var(--bad);font-weight:700;line-height:1.4}
.btn[aria-busy=true]{cursor:progress;opacity:.9;display:inline-flex;align-items:center;justify-content:center;gap:10px}
.btn[aria-busy=true]::before{content:"";width:1em;height:1em;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:tera-spin .8s linear infinite;flex:none}
@keyframes tera-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.btn[aria-busy=true]::before{animation:none;border-right-color:currentColor;opacity:.5}}
/* v7.0.0 · Student verification without institutional sign-in, the graduation offer, and the proof review. Text stays at
   18px or more (1rem here), in Light and Night themes. */
.tier-verify{margin:0;color:var(--ink);line-height:1.45;font-size:max(1rem,18px)}
.tier-student{font-size:max(1rem,18px)}
.sv-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:12px 0 0}
.sv-method{display:grid;gap:4px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface2);line-height:1.45;font-size:max(1rem,18px)}
.sv-method strong{color:var(--blue2)}
.sv-cover ul{margin:6px 0 6px 1.2em;padding:0}
.sv-cover li,.sv-cover span{font-size:max(1rem,18px);line-height:1.45}
.tera-dialog .checkline span{font-size:max(1rem,18px);line-height:1.45}
.tier-offer{display:grid;gap:6px;padding:12px 14px;border:1.5px solid var(--gold);border-radius:12px;background:color-mix(in srgb,var(--gold2) 60%,var(--surface));line-height:1.45;font-size:max(1rem,18px)}
.tier-offer strong{color:var(--blue2)}
.tier-offer .btn{width:100%;justify-content:center;min-height:48px;margin-top:4px}
.tier-offer .plan-renew{text-align:left;margin:4px 0 0}
.bl-proofs{margin-bottom:16px}
.bl-proof-pages{display:grid;gap:14px;max-height:70vh;overflow:auto;padding:4px;background:var(--surface2);border-radius:10px}
.bl-proof-pages img{display:block;width:100%;height:auto;border-radius:8px;background:#fff;user-select:none;-webkit-user-drag:none}
.bl-proof-log{margin-top:12px}
.bl-proof-log summary{cursor:pointer;font-weight:800;font-size:max(1rem,18px)}
@media print{.bl-proof-pages{display:none!important}}
/* v7.0.0 · TERA AI credits (researchers) and AI Sales (Owner). Text at 18px or more (1rem), Light and Night themes. */
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ai-pay-who,.ai-terms-note{margin:0 0 16px;line-height:1.5}
.credit-kpis{margin-bottom:16px}
.credit-buy,.credit-prices{margin-top:16px}
.credit-packs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin:0 0 12px}
.credit-pack{display:grid;gap:4px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface2)}
.credit-pack strong{font:850 1.9rem/1.1 ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--blue2)}
.credit-pack span{font-weight:800}
.credit-pack em{font-style:normal;color:var(--muted);min-height:1.4em}
.credit-pack .btn{margin-top:8px;justify-content:center;min-height:46px}
.credit-cap,.key-form,.sales-adjust{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.credit-cap .cm-field,.key-form .cm-field,.sales-adjust .cm-field{flex:1 1 240px}
.key-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}
.key-list li{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:10px}
.sales-form fieldset{border:1px solid var(--border);border-radius:12px;padding:10px 14px;margin:0 0 10px}
.sales-form legend{font-weight:800;padding:0 6px}
.sales-providers{display:flex;flex-wrap:wrap;gap:4px 18px;margin:0 0 6px 28px}
.sales-limits{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:10px 0}
.sales-form h3{margin:16px 0 8px}
.sales-models input[type=checkbox]{width:22px;height:22px}
@container (max-width:760px){.credit-cap,.key-form,.sales-adjust{display:grid}}
.credit-cta{display:inline-flex;margin-top:12px;min-height:46px;align-items:center;text-decoration:none}
.sales-econ-form details{margin:6px 0 12px}.sales-econ-form summary{cursor:pointer;font-weight:700;padding:4px 0}
.sales-econ th,.sales-econ td{white-space:nowrap}
/* Owner Oversight */
.ov-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin:0 0 12px}.ov-filters .cm-field{min-width:180px;flex:1}
.ov-table td{vertical-align:top}.ov-table tr.ov-bad td{background:color-mix(in srgb,var(--red,#b42318) 6%,transparent)}
.ov-detail{max-width:420px;overflow-wrap:anywhere}.ov-active,.ov-ledger,.ov-notes,.ov-tree{list-style:none;padding:0;margin:6px 0}.ov-active li,.ov-ledger li,.ov-notes li,.ov-tree li{padding:4px 0}
.ov-controls{flex-wrap:wrap;gap:10px}.ov-file{max-height:520px;overflow:auto;background:var(--panel-2,#f6f7f9);border:1px solid var(--border);border-radius:10px;padding:12px;white-space:pre-wrap;overflow-wrap:anywhere}
.ov-scope{margin-top:12px}
/* Plans */
.plan-chip{margin-left:auto;flex:none;font-size:.9rem;font-weight:900;line-height:1.3;padding:0 6px;border-radius:999px;background:var(--gold-soft,#f5e8c8);color:var(--ink,#1d2433);border:1px solid var(--gold,#c79a3b)}
/* Night theme: a dark gold circle with a gold +, never a light circle (the + took the light night text colour on cream). */
html[data-theme="dark"] .plan-chip{background:var(--gold2,#3b311b);color:var(--gold,#e2bf6a);border-color:var(--gold,#e2bf6a)}
html[data-theme="dark"] .plan-chip>span{color:var(--gold,#e2bf6a)}
.plan-notice{margin:0 0 14px}.upgrade-card h2{margin-top:0}.upgrade-list{padding-left:1.2em}.upgrade-list li{margin:6px 0}
.plan-access-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}.plan-access-form .cm-field{min-width:200px;flex:1}

/* Notifications and Messaging (header buttons and their panels) ------------------------------------------------- */
.tera-inbox{display:flex;align-items:center;gap:4px;flex:0 0 auto}
.tera-inbox[hidden]{display:none!important}
.inbox-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:44px;min-height:44px;padding:6px 9px;border:1px solid var(--border);border-radius:11px;background:var(--surface);color:var(--ink);font-weight:800;line-height:1.1;cursor:pointer;transition:color .15s,background .15s,border-color .15s}
.inbox-btn:hover,.inbox-btn:focus-visible{background:var(--surface2);outline:none}
.inbox-btn:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--blue) 30%,transparent)}
.inbox-btn[aria-expanded="true"]{color:var(--ink);background:var(--surface2);border-color:var(--border)}
.inbox-btn[aria-expanded="true"]::after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:3px;border-radius:3px;background:var(--gold)}
.inbox-ico{position:relative;display:inline-grid;place-items:center;width:26px;height:24px}
.inbox-label{display:none;white-space:nowrap}
.inbox-badge{position:absolute;top:-9px;left:14px;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:#c8372d;color:#fff;font:800 13px/21px Inter,"Segoe UI",sans-serif;text-align:center;box-shadow:0 0 0 2px var(--surface)}
/* The header keeps its 18px text; the count in a badge is a numeral, kept compact so it sits on the icon. */
html body .tera-inbox .inbox-btn .inbox-badge{font-size:13px!important;line-height:21px!important}
.inbox-badge[hidden]{display:none}
.tera-inbox.inbox-side{display:grid;gap:2px;margin:0 0 10px;padding-bottom:10px;border-bottom:1px solid var(--border)}
.inbox-side .inbox-btn.inbox-nav{display:flex;width:100%;justify-content:flex-start;gap:12px;min-height:44px;padding:9px 12px;border:0;border-radius:10px;background:transparent;color:var(--ink);font-weight:700;text-align:left}
.inbox-side .inbox-btn.inbox-nav:hover,.inbox-side .inbox-btn.inbox-nav:focus-visible,.inbox-side .inbox-btn.inbox-nav[aria-expanded="true"]{background:var(--surface2)}
.inbox-side .inbox-btn.inbox-nav[aria-expanded="true"]{box-shadow:inset 3px 0 0 var(--gold)}
.inbox-side .inbox-btn.inbox-nav[aria-expanded="true"]::after{display:none}
.inbox-side .inbox-ico{width:27px;color:var(--blue2)}
.inbox-side .inbox-label{display:inline}
.inbox-side .inbox-btn .inbox-badge{position:static;margin-left:auto;box-shadow:none}
.control-header .inbox-btn{color:#f5f9ff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.28)}
.control-header .inbox-btn:hover,.control-header .inbox-btn:focus-visible,.control-header .inbox-btn[aria-expanded="true"]{color:#fff;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.28)}
.control-header .inbox-btn[aria-expanded="true"]::after{background:#f0cf78}
.control-header .inbox-badge{box-shadow:0 0 0 2px #10243b}
/* The names are the tooltips and accessible names of the two buttons: the header's 18px text leaves no room for labels.
   Between 921 and 1180px the research toolbar is full, so the two buttons move to the right of the brand strip (initInbox). */
body.research-shell-body .brand-strip>.tera-inbox{margin:0 0 0 12px;flex:0 0 auto}
body.research-shell-body .brand-strip>.tera-inbox .inbox-btn{min-width:40px;min-height:40px;padding:5px 7px;color:#f5f9ff;background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.28)}
body.research-shell-body .brand-strip>.tera-inbox .inbox-btn:hover,body.research-shell-body .brand-strip>.tera-inbox .inbox-btn[aria-expanded="true"]{background:rgba(255,255,255,.18)}
body.research-shell-body .brand-strip>.tera-inbox .inbox-badge{box-shadow:0 0 0 2px #10243b}

.inbox-panel{position:fixed;z-index:10010;display:flex;flex-direction:column;overflow:hidden;background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:16px;box-shadow:0 18px 48px rgba(16,35,62,.22);font-size:1rem;line-height:1.45}
[data-theme="dark"] .inbox-panel{box-shadow:0 18px 48px rgba(0,0,0,.5)}
.inbox-panel[hidden]{display:none}
.inbox-head{display:flex;align-items:center;gap:10px;padding:12px 12px 10px 16px;border-bottom:1px solid var(--border)}
.inbox-head h2{margin:0;font:800 1.12rem/1.2 Outfit,Inter,"Segoe UI",sans-serif;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.inbox-head.thread{padding-left:8px}
.inbox-head-actions{display:flex;align-items:center;gap:4px;margin-left:auto}
.inbox-person{flex:1;min-width:0;display:grid}
.inbox-person span{color:var(--muted);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.inbox-icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;min-height:34px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--muted)}
.inbox-icon-btn:hover,.inbox-icon-btn:focus-visible{background:var(--surface2);color:var(--ink)}
.inbox-text-btn{border:0;background:transparent;color:var(--blue);font-weight:750;font-size:.9rem;padding:6px 8px;border-radius:8px;min-height:34px;display:inline-flex;align-items:center;gap:6px}
.inbox-text-btn:hover:not(:disabled),.inbox-text-btn:focus-visible{background:var(--surface2)}
.inbox-text-btn:disabled{opacity:.45;cursor:not-allowed}
.inbox-body{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
.inbox-foot{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;padding:10px 16px;border-top:1px solid var(--border);background:var(--surface3);font-size:.9rem}
.inbox-foot a{font-weight:750}
.inbox-tabs{display:flex;gap:6px;padding:10px 14px 4px}
.inbox-tab{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:999px;padding:4px 14px;min-height:34px;font-weight:750;font-size:.9rem}
.inbox-tab.active{background:var(--blue2);border-color:var(--blue2);color:var(--surface)}
.inbox-count{display:inline-block;min-width:18px;padding:0 5px;border-radius:999px;background:#c8372d;color:#fff;font-size:.75rem;line-height:20px;text-align:center}
.inbox-list{list-style:none;margin:0;padding:4px 0 8px}
.inbox-group{padding:10px 16px 4px;color:var(--muted);font:800 .8rem/1.2 Inter,"Segoe UI",sans-serif;letter-spacing:.06em;text-transform:uppercase}
.inbox-item{display:flex;align-items:flex-start;gap:11px;width:100%;padding:10px 16px;border:0;border-radius:0;background:transparent;color:var(--ink);text-align:left;min-height:0;font:inherit;text-decoration:none;position:relative}
.inbox-item:hover,.inbox-item:focus-visible{background:var(--surface2);text-decoration:none;outline:none}
.inbox-item:focus-visible{box-shadow:inset 3px 0 0 var(--blue)}
.inbox-item.unread{background:color-mix(in srgb,var(--blue) 7%,var(--surface))}
.inbox-item.unread:hover{background:color-mix(in srgb,var(--blue) 12%,var(--surface))}
.inbox-item.pinned{border-bottom:1px solid var(--border);margin-bottom:4px}
.inbox-item-main{flex:1;min-width:0;display:grid;gap:2px}
.inbox-item-main strong{font-weight:750;font-size:1rem;line-height:1.35}
.inbox-item.unread .inbox-item-main strong{font-weight:850}
.inbox-item-top{display:flex;align-items:baseline;gap:8px;justify-content:space-between}
.inbox-item-top strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.inbox-item-top time{flex:0 0 auto;color:var(--muted);font-size:.86rem}
.inbox-item-body{color:var(--muted);font-size:.94rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.inbox-item.unread .inbox-item-body{color:var(--ink)}
.inbox-item-meta{color:var(--muted);font-size:.86rem}
.inbox-ack{color:var(--amber);font-weight:800}
.inbox-dot{flex:0 0 auto;width:9px;height:9px;margin-top:6px;border-radius:50%;background:var(--blue)}
.inbox-unread-count{flex:0 0 auto;align-self:center;min-width:22px;height:22px;padding:0 7px;border-radius:999px;background:var(--blue2);color:var(--surface);font:800 .78rem/22px Inter,"Segoe UI",sans-serif;text-align:center}
.inbox-avatar{flex:0 0 auto;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;font:800 .9rem/1 Outfit,Inter,"Segoe UI",sans-serif;color:#fff;background:#41607f}
.inbox-avatar.small{width:36px;height:36px;font-size:.82rem}
.inbox-avatar.person{background:linear-gradient(135deg,#233b57,#a88646)}
.inbox-avatar.src-notice{background:#a88646}
.inbox-avatar.src-support,.inbox-avatar.src-desk{background:#0b7a59}
.inbox-avatar.src-community{background:#6d55a8}
.inbox-avatar.src-collab{background:#2f6fb0}
.inbox-avatar.src-moderation{background:#a83e3e}
.inbox-empty{display:grid;justify-items:center;gap:10px;padding:34px 26px;text-align:center;color:var(--muted)}
.inbox-empty svg{width:36px;height:36px;opacity:.55}
.inbox-empty p{margin:0;max-width:34ch}
.inbox-empty.small{padding:18px}
.inbox-empty.bad{color:var(--red)}
.inbox-intro{margin:10px 16px 4px;color:var(--muted);font-size:.9rem}
.inbox-search{padding:10px 14px 4px}
.inbox-search input{min-height:38px;padding:7px 12px;border-radius:999px;font-size:.94rem;background:var(--surface2)}
.inbox-pref{display:flex;align-items:flex-start;gap:8px;cursor:pointer;color:var(--muted)}
.inbox-pref input{width:auto;min-height:auto;margin-top:3px}
.inbox-spinner{width:22px;height:22px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--blue);animation:inboxSpin .8s linear infinite}
@keyframes inboxSpin{to{transform:rotate(360deg)}}
.inbox-body.thread{background:var(--surface3)}
.msg-list{list-style:none;margin:0;padding:12px 14px;display:flex;flex-direction:column;gap:3px}
.msg.run-end{margin-bottom:6px}
.msg{display:flex;flex-direction:column;max-width:82%}
.msg.mine{align-self:flex-end;align-items:flex-end}
.msg.theirs{align-self:flex-start;align-items:flex-start}
.msg-bubble{padding:8px 12px;border-radius:16px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.98rem;line-height:1.45}
.msg.theirs .msg-bubble{background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:5px}
.msg.mine .msg-bubble{background:var(--blue2);color:var(--surface);border-bottom-right-radius:5px}
.msg time{font-size:.8rem;color:var(--muted);margin:2px 4px 0}
.msg-day{align-self:center;margin:8px 0 4px;color:var(--muted);font-size:.82rem;font-weight:750;text-transform:capitalize}
.msg-day span{padding:2px 10px;border-radius:999px;background:var(--surface2)}
.inbox-state{padding:10px 16px;border-top:1px solid var(--border);background:var(--amber2);color:var(--ink);font-size:.92rem}
.inbox-compose{display:grid;grid-template-columns:1fr auto;gap:4px 8px;align-items:end;padding:10px 12px 8px;border-top:1px solid var(--border);background:var(--surface)}
.inbox-compose textarea{min-height:42px;max-height:160px;padding:9px 12px;border-radius:14px;resize:none;font-size:.98rem;line-height:1.4}
.inbox-send{display:grid;place-items:center;width:42px;height:42px;min-height:42px;padding:0;border:0;border-radius:50%;background:var(--blue2);color:var(--surface)}
.inbox-send:disabled{opacity:.5}
[data-theme="dark"] .msg.mine .msg-bubble{background:#1d4f86;color:#f4f8fd}
[data-theme="dark"] .inbox-send,[data-theme="dark"] .inbox-unread-count{background:#1d4f86;color:#f4f8fd}
[data-theme="dark"] .inbox-tab.active{background:var(--gold2);border-color:var(--gold);color:var(--gold)}
[data-theme="dark"] .inbox-item.unread{background:color-mix(in srgb,var(--blue) 10%,var(--surface))}
.inbox-hint{grid-column:1/-1;color:var(--muted);font-size:.8rem;padding-left:4px}
@media(max-width:600px){.inbox-panel{left:8px!important;right:8px;width:auto!important;border-radius:14px}.inbox-hint{display:none}}
@media(prefers-reduced-motion:reduce){.inbox-spinner{animation:none}.inbox-btn{transition:none}}

/* References: how a library entry reaches the PDF reference list */
.rf-paper-note{margin:.7rem 0 0;color:var(--muted);font-size:.95rem;line-height:1.5;max-width:70ch}.rf-paper-note code{font-size:.92em;padding:.05rem .35rem;border-radius:6px;background:var(--surface-2,rgba(120,130,150,.12))}
.rf-cite-diff{white-space:pre-wrap;word-break:break-word;font-size:.95rem;line-height:1.5;padding:.7rem .85rem;border-radius:10px;background:var(--surface-2,rgba(120,130,150,.1));border:1px solid var(--line,rgba(120,130,150,.25));margin:.35rem 0 .8rem}.rf-bib-fix{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
/* References: verification (academic integrity) */
.rf-verify{margin:.8rem 0 0;padding:.75rem .9rem;border-radius:12px;border:1px solid var(--line,rgba(120,130,150,.25));background:var(--surface-2,rgba(120,130,150,.06))}
.rf-verify-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.rf-verify-note{margin:.45rem 0 0;font-size:.95rem;line-height:1.5}
.rf-verify .rf-actions{margin-top:.6rem}.rf-verify-diff{width:100%;margin:.55rem 0 0;border-collapse:collapse;font-size:.92rem}.rf-verify-diff th,.rf-verify-diff td{text-align:left;vertical-align:top;padding:.3rem .45rem;border-top:1px solid var(--line,rgba(120,130,150,.2))}
.rf-vbadge{font-variant-numeric:tabular-nums}.rf-progress{position:fixed;right:20px;bottom:76px;z-index:60;padding:.7rem 1rem;border-radius:12px;background:var(--surface,#fff);color:var(--text,#111);border:1px solid var(--line,rgba(120,130,150,.3));box-shadow:0 10px 30px rgba(15,23,42,.14);font-weight:600}
/* Research integrity in the Preflight (v7.0.2) */
.tera-int-h{margin:22px 0 8px;font-size:1.15rem;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.tera-int-h .muted{font-size:.9rem;font-weight:500}
.tera-int-go{font-weight:600;margin-left:4px;white-space:nowrap}
