:root{--bg:#f5f3ec;--surface:#fbfaf5;--surface2:#efede5;--ink:#171816;--text:#171816;--panel:#fbfaf5;--dark:#171816;--muted:#77786f;--line:#dcd9cf;--lime:#a9d73f;--lime2:#dff5a7;--danger:#b7473d;--shadow:0 18px 60px rgba(20,20,15,.08);--radius:24px}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth;max-width:100%;overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;min-width:0;max-width:100%;overflow-x:hidden}img,svg,video,canvas,iframe,embed,object{display:block;max-width:100%;height:auto}button,input,textarea,select{font:inherit}button,a{color:inherit}a{text-decoration:none}button{border:0;background:none;cursor:pointer}.app{min-height:100vh;display:grid;grid-template-columns:252px 1fr;max-width:100%;min-width:0}.main,.page,.panel,.topbar,.sidebar,.app-footer,.page-head,.metric-grid,.two-col,.task-board,.calendar-layout,.focus-layout,.vault-layout,.insights-grid,.settings-grid,.academic-overview,.portfolio-grid{min-width:0;max-width:100%}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;padding:26px 18px 18px;border-right:1px solid var(--line);background:rgba(245,243,236,.88);backdrop-filter:blur(20px);z-index:80;display:flex;flex-direction:column;transition:width .35s cubic-bezier(.2,.8,.2,1),padding .35s;max-width:100%}.brand{display:flex;align-items:center;gap:11px;font-size:25px;font-weight:850;letter-spacing:-1.7px;width:max-content}.mark{display:flex;gap:4px;align-items:center}.mark i{width:9px;height:9px;border-radius:50%;display:block;background:#181a17}.mark i+ i{background:var(--lime)}.side-nav{margin-top:42px;display:flex;flex-direction:column;gap:5px;overflow:auto}.side-label{font-size:9px;text-transform:uppercase;letter-spacing:2.2px;color:#a1a096;margin:12px 12px 8px}.nav-item{height:44px;padding:0 12px;border-radius:13px;display:flex;align-items:center;gap:12px;color:#67685f;font-weight:650;transition:.22s}.nav-item:hover{background:var(--surface2);color:var(--ink);transform:translateX(2px)}.nav-item.active{background:#e6e3d9;color:var(--ink)}.nav-icon{width:18px;height:18px;display:grid;place-items:center;flex:0 0 18px}.nav-icon svg,.top-btn svg,.theme-toggle svg,.sidebar-collapse svg,.mobile-fab svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.nav-item.active .nav-icon{color:var(--lime)}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding-top:14px;display:flex;align-items:center;gap:8px}.profile-link{flex:1;display:flex;align-items:center;gap:10px;text-align:left;padding:7px;border-radius:13px}.profile-link:hover{background:var(--surface2)}.avatar{width:40px;height:40px;background:var(--ink);color:white;border-radius:12px;display:grid;place-items:center;font-weight:800}.profile-copy{min-width:0;display:flex;flex-direction:column}.profile-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-copy small{color:#92928a;font-size:10px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.theme-toggle{height:40px;width:40px;border:1px solid var(--line);border-radius:12px;display:grid;place-items:center;background:var(--surface);position:relative}.theme-label{display:none}.sidebar-collapse{position:absolute;right:-12px;top:84px;width:25px;height:25px;border:1px solid var(--line);background:var(--surface);border-radius:50%;display:grid;place-items:center;box-shadow:0 4px 16px rgba(0,0,0,.08);color:var(--muted)}.sidebar-collapse svg{width:12px;height:12px}.main{grid-column:2;min-width:0;display:flex;flex-direction:column;min-height:100vh}.topbar{height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 42px;position:sticky;top:0;background:rgba(245,243,236,.84);backdrop-filter:blur(20px);z-index:60}.crumb{display:flex;gap:8px;color:#a0a096}.crumb strong{color:var(--ink)}.slash{color:#c0beb5}.top-actions{display:flex;gap:10px}.top-btn,.btn{min-height:40px;border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:0 15px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .2s,background .2s,border-color .2s}.top-btn:hover,.btn:hover{transform:translateY(-1px);border-color:#bdb9ae}.btn.dark,.top-btn.dark{background:var(--ink);border-color:var(--ink);color:#fff}.btn.danger{color:var(--danger);border-color:#e3c1bd}.btn.wide{width:100%}.top-btn kbd{font-size:10px;padding:3px 6px;border:1px solid var(--line);border-radius:6px;color:#898980}.page{max-width:1280px;margin:0 auto;padding:48px 48px 80px;flex:1;width:100%}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:42px}.page-head h1{font-size:76px;line-height:.9;letter-spacing:-5px;margin:10px 0 13px}.page-head p{margin:0;color:var(--muted);font-size:16px;max-width:700px;line-height:1.5}.actions{display:flex;gap:9px;flex-wrap:wrap}.eyebrow{font-size:9px;letter-spacing:2.4px;text-transform:uppercase;color:#9c9d94;font-weight:800}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 38px rgba(30,30,22,.035);padding:26px}.panel h3{margin:7px 0 0;font-size:23px;letter-spacing:-1.1px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.command-intro{display:grid;grid-template-columns:1fr 170px;gap:30px;align-items:stretch;background:var(--ink);color:white;border-radius:30px;padding:36px;margin-bottom:18px;overflow:hidden;position:relative}.command-intro:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-130px;top:-160px;box-shadow:0 0 0 55px rgba(167,214,61,.025),0 0 0 110px rgba(167,214,61,.018)}.command-intro h2{font-size:46px;letter-spacing:-2.7px;line-height:.98;max-width:680px;margin:12px 0}.command-intro p{color:#a9aaa2;max-width:680px;line-height:1.55}.command-date{border:1px solid rgba(255,255,255,.12);border-radius:22px;padding:20px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:1}.command-date span,.command-date small{color:#a9aaa2;text-transform:uppercase;letter-spacing:2px;font-size:9px}.command-date strong{font-size:76px;letter-spacing:-6px;line-height:1}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metric{padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--surface)}.metric span,.metric small{display:block;color:#96978f;font-size:10px;text-transform:uppercase;letter-spacing:1.7px}.metric strong{display:block;font-size:42px;letter-spacing:-2.5px;margin:13px 0 7px}.metric small{text-transform:none;letter-spacing:0;font-size:11px}.two-col,.task-board,.calendar-layout,.focus-layout,.vault-layout,.insights-grid{display:grid;grid-template-columns:1.45fr .85fr;gap:18px;margin-bottom:18px}.agenda-panel{margin-bottom:18px}.task-row,.signal-row,.agenda-row,.file-row,.concept-row{display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);padding:16px 0;width:100%;text-align:left}.task-row:first-of-type,.signal-row:first-of-type,.agenda-row:first-of-type{border-top:0}.task-row:hover .grow strong,.signal-row:hover strong,.agenda-row:hover strong{color:#87ad25}.grow{flex:1;min-width:0}.grow strong,.signal-row strong,.agenda-row strong,.file-row strong{display:block;font-size:14px}.grow small,.signal-row small,.agenda-row small,.file-row small{display:block;color:#989991;margin-top:4px;font-size:11px}.check{width:22px;height:22px;border:1.5px solid #aaa99f;border-radius:7px;background:transparent;flex:0 0 auto;display:grid;place-items:center;font-size:12px;font-weight:900}.check.done{background:var(--ink);color:#fff;border-color:var(--ink)}.priority{font-size:9px;text-transform:uppercase;letter-spacing:1.2px}.priority.high{color:#b04c44}.priority.medium{color:#9a882d}.priority.low{color:#71855d}.signal-row{cursor:pointer}.signal-row b{background:var(--lime2);padding:7px 10px;border-radius:999px;font-size:11px}.empty-state{min-height:150px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:var(--muted);padding:25px}.empty-state strong{color:var(--ink);font-size:16px}.empty-state p{max-width:420px;line-height:1.5;margin:7px 0 15px}.academic-overview{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.academic-overview>div{background:var(--ink);color:white;border-radius:24px;padding:30px}.academic-overview strong{display:block;font-size:64px;letter-spacing:-4px;margin:12px 0 5px}.academic-overview p{color:#a5a69e}.concept-list{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:8px 24px}.concept-row{cursor:pointer}.concept-row>span{width:180px;font-weight:750}.bar,.progress{height:5px;background:#e5e2d9;border-radius:99px;overflow:hidden;flex:1}.bar i,.progress i{display:block;height:100%;background:var(--ink);border-radius:inherit}.concept-row b{width:45px;text-align:right}.graph-wrap{background:var(--surface);border:1px solid var(--line);border-radius:28px;overflow:hidden}.graph-head{height:92px;padding:26px 30px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.hint{font-size:9px;text-transform:uppercase;letter-spacing:1.8px;color:#98a74e;background:var(--lime2);padding:7px 10px;border-radius:999px}.graph-canvas{height:620px;position:relative;background-image:linear-gradient(rgba(110,110,100,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(110,110,100,.08) 1px,transparent 1px);background-size:32px 32px;overflow:hidden}.graph-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.graph-lines line{stroke:#bbb9b0;stroke-width:.18}.graph-node{position:absolute;transform:translate(-50%,-50%);min-width:120px;padding:13px 15px;background:var(--surface);border:1px solid #cfcac0;border-radius:15px;box-shadow:0 10px 28px rgba(20,20,15,.08);text-align:left;z-index:2}.graph-node:hover{border-color:var(--lime);transform:translate(-50%,-50%) scale(1.03)}.graph-node.weak{box-shadow:0 0 0 3px rgba(170,215,63,.2),0 10px 28px rgba(20,20,15,.08)}.graph-node strong,.graph-node small{display:block}.graph-node small{color:#999a91;margin-top:4px;font-size:10px}.graph-legend{display:flex;gap:8px;flex-wrap:wrap;padding:15px 20px;border-top:1px solid var(--line)}.graph-legend span{border:1px solid var(--line);padding:7px 9px;border-radius:999px;color:#77786f;font-size:10px}.planner-top{display:flex;justify-content:space-between;align-items:center;background:var(--surface2);border-radius:24px;padding:25px 28px;margin-bottom:18px}.planner-top strong{font-size:50px;letter-spacing:-3px;display:block}.task-row.large{padding:19px 0}.task-row.completed{opacity:.65}.calendar-toolbar{display:flex;gap:9px;align-items:center;margin-bottom:15px}.calendar-toolbar strong{font-size:21px;letter-spacing:-.8px;margin:0 7px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;background:var(--surface);padding:10px;border:1px solid var(--line);border-radius:24px}.cal-weekday{padding:9px;color:#999a92;font-size:9px;text-transform:uppercase;letter-spacing:1.5px}.cal-cell{min-height:118px;border:1px solid transparent;border-radius:15px;background:var(--surface2);padding:9px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:5px;transition:.2s}.cal-cell:hover{border-color:#c3c0b6;transform:translateY(-1px)}.cal-cell.selected{border-color:var(--lime);box-shadow:inset 0 0 0 1px var(--lime)}.cal-cell.today>span{background:var(--ink);color:#fff}.cal-cell>span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800}.cal-cell i{font-style:normal;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;padding:4px 5px;background:var(--lime2);border-radius:6px}.cal-cell small{color:#77786f}.empty-day{opacity:.35}.agenda .agenda-row{cursor:pointer}.agenda-row b{font-size:20px;color:#a3a39b}.focus-layout{grid-template-columns:1.35fr .65fr}.focus-core{background:var(--ink);color:#fff;border-radius:30px;min-height:610px;padding:35px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.focus-core:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.07);border-radius:50%;box-shadow:0 0 0 70px rgba(169,215,63,.025),0 0 0 140px rgba(169,215,63,.015)}.focus-time{font-size:125px;letter-spacing:-10px;line-height:1;margin:45px 0;position:relative}.focus-controls{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;position:relative}.focus-preset{height:42px;padding:0 14px;border:1px solid rgba(255,255,255,.18);border-radius:12px;color:#bbbcb5}.focus-preset.active{background:var(--lime);color:var(--ink);border-color:var(--lime)}#customMinutes{width:95px;height:42px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.15);border-radius:12px;color:white;padding:0 10px}.focus-settings select,.form input,.form textarea,.form select,.search-input{width:100%;border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:12px;padding:12px 13px;outline:none}.focus-settings p{color:var(--muted);line-height:1.6}.session-history{margin-top:25px}.session-history h4{margin-bottom:10px}.session-history div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line);font-size:12px}.session-history small{color:var(--muted)}.mini-focus{position:fixed;z-index:120;right:22px;bottom:22px;min-width:210px;padding:9px 10px;background:rgba(23,24,22,.96);color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:17px;display:flex;align-items:center;gap:9px;box-shadow:0 18px 55px rgba(0,0,0,.25);backdrop-filter:blur(16px);user-select:none}.mini-drag{width:30px;height:30px;border-radius:10px;background:var(--lime);color:var(--ink);display:grid;place-items:center;cursor:grab}.mini-drag svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7}.mini-copy{min-width:70px}.mini-copy span{display:block;font-size:8px;letter-spacing:1.8px;color:#9c9d94}.mini-copy strong{display:block;font-size:19px;letter-spacing:-1px}.mini-action{width:28px;height:28px;border-radius:9px;color:#aaa;background:rgba(255,255,255,.07)}.focus-overlay{position:fixed;inset:0;background:rgba(8,9,8,.96);z-index:200;color:white;display:grid;place-items:center;padding:30px}.focus-overlay-inner{text-align:center;width:min(850px,100%)}.focus-overlay-top{display:flex;justify-content:flex-end;gap:8px}.focus-overlay-top>span{margin-right:auto;color:#989a91;letter-spacing:2px;font-size:9px;align-self:center}.overlay-timer{font-size:180px;letter-spacing:-14px;line-height:.9;margin:100px 0 40px}.focus-overlay p{color:#aaa;max-width:600px;margin:0 auto 25px}.focus-overlay-actions{display:flex;justify-content:center;gap:10px}.file-row{padding:13px 0}.file-type{width:44px;height:44px;border:1px solid var(--line);border-radius:11px;display:grid;place-items:center;font-size:8px;font-weight:850}.note-card{border-top:1px solid var(--line);padding:18px 0}.note-card>div{display:flex;justify-content:space-between;gap:12px}.note-card small{color:var(--muted)}.note-card p{line-height:1.65;color:#686961;white-space:pre-wrap}.text-button{font-weight:750;font-size:12px}.source-note{padding:18px 20px;border:1px dashed #bfcf82;background:var(--lime2);border-radius:18px;display:flex;gap:15px;margin-bottom:18px}.source-note span{color:#697053}.opportunity{display:flex;justify-content:space-between;gap:20px;padding:24px 0;border-top:1px solid var(--line)}.opportunity:first-child{border-top:0}.opportunity h3{font-size:23px;margin:8px 0}.opportunity p{color:var(--muted)}.opp-actions{display:flex;align-items:center;gap:8px}.project{padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:24px;min-height:230px}.project h3{font-size:28px;letter-spacing:-1.4px}.project p{color:var(--muted);line-height:1.5;min-height:50px}.project strong{display:block;margin-top:10px;font-size:11px}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.bar-chart{height:290px;display:flex;align-items:flex-end;gap:14px;padding:25px 5px 5px}.bar-chart>div{height:100%;flex:1;display:flex;align-items:flex-end;justify-content:center;position:relative}.bar-chart span{width:70%;min-height:2px;background:var(--ink);border-radius:8px 8px 2px 2px}.bar-chart small{position:absolute;bottom:-2px;transform:translateY(20px);color:#999a91}.signal-stack>div{padding:18px 0;border-top:1px solid var(--line)}.signal-stack strong{font-size:24px;display:block}.signal-stack span{font-size:11px;color:var(--muted)}.math-note p{color:var(--muted);line-height:1.7}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px 0;border-top:1px solid var(--line)}.setting-row strong,.setting-row small{display:block}.setting-row small{color:var(--muted);margin-top:4px}.switch{width:48px;height:28px;border-radius:99px;background:#d4d1c8;padding:3px}.switch i{display:block;width:22px;height:22px;border-radius:50%;background:white;transition:.2s}.switch.on{background:var(--lime)}.switch.on i{transform:translateX(20px)}.data-actions{display:flex;flex-wrap:wrap;gap:8px}.form{display:flex;flex-direction:column;gap:15px}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:10px;text-transform:uppercase;letter-spacing:1.4px;font-weight:800;color:#8b8c84}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form input:focus,.form textarea:focus,.form select:focus,.search-input:focus{border-color:#9dbf4c;box-shadow:0 0 0 3px rgba(169,215,63,.14)}.form textarea{resize:vertical}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:5px}.modal-backdrop{position:fixed;inset:0;background:rgba(20,20,16,.42);backdrop-filter:blur(10px);z-index:180;display:grid;place-items:center;padding:20px}.modal{width:min(620px,100%);max-height:90vh;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:25px;box-shadow:0 30px 100px rgba(0,0,0,.2);animation:modalIn .25s ease}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal h3{font-size:25px;letter-spacing:-1.2px;margin:0}.icon-btn{width:36px;height:36px;border:1px solid var(--line);border-radius:11px;background:var(--surface);display:grid;place-items:center;font-size:18px}.search-results{margin-top:12px}.search-result{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid var(--line)}.search-result strong,.search-result small{display:block}.search-result small{color:var(--muted);margin-top:3px}.search-result>span{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#888}.shortcut-list>div{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:12px 0}.shortcut-list kbd{border:1px solid var(--line);padding:5px 8px;border-radius:7px;background:var(--surface2);font-size:10px}.modal-note,.local-note{font-size:11px;color:var(--muted);line-height:1.6}.local-note{padding:12px 13px;background:var(--surface2);border-radius:12px}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);opacity:0;background:var(--ink);color:white;padding:11px 15px;border-radius:12px;z-index:300;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}.file-modal .modal{width:min(900px,100%)}.file-frame{width:100%;height:65vh;border:0;border-radius:12px;background:white}.file-image{display:block;max-width:100%;max-height:65vh;margin:auto;border-radius:12px}.file-media{width:100%;max-height:65vh}.app-footer{width:100%;max-width:1280px;margin:0 auto;padding:22px 48px 32px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto auto;gap:20px;align-items:center;color:#8b8c83;font-size:10px;flex-shrink:0}.app-footer>div{display:flex;align-items:center;gap:12px}.app-footer strong{font-size:15px;color:var(--ink);letter-spacing:-.8px}.app-footer a:hover{color:var(--ink)}.auth-body{min-height:100vh;display:grid;place-items:center;padding:25px}.auth-shell{width:min(500px,100%)}.auth-brand{margin:0 auto 30px}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:30px;padding:35px;box-shadow:var(--shadow)}.auth-card h1{font-size:48px;letter-spacing:-3px;margin:12px 0}.auth-card>p{color:var(--muted);line-height:1.5}.auth-tabs{display:flex;gap:4px;background:var(--surface2);border-radius:12px;padding:4px;margin:25px 0}.auth-tab{flex:1;padding:10px;border-radius:9px;font-weight:750;color:var(--muted)}.auth-tab.active{background:var(--surface);color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.06)}.auth-foot{text-align:center;color:var(--muted);font-size:11px}.auth-foot a{color:var(--ink);font-weight:800}
[data-theme=dark]{--bg:#10110f;--surface:#171815;--surface2:#20211d;--ink:#f2f2ed;--text:#f2f2ed;--panel:#171815;--dark:#f2f2ed;--muted:#a3a49b;--line:#33352e;--lime:#b7df52;--lime2:#27351b;--danger:#e37d72;--shadow:0 18px 60px rgba(0,0,0,.35)}[data-theme=dark] .sidebar,[data-theme=dark] .topbar{background:rgba(16,17,15,.88)}[data-theme=dark] .mark i+ i{background:#d9ff68}[data-theme=dark] .attendance-hero-main{background:#0a0c0a;color:#f4f5ef}[data-theme=dark] .attendance-hero-ring i{background:#0a0c0a}[data-theme=dark] .attendance-hero-main .btn.dark{background:#f0f1ea;color:#10110f;border-color:#f0f1ea}[data-theme=dark] .nav-item.active{background:#292a25}[data-theme=dark] .nav-item:hover{background:#24251f}[data-theme=dark] .btn,[data-theme=dark] .top-btn,[data-theme=dark] .icon-btn,[data-theme=dark] .theme-toggle{background:#1b1c19;border-color:#3a3b34}[data-theme=dark] .command-intro,[data-theme=dark] .focus-core{background:#090a09}[data-theme=dark] .metric,[data-theme=dark] .panel,[data-theme=dark] .graph-node,[data-theme=dark] .auth-card{background:#171815}[data-theme=dark] .academic-overview>div{background:#090a09}[data-theme=dark] .bar,[data-theme=dark] .progress{background:#34352f}[data-theme=dark] .bar-chart span{background:#f2f2ed}[data-theme=dark] .cal-cell{background:#20211d}[data-theme=dark] .calendar-grid{background:#171815}[data-theme=dark] .cal-cell i{background:#30401f;color:#d8ed9b}[data-theme=dark] .form input,[data-theme=dark] .form textarea,[data-theme=dark] .form select,[data-theme=dark] .focus-settings select,[data-theme=dark] .search-input{background:#20211d;color:var(--ink);border-color:#3a3b34}[data-theme=dark] .form input::placeholder,[data-theme=dark] .form textarea::placeholder,[data-theme=dark] .search-input::placeholder{color:#85887f;opacity:1}[data-theme=dark] .profile-avatar,[data-theme=dark] .avatar{background:#f2f2ed;color:#10110f}[data-theme=dark] .sidebar-collapse{background:#171815}[data-theme=dark] .app-footer strong{color:var(--ink)}
body.sidebar-collapsed .app{grid-template-columns:78px 1fr}body.sidebar-collapsed .sidebar{width:78px;padding-left:10px;padding-right:10px}body.sidebar-collapsed .brand>span:last-child,body.sidebar-collapsed .side-label,body.sidebar-collapsed .nav-item .label,body.sidebar-collapsed .profile-copy,body.sidebar-collapsed .theme-label{display:none}body.sidebar-collapsed .nav-item{justify-content:center;padding:0}body.sidebar-collapsed .profile-link{justify-content:center}.sidebar-collapsed .sidebar-collapse{transform:rotate(180deg)}
@keyframes modalIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
.mobile-only-bar,.mobile-fab{display:none}
@media(max-width:1100px){.app{grid-template-columns:78px 1fr}.sidebar{width:78px;padding:25px 10px}.brand>span:last-child,.side-label,.nav-item .label,.profile-copy{display:none}.nav-item{justify-content:center}.profile-link{justify-content:center}.sidebar-bottom{gap:5px}.metric-grid{grid-template-columns:repeat(2,1fr)}.portfolio-grid{grid-template-columns:1fr 1fr}.page{padding-left:30px;padding-right:30px}.app-footer{padding-left:30px;padding-right:30px}}
@media(max-width:720px){.app{display:block!important;grid-template-columns:1fr!important;min-height:auto!important;height:auto!important}.sidebar{display:none}.main{width:100%;min-height:auto!important;height:auto!important}.page{flex:none!important}.topbar{height:66px;padding:0 16px}.top-actions .top-btn:first-child{display:none}.page{padding:34px 16px 0}.page-head{display:block;margin-bottom:30px}.page-head h1{font-size:clamp(28px,7vw,40px);letter-spacing:-2px;word-break:break-word}.page-head p{font-size:14px}.page-head .actions{margin-top:18px;flex-wrap:wrap}.command-intro{grid-template-columns:1fr;padding:27px;min-height:390px}.command-intro h2{font-size:38px}.command-date{width:130px;height:130px}.command-date strong{font-size:56px}.metric-grid,.academic-overview,.two-col,.task-board,.calendar-layout,.focus-layout,.vault-layout,.insights-grid,.settings-grid,.portfolio-grid{grid-template-columns:1fr}.metric strong{font-size:37px}.panel{padding:20px;border-radius:20px}.graph-canvas{height:540px}.graph-node{min-width:100px;padding:10px}.calendar-grid{gap:3px;padding:5px}.cal-weekday{font-size:7px;padding:7px 3px}.cal-cell{min-height:78px;padding:6px}.cal-cell i{font-size:7px}.focus-core{min-height:570px;padding:25px}.focus-time{font-size:76px;letter-spacing:-6px}.overlay-timer{font-size:82px;letter-spacing:-7px;margin:80px 0 35px}.mini-focus{right:12px;bottom:80px}.app-footer{margin:20px 16px 0;padding:20px 16px 0;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.field-row{grid-template-columns:1fr}.opportunity{display:block}.opp-actions{margin-top:15px}.mobile-only-bar{display:flex;position:fixed;left:0;right:0;bottom:0;height:66px;background:rgba(245,243,236,.92);backdrop-filter:blur(20px);border-top:1px solid var(--line);z-index:100;justify-content:space-around;align-items:center}.mobile-only-bar a{font-size:8px;color:#8d8e85;text-align:center}.mobile-only-bar a.active{color:var(--ink);font-weight:800}.mobile-only-bar svg{display:block;width:18px;height:18px;margin:0 auto 4px}.mobile-fab{display:grid;position:fixed;right:18px;bottom:82px;width:54px;height:54px;border-radius:50%;background:var(--ink);color:#fff;place-items:center;z-index:110;box-shadow:0 12px 35px rgba(0,0,0,.25)}.mobile-fab.open{transform:rotate(45deg)}.mobile-menu{position:fixed;right:18px;bottom:145px;display:flex;flex-direction:column;gap:8px;z-index:109;opacity:0;pointer-events:none;transform:translateY(10px);transition:.25s}.mobile-menu.open{opacity:1;pointer-events:auto;transform:none}.mobile-menu a{background:var(--surface);border:1px solid var(--line);padding:11px 14px;border-radius:13px;box-shadow:var(--shadow);font-size:11px;font-weight:800;display:flex;align-items:center;gap:9px;min-width:150px}.mobile-menu a svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.auth-card{padding:25px;border-radius:24px}.auth-card h1{font-size:40px}.file-frame{height:60vh}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* v4 product refinements */
.sidebar-bottom{align-items:stretch}.sidebar-bottom .profile-link{min-width:0}.sidebar-bottom .theme-toggle{flex:0 0 40px}.sidebar-collapsed .theme-toggle{display:none!important}
.app-footer span a{color:inherit;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}.app-footer span a:hover{color:var(--ink);text-decoration-color:var(--lime)}
.command-health{position:relative;z-index:2;width:180px;min-height:180px;border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:22px;display:flex;flex-direction:column;justify-content:center;background:rgba(255,255,255,.025)}.command-health span{font-size:9px;letter-spacing:2px;color:#a5a69e}.command-health strong{font-size:76px;letter-spacing:-6px;line-height:.95;margin:8px 0}.command-health small{font-size:10px;line-height:1.4;color:#9b9c94}.signal-row{border:0;background:transparent}.signal-row:hover{background:var(--surface2);border-radius:12px;padding-left:10px;padding-right:10px}.cal-cell{vertical-align:top;display:flex!important;flex-direction:column;align-items:flex-start;gap:7px}.cal-day-number{font-weight:800}.cal-events{width:100%;display:flex;flex-direction:column;gap:4px}.cal-event{display:block!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;padding:4px 6px;border-radius:7px;background:var(--surface2);font-size:9px!important;color:var(--ink)!important;cursor:pointer}.cal-event b{font-weight:800}.cal-event:hover{background:var(--lime2)}.cal-cell.selected{outline:2px solid var(--ink);outline-offset:-2px}.calendar-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px}.calendar-toolbar strong{min-width:180px;text-align:center;font-size:16px}.focus-core{position:relative;overflow:hidden;min-height:650px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,var(--ink),#23251f);color:#fff!important}.focus-core:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-170px;top:-150px;box-shadow:0 0 0 48px rgba(169,215,63,.035),0 0 0 96px rgba(169,215,63,.025)}.focus-core-top{position:relative;z-index:2;display:flex;justify-content:space-between;gap:15px}.focus-status{font-size:11px;color:#b2b3ac;max-width:300px;text-align:right}.focus-dial{position:relative;z-index:2;width:min(390px,80vw);aspect-ratio:1;border:1px solid rgba(255,255,255,.12);border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;align-self:center;box-shadow:0 0 0 22px rgba(169,215,63,.035),inset 0 0 60px rgba(0,0,0,.18)}.focus-dial:after{content:"";position:absolute;inset:26px;border:1px dashed rgba(169,215,63,.28);border-radius:50%;animation:spin 22s linear infinite}.focus-time{font-variant-numeric:tabular-nums;font-size:92px;letter-spacing:-7px;line-height:.9}.focus-dial small{margin-top:12px;letter-spacing:2.5px;color:#a7a8a1;font-size:9px}.focus-controls{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:10px;align-items:center}.focus-presets{display:flex;gap:7px}.focus-preset{height:40px;padding:0 13px;border-radius:11px;border:1px solid rgba(255,255,255,.14);color:#b8b9b1}.focus-preset.active,.focus-preset:hover{background:var(--lime);border-color:var(--lime);color:#171816}.custom-time{height:40px;display:flex;align-items:center;gap:7px;border:1px solid rgba(255,255,255,.14);border-radius:11px;padding:0 11px}.custom-time input{width:90px;background:transparent;border:0;outline:0;color:#fff}.custom-time span{font-size:9px;color:#9fa099}.focus-settings{min-height:650px}.focus-settings select{width:100%;margin:12px 0 15px}.focus-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted);font-weight:800}.focus-rule{padding:15px;background:var(--surface2);border-radius:14px;margin:10px 0 22px}.focus-rule strong,.focus-rule span{display:block}.focus-rule strong{font-size:13px}.focus-rule span{font-size:11px;line-height:1.55;color:var(--muted);margin-top:5px}.session-history .panel-head{margin-bottom:8px}.session-history .panel-head h4{margin:0}.session-history .panel-head span{font-size:10px;color:var(--muted)}.session-history>div:not(.panel-head){display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:11px 0;font-size:11px}.session-history small{color:var(--muted)}.mini-focus{position:fixed;z-index:250;right:22px;bottom:22px;display:flex;align-items:center;gap:8px;background:#11130f;color:#fff;border:1px solid #34372e;border-radius:18px;padding:7px 8px 7px 7px;box-shadow:0 18px 50px rgba(0,0,0,.28);user-select:none}.mini-drag{width:34px;height:34px;border-radius:11px;background:var(--lime);color:#171816;display:grid;place-items:center;cursor:grab}.mini-drag:active{cursor:grabbing}.mini-copy{min-width:76px;display:flex;flex-direction:column}.mini-copy span{font-size:8px;letter-spacing:1.8px;color:#92948a}.mini-copy strong{font-size:17px;font-variant-numeric:tabular-nums}.mini-action{width:32px;height:32px;border-radius:10px;background:#23251f;color:#fff}.mini-action:hover{background:#30332b}.focus-overlay{position:fixed;inset:0;z-index:260;background:rgba(8,9,8,.96);color:#fff;display:grid;place-items:center;padding:30px}.focus-overlay-inner{width:min(980px,100%);text-align:center}.focus-overlay-top{display:flex;align-items:center;justify-content:flex-end;gap:8px}.focus-overlay-top>span{margin-right:auto;font-size:10px;letter-spacing:2px;color:#9da097}.overlay-timer{font-size:clamp(82px,16vw,190px);font-variant-numeric:tabular-nums;letter-spacing:-10px;margin:100px 0 40px}.focus-overlay-inner>p{font-size:18px;color:#aaa}.focus-overlay-actions{display:flex;justify-content:center;gap:10px;margin-top:30px}.vault-drop{border:1px dashed var(--line);border-radius:18px;padding:25px;text-align:center;margin:0 0 18px;background:var(--surface2);cursor:pointer;transition:.2s}.vault-drop:hover{border-color:var(--lime);transform:translateY(-1px)}.vault-drop strong,.vault-drop span{display:block}.vault-drop span{font-size:11px;color:var(--muted);margin-top:5px}.note-card{transition:.2s}.note-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.note-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.note-footer span{font-size:10px;color:var(--muted)}.setup-shell{width:min(820px,100%)}.setup-card{padding:38px}.setup-intro{margin-bottom:30px}.setup-intro h1{font-size:54px;letter-spacing:-3px;line-height:.95;margin:12px 0}.setup-intro p{color:var(--muted);max-width:650px}.setup-section{border-top:1px solid var(--line);padding:24px 0}.setup-section-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.setup-section-head h3{margin:5px 0 0;font-size:22px}.setup-row{display:grid;grid-template-columns:1fr 150px 40px;gap:8px;margin-bottom:8px}.task-setup-row{grid-template-columns:1fr 130px 150px 40px}.setup-row input,.setup-row select{min-width:0}.setup-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:10px}.setup-section .modal-note{margin-top:10px}.signal-method{display:block!important;margin-top:4px;color:var(--muted);font-size:9px!important}.bar-chart{align-items:flex-end}.bar-chart>div{min-height:100%}.bar-chart span{transition:height .5s cubic-bezier(.2,.8,.2,1)}
[data-theme=dark]{--bg:#0c0d0b;--surface:#151714;--surface2:#1d201b;--ink:#f3f4ee;--text:#f3f4ee;--panel:#151714;--dark:#f3f4ee;--muted:#a7aaa0;--line:#32362d;--lime:#b9e34f;--lime2:#2c3c1b;--danger:#f07c72;--shadow:0 20px 70px rgba(0,0,0,.38)}[data-theme=dark] body{background:var(--bg)}[data-theme=dark] .sidebar,[data-theme=dark] .topbar{background:rgba(12,13,11,.9);border-color:var(--line)}[data-theme=dark] .nav-item{color:#aeb0a7}[data-theme=dark] .nav-item.active{background:#252821;color:var(--ink)}[data-theme=dark] .nav-item:hover{background:#20231c;color:var(--ink)}[data-theme=dark] .profile-link:hover{background:#20231c}[data-theme=dark] .metric,[data-theme=dark] .panel,[data-theme=dark] .graph-wrap,[data-theme=dark] .concept-list,[data-theme=dark] .project,[data-theme=dark] .graph-node,[data-theme=dark] .auth-card{background:var(--surface);border-color:var(--line)}[data-theme=dark] .calendar-grid{background:var(--surface);border-color:var(--line)}[data-theme=dark] .cal-cell{background:#1b1e19;border-color:#2f332a}[data-theme=dark] .cal-event{background:#252921;color:var(--ink)!important}[data-theme=dark] .bar,[data-theme=dark] .progress{background:#30342b}[data-theme=dark] .bar i,[data-theme=dark] .progress i{background:#e9eadf}[data-theme=dark] .top-btn,[data-theme=dark] .btn,[data-theme=dark] .icon-btn,[data-theme=dark] .theme-toggle,[data-theme=dark] .switch{background:#191b17;border-color:#373a31;color:var(--ink)}[data-theme=dark] .btn.dark,[data-theme=dark] .top-btn.dark{background:#f0f1ea;color:#11130f;border-color:#f0f1ea}[data-theme=dark] .btn.danger{color:#ff8c81;border-color:#66332f}[data-theme=dark] .form input,[data-theme=dark] .form textarea,[data-theme=dark] .form select,[data-theme=dark] .search-input{background:#1b1e19;border-color:#383b33;color:var(--ink)}[data-theme=dark] .local-note,[data-theme=dark] .focus-rule,[data-theme=dark] .vault-drop{background:#1b1e19}[data-theme=dark] .app-footer{color:#8e9188}[data-theme=dark] .app-footer strong{color:var(--ink)}[data-theme=dark] .app-footer a{color:var(--muted)}[data-theme=dark] .modal-backdrop{background:rgba(0,0,0,.65)}[data-theme=dark] .modal{background:#151714;border-color:#34372e}[data-theme=dark] .search-result:hover{background:#1d201b}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:720px){.command-health{width:145px;min-height:145px}.command-health strong{font-size:60px}.focus-core{min-height:590px}.focus-dial{width:min(300px,82vw)}.focus-time{font-size:70px}.focus-controls{justify-content:center}.focus-presets{width:100%;justify-content:center}.custom-time{flex:1}.custom-time input{width:100%}.setup-card{padding:24px}.setup-intro h1{font-size:42px}.setup-row,.task-setup-row{grid-template-columns:1fr 1fr}.setup-row .icon-btn{grid-column:2;justify-self:end}.calendar-toolbar strong{min-width:0;flex:1}.cal-event{font-size:8px!important;padding:3px 4px}.mini-focus{right:12px;bottom:78px}.mini-copy{min-width:65px}.focus-overlay{padding:18px}.overlay-timer{margin:80px 0 30px;letter-spacing:-6px}.app-footer{align-items:flex-start!important}.app-footer>div{flex-wrap:wrap}.page-head h1{font-size:58px}}
/* v5 polish: preserve the existing product system while tightening footer alignment. */
.app-footer{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:24px;margin-top:42px;padding:24px 0 30px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}
.app-footer>div{display:flex;align-items:center;gap:14px;min-width:0}
.app-footer>div span{white-space:nowrap}
.app-footer>div>strong{font-size:17px;letter-spacing:-1px;color:var(--ink)}
.app-footer>a{white-space:nowrap}
body.sidebar-collapsed .theme-toggle{display:none!important}
@media(max-width:720px){.app-footer{grid-template-columns:1fr;gap:10px}.app-footer>div{align-items:flex-start}.app-footer>div span{white-space:normal}.app-footer>a{justify-self:start}}

/* v6 stability + polish */
html,body{min-height:100%;overflow-x:hidden}
.sidebar .brand{transition:all .28s cubic-bezier(.2,.8,.2,1)}
body.sidebar-collapsed .sidebar .brand{font-size:16px;letter-spacing:-1px;gap:6px;margin-left:4px}
body.sidebar-collapsed .sidebar .brand .mark i{width:6px;height:6px}
body.sidebar-collapsed .sidebar{width:82px;padding-left:10px;padding-right:10px}
body.sidebar-collapsed .app{grid-template-columns:82px 1fr}
body.sidebar-collapsed .sidebar .brand>span:last-child{display:inline!important}
body.sidebar-collapsed .sidebar .side-nav{margin-top:32px}
body.sidebar-collapsed .sidebar .side-label,body.sidebar-collapsed .sidebar .nav-item .label,body.sidebar-collapsed .sidebar .profile-copy{display:none}
body.sidebar-collapsed .sidebar .nav-item{justify-content:center;padding:0}
body.sidebar-collapsed .sidebar .profile-link{justify-content:center}
body.sidebar-collapsed .theme-toggle{display:none!important}

/* A quieter, more useful theme control in the full sidebar. */
.theme-toggle{width:auto;min-width:42px;padding:0 11px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:12px;transition:background .22s,border-color .22s,transform .22s}
.theme-toggle:hover{transform:translateY(-1px);border-color:#bbb8ae}
.theme-toggle .theme-label{display:inline;font-size:10px;font-weight:800;letter-spacing:.2px}

/* Keep accidental focus surfaces from ever leaking onto unrelated pages. */
body[data-page]:not([data-page="focus"]) .focus-overlay{display:none!important}
body[data-page]:not([data-page="focus"]) .focus-core{display:none!important}
body[data-page]:not([data-page="focus"]) .focus-dial{display:none!important}
body[data-page]:not([data-page="focus"]) .focus-time{display:none!important}

/* Setup is a product onboarding surface, not a plain form. */
.setup-body{background:radial-gradient(circle at 80% 15%,rgba(169,215,63,.13),transparent 30%),var(--bg)}
.setup-body .auth-shell{width:min(940px,100%)}
.setup-body .auth-brand{margin-left:6px;margin-right:0;margin-bottom:22px}
.setup-card{position:relative;overflow:hidden;box-shadow:0 30px 100px rgba(30,30,22,.09)}
.setup-card:before{content:"";position:absolute;right:-180px;top:-180px;width:420px;height:420px;border-radius:50%;border:1px solid rgba(169,215,63,.18);box-shadow:0 0 0 55px rgba(169,215,63,.035),0 0 0 110px rgba(169,215,63,.02);pointer-events:none}
.setup-intro{position:relative;z-index:1;padding-right:120px}
.setup-intro h1{max-width:720px}
.setup-section{position:relative;z-index:1}
.setup-section-head h3{letter-spacing:-1px}
.setup-row input,.setup-row select,.setup-body .field input,.setup-body .field textarea{background:rgba(255,255,255,.55)}
.setup-row input:focus,.setup-row select:focus,.setup-body .field input:focus,.setup-body .field textarea:focus{background:var(--surface)}
.setup-progress{display:flex;align-items:center;gap:7px;margin-bottom:24px}
.setup-progress i{width:7px;height:7px;border-radius:50%;background:var(--line)}
.setup-progress i.active{background:var(--lime);box-shadow:0 0 0 4px rgba(169,215,63,.13)}
.setup-progress span{font-size:9px;text-transform:uppercase;letter-spacing:1.8px;color:var(--muted);margin-left:5px}

/* More resilient auth layout and initial state. */
.auth-card .local-note strong{color:var(--ink)}
[data-theme=dark] .auth-body{background:radial-gradient(circle at 80% 15%,rgba(185,227,79,.08),transparent 30%),var(--bg)}
[data-theme=dark] .setup-card:before{border-color:rgba(185,227,79,.13)}
[data-theme=dark] .setup-row input,[data-theme=dark] .setup-row select,[data-theme=dark] .setup-body .field input,[data-theme=dark] .setup-body .field textarea{background:#1b1d19}
[data-theme=dark] .theme-toggle:hover{background:#23251f}

/* Avoid blank-looking trailing space when a page has little content. */
.page:after{content:"";display:block;clear:both}
.app-footer{position:relative;z-index:2}

@media(max-width:900px) and (min-width:721px){body.sidebar-collapsed .sidebar .brand{font-size:15px}.page{padding-left:28px;padding-right:28px}.topbar{padding-left:28px;padding-right:28px}}
@media(max-width:720px){
  .setup-intro{padding-right:0}
  .setup-card:before{right:-220px;top:-220px}
  .setup-body .auth-brand{margin-left:0}
  .theme-toggle .theme-label{display:none}
}

.direction-panel{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;margin-bottom:18px;background:linear-gradient(135deg,var(--surface),var(--surface2))}
.direction-main h3{font-size:30px;letter-spacing:-1.5px;margin:8px 0}
.direction-main p{color:var(--muted);margin:0;line-height:1.5}
.direction-meta{min-width:150px;padding-left:25px;border-left:1px solid var(--line)}
.direction-meta strong,.direction-meta span{display:block}.direction-meta strong{font-size:30px;letter-spacing:-1.5px}.direction-meta span{font-size:10px;color:var(--muted);margin-top:4px}
[data-theme=dark] .direction-panel{background:linear-gradient(135deg,var(--surface),var(--surface2))}
@media(max-width:720px){.direction-panel{grid-template-columns:1fr;gap:18px}.direction-meta{border-left:0;border-top:1px solid var(--line);padding:16px 0 0}}

/* Final theme toggle: a real, compact switch. */
.theme-toggle{
  width:auto!important;min-width:106px!important;height:40px!important;padding:5px 6px 5px 10px!important;
  border:1px solid var(--line);border-radius:999px!important;background:var(--surface)!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;
  color:var(--muted);transition:background .25s,border-color .25s,box-shadow .25s,transform .2s!important;
}
.theme-toggle:hover{transform:translateY(-1px)!important;box-shadow:0 8px 24px rgba(20,20,15,.08)!important}
.theme-toggle .theme-label{display:block!important;font-size:10px!important;font-weight:800!important;letter-spacing:.1px!important;white-space:nowrap}
.theme-switch{position:relative;width:38px;height:22px;flex:0 0 38px;border-radius:999px;background:#d7d4cb;border:1px solid rgba(20,20,15,.08);padding:2px;transition:background .25s,border-color .25s}
.theme-switch i{display:block;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.18);transform:translateX(0);transition:transform .25s cubic-bezier(.2,.8,.2,1),background .25s}
.theme-switch.on{background:var(--lime);border-color:var(--lime)}
.theme-switch.on i{transform:translateX(14px);background:#171816}
[data-theme=dark] .theme-toggle{background:#181a16!important;border-color:#34372f!important;color:#d7d9d0!important}
[data-theme=dark] .theme-switch{background:#34382f;border-color:#454a3e}
[data-theme=dark] .theme-switch.on{background:var(--lime);border-color:var(--lime)}
[data-theme=dark] .theme-switch.on i{background:#11130f}
body.sidebar-collapsed .theme-toggle{display:none!important}
@media(max-width:720px){.theme-toggle{min-width:40px!important;width:40px!important;padding:4px!important;justify-content:center!important}.theme-toggle .theme-label{display:none!important}}

/* Final theme toggle: a compact, proper switch. */
.theme-toggle{width:auto!important;min-width:106px!important;height:40px!important;padding:5px 6px 5px 10px!important;border:1px solid var(--line);border-radius:999px!important;background:var(--surface)!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;color:var(--muted);transition:background .25s,border-color .25s,box-shadow .25s,transform .2s!important}
.theme-toggle:hover{transform:translateY(-1px)!important;box-shadow:0 8px 24px rgba(20,20,15,.08)!important}
.theme-toggle .theme-label{display:block!important;font-size:10px!important;font-weight:800!important;letter-spacing:.1px!important;white-space:nowrap}
.theme-switch{position:relative;width:38px;height:22px;flex:0 0 38px;border-radius:999px;background:#d7d4cb;border:1px solid rgba(20,20,15,.08);padding:2px;transition:background .25s,border-color .25s}
.theme-switch i{display:block;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.18);transform:translateX(0);transition:transform .25s cubic-bezier(.2,.8,.2,1),background .25s}
.theme-switch.on{background:var(--lime);border-color:var(--lime)}
.theme-switch.on i{transform:translateX(14px);background:#171816}
[data-theme=dark] .theme-toggle{background:#181a16!important;border-color:#34372f!important;color:#d7d9d0!important}
[data-theme=dark] .theme-switch{background:#34382f;border-color:#454a3e}
[data-theme=dark] .theme-switch.on{background:var(--lime);border-color:var(--lime)}
[data-theme=dark] .theme-switch.on i{background:#11130f}
body.sidebar-collapsed .theme-toggle{display:none!important}
@media(max-width:720px){.theme-toggle{min-width:40px!important;width:40px!important;padding:4px!important;justify-content:center!important}.theme-toggle .theme-label{display:none!important}}

/* v13 interaction cleanup */
.theme-toggle{width:78px!important;min-width:78px!important;height:34px!important;padding:3px!important;border-radius:999px!important;display:grid!important;grid-template-columns:22px 38px 22px!important;align-items:center!important;justify-content:center!important;gap:0!important;background:var(--surface)!important;overflow:hidden}
.theme-toggle .theme-icon{width:22px;height:22px;display:grid;place-items:center;color:var(--muted);transition:color .28s,transform .28s,opacity .28s}
.theme-toggle .theme-icon svg{width:13px;height:13px}
.theme-toggle .theme-icon.sun{color:var(--ink)}
.theme-toggle .theme-icon.moon{opacity:.48}
.theme-toggle .theme-switch{width:38px;height:22px;margin:0;border-radius:999px;background:var(--surface2);border:1px solid var(--line);padding:2px;position:relative;transition:background .3s,border-color .3s,box-shadow .3s}
.theme-toggle .theme-switch i{width:16px;height:16px;display:block;border-radius:50%;background:var(--ink);box-shadow:0 2px 7px rgba(0,0,0,.18);transform:translateX(0);transition:transform .32s cubic-bezier(.2,.8,.2,1),background .3s,box-shadow .3s}
.theme-toggle:active .theme-switch i{transform:scale(.9)}
.theme-toggle .theme-switch.on{background:var(--lime);border-color:var(--lime);box-shadow:inset 0 0 0 1px rgba(23,24,22,.04)}
.theme-toggle .theme-switch.on i{transform:translateX(14px);background:#171816}
.theme-toggle:has(.theme-switch.on) .sun{opacity:.48;transform:rotate(-18deg) scale(.92)}
.theme-toggle:has(.theme-switch.on) .moon{opacity:1;color:var(--ink);transform:rotate(0) scale(1.05)}
[data-theme=dark] .theme-toggle{background:#151714!important;border-color:#34372f!important}
[data-theme=dark] .theme-toggle .theme-icon{color:#a7aaa0}
[data-theme=dark] .theme-toggle .theme-icon.moon{color:#f3f4ee;opacity:1}
[data-theme=dark] .theme-toggle .theme-switch{background:#242820;border-color:#3c4135}
[data-theme=dark] .theme-toggle .theme-switch.on{background:var(--lime);border-color:var(--lime)}

/* Buttons inside the dark focus surface must remain readable. */
.focus-core .btn:not(.dark){color:#171816;background:#fbfaf5;border-color:#dcd9cf}
.focus-core .btn:not(.dark):hover{background:#fff}
.focus-overlay .btn:not(.dark){color:#171816;background:#fbfaf5;border-color:#dcd9cf}
.focus-overlay .icon-btn{color:#171816;background:#fbfaf5;border-color:#dcd9cf}

/* True full-screen Focus mode: no ghosting from the page behind it. */
.focus-overlay{background:#0b0d0a!important;padding:28px!important;place-items:stretch!important}
.focus-overlay-inner{width:100%!important;height:100%!important;max-width:none!important;display:flex!important;flex-direction:column!important}
.focus-overlay-top{flex:0 0 auto!important;width:100%!important}
.focus-overlay-top-actions{display:flex;gap:8px;align-items:center}
.overlay-center{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:0}
.overlay-center .eyebrow{color:#a7aaa0}
.overlay-timer{font-size:clamp(92px,17vw,220px)!important;line-height:.82!important;margin:34px 0 24px!important;letter-spacing:-11px!important}
.focus-overlay-inner>p{margin:0;color:#a7aaa0}
.focus-overlay-actions{margin-top:28px!important}

/* Keep the mini focus surface above every app page and make it feel native. */
.mini-focus{z-index:1000!important}

/* Only the floating mobile menu exists on phones. */
@media(max-width:720px){
  .mobile-only-bar{display:none!important}
  .sidebar-collapse{display:none!important}
  .mobile-fab{width:56px!important;height:56px!important;border-radius:50%!important;bottom:22px!important;right:18px!important;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s!important}
  .mobile-fab svg{width:20px!important;height:20px!important}
  .mobile-fab.open{transform:rotate(90deg)!important}
  .mobile-menu{right:18px!important;bottom:88px!important;gap:7px!important;max-height:calc(100vh - 150px)!important;overflow:auto!important;padding:5px!important}
  .mobile-menu a{min-width:172px!important;padding:12px 14px!important;border-radius:14px!important}
  .app-footer{margin-bottom:30px!important;padding-bottom:24px!important}
  .focus-overlay{padding:18px!important}
  .overlay-timer{font-size:clamp(64px,18vw,110px)!important;letter-spacing:-6px!important}
}

/* Never allow Focus internals to create trailing blocks on non-Focus routes. */
body[data-page]:not([data-page="focus"]) .focus-core,
body[data-page]:not([data-page="focus"]) .focus-dial,
body[data-page]:not([data-page="focus"]) .focus-time,
body[data-page]:not([data-page="focus"]) .focus-overlay{display:none!important}

/* Settings additions */
.connections-panel{grid-column:1/-1}
.connection-row{display:flex;align-items:center;justify-content:space-between;gap:18px;border-top:1px solid var(--line);padding:15px 0}
.connection-row>div{min-width:0;display:flex;flex-direction:column;gap:4px}
.connection-row strong{font-size:13px}
.connection-row small{color:var(--muted)}
.connection-row a{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.connection-row a:hover{color:var(--ink)}
.empty-state.compact{min-height:90px;padding:18px 0}
.docs{display:grid;gap:0}
.docs section{border-top:1px solid var(--line);padding:15px 0}
.docs section:first-child{border-top:0}
.docs h4{margin:5px 0;font-size:17px;letter-spacing:-.5px}
.docs p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}
.docs kbd{display:inline-block;padding:2px 6px;border:1px solid var(--line);border-radius:5px;background:var(--surface2);font-size:10px}
.docs-modal .modal{max-height:86vh}

/* Dark theme covers the newly added settings surfaces too. */
[data-theme=dark] .connection-row{border-color:var(--line)}
[data-theme=dark] .connection-row a{color:#a7aaa0}

/* Settings theme control: animated icon switch, no text required. */
#settingsTheme.switch{position:relative;width:76px;height:34px;padding:3px;border-radius:999px;background:var(--surface2);border:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:0;transition:background .3s,border-color .3s,box-shadow .3s}
#settingsTheme.switch i{position:absolute;left:3px;top:3px;width:26px;height:26px;border-radius:50%;background:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.16);transition:transform .32s cubic-bezier(.2,.8,.2,1),background .3s}
#settingsTheme.switch.on{background:var(--lime);border-color:var(--lime)}
#settingsTheme.switch.on i{transform:translateX(42px);background:#171816}
#settingsTheme .switch-icon{position:relative;z-index:1;width:26px;height:26px;display:grid;place-items:center;color:var(--muted);pointer-events:none;transition:color .25s,opacity .25s,transform .25s}
#settingsTheme .switch-icon svg{width:13px;height:13px}
#settingsTheme .switch-icon.sun{color:var(--ink)}
#settingsTheme .switch-icon.moon{opacity:.5}
#settingsTheme.switch.on .switch-icon.sun{opacity:.5;transform:rotate(-15deg)}
#settingsTheme.switch.on .switch-icon.moon{opacity:1;color:var(--ink);transform:scale(1.05)}
[data-theme=dark] #settingsTheme.switch{background:#22251e;border-color:#3b4034}
[data-theme=dark] #settingsTheme.switch.on{background:var(--lime);border-color:var(--lime)}
@keyframes themeBump{0%{transform:scale(1)}45%{transform:scale(1.06)}100%{transform:scale(1)}}
.theme-toggle.theme-bump{animation:themeBump .36s ease}

/* Zevuna v14 — final interaction cleanup */
.mobile-menu{display:none!important}
.mobile-fab{display:none!important}
.mobile-only-bar{display:none!important}
.sidebar-collapse{width:30px!important;height:30px!important;right:-15px!important;top:82px!important;border-radius:50%!important;transition:transform .28s cubic-bezier(.2,.8,.2,1),background .25s,border-color .25s,box-shadow .25s!important}
.sidebar-collapse:hover{transform:scale(1.06);box-shadow:0 7px 22px rgba(20,20,15,.12)}
.sidebar-collapse svg{width:15px!important;height:15px!important}
body.sidebar-collapsed .sidebar-collapse{transform:rotate(0deg)!important}
body.sidebar-collapsed .sidebar-collapse:hover{transform:scale(1.06)!important}
body.sidebar-collapsed .theme-toggle{display:grid!important;width:64px!important;min-width:64px!important;height:34px!important;grid-template-columns:18px 26px 18px!important;margin:0 auto!important}
body.sidebar-collapsed .theme-toggle .theme-switch{width:26px!important;height:18px!important}
body.sidebar-collapsed .theme-toggle .theme-switch i{width:12px!important;height:12px!important}
body.sidebar-collapsed .theme-toggle .theme-switch.on i{transform:translateX(8px)!important}
body.sidebar-collapsed .theme-toggle .theme-icon{width:18px!important;height:18px!important}

.theme-toggle{width:82px!important;min-width:82px!important;height:36px!important;padding:3px!important;grid-template-columns:22px 38px 22px!important;box-shadow:0 4px 18px rgba(20,20,15,.05)!important}
.theme-toggle .theme-switch{width:38px!important;height:22px!important}
.theme-toggle .theme-icon{width:22px!important;height:22px!important}
.theme-toggle.theme-bump{animation:themeBump .38s cubic-bezier(.2,.8,.2,1)}
@keyframes themeBump{0%{transform:scale(1)}35%{transform:scale(1.07)}70%{transform:scale(.98)}100%{transform:scale(1)}}

.mini-focus{right:24px!important;bottom:24px!important;min-width:0!important;padding:6px!important;gap:8px!important;border-radius:20px!important;background:rgba(17,19,15,.94)!important;backdrop-filter:blur(18px)!important;box-shadow:0 20px 55px rgba(0,0,0,.26)!important;border:1px solid rgba(255,255,255,.13)!important;animation:miniIn .38s cubic-bezier(.2,.8,.2,1)!important}
.mini-ring{--progress:1;position:relative;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--lime) calc(var(--progress) * 1turn),#35382f 0)!important;flex:0 0 38px;box-shadow:0 0 0 1px rgba(255,255,255,.04)}
.mini-ring:after{content:"";position:absolute;inset:3px;border-radius:50%;background:#171914}
.mini-ring-icon{position:relative;z-index:1;display:grid;place-items:center;color:var(--lime)}
.mini-ring-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mini-copy{min-width:78px!important;gap:1px}
.mini-copy span{font-size:7px!important;letter-spacing:2px!important;color:#8f9387!important}
.mini-copy strong{font-size:16px!important;line-height:1!important;letter-spacing:-.4px}
.mini-action{width:34px!important;height:34px!important;border-radius:11px!important;background:#252820!important;color:#f3f4ee!important;border:1px solid rgba(255,255,255,.05)!important;transition:transform .2s,background .2s!important}
.mini-action:hover{background:#30342a!important;transform:translateY(-1px)}
@keyframes miniIn{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}

.focus-overlay{position:fixed!important;inset:0!important;z-index:9999!important;background:#090b08!important;padding:32px!important;display:flex!important;align-items:stretch!important;justify-content:stretch!important;color:#fff!important}
.focus-overlay-inner{width:100%!important;height:100%!important;max-width:none!important;display:flex!important;flex-direction:column!important;text-align:center!important}
.focus-overlay-top{display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;flex:0 0 auto!important}
.focus-overlay-top>span{margin-right:auto!important;color:#a6aa9f!important}
.focus-overlay-top-actions{display:flex!important;gap:8px!important}
.focus-overlay .btn,.focus-overlay .icon-btn{position:relative;z-index:2!important;min-height:42px!important}
.overlay-center{flex:1!important;min-height:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important}
.overlay-timer{font-size:clamp(100px,18vw,250px)!important;line-height:.82!important;letter-spacing:-12px!important;margin:28px 0 26px!important;font-variant-numeric:tabular-nums!important}
.focus-overlay p{color:#a8aba2!important;font-size:17px!important;margin:0!important}
.focus-overlay-actions{display:flex!important;justify-content:center!important;gap:10px!important;margin-top:30px!important}
.focus-overlay-actions .btn{min-width:110px!important}

.settings-grid .help-panel,.settings-grid .share-panel{display:flex;flex-direction:column;justify-content:space-between;gap:24px}
.panel-actions{display:flex;gap:8px;flex-wrap:wrap}
.app-footer-links{display:flex;align-items:center;gap:18px}
.app-footer-links a{white-space:nowrap}

@media(max-width:1050px){
  .sidebar-collapse{top:82px!important}
}
@media(max-width:720px){
  .mobile-menu{display:flex!important;position:fixed!important;right:18px!important;bottom:88px!important;flex-direction:column!important;gap:7px!important;z-index:10001!important;opacity:0;pointer-events:none;transform:translateY(10px) scale(.98);transition:opacity .24s ease,transform .24s cubic-bezier(.2,.8,.2,1)!important;background:transparent!important}
  .mobile-menu.open{opacity:1!important;pointer-events:auto!important;transform:none!important}
  .mobile-menu a{display:flex!important;align-items:center!important;gap:10px!important;min-width:174px!important;padding:12px 14px!important;border-radius:15px!important;background:var(--surface)!important;border:1px solid var(--line)!important;box-shadow:0 14px 38px rgba(20,20,15,.12)!important;font-size:11px!important;font-weight:800!important}
  .mobile-menu a svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
  .mobile-fab{display:grid!important;position:fixed!important;right:18px!important;bottom:22px!important;width:56px!important;height:56px!important;border-radius:50%!important;background:var(--ink)!important;color:#fff!important;place-items:center!important;z-index:10002!important;box-shadow:0 14px 38px rgba(0,0,0,.24)!important;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .25s!important}
  .mobile-fab.open{transform:rotate(90deg)!important}
  .mobile-fab svg{width:20px!important;height:20px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
  .app-footer{margin-bottom:28px!important}
  .app-footer-links{align-items:flex-start;flex-wrap:wrap;gap:10px 18px}
  .focus-overlay{padding:18px!important}
  .overlay-timer{font-size:clamp(62px,18vw,110px)!important;letter-spacing:-6px!important;margin:55px 0 26px!important}
  .focus-overlay-top-actions .btn{min-height:38px!important}
  .focus-overlay-actions{flex-wrap:wrap}
  .settings-grid .help-panel,.settings-grid .share-panel{display:block}
  .settings-grid .help-panel .panel-actions{margin-top:18px}
  .settings-grid .share-panel>button{margin-top:18px}
  .mini-focus{right:12px!important;bottom:88px!important;max-width:calc(100vw - 24px)!important}
  .mini-copy{min-width:66px!important}
  .mini-action{width:32px!important;height:32px!important}
}

/* v15 interaction + layout polish */
.main>.page{width:100%}
.main>.app-footer{margin-top:auto}
.sidebar-collapse{z-index:3}
.sidebar-collapsed .sidebar-collapse{transform:none!important}
.sidebar-collapsed .sidebar-collapse svg{transform:rotate(180deg)}
.sidebar-collapsed .theme-toggle{display:grid!important}
.share-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.share-option{min-height:72px;border:1px solid var(--line);background:var(--surface);border-radius:15px;padding:12px;display:flex;align-items:center;gap:12px;text-align:left;transition:transform .2s,border-color .2s,background .2s}
.share-option:hover{transform:translateY(-1px);border-color:var(--lime);background:var(--surface2)}
.share-option-icon{width:38px;height:38px;flex:0 0 38px;border-radius:11px;background:var(--surface2);display:grid;place-items:center;font-weight:850}
.share-option span:last-child{min-width:0;display:flex;flex-direction:column;gap:3px}
.share-option strong{font-size:12px}.share-option small{font-size:10px;color:var(--muted);line-height:1.35}
.share-modal-note{margin:16px 2px 0;color:var(--muted);font-size:11px;line-height:1.55}
.connection-picker{border:1px solid var(--line);border-radius:15px;overflow:hidden;background:var(--surface2)}
.connection-choice{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:9px;padding:11px 12px;border-top:1px solid var(--line);cursor:pointer}
.connection-choice:first-child{border-top:0}.connection-choice:hover{background:var(--surface)}
.connection-choice input{accent-color:var(--lime);width:16px;height:16px}.connection-choice span{font-size:12px;font-weight:700}.connection-choice small{font-size:9px;color:var(--muted)}
.field-help{display:block;color:var(--muted);font-size:10px;line-height:1.5;margin-top:7px}
[data-theme=dark] .share-option{background:var(--surface)}
[data-theme=dark] .share-option:hover{background:var(--surface2)}
[data-theme=dark] .share-option-icon{background:var(--surface2)}

@media(max-width:720px){
  .share-options{grid-template-columns:1fr}
  .main>.app-footer{margin-top:auto}
}

.main>.app-footer{width:min(1260px,calc(100% - 84px));margin-left:auto;margin-right:auto}
@media(max-width:720px){.main>.app-footer{width:calc(100% - 32px);margin-left:auto;margin-right:auto}}

/* v16 — sidebar + footer corrections */
body.sidebar-collapsed .sidebar{overflow:visible}
body.sidebar-collapsed .sidebar .brand{width:100%;max-width:100%;justify-content:center;margin:0;padding:0;font-size:16px;letter-spacing:-1px;gap:6px;white-space:nowrap;overflow:visible}
body.sidebar-collapsed .sidebar .brand>span:last-child{display:inline!important;overflow:visible;max-width:none}
body.sidebar-collapsed .sidebar .brand .mark{flex:0 0 auto}
body.sidebar-collapsed .sidebar .side-nav{margin-top:32px}
body.sidebar-collapsed .theme-toggle{display:none!important}
body.sidebar-collapsed .sidebar-bottom{justify-content:center}
body.sidebar-collapsed .profile-link{flex:0 0 auto;width:44px;padding:2px;justify-content:center}
body.sidebar-collapsed .sidebar-collapse{transform:none!important}
body.sidebar-collapsed .sidebar-collapse:hover{transform:scale(1.06)!important}
body.sidebar-collapsed .sidebar-collapse svg{transform:none!important}
.sidebar-collapse{overflow:hidden}

.app-footer{width:min(1260px,calc(100% - 84px));margin-left:auto;margin-right:auto;margin-top:auto;padding:28px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:minmax(250px,.9fr) minmax(420px,1.5fr);gap:70px;color:var(--muted)}
.app-footer-brand{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:9px!important;min-width:0}
.app-footer-brand>strong{font-size:22px;letter-spacing:-1.4px;color:var(--ink)}
.app-footer-brand p{max-width:340px;margin:0!important;font-size:11px;line-height:1.65;color:var(--muted)}
.app-footer-brand>span{font-size:10px;color:var(--muted);white-space:nowrap}
.app-footer-links{display:grid!important;grid-template-columns:repeat(3,1fr);gap:35px!important;align-items:start!important}
.app-footer-links>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.app-footer-links small{font-size:8px;letter-spacing:1.8px;text-transform:uppercase;color:#9a9b92;font-weight:800;margin-bottom:3px}
.app-footer-links a{font-size:10px;white-space:normal;color:var(--muted);transition:color .2s,transform .2s}
.app-footer-links a:hover{color:var(--ink);transform:translateX(2px)}
.app-footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px;display:flex;justify-content:space-between;gap:20px;font:400 9px ui-monospace,SFMono-Regular,Menlo,monospace;color:#9a9b92}
[data-theme=dark] .app-footer-links small{color:#73766d}
[data-theme=dark] .app-footer-bottom{color:#70736a}
@media(max-width:900px) and (min-width:721px){.app-footer{width:calc(100% - 56px);grid-template-columns:1fr;gap:28px}.app-footer-links{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.app-footer{width:100%!important;grid-template-columns:1fr;gap:28px;margin:0!important;padding:20px 16px 0!important}.app-footer-links{grid-template-columns:1fr 1fr!important;gap:24px!important}.app-footer-bottom{grid-column:auto;flex-direction:column;gap:7px}.app-footer-brand>span{white-space:normal}}

/* v4 — anonymous users must never see a protected workspace page */
html.zevuna-auth-pending body > .app{visibility:hidden!important;pointer-events:none!important}
html.zevuna-auth-pending{background:var(--bg)}


/* v5 — fail-closed account authentication gate */
html.zevuna-auth-pending body > .app {
  visibility: hidden !important;
  pointer-events: none !important;
}
html.zevuna-auth-pending {
  background: var(--bg);
}


/* v17 — connected workspace polish */
.main>.page{padding-bottom:84px}
@media(max-width:720px){.main>.page{padding-bottom:72px}}
.toast{background:var(--ink);color:var(--bg);border:1px solid var(--line);box-shadow:0 16px 40px rgba(0,0,0,.16)}
[data-theme=dark] .toast{background:#1b1e19;color:#f3f4ee;border-color:#3a3e34;box-shadow:0 18px 50px rgba(0,0,0,.45)}
.auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:1.5px}
.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line);flex:1}
.google-auth{width:100%;min-height:46px;border:1px solid var(--line);border-radius:13px;background:var(--surface);display:flex;align-items:center;justify-content:center;gap:10px;font-weight:800;transition:transform .2s,border-color .2s,background .2s}
.google-auth:hover{transform:translateY(-1px);border-color:#aaa79e;background:var(--surface2)}
.google-auth:disabled{opacity:.65;cursor:wait;transform:none}
.google-mark{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:#fff;color:#4285f4;font-size:14px;font-weight:900;border:1px solid #ddd}
[data-theme=dark] .google-auth{background:#191c18;border-color:#373b32}
[data-theme=dark] .google-mark{background:#fff;color:#4285f4}
.upload-progress-list{display:flex;flex-direction:column;gap:10px;max-height:55vh;overflow:auto;padding:4px 0}
.upload-item{border:1px solid var(--line);background:var(--surface2);border-radius:14px;padding:12px}
.upload-item-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.upload-item-head strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-percent{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}
.upload-track{height:5px;background:var(--line);border-radius:99px;overflow:hidden;margin:9px 0 6px}.upload-track i{display:block;height:100%;background:var(--lime);border-radius:inherit;transition:width .18s ease}
.upload-state{font-size:10px;color:var(--muted)}
[data-theme=dark] .upload-item{background:#1b1e19}.upload-modal{width:min(600px,calc(100vw - 30px))}

.vault-drop-locked{cursor:pointer}.vault-drop-locked:hover{border-color:var(--ink)}.vault-drop-locked strong:before{content:"✦ ";color:var(--lime)}

/* v12 interaction polish */
.modal-backdrop{background:rgba(15,16,13,.46);backdrop-filter:blur(14px);padding:20px;animation:modalFade .18s ease both}.modal{position:relative;overflow:hidden;border-radius:20px;padding:22px;border:1px solid var(--line);box-shadow:0 28px 90px rgba(20,20,15,.18);animation:modalIn .22s cubic-bezier(.2,.8,.2,1) both}.modal:before{content:"";display:block;width:42px;height:3px;background:var(--ink);border-radius:99px;margin-bottom:18px}.modal-topline{display:flex;justify-content:space-between;font-size:8px;letter-spacing:2px;color:var(--muted);font-weight:850;margin-bottom:10px}.modal-head{align-items:flex-start}.modal-kicker{display:block;font-size:8px;letter-spacing:2px;color:var(--muted);font-weight:850;margin-bottom:4px}.modal-head h3{font-size:27px;letter-spacing:-1.5px;margin:0}.modal-close{flex:0 0 auto}.modal .form{gap:13px}.modal .field input,.modal .field textarea,.modal .field select{border-radius:11px}.modal .form-actions{display:flex;gap:8px;margin-top:4px}.modal .form-actions .btn{flex:1}@keyframes modalFade{from{opacity:0}to{opacity:1}}@keyframes modalIn{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
.mobile-fab{transition:transform .28s cubic-bezier(.2,.8,.2,1),border-radius .28s,box-shadow .28s!important}.mobile-fab.open{transform:rotate(45deg)!important;border-radius:17px!important}.mobile-fab.open svg{transform:rotate(-45deg)}
.attendance-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.attendance-calculator{margin-bottom:18px}.attendance-calc-grid{display:grid;grid-template-columns:1fr 220px;gap:12px}.attendance-result{margin-top:14px;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface2)}.attendance-result strong{display:block;font-size:22px;letter-spacing:-.8px}.attendance-result span{display:block;color:var(--muted);font-size:12px;line-height:1.5;margin-top:4px}.attendance-row{display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);padding:15px 0}.attendance-row:first-of-type{border-top:0}.attendance-rate{width:150px}.attendance-rate b{display:block;font-size:14px;margin-bottom:6px}.attendance-rate .bar{height:5px}.attendance-rate .bar i{display:block;height:100%;background:var(--lime);border-radius:99px}.attendance-row .icon-btn{flex:0 0 auto}@media(max-width:720px){.attendance-overview{grid-template-columns:1fr}.attendance-calc-grid{grid-template-columns:1fr}.attendance-row{align-items:flex-start;flex-wrap:wrap}.attendance-rate{width:100%;order:3}.attendance-row .icon-btn{margin-left:0}.modal{width:min(560px,calc(100vw - 24px));padding:18px}.modal-head h3{font-size:24px}}
[data-theme=dark] .verify-success{background:#253019;border-color:#405126;color:#d9edaa}

/* v13 — mobile menu open state */
@media(max-width:720px){
  .page-head .actions{gap:12px!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important}
  .mobile-fab.open{transform:rotate(45deg)!important;border-radius:17px!important;box-shadow:0 16px 42px rgba(0,0,0,.3)!important}
  .mobile-fab.open svg{transform:rotate(-45deg)!important}
  .attendance-overview-rich{grid-template-columns:1.25fr 1fr 1fr!important}
  .attendance-hero-metric{position:relative;min-height:150px;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface2);overflow:hidden}
  .attendance-hero-metric strong{display:block;font-size:42px;letter-spacing:-2.5px;margin:5px 0 4px}
  .attendance-hero-metric small{display:block;color:var(--muted);font-size:10px}
  .attendance-ring{position:absolute;right:18px;top:20px;width:74px;height:74px;border-radius:50%;background:conic-gradient(var(--lime) var(--p),var(--line) 0);display:grid;place-items:center}
  .attendance-ring i{width:54px;height:54px;border-radius:50%;background:var(--surface2);display:block}
  .attendance-live-note{font-size:10px;color:var(--muted)}
  .attendance-result-rich{display:grid;grid-template-columns:1fr;gap:3px;min-height:112px}
  .attendance-projection{display:grid;grid-template-columns:auto auto 1fr;gap:10px;align-items:center;margin-top:13px;padding-top:12px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
  .attendance-projection b{font-size:18px;color:var(--ink)}
  .attendance-projection small{text-align:right}
  .attendance-quick-actions{display:flex;align-items:center;gap:8px;margin-top:12px;min-height:38px}
  .attendance-quick-actions>span{margin-right:auto;font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:800}
  .attendance-row-rich{display:grid;grid-template-columns:minmax(170px,1fr) 82px auto auto auto;gap:12px;align-items:center;padding:17px 0}
  .attendance-subject strong,.attendance-subject small{display:block}.attendance-subject small{color:var(--muted);font-size:10px;margin-top:3px}.attendance-bar{height:5px!important;margin-top:9px}.attendance-bar i{display:block;height:100%;background:var(--lime);border-radius:99px}.attendance-rate b{display:block;font-size:16px}.attendance-rate span{display:block;font-size:9px;color:var(--muted);margin-top:3px}.attendance-row-rich.at-risk .attendance-rate b{color:var(--danger)}
  .attendance-quick{display:flex;gap:6px}.attendance-mark{padding:8px 9px!important;font-size:9px!important;white-space:nowrap}
  .attendance-insights-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:16px}.attendance-guide-list{display:grid;gap:12px;margin-top:18px}.attendance-guide-list div{display:grid;gap:3px;padding-top:11px;border-top:1px solid var(--line)}.attendance-guide-list b{font-size:11px}.attendance-guide-list span{font-size:10px;color:var(--muted);line-height:1.45}
}
@media(max-width:900px){.attendance-overview-rich{grid-template-columns:1fr 1fr!important}.attendance-row-rich{grid-template-columns:minmax(150px,1fr) 72px auto auto auto}.attendance-quick{display:none}}
@media(max-width:720px){.attendance-overview-rich{grid-template-columns:1fr!important}.attendance-row-rich{grid-template-columns:1fr auto auto;gap:9px}.attendance-rate{grid-column:2;grid-row:1}.attendance-quick{display:flex;grid-column:1/-1;grid-row:2}.attendance-row-rich .icon-btn{grid-row:1}.attendance-insights-grid{grid-template-columns:1fr}.attendance-calc-grid-rich{grid-template-columns:1fr!important}.attendance-projection{grid-template-columns:auto auto;}.attendance-projection small{grid-column:1/-1;text-align:left}}

/* Attendance — editorial dashboard polish */
.attendance-command-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:14px;margin-bottom:18px}
.attendance-command-card{min-height:230px;border-radius:26px;background:var(--ink);color:#fff;padding:30px;display:flex;justify-content:space-between;align-items:center;gap:22px;overflow:hidden;position:relative}
.attendance-command-card:after{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(255,255,255,.09);border-radius:50%;right:-95px;top:-70px;box-shadow:0 0 0 38px rgba(169,215,63,.025),0 0 0 76px rgba(169,215,63,.018);pointer-events:none}
.attendance-command-card h2{font-size:58px;line-height:.94;letter-spacing:-4px;margin:13px 0 8px;max-width:460px;position:relative;z-index:1}
.attendance-command-card p{color:#a9aaa2;line-height:1.5;max-width:470px;margin:0;position:relative;z-index:1}
.attendance-command-ring{width:112px;height:112px;flex:0 0 112px;border-radius:50%;background:conic-gradient(var(--lime) var(--p),rgba(255,255,255,.12) 0);display:grid;place-items:center;position:relative;z-index:1}
.attendance-command-ring i{width:84px;height:84px;border-radius:50%;background:var(--ink);display:block;grid-area:1/1}
.attendance-command-ring strong{grid-area:1/1;z-index:2;font-size:22px;letter-spacing:-1px}
.attendance-stat-strip{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:26px;overflow:hidden}
.attendance-stat-strip>div{background:var(--surface);padding:24px;min-height:114px;display:flex;flex-direction:column;justify-content:center}
.attendance-stat-strip span{font-size:9px;text-transform:uppercase;letter-spacing:1.8px;color:#999a92;font-weight:800}
.attendance-stat-strip strong{font-size:34px;letter-spacing:-2px;margin:7px 0 3px}
.attendance-stat-strip small{color:var(--muted);font-size:10px}
.attendance-stat-strip .attention strong{color:var(--danger)}
.attendance-panel-copy{font-size:12px;color:var(--muted);margin:6px 0 0;line-height:1.5}
.attendance-planner-new{padding:28px;margin-bottom:18px}
.attendance-planner-new .panel-head{margin-bottom:20px}
.attendance-calc-grid-rich{grid-template-columns:minmax(0,1.35fr) minmax(150px,.55fr) minmax(170px,.7fr)}
.attendance-result-rich{background:linear-gradient(135deg,var(--surface2),var(--surface));border-radius:20px;padding:20px;min-height:118px}
.attendance-result-rich>div:first-child strong{font-size:24px;letter-spacing:-1px}
.attendance-projection-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.attendance-projection-grid>div{padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.35)}
.attendance-projection-grid span{margin:0;font-size:10px!important;color:var(--muted)}
.attendance-projection-grid b{display:block;font-size:20px;letter-spacing:-1px;margin-top:4px}
.attendance-subject-panel{padding-bottom:10px}
.attendance-subject-list{display:grid}
.attendance-row-rich{grid-template-columns:minmax(220px,1fr) 100px auto auto auto;gap:16px;padding:19px 0}
.attendance-subject-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.attendance-status{font-size:8px;text-transform:uppercase;letter-spacing:1.2px;font-weight:850;padding:5px 7px;border-radius:999px;border:1px solid var(--line)}
.attendance-status.good{background:var(--lime2);border-color:#cde69a;color:#536d1f}
.attendance-status.risk{background:#f8e8e5;border-color:#e7c6c1;color:var(--danger)}
.attendance-status.neutral{color:var(--muted)}
.attendance-history{display:flex;gap:4px;margin-top:9px}
.attendance-history i{width:8px;height:8px;border-radius:2px;display:block;background:#d7d5cc}
.attendance-history i.present{background:var(--lime)}
.attendance-history i.missed{background:#c9877f}
.attendance-rate{text-align:right}
.attendance-rate b{font-size:20px;letter-spacing:-1px}
.attendance-rate span{font-size:9px;line-height:1.35}
.attendance-insights-new{margin-top:14px}
.attendance-guide h3,.math-note h3{margin-bottom:5px}
@media(max-width:1000px){.attendance-command-grid{grid-template-columns:1fr}.attendance-row-rich{grid-template-columns:minmax(180px,1fr) 82px auto auto auto}}
@media(max-width:720px){.attendance-command-card{min-height:190px;padding:22px}.attendance-command-card h2{font-size:43px;letter-spacing:-3px}.attendance-command-ring{width:82px;height:82px;flex-basis:82px}.attendance-command-ring i{width:62px;height:62px}.attendance-command-ring strong{font-size:17px}.attendance-stat-strip{grid-template-columns:1fr 1fr}.attendance-stat-strip>div{min-height:100px;padding:18px}.attendance-stat-strip strong{font-size:27px}.attendance-row-rich{grid-template-columns:1fr auto auto;gap:10px}.attendance-subject{grid-column:1/-1}.attendance-rate{grid-column:2;grid-row:1;text-align:right}.attendance-quick{grid-column:1/-1;grid-row:2;display:flex}.attendance-row-rich .icon-btn{grid-row:1}.attendance-calc-grid-rich{grid-template-columns:1fr!important}.attendance-projection-grid{grid-template-columns:1fr 1fr}.attendance-command-card p{font-size:11px}.attendance-planner-new{padding:20px}}
@media(max-width:430px){.attendance-command-card{align-items:flex-start}.attendance-command-ring{display:none}.attendance-stat-strip>div{min-height:92px}.attendance-stat-strip strong{font-size:24px}.attendance-projection-grid{grid-template-columns:1fr}.attendance-mark{flex:1}.attendance-rate span{font-size:8px}}

/* v15 — attendance dashboard redesign */
.attendance-hero-v2{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);gap:14px;margin-bottom:14px}
.attendance-hero-main{min-height:310px;border-radius:28px;background:var(--ink);color:#fff;padding:32px;display:flex;justify-content:space-between;align-items:center;gap:28px;position:relative;overflow:hidden}
.attendance-hero-main:before,.attendance-hero-main:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}.attendance-hero-main:before{width:360px;height:360px;right:-140px;top:-120px}.attendance-hero-main:after{width:520px;height:520px;right:-220px;top:-200px}
.attendance-hero-copy{position:relative;z-index:1;max-width:620px}.attendance-hero-copy h2{font-size:70px;line-height:.9;letter-spacing:-5px;margin:15px 0 12px}.attendance-hero-copy p{color:#a9aaa2;max-width:520px;line-height:1.55;margin:0}.attendance-hero-actions{display:flex;gap:9px;margin-top:25px;flex-wrap:wrap}.attendance-scroll-btn{background:rgba(255,255,255,.08)!important;color:#fff!important;border-color:rgba(255,255,255,.14)!important}
.attendance-hero-ring{width:138px;height:138px;flex:0 0 138px;border-radius:50%;background:conic-gradient(var(--lime) var(--p),rgba(255,255,255,.11) 0);display:grid;place-items:center;position:relative;z-index:1}.attendance-hero-ring i{width:104px;height:104px;border-radius:50%;background:var(--ink);grid-area:1/1}.attendance-hero-ring strong{grid-area:1/1;z-index:2;font-size:26px;letter-spacing:-1px}.attendance-hero-ring small{grid-area:1/1;z-index:2;align-self:end;margin-bottom:25px;font-size:8px;letter-spacing:1.5px;text-transform:uppercase;color:#a9aaa2}
.attendance-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:28px;overflow:hidden}.attendance-kpi-grid>div{background:var(--surface);padding:23px;min-height:154px;display:flex;flex-direction:column;justify-content:center}.attendance-kpi-grid span{font-size:9px;text-transform:uppercase;letter-spacing:1.8px;color:#999a92;font-weight:800}.attendance-kpi-grid strong{font-size:36px;letter-spacing:-2px;margin:8px 0 4px}.attendance-kpi-grid small{font-size:10px;color:var(--muted)}.attendance-kpi-grid .attention strong{color:var(--danger)}
.attendance-command-v2{border:1px solid var(--line);background:var(--surface);border-radius:26px;padding:25px 28px;margin-bottom:14px}.attendance-command-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.attendance-command-head h3{margin:5px 0 4px}.attendance-command-head p{font-size:11px;color:var(--muted);margin:0;line-height:1.5}.attendance-streak{min-width:90px;text-align:right}.attendance-streak strong{display:block;font-size:32px;letter-spacing:-2px}.attendance-streak span{font-size:8px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted)}
.attendance-week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:22px}.attendance-day{min-width:0;border:1px solid var(--line);border-radius:16px;padding:11px;background:var(--surface2)}.attendance-day-top{display:flex;justify-content:space-between;align-items:center}.attendance-day-top span{font-size:9px;font-weight:800}.attendance-day-top small{font-size:8px;color:var(--muted)}.attendance-day-dots{min-height:28px;display:flex;align-items:center;gap:4px;flex-wrap:wrap;margin:8px 0}.attendance-day-dots i{width:8px;height:8px;border-radius:50%;background:#d9d7ce}.attendance-day-dots i.present{background:var(--lime)}.attendance-day-dots i.missed{background:#c8877f}.attendance-day-dots i.empty{opacity:.35}.attendance-day>small{font-size:8px;color:var(--muted)}
.attendance-planner-v2{padding:28px;margin-bottom:14px}.attendance-live-pill{border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:8px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);white-space:nowrap}.attendance-calc-v2{display:grid;grid-template-columns:minmax(0,1.25fr) .5fr .65fr;gap:10px;margin-top:22px}.attendance-result-v2{margin-top:14px;padding:20px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,var(--surface2),var(--surface));min-height:155px}.attendance-result-empty{display:flex;min-height:112px;justify-content:center;align-items:flex-start;flex-direction:column}.attendance-result-empty strong{font-size:23px;letter-spacing:-1px}.attendance-result-empty span{font-size:11px;color:var(--muted);line-height:1.5;margin-top:5px}.attendance-result-top{display:flex;justify-content:space-between;gap:20px}.attendance-result-top strong{display:block;font-size:25px;letter-spacing:-1px;margin-top:5px}.attendance-result-top p{font-size:11px;color:var(--muted);margin:6px 0 0;line-height:1.5}.attendance-current-rate{text-align:right}.attendance-current-rate span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px}.attendance-current-rate b{display:block;font-size:28px;letter-spacing:-1.5px;margin-top:4px}.attendance-projection-grid-v2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.attendance-projection-grid-v2>div{border:1px solid var(--line);border-radius:14px;padding:12px 14px}.attendance-projection-grid-v2 span{display:block;font-size:9px;color:var(--muted)}.attendance-projection-grid-v2 b{display:block;font-size:21px;letter-spacing:-1px;margin-top:3px}.attendance-projection-grid-v2 small{font-size:8px;color:var(--muted)}.attendance-quick-v2{display:flex;align-items:center;gap:7px;margin-top:12px}.attendance-quick-v2>span{font-size:8px;letter-spacing:1.4px;font-weight:800;color:var(--muted);margin-right:auto}.attendance-undo{margin-left:3px}
.attendance-subject-panel-v2{padding:28px;margin-bottom:14px}.attendance-subject-list-v2{display:grid}.attendance-card-v2{display:grid;grid-template-columns:minmax(0,1fr) 90px auto;gap:20px;align-items:center;border-top:1px solid var(--line);padding:21px 0}.attendance-card-main{min-width:0}.attendance-card-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.attendance-card-title strong{font-size:15px}.attendance-subject-dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:#c7c5bc}.attendance-subject-dot.good{background:var(--lime)}.attendance-subject-dot.watch{background:#d5ae59}.attendance-subject-dot.risk{background:var(--danger)}.attendance-card-meta{display:flex;gap:10px;flex-wrap:wrap;margin:7px 0 10px}.attendance-card-meta span{font-size:9px;color:var(--muted)}.attendance-card-meta span+span{border-left:1px solid var(--line);padding-left:10px}.attendance-track{height:7px;background:var(--line);border-radius:999px;position:relative;overflow:visible}.attendance-track i{display:block;height:100%;background:var(--lime);border-radius:999px;max-width:100%}.attendance-card-v2.at-risk .attendance-track i{background:var(--danger)}.attendance-track b{position:absolute;top:-2px;width:3px;height:11px;background:var(--ink);border-radius:2px;transform:translateX(-1px)}.attendance-history-v2{display:flex;gap:4px;margin-top:10px;align-items:center;min-height:8px}.attendance-history-v2 i{width:7px;height:7px;border-radius:2px;background:#d6d4cb}.attendance-history-v2 i.present{background:var(--lime)}.attendance-history-v2 i.missed{background:#c8877f}.attendance-history-v2 span{font-size:8px;color:var(--muted)}.attendance-card-rate{text-align:right}.attendance-card-rate strong{display:block;font-size:25px;letter-spacing:-1.3px}.attendance-card-rate small{display:block;font-size:8px;color:var(--muted);line-height:1.4;margin-top:3px}.attendance-card-v2.at-risk .attendance-card-rate strong{color:var(--danger)}.attendance-card-actions{display:flex;gap:6px;align-items:center}.attendance-card-actions .attendance-mark{padding:9px 11px!important;font-size:9px!important;white-space:nowrap}
.attendance-add-area[hidden]{display:none}.attendance-add-card,.attendance-inline-edit{border:1px solid var(--line);border-radius:20px;background:var(--surface2);padding:20px;margin:0 0 18px}.attendance-add-card>div:first-child h3,.attendance-inline-edit h3{margin:5px 0 4px}.attendance-add-card>div:first-child p{font-size:10px;color:var(--muted);margin:0 0 18px}.attendance-add-form{margin-top:12px}.attendance-add-fields{display:grid;grid-template-columns:1.4fr .7fr .7fr;gap:10px}.attendance-add-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.attendance-inline-edit .attendance-edit-form{margin-top:18px}
.attendance-bottom-grid-v2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}.attendance-decision-card,.attendance-method-card{padding:25px}.attendance-decision-card h3,.attendance-method-card h3{margin:5px 0}.attendance-focus-list{display:grid;gap:0;margin-top:17px}.attendance-focus-list>div{padding:12px 0;border-top:1px solid var(--line);display:grid;gap:3px}.attendance-focus-list b{font-size:11px}.attendance-focus-list span{font-size:9px;color:var(--muted);line-height:1.5}.attendance-formula{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding:13px 0}.attendance-formula span{font-size:9px;color:var(--muted)}.attendance-formula strong{text-align:right;font-size:10px;max-width:250px}
@media(max-width:1000px){.attendance-hero-v2{grid-template-columns:1fr}.attendance-kpi-grid{grid-template-columns:repeat(4,1fr)}.attendance-card-v2{grid-template-columns:minmax(0,1fr) 82px}.attendance-card-actions{grid-column:1/-1}.attendance-bottom-grid-v2{grid-template-columns:1fr}.attendance-calc-v2{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:720px){.attendance-hero-main{min-height:270px;padding:24px;border-radius:23px}.attendance-hero-copy h2{font-size:51px;letter-spacing:-3.5px}.attendance-hero-ring{width:92px;height:92px;flex-basis:92px}.attendance-hero-ring i{width:68px;height:68px}.attendance-hero-ring strong{font-size:18px}.attendance-hero-ring small{margin-bottom:17px;font-size:6px}.attendance-kpi-grid{grid-template-columns:1fr 1fr;border-radius:23px}.attendance-kpi-grid>div{min-height:105px;padding:17px}.attendance-kpi-grid strong{font-size:27px}.attendance-command-v2,.attendance-planner-v2,.attendance-subject-panel-v2{padding:20px;border-radius:21px}.attendance-week-grid{grid-template-columns:repeat(7,minmax(42px,1fr));overflow-x:auto;padding-bottom:3px}.attendance-day{padding:9px}.attendance-calc-v2{grid-template-columns:1fr}.attendance-result-top{flex-direction:column}.attendance-current-rate{text-align:left}.attendance-projection-grid-v2{grid-template-columns:1fr}.attendance-quick-v2{flex-wrap:wrap}.attendance-quick-v2>span{width:100%;margin-bottom:2px}.attendance-card-v2{grid-template-columns:1fr;gap:11px}.attendance-card-rate{text-align:left}.attendance-card-actions{grid-column:auto;display:grid;grid-template-columns:1fr 1fr auto auto}.attendance-card-actions .attendance-mark{width:100%}.attendance-add-fields{grid-template-columns:1fr}.attendance-add-actions{justify-content:stretch}.attendance-add-actions .btn{flex:1}.attendance-hero-actions .btn{flex:1}.attendance-bottom-grid-v2{gap:10px}}
@media(max-width:430px){.attendance-hero-main{align-items:flex-start}.attendance-hero-ring{display:none}.attendance-hero-copy h2{font-size:46px}.attendance-week-grid{grid-template-columns:repeat(7,72px)}.attendance-card-actions{grid-template-columns:1fr 1fr 42px 42px}}

/* Phase 4 connected academic layer */
.academic-cockpit{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;border:1px solid var(--line);background:var(--surface);border-radius:28px;padding:28px;margin-bottom:14px}.academic-cockpit h2{margin:5px 0 4px;font-size:30px;letter-spacing:-1.6px}.academic-cockpit p{margin:0;color:var(--muted);font-size:11px}.academic-cockpit-metrics{display:grid;grid-template-columns:repeat(3,110px);gap:1px;border:1px solid var(--line);background:var(--line);border-radius:16px;overflow:hidden}.academic-cockpit-metrics div{background:var(--surface2);padding:14px}.academic-cockpit-metrics strong{display:block;font-size:24px;letter-spacing:-1px}.academic-cockpit-metrics span{font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.subject-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.subject-card{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:22px;padding:21px;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.subject-card:hover{transform:translateY(-2px);border-color:var(--ink)}.subject-card-top{display:flex;justify-content:space-between;align-items:center}.subject-card-top b{font-size:9px;padding:5px 7px;border:1px solid var(--line);border-radius:999px}.subject-card h3{margin:12px 0 14px;font-size:17px;letter-spacing:-.6px}.subject-card-stats{display:flex;gap:12px;margin-bottom:10px}.subject-card-stats span{font-size:9px;color:var(--muted)}.subject-card .bar{height:6px;background:var(--line);border-radius:99px;overflow:hidden}.subject-card .bar i{display:block;height:100%;background:var(--lime);border-radius:99px}.subject-card small{display:block;color:var(--muted);font-size:8px;margin-top:10px}.subject-detail{padding:28px}.subject-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:18px 0}.subject-detail-grid>div{background:var(--surface2);padding:17px}.subject-detail-grid span,.subject-detail-grid small{display:block;font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.subject-detail-grid strong{display:block;font-size:25px;letter-spacing:-1px;margin:5px 0}.subject-detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.subject-detail-columns>section{border:1px solid var(--line);border-radius:18px;padding:18px;background:var(--surface)}.subject-detail-columns h4{margin:4px 0}.syllabus-list,.journal-list{margin-top:12px}.syllabus-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line);font-size:10px}.syllabus-row.done span{text-decoration:line-through;color:var(--muted)}.journal-row{border-top:1px solid var(--line);padding:11px 0}.journal-row strong{font-size:10px}.journal-row small{display:block;color:var(--muted);font-size:8px;margin-top:3px}.journal-row p{font-size:9px;line-height:1.5;margin:7px 0 0;color:var(--muted)}.subject-detail-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:14px}.planner-smart{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;padding:24px;margin-bottom:14px}.planner-smart h3{margin:5px 0}.planner-smart p{font-size:10px;color:var(--muted);line-height:1.5}.planner-smart-list{border-left:1px solid var(--line);padding-left:20px}.planner-smart-list .signal-row{border-top:0}.empty-state.compact{padding:18px}.empty-state.compact strong{font-size:12px}.empty-state.compact p{font-size:9px}
@media(max-width:1000px){.subject-grid{grid-template-columns:repeat(2,1fr)}.academic-cockpit{grid-template-columns:1fr}.planner-smart{grid-template-columns:1fr}.planner-smart-list{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}.subject-detail-columns{grid-template-columns:1fr}}
@media(max-width:720px){.academic-cockpit{padding:20px;border-radius:21px}.academic-cockpit-metrics{grid-template-columns:repeat(3,1fr);width:100%}.academic-cockpit-metrics div{padding:11px}.academic-cockpit-metrics strong{font-size:19px}.subject-grid{grid-template-columns:1fr}.subject-card{border-radius:19px;padding:18px}.subject-detail{padding:20px}.subject-detail-grid{grid-template-columns:1fr}.subject-detail-actions{justify-content:stretch}.subject-detail-actions .btn{flex:1}}


/* v18.1 — interaction polish and note cards */
.modal-backdrop{opacity:1;transition:opacity .16s ease}.modal-backdrop.closing{opacity:0}.modal{transition:transform .16s ease,opacity .16s ease}.modal-backdrop.closing .modal{opacity:0;transform:translateY(6px) scale(.99)}
.modal-close:hover,.icon-btn:hover{transform:translateY(-1px) scale(1.02);border-color:var(--lime);background:var(--surface2)}
.form-actions .btn{transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.form-actions .btn:hover{box-shadow:0 8px 22px rgba(20,20,15,.08)}
.note-card{position:relative;border:1px solid transparent;border-top:1px solid var(--line);padding:19px 14px 17px;margin:0 -14px;border-radius:16px;cursor:pointer;transition:transform .22s cubic-bezier(.2,.8,.2,1),background .22s ease,border-color .22s ease,box-shadow .22s ease}.note-card:hover,.note-card:focus-visible{transform:translateY(-2px);background:var(--surface2);border-color:var(--line);box-shadow:0 12px 34px rgba(20,20,15,.07);outline:none}.note-card:focus-visible{box-shadow:0 0 0 3px rgba(169,215,63,.18),0 12px 34px rgba(20,20,15,.07)}.note-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.note-title-wrap{display:flex;align-items:center;gap:9px;min-width:0}.note-title-wrap strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-accent{width:5px;height:24px;border-radius:999px;background:var(--lime);flex:0 0 auto;opacity:.8}.note-card p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:11px 0 0}.note-card .text-button{padding:7px 9px;border-radius:9px;transition:background .18s ease,color .18s ease,transform .18s ease}.note-card .text-button:hover{background:var(--lime2);color:var(--ink);transform:translateX(1px)}.note-footer{gap:12px}.note-footer span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
[data-theme=dark] .note-card:hover,[data-theme=dark] .note-card:focus-visible{background:#1d201b;box-shadow:0 16px 42px rgba(0,0,0,.28)}[data-theme=dark] .note-card .text-button:hover{background:#2c3c1b;color:var(--ink)}
@media(max-width:720px){.note-card{margin:0 -8px;padding:17px 10px}.note-card p{-webkit-line-clamp:4}}

/* AI workspace surface */
.ai-panel{margin-top:18px}
.ai-panel .panel-head p{max-width:680px}
.ai-thread{display:flex;flex-direction:column;gap:10px;max-height:420px;overflow:auto;padding:4px 2px 12px}
.ai-message{max-width:min(820px,92%);padding:12px 14px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2,#f7f5ef)}
.ai-message-user{align-self:flex-end;background:var(--ink);color:var(--paper,#fff)}
.ai-message-assistant{align-self:flex-start}
.ai-message-error{align-self:flex-start;border-color:#d6a6a6;background:#fff6f6}
.ai-message strong{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}
.ai-message p{margin:0;line-height:1.6;white-space:normal}
.ai-form{display:flex;gap:10px;align-items:flex-end;border-top:1px solid var(--line);padding-top:14px}
.ai-form textarea{flex:1;min-height:62px;resize:vertical;border:1px solid var(--line);border-radius:14px;background:var(--surface,#fff);color:inherit;padding:12px 14px;font:inherit;outline:none}
.ai-form textarea:focus{border-color:currentColor;box-shadow:0 0 0 3px rgba(0,0,0,.05)}
.ai-form button{white-space:nowrap}
.ai-status{min-height:18px;margin-top:8px;font-size:11px;color:var(--muted,#777)}
@media(max-width:700px){.ai-form{flex-direction:column;align-items:stretch}.ai-form button{width:100%}.ai-message{max-width:96%}}


/* Zevuna AI — dedicated, polished surface */
.brand-full{display:inline}.brand-collapsed{display:none!important}
body.sidebar-collapsed .sidebar .brand-full{display:none!important}
body.sidebar-collapsed .sidebar .brand-collapsed{display:inline!important}
.ai-panel{overflow:hidden;background:var(--surface);border-color:var(--line);box-shadow:0 18px 60px rgba(20,20,15,.055)}
.ai-panel-head{align-items:flex-start;margin-bottom:12px}.ai-panel-head h3{font-size:30px}.ai-panel-head p{color:var(--muted);margin:7px 0 0;line-height:1.55}
.ai-note{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:var(--surface2);color:var(--muted);border-radius:12px;padding:10px 12px;font-size:10px;line-height:1.45;margin-bottom:14px}.ai-note-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px color-mix(in srgb,var(--lime) 15%,transparent)}
.ai-thread{display:flex;flex-direction:column;gap:14px;max-height:540px;overflow:auto;padding:4px 2px 16px;scroll-behavior:smooth}
.ai-message{display:flex;gap:10px;align-items:flex-start;max-width:min(900px,92%);padding:0;border:0;background:transparent!important;color:var(--ink)}
.ai-message-user{align-self:flex-end;flex-direction:row-reverse}
.ai-avatar{width:30px;height:30px;flex:0 0 30px;border-radius:10px;display:grid;place-items:center;background:var(--ink);color:#fff;font-size:9px;font-weight:850;letter-spacing:.3px;margin-top:2px}.ai-message-user .ai-avatar{background:var(--lime);color:#171816}
.ai-message-body{min-width:0;border:1px solid var(--line);background:var(--surface2);border-radius:18px;padding:13px 15px;box-shadow:0 7px 24px rgba(20,20,15,.035)}
.ai-message-user .ai-message-body{background:var(--ink);color:#fff;border-color:var(--ink);border-bottom-right-radius:6px}.ai-message-assistant .ai-message-body{border-bottom-left-radius:6px}
.ai-role{display:block;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:1.6px;color:var(--muted);margin-bottom:7px}.ai-message-user .ai-role{color:#bfc2b8}.ai-copy{font-size:13px;line-height:1.7}.ai-copy p{margin:0 0 10px}.ai-copy p:last-child{margin-bottom:0}.ai-copy h4{margin:0 0 9px;font-size:15px;letter-spacing:-.3px}.ai-copy ul,.ai-copy ol{margin:7px 0 10px;padding-left:20px}.ai-copy li{margin:5px 0}.ai-copy code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em;background:rgba(120,120,110,.12);border:1px solid rgba(120,120,110,.12);border-radius:6px;padding:2px 5px}.ai-message-user .ai-copy code{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.1)}.ai-math{display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:2px 6px}
.ai-form{display:flex;gap:10px;align-items:flex-end;border-top:1px solid var(--line);padding-top:15px}.ai-form textarea{flex:1;min-height:64px;resize:vertical;border:1px solid var(--line);border-radius:16px;background:var(--surface2);color:var(--ink);padding:13px 15px;font:inherit;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.ai-form textarea::placeholder{color:#9a9b93}.ai-form textarea:focus{border-color:var(--lime);box-shadow:0 0 0 3px rgba(169,215,63,.14);background:var(--surface)}.ai-form button{white-space:nowrap;height:46px}.ai-status{min-height:18px;margin-top:8px;font-size:10px;color:var(--muted)}
.ai-hero{display:grid;grid-template-columns:1fr 310px;gap:28px;align-items:center;padding:34px 36px;margin-bottom:18px;border:1px solid var(--line);border-radius:30px;background:linear-gradient(135deg,var(--surface),var(--surface2));overflow:hidden;position:relative}.ai-hero:after{content:'';position:absolute;width:360px;height:360px;border:1px solid color-mix(in srgb,var(--lime) 24%,transparent);border-radius:50%;right:-150px;top:-160px;box-shadow:0 0 0 45px color-mix(in srgb,var(--lime) 6%,transparent),0 0 0 90px color-mix(in srgb,var(--lime) 3%,transparent)}.ai-hero h2{font-size:58px;line-height:.94;letter-spacing:-3.7px;margin:12px 0}.ai-hero h2 em{font-family:Georgia,serif;font-weight:400;color:#87ad22}.ai-hero p{max-width:680px;color:var(--muted);line-height:1.65;margin:0}.ai-hero-orbit{height:250px;position:relative;display:grid;place-items:center;z-index:1}.ai-hero-orbit:before,.ai-hero-orbit:after{content:'';position:absolute;border:1px solid var(--line);border-radius:50%;width:170px;height:170px}.ai-hero-orbit:after{width:230px;height:230px;border-style:dashed}.ai-hero-orbit b{width:72px;height:72px;border-radius:22px;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:22px;letter-spacing:-1px;box-shadow:0 18px 40px rgba(20,20,15,.12);z-index:2}.ai-hero-orbit span{position:absolute;font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);background:var(--surface);border:1px solid var(--line);padding:7px 9px;border-radius:999px}.ai-hero-orbit span:nth-child(1){transform:translateY(-112px)}.ai-hero-orbit span:nth-child(2){transform:translateX(112px)}.ai-hero-orbit span:nth-child(3){transform:translateY(112px)}.ai-hero-orbit span:nth-child(4){transform:translateX(-112px)}
.ai-message-error .ai-message-body{border-color:#d6a6a6;background:#fff6f6!important}.ai-message-error .ai-role{color:#a94d45}
[data-theme=dark] .ai-panel{background:#151714;border-color:#32362d;box-shadow:0 22px 70px rgba(0,0,0,.25)}
[data-theme=dark] .ai-note{background:#1d201b;border-color:#32362d;color:#a7aaa0}
[data-theme=dark] .ai-message{color:#f3f4ee}
[data-theme=dark] .ai-message-body{background:#1d201b;border-color:#34382f;box-shadow:0 10px 30px rgba(0,0,0,.18)}
[data-theme=dark] .ai-message-user .ai-message-body{background:#f0f1ea;color:#11130f;border-color:#f0f1ea}
[data-theme=dark] .ai-message-user .ai-role{color:#696b64}
[data-theme=dark] .ai-message-user .ai-avatar{background:var(--lime);color:#11130f}
[data-theme=dark] .ai-form textarea{background:#1b1e19;border-color:#383b33;color:#f3f4ee}
[data-theme=dark] .ai-form textarea:focus{background:#20231d}
[data-theme=dark] .ai-hero{background:linear-gradient(135deg,#151714,#1d201b);border-color:#32362d}
[data-theme=dark] .ai-hero-orbit span{background:#151714;border-color:#34382f}
[data-theme=dark] .ai-message-error .ai-message-body{background:#2a1c1a!important;border-color:#66332f}
.footer-credits{display:flex;flex-direction:column;gap:6px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.footer-credits a{font-weight:750;color:var(--ink);text-decoration:underline;text-underline-offset:3px}.coffee-icon{font-size:11px}.app-footer-brand>strong{letter-spacing:-1.2px}
[data-theme=dark] .footer-credits{border-color:var(--line)}[data-theme=dark] .footer-credits a{color:var(--ink)}
@media(max-width:900px){.ai-hero{grid-template-columns:1fr}.ai-hero-orbit{height:220px}.ai-hero h2{font-size:48px}}
@media(max-width:720px){.ai-panel-head{align-items:flex-start}.ai-panel-head h3{font-size:24px}.ai-message{max-width:97%}.ai-form{flex-direction:column;align-items:stretch}.ai-form button{width:100%}.ai-hero{padding:24px 20px;border-radius:22px}.ai-hero h2{font-size:42px;letter-spacing:-2.5px}.ai-hero-orbit{height:200px}.footer-credits{font-size:9px}}

/* Final Zevuna AI polish */
.brand-ai .brand-ai-suffix{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:950;letter-spacing:-1.4px;margin-left:2px;position:relative}
.brand-ai .brand-ai-suffix::after{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--lime);margin-left:4px;vertical-align:middle;box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 14%,transparent)}
.ai-note{order:3;justify-content:center;border:0!important;background:transparent!important;padding:2px 0 0!important;margin:7px auto 0!important;font-size:9px!important;line-height:1.4!important;max-width:100%;text-align:center;box-shadow:none!important}
.ai-note-dot{width:5px;height:5px;flex:0 0 5px;box-shadow:none!important}
.ai-form{order:2}
.ai-thread{order:1}
.ai-status{order:4;text-align:center;margin-top:5px}
.ai-panel{display:flex;flex-direction:column}
.ai-avatar-ai{background:transparent!important;border:0!important;color:var(--ink)!important}
.ai-avatar-mark{display:flex;align-items:center;gap:3px}
.ai-avatar-mark i{width:7px;height:7px;border-radius:50%;display:block;background:#171816}
.ai-avatar-mark i+ i{background:var(--lime)}
.ai-message-assistant .ai-avatar{box-shadow:none}
.ai-copy h4{margin:2px 0 9px;font-size:16px;line-height:1.25}
.ai-copy p{line-height:1.7}
.ai-copy ul,.ai-copy ol{line-height:1.65}
.ai-copy li+li{margin-top:7px}
.ai-copy pre{margin:10px 0;padding:12px 14px;overflow:auto;border-radius:12px;background:#11120f;color:#f2f2ed;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace}
.ai-copy pre code{background:none;border:0;padding:0;color:inherit}
.app-footer-bottom{display:grid!important;grid-template-columns:1fr minmax(0,auto) 1fr;align-items:center}
.app-footer-bottom>span:nth-child(2){text-align:center}.app-footer-credit{line-height:1.5}.app-footer-meta{display:flex;justify-content:flex-end;align-items:center;gap:14px}.app-footer-meta a{white-space:nowrap}
.app-footer-bottom>span:last-child{text-align:right}
.app-footer-bottom a{font-weight:750;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
[data-theme=dark] .app-footer-bottom a{color:var(--ink)}
[data-theme=dark] .ai-avatar-mark i:first-child{background:#f2f2ed}
[data-theme=dark] .ai-avatar-mark i+ i{background:var(--lime)}
@media(max-width:720px){.app-footer-bottom{grid-template-columns:1fr!important;gap:8px;text-align:center}.app-footer-bottom>span,.app-footer-bottom>span:last-child,.app-footer-bottom>span:nth-child(2){text-align:center}.app-footer-credit{line-height:1.5}.app-footer-meta{display:flex;justify-content:flex-end;align-items:center;gap:14px}.app-footer-meta a{white-space:nowrap}.ai-note{font-size:8.5px!important}}

/* AI quota + polished chat */
.ai-quota{display:flex;align-items:center;justify-content:center;gap:8px;margin:4px 0 8px;text-align:center;color:var(--muted);font-size:10px;line-height:1.45;min-height:20px}
.ai-quota-dot{width:6px;height:6px;border-radius:50%;background:var(--lime);flex:0 0 6px;box-shadow:0 0 0 4px color-mix(in srgb,var(--lime) 12%,transparent)}
.ai-quota[hidden]{display:none}
.ai-avatar-ai{background:transparent!important;border:0!important;color:var(--ink)!important}
.ai-avatar-mark{display:flex;align-items:center;gap:3px}
.ai-avatar-mark i{width:7px;height:7px;border-radius:50%;display:block;background:#171816}
.ai-avatar-mark i+i{background:var(--lime)}
.ai-user-dot{font-size:8px;font-weight:850;letter-spacing:.2px}
.ai-core-mark{display:inline-flex;gap:3px;align-items:center;margin-right:5px}
.ai-core-mark i{display:block;width:6px;height:6px;border-radius:50%;background:#fff}.ai-core-mark i+i{background:var(--lime)}
.ai-hero-orbit b em{font-style:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:18px;letter-spacing:-1px}
.ai-table-wrap{overflow:auto;margin:10px 0;border:1px solid var(--line);border-radius:12px}.ai-copy table{border-collapse:collapse;width:100%;font-size:12px}.ai-copy th,.ai-copy td{padding:9px 11px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.ai-copy th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);background:var(--surface)}.ai-copy tr:last-child td{border-bottom:0}
.ai-message-error .ai-error-avatar{background:var(--surface2);color:var(--ink);border:1px solid var(--line)}
[data-theme=dark] .ai-avatar-mark i:first-child{background:#f2f2ed}.ai-note{order:3!important}.ai-form{order:2!important}.ai-thread{order:1!important}.ai-quota{order:2}.ai-form{order:3!important}.ai-note{order:4!important}.ai-status{order:5!important}
[data-theme=dark] .ai-quota{color:#9fa39a}
@media(max-width:720px){.ai-quota{font-size:9px}.ai-copy th,.ai-copy td{padding:8px}}
/* v14 — scroll-safe keyboard shortcuts modal */
.shortcuts-modal{width:min(660px,calc(100vw - 24px));max-height:min(760px,calc(100vh - 24px));display:flex;flex-direction:column;min-height:0}
.shortcuts-modal .shortcut-scroll{min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-right:5px;margin-right:-3px;scrollbar-width:thin}
.shortcuts-modal .shortcut-list{display:grid;gap:0}
.shortcuts-modal .shortcut-scroll::-webkit-scrollbar{width:8px}
.shortcuts-modal .shortcut-scroll::-webkit-scrollbar-thumb{background:var(--line);border-radius:99px}
.shortcuts-modal .modal-note{flex:0 0 auto}
@media(max-width:720px){.shortcuts-modal{max-height:calc(100vh - 16px);width:calc(100vw - 16px)}.shortcuts-modal .shortcut-scroll{padding-right:3px}}

.shortcuts-modal .modal-topline,.shortcuts-modal .modal-head{flex:0 0 auto}.shortcuts-modal .modal-head{display:flex;justify-content:space-between}.shortcuts-modal .shortcut-scroll{margin-top:8px}

/* v7 onboarding — guided first-run workspace */
.onboarding{position:relative;z-index:1}
.onboard-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}
.onboard-top .setup-progress{margin:0}
.onboard-skip{border:0;background:transparent;color:var(--muted);font-size:10px;font-weight:800;padding:7px 0;cursor:pointer}
.onboard-skip:hover{color:var(--ink)}
.onboard-hero{max-width:760px;margin-bottom:32px}
.onboard-hero h1{font-size:56px;line-height:.96;letter-spacing:-3px;margin:12px 0 12px}
.onboard-hero p{color:var(--muted);font-size:14px;line-height:1.6;max-width:690px}
.onboard-content{min-height:300px;border-top:1px solid var(--line);padding-top:26px}
.onboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.onboard-grid .field:first-child{grid-column:1/-1}
.onboard-block{border:1px solid var(--line);border-radius:18px;padding:18px;background:var(--surface2);margin-bottom:14px}
.onboard-block-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}
.onboard-block-head h3{font-size:18px;letter-spacing:-.7px;margin:5px 0 0}
.onboard-row{display:grid;grid-template-columns:1fr 150px 40px;gap:8px;margin-bottom:8px}
.task-onboard-row{grid-template-columns:1fr 130px 150px 40px}
.onboard-row input,.onboard-row select{min-width:0}
.onboard-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:20px;margin-top:26px}
.onboard-actions>div{display:flex;align-items:center;gap:15px}
.onboard-hint{font-size:10px;color:var(--muted)}
.onboard-summary{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--surface2)}
.onboard-summary>div{padding:16px 18px;border-bottom:1px solid var(--line)}
.onboard-summary>div:nth-child(odd){border-right:1px solid var(--line)}
.onboard-summary>div:nth-last-child(-n+2){border-bottom:0}
.onboard-summary span,.onboard-summary strong{display:block}
.onboard-summary span{font-size:9px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:800;margin-bottom:6px}
.onboard-summary strong{font-size:13px;line-height:1.45;word-break:break-word}
.onboard-trust{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:16px 18px;border-radius:16px;background:rgba(169,215,63,.08);border:1px solid rgba(169,215,63,.18)}
.onboard-trust strong{font-size:12px}
.onboard-trust p{margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.5}
.onboard-dot{width:8px;height:8px;flex:0 0 8px;margin-top:4px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(169,215,63,.12)}
.setup-progress i.done{background:var(--lime);opacity:.55}
[data-theme=dark] .onboard-block{background:#191b17}
[data-theme=dark] .onboard-trust{background:rgba(185,227,79,.06);border-color:rgba(185,227,79,.15)}
@media(max-width:720px){
  .onboard-hero h1{font-size:42px;letter-spacing:-2px}
  .onboard-grid{grid-template-columns:1fr}
  .onboard-grid .field:first-child{grid-column:auto}
  .onboard-content{min-height:0}
  .onboard-row,.task-onboard-row{grid-template-columns:1fr 1fr}
  .onboard-row .icon-btn{grid-column:2;justify-self:end}
  .onboard-actions{align-items:flex-start;flex-direction:column}
  .onboard-actions>div{width:100%;justify-content:space-between}
  .onboard-summary{grid-template-columns:1fr}
  .onboard-summary>div,.onboard-summary>div:nth-child(odd),.onboard-summary>div:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--line)}
  .onboard-summary>div:last-child{border-bottom:0}
}

/* v2.2 final stability pass */
.modal.docs-modal,.modal.shortcuts-modal{width:min(660px,calc(100vw - 24px));max-height:min(760px,calc(100vh - 24px));min-height:0;overflow:hidden;display:flex;flex-direction:column}
.modal.docs-modal .docs,.modal.shortcuts-modal .shortcut-scroll{min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-right:6px;scrollbar-width:thin}
.modal.docs-modal .docs::-webkit-scrollbar,.modal.shortcuts-modal .shortcut-scroll::-webkit-scrollbar{width:8px}.modal.docs-modal .docs::-webkit-scrollbar-thumb,.modal.shortcuts-modal .shortcut-scroll::-webkit-scrollbar-thumb{background:var(--line);border-radius:99px}
.modal.docs-modal .modal-head,.modal.shortcuts-modal .modal-head,.modal.docs-modal .modal-topline,.modal.shortcuts-modal .modal-topline{flex:0 0 auto}
.modal.docs-modal .modal-note,.modal.shortcuts-modal .modal-note{flex:0 0 auto}
.confirm-modal .confirm-copy p{margin:0;color:var(--muted);line-height:1.65}.confirm-actions{justify-content:flex-end}.confirm-actions .btn{min-width:120px}
.cal-cell,.cal-day-number{color:var(--ink)!important}.cal-cell>span{color:var(--ink)!important}.cal-cell.today>span{background:var(--ink)!important;color:var(--bg)!important}.cal-cell small{color:var(--muted)!important}
.check.done{background:var(--ink)!important;color:var(--bg)!important;border-color:var(--ink)!important}.check.done::first-letter{color:var(--bg)}
[data-theme=dark] .ai-message-assistant .ai-message-body,[data-theme=dark] .ai-message-assistant .ai-copy,[data-theme=dark] .ai-message-assistant .ai-copy p,[data-theme=dark] .ai-message-assistant .ai-copy h4,[data-theme=dark] .ai-message-assistant .ai-copy li{color:#f3f4ee}.ai-copy{color:inherit}.ai-copy strong,.ai-copy em{color:inherit}
[data-theme=dark] .ai-message-assistant .ai-role{color:#a7aaa0}.ai-message-assistant .ai-copy a{color:inherit;text-decoration:underline}
.focus-overlay:fullscreen{background:#090b08!important;width:100vw!important;height:100vh!important}.focus-overlay:-webkit-full-screen{background:#090b08!important;width:100vw!important;height:100vh!important}
.app-footer{grid-template-columns:minmax(220px,1fr) auto!important;gap:28px!important;padding:22px 0 0!important;margin-top:42px!important}.app-footer-brand{gap:6px!important}.app-footer-brand>strong{font-size:18px!important}.app-footer-brand p{max-width:330px!important;font-size:10px!important}.app-footer-brand>span{font-size:9px!important}.app-footer-links{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;align-items:center!important;gap:8px 16px!important}.app-footer-links a{font-size:10px!important;white-space:nowrap!important}.app-footer-bottom{grid-column:1/-1!important;padding-top:12px!important;display:flex!important;justify-content:space-between!important;gap:15px!important}.app-footer-bottom>span{font-size:9px!important}
@media(max-width:900px) and (min-width:721px){.app-footer{grid-template-columns:1fr!important}.app-footer-links{justify-content:flex-start!important}.app-footer-bottom{grid-column:1!important}}
@media(max-width:720px){.modal.docs-modal,.modal.shortcuts-modal{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.app-footer{grid-template-columns:1fr!important;gap:18px!important;width:100%!important;margin:0!important;padding:20px 16px 0!important}.app-footer-links{justify-content:flex-start!important}.app-footer-bottom{grid-column:1!important;flex-direction:column!important;align-items:center!important;text-align:center!important}.confirm-actions{flex-direction:column-reverse}.confirm-actions .btn{width:100%}}
.app-footer .app-version{display:inline-flex!important;border:1px solid var(--line);border-radius:999px;padding:4px 7px;color:var(--muted);font:700 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace}


/* v2.4 — file viewer and Zevlens attachment presentation */
.zl-attachment[hidden]{display:none!important}
.file-drawer-backdrop{position:fixed;inset:0;background:rgba(12,14,11,.18);backdrop-filter:blur(2px);z-index:210;pointer-events:none}
.file-drawer-backdrop.closing{background:transparent}
.file-drawer{position:fixed;top:14px;right:14px;bottom:14px;width:min(620px,calc(100vw - 28px));max-width:calc(100vw - 28px);background:var(--surface);border:1px solid var(--line);border-radius:24px;box-shadow:0 28px 100px rgba(0,0,0,.28);display:flex;flex-direction:column;overflow:hidden;pointer-events:auto;animation:fileDrawerIn .28s cubic-bezier(.2,.8,.2,1)}
.file-drawer-backdrop.closing .file-drawer{animation:fileDrawerOut .18s ease forwards}
.file-drawer-head{padding:18px 20px 14px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex:0 0 auto}
.file-drawer-head .eyebrow{display:block;margin-bottom:5px}
.file-drawer-head h3{margin:0;font-size:22px;letter-spacing:-1px;overflow-wrap:anywhere}
.file-drawer-body{min-height:0;flex:1;overflow:auto;padding:18px 20px 20px;display:flex;flex-direction:column;gap:14px}
.file-drawer-preview{min-height:220px;border:1px solid var(--line);border-radius:16px;background:var(--surface2);display:flex;align-items:center;justify-content:center;overflow:hidden}
.file-drawer-preview .file-frame{height:min(56vh,620px);min-height:360px}
.file-drawer-preview .file-image{max-height:min(56vh,620px)}
.file-drawer-preview .file-media{max-height:min(56vh,620px)}
.file-drawer-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.file-drawer-ai{border-top:1px solid var(--line);padding-top:16px}
.file-drawer-ai .field{gap:7px}
.file-drawer-ai textarea{width:100%;min-height:92px;resize:vertical;border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--surface2);color:var(--ink);outline:none}
.file-drawer-ai textarea:focus{border-color:#9dbf4c;box-shadow:0 0 0 3px rgba(169,215,63,.14)}
.file-drawer-ai-status{font-size:10px;color:var(--muted);min-height:15px}
.file-drawer-ai-answer{padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface2);color:var(--ink);line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}
@keyframes fileDrawerIn{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
@keyframes fileDrawerOut{to{opacity:0;transform:translateX(28px)}}
@media(max-width:720px){.file-drawer{top:8px;right:8px;bottom:8px;width:calc(100vw - 16px);max-width:none;border-radius:20px}.file-drawer-body{padding:14px}.file-drawer-head{padding:15px}.file-drawer-preview .file-frame{min-height:300px;height:58vh}}

/* v2.3 — stability, synchronization and accessibility pass */
:root{color-scheme:light}
[data-theme=dark]{color-scheme:dark}
[data-theme=dark] .mobile-fab{background:#171a16!important;color:#f3f4ee!important;border-color:#3a3e34!important}
[data-theme=dark] .mobile-fab svg{color:#f3f4ee!important;stroke:#f3f4ee!important}
[data-theme=dark] .mobile-menu a{background:#171815!important;color:#f3f4ee!important;border-color:#34382f!important}
[data-theme=dark] .mobile-menu a svg{color:#b9e34f!important;stroke:#b9e34f!important}
[data-theme=dark] .mobile-only-bar{background:rgba(12,13,11,.94)!important;color:var(--ink)!important}
[data-theme=dark] .mobile-only-bar a{color:#9fa39a!important}
[data-theme=dark] .mobile-only-bar a.active{color:#f3f4ee!important}
[data-theme=dark] .cal-cell,.cal-cell .cal-day-number,.cal-cell>span{color:#f3f4ee!important}
[data-theme=dark] .cal-cell small,.cal-weekday{color:#9fa39a!important}
[data-theme=dark] .cal-cell.today>span{background:#f3f4ee!important;color:#10110f!important}
[data-theme=dark] .check.done{background:#f0f1ea!important;color:#10110f!important;border-color:#f0f1ea!important}
[data-theme=dark] .check{border-color:#777b71!important;color:#f3f4ee!important}
[data-theme=dark] .ai-message-assistant .ai-copy,[data-theme=dark] .ai-message-assistant .ai-copy p,[data-theme=dark] .ai-message-assistant .ai-copy li,[data-theme=dark] .ai-message-assistant .ai-copy h4,[data-theme=dark] .ai-message-assistant .ai-copy code{color:#f3f4ee!important}
[data-theme=dark] .ai-message-assistant .ai-copy code{background:#262a22!important}
[data-theme=dark] .focus-overlay{background:#080a08!important;color:#f3f4ee!important}
[data-theme=dark] .focus-overlay-inner{background:#0d100d!important;color:#f3f4ee!important;border-color:#30352d!important}
.modal.docs-modal,.modal.shortcuts-modal{max-height:min(820px,calc(100dvh - 24px));height:min(820px,calc(100dvh - 24px))}
.modal.docs-modal .docs,.modal.shortcuts-modal .shortcut-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.modal.docs-modal .modal-head,.modal.shortcuts-modal .modal-head{position:relative;z-index:2;background:inherit}
.app-footer{max-width:1260px;margin-left:auto!important;margin-right:auto!important}
.app-footer-bottom{justify-content:flex-start!important}
@media(max-width:720px){.modal.docs-modal,.modal.shortcuts-modal{height:min(760px,calc(100dvh - 16px));max-height:calc(100dvh - 16px)}.mobile-fab{background:var(--ink);color:#fff}.mobile-fab.open{background:var(--ink);color:#fff}.focus-overlay{padding:14px!important}.focus-overlay-inner{width:min(1180px,100%);height:100%;min-height:calc(100dvh - 28px);overflow:auto}.overlay-timer{font-size:clamp(64px,18vw,150px)!important;letter-spacing:-.08em!important}}


/* v2.3.1 — adaptive workspace architecture + resilient surfaces */
.role-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.role-card{padding:22px;text-align:left;border:1px solid var(--line);border-radius:20px;background:var(--surface);display:flex;flex-direction:column;gap:8px;transition:.22s ease}.role-card:hover{transform:translateY(-2px);border-color:var(--lime)}.role-card.selected{border-color:var(--lime);box-shadow:0 0 0 2px color-mix(in srgb,var(--lime) 18%,transparent);background:var(--surface2)}.role-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--surface2);color:var(--lime)}.role-mark svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7}.role-card strong{font-size:17px}.role-card small{color:var(--muted);line-height:1.45}.ai-copy{overflow-wrap:anywhere;word-break:normal}.ai-message-body{min-width:0}.ai-message-assistant .ai-copy{max-width:none}.ai-copy p,.ai-copy li{overflow-wrap:anywhere}.ai-copy pre{max-width:100%;white-space:pre-wrap}.ai-view-plans{cursor:pointer}.mobile-fab{background:var(--ink)!important;color:#fff!important;border:1px solid var(--line)!important}.mobile-fab svg{stroke:currentColor!important}.mobile-menu{max-height:min(70dvh,620px);overflow:auto;-webkit-overflow-scrolling:touch}.modal-backdrop{overscroll-behavior:contain}.modal{min-height:0}.modal.docs-modal,.modal.shortcuts-modal{height:min(820px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);overflow:hidden}.modal.docs-modal .docs,.modal.shortcuts-modal .shortcut-scroll{flex:1 1 auto;min-height:0;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.docs{padding-right:8px}.docs section+section{margin-top:25px}.focus-overlay{overflow:hidden}.focus-overlay-inner{max-height:100%;overflow:auto;-webkit-overflow-scrolling:touch}.overlay-timer{font-variant-numeric:tabular-nums}.app-footer{min-width:0}.app-footer-links{min-width:0}.app-footer-links a{overflow-wrap:anywhere}.page{min-width:0}.page-head{min-width:0}.page-head .actions{flex:0 0 auto}.calendar-grid .cal-cell,.calendar-grid .cal-cell *{color:var(--ink)}
[data-theme=dark] .role-card{background:#151714;border-color:#34382f}.role-card.selected{background:#1d211a}.role-card.selected .role-mark{background:#29301f}.role-card small{color:var(--muted)}[data-theme=dark] .calendar-grid .cal-cell,[data-theme=dark] .calendar-grid .cal-cell *{color:#f3f4ee!important}[data-theme=dark] .calendar-grid .cal-cell.muted,[data-theme=dark] .calendar-grid .cal-cell.muted *{color:#777b72!important}[data-theme=dark] .check.done{background:var(--lime);color:#11130f;border-color:var(--lime)}[data-theme=dark] .mobile-fab,[data-theme=dark] .mobile-fab.open{background:#151714!important;color:#f3f4ee!important;border-color:#3a3e35!important}[data-theme=dark] .btn,[data-theme=dark] .top-btn,[data-theme=dark] .icon-btn{color:var(--ink)}[data-theme=dark] .ai-message-assistant .ai-copy,[data-theme=dark] .ai-message-assistant .ai-copy p,[data-theme=dark] .ai-message-assistant .ai-copy li,[data-theme=dark] .ai-message-assistant .ai-copy h4{color:#f3f4ee!important}
@media(max-width:720px){.role-grid{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column;gap:18px;margin-bottom:28px}.page-head .actions{width:100%}.page-head .actions .btn{flex:1}.topbar{height:64px;padding:0 16px}.top-actions{display:none}.crumb{font-size:12px}.app-footer{padding-bottom:90px}.app-footer-links{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%;gap:9px 16px!important}.app-footer-links a{white-space:normal!important}.focus-overlay-inner{height:100%}.modal.docs-modal,.modal.shortcuts-modal{width:calc(100vw - 14px);height:min(760px,calc(100dvh - 14px));max-height:calc(100dvh - 14px)}}
@media(min-width:721px){body[data-role="professional"] .side-label:first-of-type{} }

/* v2.3.4 launch stability: the mobile navigation was previously hidden by a
   late desktop cleanup rule. Keep the controls available on actual phones. */
@media (max-width:720px){
  .mobile-fab{display:grid!important;position:fixed!important;right:18px!important;bottom:82px!important;width:56px!important;height:56px!important;z-index:220!important;place-items:center!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
  .mobile-menu{display:flex!important;position:fixed!important;right:18px!important;bottom:150px!important;z-index:219!important;visibility:visible!important}
}

/* Command signal: keep the status readable at every viewport and for long
   status labels such as "3 attention" without clipping the card. */
.command-health{width:clamp(170px,22vw,230px)!important;min-height:180px!important;padding:24px!important;justify-self:end;overflow:hidden}
.command-health strong{font-size:clamp(42px,5vw,68px)!important;letter-spacing:-.055em!important;line-height:.92!important;overflow-wrap:anywhere;word-break:break-word}
.command-health small{max-width:100%;overflow-wrap:anywhere}
@media(max-width:900px){.command-health{width:180px!important;min-height:165px!important}}
@media(max-width:720px){.command-intro{grid-template-columns:1fr!important}.command-health{width:100%!important;min-height:132px!important;justify-self:stretch;margin-top:8px;padding:20px!important}.command-health strong{font-size:clamp(44px,14vw,62px)!important}}

/* Brand lockup for the AI surface. */
.brand-ai-suffix{font-weight:850;letter-spacing:-1.2px;margin-left:2px}


/* 3.1.0 launch hardening */
body.sidebar-collapsed .sidebar .brand{justify-content:center!important;width:54px!important;margin:0 auto!important;padding:0!important;gap:0!important}
body.sidebar-collapsed .sidebar .brand-full,body.sidebar-collapsed .sidebar .brand-collapsed{display:none!important}
body.sidebar-collapsed .sidebar .brand .mark{display:inline-flex!important;margin:0!important}
body.sidebar-collapsed .sidebar .brand .mark i{width:8px!important;height:8px!important}
.footer-credits{display:flex;flex-direction:column;gap:5px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
.footer-credits a{font-weight:800;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.footer-credits a:hover{color:var(--lime)}
.ai-hero-context{height:260px;position:relative;display:grid;place-items:center;overflow:hidden;perspective:900px;border:1px solid rgba(185,227,79,.12);border-radius:26px;background:radial-gradient(circle at 50% 50%,rgba(183,226,60,.13),transparent 42%),#171915;box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 28px 70px rgba(0,0,0,.18)}
.ai-hero-context:before{content:'';position:absolute;width:180px;height:180px;border-radius:50%;border:1px solid rgba(183,226,60,.18);box-shadow:0 0 70px rgba(183,226,60,.08)}
.ai-context-core{width:112px;height:112px;border-radius:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#f7f6f0,#c9ed67);color:#151712;box-shadow:0 25px 65px rgba(183,226,60,.18);transform:rotate(-4deg);position:relative;z-index:3}
.ai-context-core .ai-core-mark{display:flex;gap:4px;margin-bottom:7px}.ai-context-core .ai-core-mark i{width:6px;height:6px;border-radius:50%;background:#151712}.ai-context-core .ai-core-mark i+i{background:#fff}
.ai-context-core strong{font-size:32px;letter-spacing:-2px}.ai-context-core small{font:700 6px var(--mono);letter-spacing:1.6px;margin-top:5px}
.ai-context-card{position:absolute;min-width:132px;padding:10px 13px;border:1px solid #363a31;border-radius:13px;background:#1d201b;color:#f3f4ee;display:flex;flex-direction:column;gap:3px;z-index:2;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.ai-context-card b{font:700 7px var(--mono);letter-spacing:1.5px;color:#b9e34f}.ai-context-card span{font-size:10px;color:#a6a99f}.ai-context-a{left:7%;top:20%}.ai-context-b{right:7%;top:20%}.ai-context-c{left:50%;bottom:9%;transform:translateX(-50%)}

.ai-hero-context:after{content:'';position:absolute;inset:16% 12%;border:1px solid rgba(183,226,60,.10);border-radius:50%;transform:rotateX(67deg) rotateZ(-12deg);box-shadow:0 0 50px rgba(183,226,60,.06);pointer-events:none}
.ai-context-core{transform-style:preserve-3d;animation:aiCoreFloat 5s ease-in-out infinite}
.ai-context-core:before,.ai-context-core:after{content:'';position:absolute;inset:7px;border:1px solid rgba(21,23,18,.10);border-radius:24px;transform:translateZ(-16px) rotateY(14deg);pointer-events:none}
.ai-context-core:after{inset:14px;transform:translateZ(-28px) rotateY(-18deg);opacity:.55}
.ai-context-card{transform-style:preserve-3d}
.ai-context-a{transform:translateZ(30px) rotateY(8deg)}.ai-context-b{transform:translateZ(22px) rotateY(-8deg)}.ai-context-c{transform:translateZ(34px) translateX(-50%) rotateX(5deg)}
@keyframes aiCoreFloat{0%,100%{transform:translateY(0) rotateX(1deg) rotateY(-4deg) rotateZ(-4deg)}50%{transform:translateY(-8px) rotateX(-2deg) rotateY(5deg) rotateZ(-2deg)}}
@media(max-width:720px){.ai-context-a{transform:translateZ(18px) rotateY(5deg)}.ai-context-b{transform:translateZ(18px) rotateY(-5deg)}.ai-context-c{transform:translateZ(20px) translateX(-50%)}}
@media(max-width:720px){.ai-hero-context{height:220px}.ai-context-card{min-width:110px;padding:8px 10px}.ai-context-card span{font-size:9px}.ai-context-a{left:4%;top:12%}.ai-context-b{right:4%;top:12%}.ai-context-c{bottom:7%}}

/* Settings must retain the shared desktop workspace shell. */
@media(min-width:721px){body[data-page="settings"] .app{display:grid!important;grid-template-columns:252px minmax(0,1fr)!important}body[data-page="settings"] .sidebar{display:flex!important;visibility:visible!important;opacity:1!important}body[data-page="settings"] .main{grid-column:2!important;min-width:0!important}body[data-page="settings"] .topbar{display:flex!important;visibility:visible!important}}
/* 3.1.0 final footer alignment */
.app-footer-bottom{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,1fr)!important;align-items:center!important;gap:18px!important;justify-content:initial!important}
.app-footer-bottom>span:first-child{text-align:left!important}
.app-footer-bottom .app-footer-credit{text-align:center!important;line-height:1.5!important;white-space:normal!important}
.app-footer-bottom .app-footer-meta{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:14px!important}
.app-footer-bottom .app-footer-meta a{white-space:nowrap!important}
@media(max-width:720px){.app-footer-bottom{grid-template-columns:1fr!important;gap:8px!important;text-align:center!important}.app-footer-bottom>span:first-child,.app-footer-bottom .app-footer-credit,.app-footer-bottom .app-footer-meta{justify-content:center!important;text-align:center!important}.app-footer-bottom .app-footer-meta{flex-wrap:wrap}}


/* ─────────────────────────────────────────────────────────────
   3.1.0 mobile experience refresh
   The phone surface is intentionally app-like: compact top bar,
   five high-frequency destinations, and a calm More sheet.
   ───────────────────────────────────────────────────────────── */
.mobile-topbar-left,.mobile-topbar-search{display:none}
.mobile-bottom-nav{display:none}
.student-ai-notice{position:fixed;right:22px;bottom:22px;width:min(360px,calc(100vw - 44px));padding:20px 20px 18px;background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:0 22px 70px rgba(20,20,15,.18);z-index:240;animation:studentNoticeIn .45s cubic-bezier(.2,.8,.2,1)}
.student-ai-notice-kicker{display:block;font:800 9px/1 var(--mono,ui-monospace,SFMono-Regular,Menlo,monospace);letter-spacing:2px;color:#8d9b63;margin-bottom:10px}.student-ai-notice strong{display:block;font-size:24px;letter-spacing:-1.2px}.student-ai-notice p{margin:7px 28px 15px 0;color:var(--muted);font-size:12px;line-height:1.5}.student-ai-notice .btn{width:100%;justify-content:space-between}.student-ai-notice-close{position:absolute;right:12px;top:10px;width:30px;height:30px;border-radius:10px;color:var(--muted);font-size:18px}.student-ai-notice-close:hover{background:var(--surface2);color:var(--ink)}
.verify-blocked{max-width:680px;margin:auto}.verify-blocked h2{font-size:42px;letter-spacing:-2px;margin:12px 0}.verify-blocked p{color:var(--muted);line-height:1.65;max-width:560px}.verify-blocked .verify-actions{display:flex;gap:10px;margin-top:24px}
.onboard-required{font-size:10px;font-weight:800;letter-spacing:.4px;color:var(--muted);white-space:nowrap}
@keyframes studentNoticeIn{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}

@media(max-width:720px){
  body{font-size:14px}
  .app{display:block!important;min-height:100dvh;padding-bottom:76px}
  .sidebar{display:none!important;width:0!important;overflow:hidden!important}
  .main{min-height:100dvh}
  .topbar{height:68px;padding:0 16px;position:sticky;top:0;background:color-mix(in srgb,var(--bg) 88%,transparent);z-index:120}
  .crumb,.top-actions{display:none!important}
  .mobile-topbar-left{display:flex;align-items:center;gap:12px;min-width:0}
  .mobile-topbar-brand{display:flex;align-items:center;gap:7px;font-size:19px;letter-spacing:-1.1px;font-weight:850}
  .mobile-topbar-brand .mark i{width:7px;height:7px}.mobile-topbar-title{height:28px;padding-left:12px;border-left:1px solid var(--line);display:flex;align-items:center;color:var(--muted);font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .mobile-topbar-search{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);background:var(--surface);border-radius:13px;margin-left:auto;color:var(--ink)}.mobile-topbar-search svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
  .page{width:100%;padding:30px 16px 36px;margin:0}
  .page-head{gap:16px;margin-bottom:24px}.page-head h1{font-size:52px;letter-spacing:-3.2px;margin:8px 0 10px}.page-head p{font-size:14px}.page-head .actions{width:100%;gap:8px}.page-head .actions .btn{min-height:44px}
  .panel{border-radius:20px;padding:20px;box-shadow:none}.panel h3{font-size:20px}
  .metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric{padding:17px;border-radius:17px}.metric strong{font-size:34px;margin:9px 0 5px}.metric span,.metric small{font-size:9px}
  .command-intro{grid-template-columns:1fr!important;gap:16px;padding:23px;border-radius:24px;margin-bottom:12px}.command-intro h2{font-size:34px;letter-spacing:-2px}.command-intro p{font-size:12px}.command-health{width:100%!important;min-height:118px!important;border-radius:18px;padding:17px!important}.command-health strong{font-size:48px!important}
  .two-col,.task-board,.calendar-layout,.focus-layout,.vault-layout,.insights-grid{grid-template-columns:1fr;gap:12px}.agenda-panel{margin-bottom:12px}
  .task-row,.signal-row,.agenda-row,.file-row,.concept-row{gap:10px;padding:14px 0}.grow strong,.signal-row strong,.agenda-row strong,.file-row strong{font-size:13px}.grow small,.signal-row small,.agenda-row small,.file-row small{font-size:10px}
  .app-footer{width:100%!important;padding:26px 0 30px!important;margin-top:28px!important}.app-footer-brand p{font-size:10px}.app-footer-links{grid-template-columns:1fr 1fr!important;gap:8px 14px!important}.app-footer-bottom{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important}.app-footer-bottom>span,.app-footer-bottom .app-footer-credit,.app-footer-bottom .app-footer-meta{width:100%;text-align:left!important;justify-content:flex-start!important}.app-footer-bottom .app-footer-meta{gap:12px}
  .mobile-bottom-nav{display:grid;grid-template-columns:repeat(6,1fr);position:fixed;left:10px;right:10px;bottom:10px;height:62px;padding:5px;background:color-mix(in srgb,var(--surface) 94%,transparent);border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 50px rgba(20,20,15,.16);backdrop-filter:blur(22px);z-index:200}
  .mobile-nav-item{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border-radius:15px;color:var(--muted);font-size:8px;font-weight:800;letter-spacing:.1px}.mobile-nav-item svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.mobile-nav-item.active{background:var(--ink);color:#fff}.mobile-nav-item.active svg{color:var(--lime)}.mobile-nav-item span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .mobile-menu{display:flex!important;flex-direction:column;position:fixed!important;left:10px!important;right:10px!important;bottom:82px!important;max-height:min(72dvh,580px)!important;padding:10px!important;background:var(--surface)!important;border:1px solid var(--line)!important;border-radius:22px!important;box-shadow:0 28px 80px rgba(20,20,15,.2)!important;z-index:199!important;transform:translateY(18px);opacity:0;pointer-events:none;visibility:hidden;transition:opacity .2s,transform .25s,visibility .2s;overflow:auto}
  .mobile-menu.open{opacity:1;transform:none;pointer-events:auto;visibility:visible}.mobile-menu:after{content:'';position:fixed;inset:0;background:rgba(20,20,15,.2);z-index:-1;pointer-events:none}.mobile-menu-head{display:flex;align-items:center;justify-content:space-between;padding:10px 8px 14px;border-bottom:1px solid var(--line);margin-bottom:5px}.mobile-menu-head strong{display:block;font-size:17px;letter-spacing:-.7px;margin-top:4px}.mobile-menu-link{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:13px 10px;border-radius:14px;color:var(--ink)}.mobile-menu-link:hover,.mobile-menu-link:active{background:var(--surface2)}.mobile-menu-link svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;color:var(--muted)}.mobile-menu-link span{font-weight:750}.mobile-menu-link b{color:var(--muted)}.mobile-menu-secondary{display:flex;gap:4px;border-top:1px solid var(--line);margin-top:4px;padding:8px 6px 2px;flex-wrap:nowrap;align-items:center;justify-content:center;overflow:hidden}.mobile-menu-secondary a{font-size:9px;color:var(--muted);font-weight:600;text-decoration:none}
  body.mobile-menu-open{overflow:hidden}
  .student-ai-notice{right:14px;left:14px;bottom:84px;width:auto;padding:17px;border-radius:19px}.student-ai-notice strong{font-size:21px}.student-ai-notice p{font-size:11px;margin-bottom:13px}.student-ai-notice .btn{min-height:42px}
  .verify-blocked{padding:22px}.verify-blocked h2{font-size:34px}.verify-blocked .verify-actions{flex-direction:column}.verify-blocked .verify-actions .btn{width:100%}
  .onboard-top{margin-bottom:22px}.onboard-required{font-size:8px}.onboard-hero{margin-bottom:24px}.onboard-hero h1{font-size:40px;letter-spacing:-2.4px}.onboard-hero p{font-size:13px}.onboard-content{padding-top:20px}.onboard-grid{gap:11px}.role-grid{grid-template-columns:1fr 1fr!important;gap:9px}.role-card{padding:16px;border-radius:17px;gap:6px}.role-mark{width:34px;height:34px;border-radius:10px}.role-card strong{font-size:14px}.role-card small{font-size:10px}.onboard-block{padding:14px;border-radius:16px}.onboard-row,.task-onboard-row{grid-template-columns:1fr!important;gap:7px}.onboard-row .icon-btn{grid-column:auto;justify-self:end}.onboard-actions{position:sticky;bottom:0;background:linear-gradient(to top,var(--bg) 76%,transparent);padding-top:20px;padding-bottom:4px;margin-top:18px}.onboard-actions>div{gap:8px}.onboard-hint{display:none}.onboard-actions .btn{min-height:44px}.setup-card{padding:20px;border-radius:22px}.setup-body .auth-shell{padding:14px 12px}.setup-body .auth-brand{margin-bottom:12px}
}


/* v17 — production polish: compact brand, floating mobile navigation, footer and AI hero */
body.sidebar-collapsed .sidebar .brand-collapsed{display:inline!important}
body.sidebar-collapsed .sidebar .brand-full{display:none!important}
body.sidebar-collapsed .sidebar .brand{font-size:16px!important;letter-spacing:-1px!important;gap:6px!important;justify-content:center!important;overflow:visible!important}
.mobile-bottom-nav{display:none!important}
@media(max-width:720px){
  .mobile-fab{display:grid!important;position:fixed!important;right:18px!important;bottom:20px!important;width:56px!important;height:56px!important;border-radius:18px!important;background:var(--ink)!important;color:var(--bg)!important;place-items:center!important;z-index:10003!important;box-shadow:0 18px 42px rgba(0,0,0,.24)!important;border:1px solid color-mix(in srgb,var(--ink) 80%,var(--line))!important;transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .2s!important}
  .mobile-fab.open{transform:rotate(90deg)!important}
  .mobile-fab svg{width:21px!important;height:21px!important;stroke-width:1.75!important}
  .mobile-menu{display:flex!important;position:fixed!important;right:18px!important;bottom:88px!important;top:auto!important;width:min(300px,calc(100vw - 36px))!important;max-height:calc(100dvh - 116px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;flex-direction:column!important;gap:7px!important;padding:8px!important;z-index:10002!important;opacity:0!important;pointer-events:none!important;transform:translateY(10px) scale(.98)!important;transition:opacity .2s ease,transform .22s cubic-bezier(.2,.8,.2,1)!important;background:color-mix(in srgb,var(--surface) 92%,transparent)!important;backdrop-filter:blur(22px)!important;border:1px solid var(--line)!important;border-radius:22px!important;box-shadow:0 22px 60px rgba(0,0,0,.20)!important}
  .mobile-menu.open{opacity:1!important;pointer-events:auto!important;transform:none!important}
  .mobile-menu-head{position:sticky!important;top:0!important;z-index:2!important;background:var(--surface)!important;padding:8px 8px 10px!important;border-bottom:1px solid var(--line)!important;margin-bottom:2px!important;border-radius:14px!important}
  .mobile-menu-link{display:flex!important;grid-template-columns:none!important;align-items:center!important;gap:11px!important;min-height:44px!important;padding:10px 12px!important;border-radius:13px!important;background:transparent!important;border:1px solid transparent!important;box-shadow:none!important;font-size:12px!important;font-weight:800!important;overflow:visible!important}
  .mobile-menu-link:hover,.mobile-menu-link.active{background:var(--surface2)!important;border-color:var(--line)!important}
  .mobile-menu-link svg{width:17px!important;height:17px!important;flex:0 0 17px!important;min-width:17px!important}
  .mobile-menu-link b{margin-left:auto;color:var(--muted);font-size:16px}
  .mobile-menu-secondary{display:flex!important;gap:4px!important;padding:8px 6px 2px!important;border-top:1px solid var(--line)!important;margin-top:4px!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:center!important;overflow:hidden!important}
  .mobile-menu-secondary a{min-width:0!important;padding:2px 0!important;background:transparent!important;border:0!important;box-shadow:none!important;font-size:9px!important;font-weight:600!important;text-decoration:none!important}
  .app-footer{margin-bottom:98px!important}
}

/* Settings always participates in the same shell; keep the footer from visually collapsing. */
.main>.app-footer{flex:0 0 auto;position:relative;z-index:1}

/* Static, restrained Zevuna AI hero — no draggable/moving visual. */
.ai-hero{grid-template-columns:minmax(0,1fr) 330px!important;min-height:300px!important;background:linear-gradient(135deg,var(--surface),var(--surface2))!important}
.ai-hero:after{width:280px!important;height:280px!important;right:-120px!important;top:-120px!important;opacity:.45!important}
.ai-hero-context{position:relative!important;height:230px!important;border:1px solid var(--line)!important;border-radius:24px!important;background:#121510!important;overflow:hidden!important;display:grid!important;place-items:center!important;isolation:isolate!important}
.ai-hero-context:before{content:'';position:absolute;inset:24px;border:1px solid rgba(185,227,79,.13);border-radius:18px!important;background:linear-gradient(135deg,rgba(185,227,79,.035),transparent 45%,rgba(185,227,79,.025));z-index:-1}
.ai-hero-context:after{content:'';position:absolute;width:180px;height:180px;border:1px solid rgba(185,227,79,.10);border-radius:50%;box-shadow:0 0 0 28px rgba(185,227,79,.025);z-index:-1}
.ai-context-core{position:relative!important;width:112px!important;height:112px!important;border-radius:28px!important;background:linear-gradient(145deg,#f0f5d5,#cbe96c)!important;color:#11140f!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;box-shadow:0 18px 45px rgba(0,0,0,.28)!important;z-index:3!important}
.ai-context-core strong{font-size:28px!important;letter-spacing:-1.5px!important;line-height:1!important}.ai-context-core small{font-size:7px!important;letter-spacing:1.7px!important;font-weight:850!important}.ai-core-mark{display:flex!important;gap:4px!important}.ai-core-mark i{width:5px!important;height:5px!important;border-radius:50%!important;background:#141611!important}.ai-core-mark i+i{background:#6f951d!important}
.ai-context-card{position:absolute!important;display:flex!important;flex-direction:column!important;gap:3px!important;min-width:112px!important;padding:10px 12px!important;border:1px solid rgba(255,255,255,.09)!important;background:rgba(22,25,19,.86)!important;border-radius:13px!important;box-shadow:none!important;z-index:2!important}
.ai-context-card b{font-size:8px!important;letter-spacing:1.5px!important;color:#b9e34f!important}.ai-context-card span{font-size:8px!important;color:#a9aca2!important}.ai-context-a{left:18px!important;top:28px!important}.ai-context-b{right:18px!important;top:28px!important}.ai-context-c{right:50%!important;bottom:18px!important;transform:translateX(50%)!important}
@media(max-width:720px){.ai-hero{grid-template-columns:1fr!important;padding:22px 20px!important}.ai-hero h2{font-size:42px!important}.ai-hero-context{height:190px!important;margin-top:4px!important}.ai-context-card{min-width:96px!important}.ai-context-a{left:10px!important;top:18px!important}.ai-context-b{right:10px!important;top:18px!important}.ai-context-c{bottom:12px!important}}


/* v3.1.1 — final shell, calendar and mobile correction pass */
.app{min-height:100vh;display:grid!important;grid-template-columns:252px minmax(0,1fr)!important;align-items:stretch}
.sidebar{display:flex!important;visibility:visible!important;opacity:1!important;grid-column:1;grid-row:1;min-height:100vh}
.main{grid-column:2!important;grid-row:1;min-height:100vh;display:flex;flex-direction:column;min-width:0}
.topbar{flex:0 0 76px;display:flex!important;visibility:visible!important;opacity:1!important}
.page{flex:0 0 auto;width:100%;min-height:0}
.main>.app-footer{margin-top:auto!important}

/* Collapsed desktop branding: dots + Zevuna, never zevuna.tech. */
body.sidebar-collapsed .app{grid-template-columns:82px minmax(0,1fr)!important}
body.sidebar-collapsed .sidebar{width:82px!important;padding-left:10px!important;padding-right:10px!important}
body.sidebar-collapsed .sidebar .brand{width:100%!important;max-width:none!important;justify-content:center!important;gap:6px!important;overflow:visible!important}
body.sidebar-collapsed .sidebar .brand-full{display:none!important}
body.sidebar-collapsed .sidebar .brand-collapsed{display:inline!important;font-size:16px!important;letter-spacing:-1px!important;white-space:nowrap!important}
body.sidebar-collapsed .sidebar .brand .mark i{width:7px!important;height:7px!important}

/* Calendar numbers must always have real contrast. */
.calendar-grid{background:var(--surface)!important}
.calendar-grid .cal-cell{background:var(--surface2)!important;color:var(--ink)!important;min-height:118px!important}
.calendar-grid .cal-cell .cal-day-number{display:grid!important;place-items:center!important;width:30px!important;height:30px!important;color:var(--ink)!important;background:transparent!important;font-size:12px!important;font-weight:850!important;line-height:1!important}
.calendar-grid .cal-cell.today .cal-day-number{background:var(--ink)!important;color:var(--bg)!important;border-radius:50%!important}
.calendar-grid .cal-cell.selected{border-color:var(--lime)!important;box-shadow:inset 0 0 0 1px var(--lime)!important}
.calendar-grid .cal-cell.selected .cal-day-number{box-shadow:0 0 0 2px var(--lime)!important}
.calendar-grid .empty-day{background:transparent!important;border-color:transparent!important;opacity:1!important}
.calendar-grid .empty-day *{visibility:hidden!important}
.cal-weekday{color:var(--muted)!important;font-weight:800!important}
.cal-event{color:var(--ink)!important;background:var(--surface)!important;border:1px solid var(--line)!important}
[data-theme=dark] .calendar-grid .cal-cell{background:#20221d!important;color:#f3f4ee!important}
[data-theme=dark] .calendar-grid .cal-cell .cal-day-number{color:#f3f4ee!important}
[data-theme=dark] .calendar-grid .cal-cell.today .cal-day-number{background:#f3f4ee!important;color:#10110f!important}

/* Shared footer: three aligned zones on desktop. */
.app-footer{width:min(1260px,calc(100% - 84px))!important;grid-template-columns:minmax(220px,1fr) minmax(260px,auto)!important;align-items:center!important}
.app-footer-bottom{grid-column:1/-1!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,1fr)!important;align-items:center!important;width:100%!important}
.app-footer-bottom>span:first-child{text-align:left!important}
.app-footer-bottom .app-footer-credit{text-align:center!important}
.app-footer-bottom .app-footer-meta{justify-content:flex-end!important}

/* Settings uses exactly the same shell as every other workspace page. */
body[data-page="settings"] .app,body[data-page="calendar"] .app{display:grid!important;grid-template-columns:252px minmax(0,1fr)!important}
body[data-page="settings"] .sidebar,body[data-page="calendar"] .sidebar{display:flex!important;visibility:visible!important;opacity:1!important}
body[data-page="settings"] .main,body[data-page="calendar"] .main{grid-column:2!important;display:flex!important;flex-direction:column!important;min-height:100vh!important}

/* Static AI hero: no animation, no pseudo-3D layers, no clutter. */
.ai-hero-context{perspective:none!important;isolation:isolate!important}
.ai-context-core{transform:none!important;animation:none!important}
.ai-context-core:before,.ai-context-core:after{display:none!important}
.ai-context-card{transform:none!important;box-shadow:none!important}
.ai-context-a{left:18px!important;top:28px!important}
.ai-context-b{right:18px!important;top:28px!important}
.ai-context-c{left:50%!important;right:auto!important;bottom:18px!important;transform:translateX(-50%)!important}
.ai-hero-context:after{transform:none!important;width:170px!important;height:170px!important}

/* Floating mobile menu — never pushes items outside the viewport. */
.mobile-bottom-nav,.mobile-only-bar{display:none!important}
@media(max-width:720px){
  .app{display:block!important;grid-template-columns:1fr!important}
  .sidebar{display:none!important;width:0!important;overflow:hidden!important}
  .main{display:flex!important;min-height:100dvh!important;flex-direction:column!important}
  .topbar{height:64px!important;flex:0 0 64px!important}
  .page{padding-bottom:110px!important}
  .mobile-fab{display:grid!important;position:fixed!important;right:18px!important;bottom:18px!important;width:56px!important;height:56px!important;border-radius:18px!important;z-index:10003!important;background:var(--ink)!important;color:var(--bg)!important;place-items:center!important}
  .mobile-fab.open{transform:none!important}
  .mobile-fab svg{width:21px!important;height:21px!important}
  .mobile-menu{left:auto!important;right:18px!important;top:auto!important;bottom:86px!important;width:min(310px,calc(100vw - 36px))!important;max-height:calc(100dvh - 112px)!important;overflow-y:auto!important;overscroll-behavior:contain!important}
  .mobile-menu-head{position:sticky!important;top:0!important;z-index:5!important}
  .mobile-menu-link{min-height:44px!important}
  .app-footer{width:calc(100% - 32px)!important;margin:34px 16px 0!important;padding-bottom:100px!important}
  .app-footer-bottom{grid-template-columns:1fr!important;gap:8px!important;text-align:center!important}
  .app-footer-bottom>span:first-child,.app-footer-bottom .app-footer-credit,.app-footer-bottom .app-footer-meta{justify-content:center!important;text-align:center!important}
  .calendar-layout{grid-template-columns:1fr!important}
  .calendar-grid{gap:4px!important;padding:7px!important}
  .calendar-grid .cal-cell{min-height:78px!important;padding:6px!important}
  .calendar-grid .cal-cell .cal-day-number{width:26px!important;height:26px!important;font-size:11px!important}
  .cal-event{font-size:8px!important;padding:3px 4px!important}
  .ai-hero-context{height:205px!important}
  .ai-context-card{min-width:100px!important}
  .ai-context-a{left:8px!important;top:18px!important}
  .ai-context-b{right:8px!important;top:18px!important}
  .ai-context-c{bottom:12px!important}
}

/* v3.2.0 — release hardening and visual cleanup */
.setup-loading{min-height:430px;display:grid;place-content:center;gap:18px;padding:48px 24px;text-align:center}.setup-loading>div{max-width:560px;margin:0 auto}.setup-loading h1{font-size:48px;line-height:.95;letter-spacing:-3px;margin:10px 0 12px}.setup-loading p{color:var(--muted);line-height:1.55;margin:0}.setup-spinner{width:34px;height:34px;border:2px solid var(--line);border-top-color:var(--lime);border-radius:50%;animation:setupSpin .8s linear infinite;margin:0 auto}@keyframes setupSpin{to{transform:rotate(360deg)}}
.setup-body .auth-shell{width:min(960px,calc(100% - 32px));padding-top:7vh;padding-bottom:40px}.setup-body .auth-brand{font-size:23px}.setup-body .setup-card{padding:40px;min-height:560px}.setup-progress{display:flex;align-items:center;gap:7px}.setup-progress i{width:34px;height:4px;border-radius:99px;background:var(--line);display:block}.setup-progress i.active,.setup-progress i.done{background:var(--lime)}.setup-progress span{margin-left:6px;font-size:9px;color:var(--muted);font-weight:800;letter-spacing:1.4px;text-transform:uppercase}.onboard-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.onboard-required{color:var(--muted);font-weight:750;letter-spacing:.4px}.onboard-hero h1{max-width:760px}.onboard-hero p{max-width:680px}.onboard-content{max-width:780px}.role-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.role-card{min-height:190px}.role-card:focus-visible{outline:3px solid color-mix(in srgb,var(--lime) 55%,transparent);outline-offset:2px}.onboard-block{background:var(--surface);border:1px solid var(--line);box-shadow:0 10px 35px rgba(20,20,15,.03)}.onboard-actions{border-top:1px solid var(--line);padding-top:18px}.onboard-actions>div{display:flex;align-items:center;gap:12px}.onboard-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px}.onboard-summary>div{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.onboard-summary span,.onboard-summary strong{display:block}.onboard-summary span{font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted);font-weight:800}.onboard-summary strong{font-size:13px;margin-top:4px}.onboard-trust{display:flex;gap:10px;align-items:flex-start;padding:15px 0}.onboard-dot{width:8px;height:8px;border-radius:50%;background:var(--lime);margin-top:5px;box-shadow:0 0 0 5px color-mix(in srgb,var(--lime) 16%,transparent)}.onboard-trust strong{font-size:12px}.onboard-trust p{margin:3px 0 0;color:var(--muted);font-size:10px}

/* The desktop shell is authoritative; pages never render a second auth check. */
body.sidebar-collapsed .sidebar .brand-collapsed{display:inline!important;color:var(--ink)!important}.sidebar .brand-collapsed{display:none}
body.sidebar-collapsed .sidebar .brand{font-size:16px!important}.sidebar .brand-full{display:inline}

/* Calendar: use a clear, high-contrast day cell rather than relying on inherited button color. */
.calendar-grid .cal-cell{appearance:none;-webkit-appearance:none;color:var(--ink)!important;opacity:1!important;text-align:left!important}.calendar-grid .cal-cell .cal-day-number{color:var(--ink)!important;opacity:1!important;text-shadow:none!important;visibility:visible!important}.calendar-grid .cal-cell.today .cal-day-number{color:var(--bg)!important}.calendar-grid .cal-cell.selected .cal-day-number{color:var(--ink)!important}.calendar-grid .cal-cell:disabled{opacity:1!important}.calendar-grid .empty-day:disabled{opacity:1!important}

/* Static AI visual: editorial, quiet, and completely non-draggable. */
.ai-hero-clean{grid-template-columns:minmax(0,1.15fr) 360px!important;align-items:stretch!important;gap:28px!important;min-height:310px!important;padding:38px!important}.ai-hero-copy{display:flex;flex-direction:column;justify-content:center;min-width:0}.ai-context-pills{display:flex;gap:7px;flex-wrap:wrap;margin-top:24px}.ai-context-pills span{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.35);font-size:10px;font-weight:800;color:var(--muted)}.ai-context-pills i{width:6px;height:6px;border-radius:50%;background:var(--lime);display:block}.ai-context-clean{height:100%!important;min-height:230px!important;background:#11130f!important;border-radius:28px!important;border:1px solid #30342a!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;position:relative!important;overflow:hidden!important}.ai-context-clean:before{content:'';position:absolute;inset:20px;border:1px solid rgba(255,255,255,.07);border-radius:22px}.ai-context-clean:after{display:none!important}.ai-clean-orbit{position:absolute;width:190px;height:190px;border:1px solid rgba(185,227,79,.13);border-radius:50%;box-shadow:0 0 0 34px rgba(185,227,79,.025),0 0 0 68px rgba(185,227,79,.015)}.ai-clean-core{position:relative;z-index:2;width:104px;height:104px;border-radius:26px;background:linear-gradient(145deg,#edf5d3,#c7e762);color:#11140f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;box-shadow:0 20px 55px rgba(0,0,0,.3)}.ai-clean-core strong{font-size:28px;letter-spacing:-1.5px}.ai-clean-core small{font-size:7px;letter-spacing:1.6px;font-weight:900}.ai-clean-caption{position:absolute;left:26px;right:26px;bottom:24px;display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:#b1b5a9}.ai-clean-caption span{font-size:8px;letter-spacing:1.6px;color:#b9e34f;font-weight:900}.ai-clean-caption strong{font-size:10px;font-weight:750}

/* Student verifier states. */
.verify-blocked{padding:28px 0}.verify-blocked-icon,.verify-success-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:var(--page-soft);border:1px solid var(--page-line);font-size:20px;font-weight:900;margin:18px 0}.verify-blocked h2{font-size:30px;letter-spacing:-1.5px;margin:0 0 10px}.verify-blocked p{color:var(--page-muted);line-height:1.6;max-width:520px}.verify-blocked .btn{margin-right:7px;margin-top:12px}.verify-success{padding:12px 0 4px}.verify-success-icon{background:var(--page-lime);color:#111;margin-top:4px}.verify-success strong{display:block;font-size:21px}.verify-success-meta{display:grid;gap:8px;margin:14px 0 22px!important;padding:15px;border:1px solid var(--page-line);border-radius:16px;background:var(--page-soft)}.verify-status.error{color:#b7473d}.verify-status.success{color:#658c1b}

/* Footer remains attached to the main column and never disappears on Settings. */
.main>.app-footer{display:grid!important;position:relative!important;flex:0 0 auto!important;margin-top:auto!important}.app-footer-brand,.app-footer-links,.app-footer-bottom{min-width:0}.app-footer-bottom a{overflow-wrap:anywhere}

@media(max-width:1000px) and (min-width:721px){.role-grid{grid-template-columns:1fr 1fr!important}.ai-hero-clean{grid-template-columns:1fr 320px!important}}
@media(max-width:720px){.setup-body .auth-shell{width:calc(100% - 24px);padding-top:24px}.setup-body .setup-card{padding:22px 18px;min-height:0}.setup-loading{min-height:360px;padding:30px 12px}.setup-loading h1{font-size:36px}.onboard-top{align-items:flex-start;flex-direction:column;gap:9px}.setup-progress i{width:24px}.onboard-required{font-size:8px}.onboard-hero h1{font-size:40px}.role-grid{grid-template-columns:1fr 1fr!important}.role-card{min-height:155px;padding:15px}.onboard-summary{grid-template-columns:1fr}.onboard-actions{position:sticky;bottom:0;z-index:4;margin-left:-18px;margin-right:-18px;padding:16px 18px 4px;background:linear-gradient(to top,var(--bg) 82%,transparent)}.onboard-actions>div{flex:1}.onboard-actions .btn{flex:1}.ai-hero-clean{grid-template-columns:1fr!important;padding:24px 20px!important;gap:20px!important}.ai-context-clean{min-height:215px!important}.ai-clean-caption{left:20px;right:20px}.mobile-menu{bottom:86px!important;max-height:calc(100dvh - 104px)!important}.mobile-menu-link{min-height:42px!important}.mobile-fab{right:16px!important;bottom:16px!important}.app-footer{margin-bottom:92px!important}.calendar-grid .cal-cell{min-height:82px!important}.calendar-grid .cal-cell .cal-day-number{font-size:12px!important;width:28px!important;height:28px!important}.calendar-grid .cal-weekday{font-size:9px!important}}
.setup-status-mark{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;margin:0 auto;border:1px solid var(--line);background:var(--surface);font-weight:900}.setup-loading-error .btn{margin-top:8px}.setup-loading-error>div{display:flex;flex-direction:column;align-items:center}


/* v3.2.6 — final mobile stability pass */
@media(max-width:720px){
  html,body{max-width:100%;overflow-x:hidden!important}
  .main,.page,.page>*{min-width:0;max-width:100%}
  .page{padding-left:16px!important;padding-right:16px!important}
  .page-head h1{font-size:clamp(28px,7vw,40px)!important;letter-spacing:-2px!important;overflow-wrap:anywhere}
  .panel,.command-intro,.calendar-layout,.focus-layout,.vault-layout,.insights-grid,.two-col,.task-board{min-width:0}
  .mobile-menu{top:max(12px,env(safe-area-inset-top))!important;bottom:86px!important;max-height:none!important;height:auto!important;min-height:0!important;overflow-y:auto!important}
  .mobile-menu-head{flex:0 0 auto!important}
  .mobile-menu-link{flex:0 0 auto!important}
  .mobile-menu-secondary{flex:0 0 auto!important}
  .mobile-fab{right:max(16px,env(safe-area-inset-right))!important;bottom:max(16px,env(safe-area-inset-bottom))!important}
  .app-footer{padding-left:16px!important;padding-right:16px!important;box-sizing:border-box!important}
  .calendar-grid{min-width:0!important;overflow:hidden!important}
  .calendar-grid .cal-cell{min-width:0!important;overflow:hidden!important}
  .calendar-grid .cal-day-number{flex:0 0 auto!important}
  .ai-hero-clean{min-width:0!important}
  .panel{overflow-wrap:break-word;word-break:break-word}
  .panel h3{font-size:18px;overflow-wrap:break-word}
  .panel p{font-size:13px;line-height:1.55}
  .settings-grid{gap:14px}
  .setting-row{flex-wrap:wrap;gap:8px}
}

/* v4.0.2 footer support + consistent Zevuna mark */
.footer-mark{display:inline-flex;gap:4px;vertical-align:middle;margin-right:8px}.footer-mark i{width:7px;height:7px;border-radius:50%;background:currentColor;display:block}.footer-mark i+i{background:var(--lime)}
.app-footer-donate{display:flex;align-items:center;gap:10px;margin-top:14px}.app-footer-donate>span{font-size:9px;color:var(--muted);font-weight:800;letter-spacing:.5px}.app-footer-donate form{margin:0;min-height:38px}
@media(max-width:720px){.app-footer-donate{align-items:flex-start;flex-direction:column;gap:7px}.app-footer{padding-bottom:105px!important}}

/* ═══════════════════════════════════════════════════════════════
   v4.0.3 DESIGN CLEANUP — consolidate duplicates + polish
   ═══════════════════════════════════════════════════════════════ */

/* Single canonical theme toggle (replaces 4+ conflicting definitions above). */
.theme-toggle{
  width:78px!important;min-width:78px!important;height:34px!important;
  padding:3px!important;border-radius:999px!important;
  display:grid!important;grid-template-columns:22px 38px 22px!important;
  align-items:center!important;justify-content:center!important;gap:0!important;
  background:var(--surface)!important;overflow:hidden;
  border:1px solid var(--line);
  transition:background .25s,border-color .25s,transform .2s!important;
}
.theme-toggle:hover{transform:translateY(-1px)!important}
.theme-toggle .theme-icon{width:22px;height:22px;display:grid;place-items:center;color:var(--muted);transition:color .28s,transform .28s,opacity .28s}
.theme-toggle .theme-icon svg{width:13px;height:13px}
.theme-toggle .theme-icon.sun{color:var(--ink)}
.theme-toggle .theme-icon.moon{opacity:.48}
.theme-toggle .theme-switch{width:38px;height:22px;margin:0;border-radius:999px;background:var(--surface2);border:1px solid var(--line);padding:2px;position:relative;transition:background .3s,border-color .3s,box-shadow .3s}
.theme-toggle .theme-switch i{width:16px;height:16px;display:block;border-radius:50%;background:var(--ink);box-shadow:0 2px 7px rgba(0,0,0,.18);transform:translateX(0);transition:transform .32s cubic-bezier(.2,.8,.2,1),background .3s,box-shadow .3s}
.theme-toggle:active .theme-switch i{transform:scale(.9)}
.theme-toggle .theme-switch.on{background:var(--lime);border-color:var(--lime);box-shadow:inset 0 0 0 1px rgba(23,24,22,.04)}
.theme-toggle .theme-switch.on i{transform:translateX(14px);background:#171816}
[data-theme=dark] .theme-toggle{background:#181a16!important;border-color:#34372f!important;color:#d7d9d0!important}
[data-theme=dark] .theme-toggle .theme-switch{background:#34382f;border-color:#454a3e}
[data-theme=dark] .theme-toggle .theme-switch.on{background:var(--lime);border-color:var(--lime)}
[data-theme=dark] .theme-toggle .theme-switch.on i{background:#11130f}
body.sidebar-collapsed .theme-toggle{display:none!important}
@media(max-width:720px){.theme-toggle{min-width:40px!important;width:40px!important;padding:4px!important;justify-content:center!important;grid-template-columns:1fr!important}.theme-toggle .theme-icon,.theme-toggle .theme-switch{display:none!important}}

/* Single canonical sidebar collapse (replaces 3+ conflicting definitions). */
body.sidebar-collapsed .app{grid-template-columns:82px 1fr}
body.sidebar-collapsed .sidebar{width:82px;padding-left:10px;padding-right:10px}
body.sidebar-collapsed .sidebar .brand{font-size:16px;letter-spacing:-1px;gap:6px;margin-left:4px}
body.sidebar-collapsed .sidebar .brand .mark i{width:6px;height:6px}
body.sidebar-collapsed .sidebar .brand>span:last-child{display:inline!important}
body.sidebar-collapsed .sidebar .side-nav{margin-top:32px}
body.sidebar-collapsed .sidebar .side-label,body.sidebar-collapsed .sidebar .nav-item .label,body.sidebar-collapsed .sidebar .profile-copy{display:none}
body.sidebar-collapsed .sidebar .nav-item{justify-content:center;padding:0}
body.sidebar-collapsed .sidebar .profile-link{justify-content:center}
body.sidebar-collapsed .theme-toggle{display:none!important}
body.sidebar-collapsed .sidebar-collapse{transform:rotate(180deg)}

/* Single canonical dark theme variables (replaces 3 conflicting blocks). */
[data-theme=dark]{--bg:#0c0d0b;--surface:#151714;--surface2:#1d201b;--ink:#f3f4ee;--muted:#a7aaa0;--line:#32362d;--lime:#b9e34f;--lime2:#2c3c1b;--danger:#f07c72;--shadow:0 20px 70px rgba(0,0,0,.38)}
[data-theme=dark] body{background:var(--bg)}
[data-theme=dark] .sidebar,[data-theme=dark] .topbar{background:rgba(12,13,11,.9);border-color:var(--line)}
[data-theme=dark] .mark i+i{background:#d9ff68}
[data-theme=dark] .nav-item{color:#aeb0a7}
[data-theme=dark] .nav-item.active{background:#252821;color:var(--ink)}
[data-theme=dark] .nav-item:hover{background:#20231c;color:var(--ink)}
[data-theme=dark] .profile-link:hover{background:#20231c}
[data-theme=dark] .metric,[data-theme=dark] .panel,[data-theme=dark] .graph-wrap,[data-theme=dark] .concept-list,[data-theme=dark] .project,[data-theme=dark] .graph-node,[data-theme=dark] .auth-card{background:var(--surface);border-color:var(--line)}
[data-theme=dark] .calendar-grid{background:var(--surface);border-color:var(--line)}
[data-theme=dark] .cal-cell{background:#1b1e19;border-color:#2f332a}
[data-theme=dark] .cal-event{background:#252921;color:var(--ink)!important}
[data-theme=dark] .bar,[data-theme=dark] .progress{background:#30342b}
[data-theme=dark] .bar i,[data-theme=dark] .progress i{background:#e9eadf}
[data-theme=dark] .top-btn,[data-theme=dark] .btn,[data-theme=dark] .icon-btn,[data-theme=dark] .switch{background:#191b17;border-color:#373a31;color:var(--ink)}
[data-theme=dark] .btn.dark,[data-theme=dark] .top-btn.dark{background:#f0f1ea;color:#11130f;border-color:#f0f1ea}
[data-theme=dark] .btn.danger{color:#ff8c81;border-color:#66332f}
[data-theme=dark] .form input,[data-theme=dark] .form textarea,[data-theme=dark] .form select,[data-theme=dark] .search-input{background:#1b1e19;border-color:#383b33;color:var(--ink)}
[data-theme=dark] .form input::placeholder,[data-theme=dark] .form textarea::placeholder,[data-theme=dark] .search-input::placeholder{color:#85887f;opacity:1}
[data-theme=dark] .local-note,[data-theme=dark] .focus-rule,[data-theme=dark] .vault-drop{background:#1b1e19}
[data-theme=dark] .modal-backdrop{background:rgba(0,0,0,.65)}
[data-theme=dark] .modal{background:#151714;border-color:#34372e}
[data-theme=dark] .search-result:hover{background:#1d201b}
[data-theme=dark] .app-footer{color:#8e9188}
[data-theme=dark] .app-footer strong{color:var(--ink)}
[data-theme=dark] .app-footer a{color:var(--muted)}
[data-theme=dark] .sidebar-collapse{background:#171815}
[data-theme=dark] .attendance-hero-main{background:#0a0c0a;color:#f4f5ef}
[data-theme=dark] .attendance-hero-ring i{background:#0a0c0a}
[data-theme=dark] .attendance-hero-main .btn.dark{background:#f0f1ea;color:#10110f;border-color:#f0f1ea}
[data-theme=dark] .command-intro,[data-theme=dark] .focus-core{background:#090a0a}
[data-theme=dark] .academic-overview>div{background:#0a0c0a}
[data-theme=dark] .bar-chart span{background:#f3f4ee}
[data-theme=dark] .attendance-card-v2{border-color:#32362d}
[data-theme=dark] .attendance-card-v2.at-risk{background:#1a1412}
[data-theme=dark] .attendance-history-v2 i{background:#32362d}
[data-theme=dark] .attendance-history-v2 i.present{background:var(--lime)}
[data-theme=dark] .attendance-history-v2 i.missed{background:#8b4040}

/* Consistent button hover/active states across all pages. */
.btn:active,.top-btn:active{transform:translateY(0)!important}
.btn.dark:active{background:#2a2b28!important}
.icon-btn:active{transform:scale(.95)!important}

/* Consistent form focus ring across all pages. */
.form input:focus,.form textarea:focus,.form select:focus,.search-input:focus{border-color:var(--lime)!important;box-shadow:0 0 0 3px rgba(169,215,63,.18)!important;outline:none}

/* Smooth page transitions. */
.page{animation:pageIn .3s ease}
@keyframes pageIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Consistent panel hover elevation. */
.panel{transition:box-shadow .25s,border-color .25s}
.project{transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s,border-color .3s}
.project:hover{transform:translateY(-4px);box-shadow:0 18px 50px rgba(30,30,22,.08)}

/* Mobile bottom nav safe area padding. */
@media(max-width:720px){
  .page{padding-bottom:110px!important}
  .mobile-fab{bottom:max(18px,env(safe-area-inset-bottom))!important}
  .mobile-menu{bottom:max(88px,calc(88px + env(safe-area-inset-bottom)))!important}
  .mini-focus{bottom:max(80px,env(safe-area-inset-bottom))!important}
}

/* Accessibility: visible focus rings for keyboard navigation. */
.btn:focus-visible,.top-btn:focus-visible,.icon-btn:focus-visible,.nav-item:focus-visible{outline:2px solid var(--lime);outline-offset:2px}

/* Scrollbar styling for a polished look. */
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--line);border-radius:999px}
::-webkit-scrollbar-thumb:hover{background:var(--muted)}
[data-theme=dark] ::-webkit-scrollbar-thumb{background:#3a3d35}
[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#555a4e}

/* Calendar week view */
.week-grid{display:grid;grid-template-columns:60px repeat(7,1fr);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.week-header{display:contents}
.week-time-gutter{padding:8px 6px;color:var(--muted);font-size:9px;text-align:right;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.week-header-day{padding:12px 6px;text-align:center;font-size:10px;color:var(--muted);border-bottom:1px solid var(--line);background:var(--surface2)}
.week-header-day strong{display:block;font-size:20px;color:var(--text);margin-top:2px}
.week-header-day.today strong{background:var(--ink);color:white;border-radius:50%;width:32px;height:32px;display:inline-grid;place-items:center}
.week-body{grid-column:1/-1;display:grid;grid-template-columns:60px repeat(7,1fr);max-height:560px;overflow-y:auto}
.week-hour-row{display:contents}
.week-cell{min-height:56px;border-right:1px solid var(--line);border-bottom:1px solid rgba(0,0,0,.04);padding:2px;cursor:pointer}
.week-cell:hover{background:var(--surface2)}
.week-event{background:var(--lime2);border-radius:7px;padding:5px 7px;margin:1px 0;font-size:10px;cursor:pointer}
.week-event strong{display:block;font-size:10px}
.week-event small{display:block;color:var(--muted);font-size:9px}
.week-event.exam-event{background:#ffd6d6;border-left:3px solid var(--danger)}
.cal-event.exam-event{background:#ffd6d6;border-left:2px solid var(--danger)}

/* Calendar day view */
.day-view{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;overflow-y:auto;max-height:600px}
.day-header{font-size:18px;font-weight:700;margin-bottom:16px;letter-spacing:-.5px}
.day-timeline{display:grid;gap:0}
.day-hour-row{display:grid;grid-template-columns:60px 1fr;border-bottom:1px solid rgba(0,0,0,.04)}
.day-time-label{padding:8px 8px 8px 0;color:var(--muted);font-size:10px;text-align:right;border-right:1px solid var(--line)}
.day-hour-content{min-height:48px;padding:3px 8px}

/* Exam events */
.cal-event{font-size:9px;padding:3px 6px;border-radius:5px;cursor:pointer}
.cal-cell .cal-event.exam-event{background:#ffd6d6}

/* Planner subtasks */
.subtask-list{margin-left:24px;border-left:1px solid var(--line);padding-left:12px;margin-top:8px}
.subtask-row{display:flex;align-items:center;gap:8px;padding:5px 0;font-size:12px}
.subtask-row .check{width:18px;height:18px;border-radius:5px}
.subtask-row .grow{font-size:12px}

/* Planner recurring */
.recurring-badge{font-size:8px;background:var(--lime2);color:#697053;padding:2px 6px;border-radius:4px;font-weight:700}

/* Error boundary */
.error-boundary{position:fixed;inset:0;z-index:9999;background:var(--bg);display:grid;place-items:center;padding:40px;text-align:center;border-radius:0}
.error-boundary h2{font-size:32px;letter-spacing:-2px;margin:0 0 12px;color:var(--ink)}
.error-boundary p{color:var(--muted);margin:0 0 24px;max-width:460px;line-height:1.6}
.error-boundary .btn{cursor:pointer}

/* ═══════════════════════════════════════════════════════════
   DESIGN REFINEMENT — Modern Startup Polish
   ═══════════════════════════════════════════════════════════ */

/* Refined spacing and breathing room */
.page{max-width:1280px;padding:48px 48px 80px}
.page-head h1{font-size:clamp(48px,6vw,72px);letter-spacing:-4px;line-height:.88}
.page-head p{font-size:15px;color:var(--muted);line-height:1.6}

/* Smoother panels with refined shadows */
.panel{border-radius:20px;padding:28px;transition:box-shadow .25s,transform .25s}
.panel:hover{box-shadow:0 12px 40px rgba(30,30,22,.06)}

/* Refined buttons with better micro-interactions */
.btn,.top-btn{border-radius:12px;min-height:42px;font-weight:700;letter-spacing:-.2px;transition:all .18s cubic-bezier(.2,.8,.2,1)}
.btn:hover,.top-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.btn:active,.top-btn:active{transform:translateY(0);box-shadow:none}
.btn.dark,.top-btn.dark{box-shadow:0 2px 8px rgba(23,24,22,.15)}
.btn.dark:hover,.top-btn.dark:hover{box-shadow:0 6px 20px rgba(23,24,22,.25)}

/* Refined sidebar with cleaner hierarchy */
.sidebar{background:rgba(245,243,236,.92);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.brand{font-weight:900;letter-spacing:-1.5px}
.nav-item{height:42px;border-radius:11px;font-weight:600;font-size:13px;transition:all .18s}
.nav-item:hover{background:var(--surface2);color:var(--ink);transform:none}
.nav-item.active{background:rgba(169,215,63,.12);color:var(--ink);font-weight:700}
.nav-item.active .nav-icon{color:var(--lime)}

/* Refined topbar */
.topbar{height:68px;background:rgba(245,243,236,.88);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom-color:rgba(0,0,0,.04)}

/* Command hero — more refined */
.command-intro{border-radius:24px;padding:32px 36px;margin-bottom:20px}
.command-intro h2{font-size:clamp(32px,3.5vw,44px);letter-spacing:-2.5px}
.command-intro p{font-size:14px;line-height:1.6}

/* Metric cards — cleaner */
.metric{border-radius:16px;padding:22px;transition:all .2s}
.metric:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.04)}
.metric strong{font-size:clamp(28px,3vw,38px);letter-spacing:-2px;margin:10px 0 6px}
.metric span{font-size:9px;letter-spacing:1.5px}

/* Calendar — refined */
.calendar-grid{border-radius:20px;gap:4px;padding:8px}
.cal-cell{min-height:100px;border-radius:12px;transition:all .15s}
.cal-cell:hover{transform:none;border-color:#c3c0b6}
.cal-cell.selected{border-color:var(--lime);background:rgba(169,215,63,.06)}
.cal-cell.today>span{background:var(--ink);color:white;font-weight:800}
.calendar-toolbar{gap:8px}
.calendar-toolbar strong{font-size:18px;letter-spacing:-.5px}

/* Focus — more refined */
.focus-core{border-radius:24px;min-height:560px;padding:32px}
.focus-time{font-size:clamp(80px,15vw,120px);letter-spacing:-8px;margin:40px 0}
.focus-preset{border-radius:10px;font-weight:600;font-size:12px}
.focus-preset.active{box-shadow:0 0 0 2px var(--lime)}

/* Knowledge graph — cleaner */
.graph-wrap{border-radius:20px;overflow:hidden}
.graph-node{border-radius:12px;padding:11px 14px;font-size:12px;transition:all .2s}
.graph-node:hover{transform:translate(-50%,-50%) scale(1.04);box-shadow:0 12px 32px rgba(0,0,0,.1)}

/* Planner — refined */
.planner-top{border-radius:20px;padding:22px 26px}
.planner-top strong{font-size:42px;letter-spacing:-2.5px}
.task-row{padding:14px 0;gap:12px}
.task-row.large{padding:16px 0}
.check{border-radius:8px;width:20px;height:20px}
.signal-row{border-radius:8px;padding:12px 8px;margin:0 -8px}

/* Portfolio — cleaner */
.portfolio-grid{gap:16px}
.project{border-radius:20px;padding:24px;transition:all .2s}
.project:hover{transform:translateY(-3px);box-shadow:0 12px 36px rgba(0,0,0,.06)}
.project h3{font-size:22px;letter-spacing:-1px}

/* Insights — refined */
.bar-chart{height:240px;gap:10px}
.bar-chart span{border-radius:6px 6px 2px 2px;transition:height .4s cubic-bezier(.2,.8,.2,1)}
.signal-stack strong{font-size:20px;letter-spacing:-1px}

/* Forms — more refined */
.form input,.form textarea,.form select{border-radius:10px;padding:12px 14px;font-size:13px;transition:border-color .15s,box-shadow .15s}
.form input:focus,.form textarea:focus,.form select:focus{border-color:var(--lime);box-shadow:0 0 0 3px rgba(169,215,63,.12)}
.field label{font-size:9px;letter-spacing:1.6px;color:#8b8c84}

/* Modal — refined */
.modal{border-radius:20px;padding:28px;box-shadow:0 32px 80px rgba(0,0,0,.18)}
.modal h3{font-size:22px;letter-spacing:-.8px}

/* Toast — refined */
.toast{border-radius:10px;padding:10px 16px;font-size:11px;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.2)}

/* Auth — refined */
.auth-card{border-radius:24px;padding:36px;box-shadow:0 20px 60px rgba(0,0,0,.06)}
.auth-card h1{font-size:clamp(36px,5vw,48px);letter-spacing:-2.5px}
.auth-tabs{border-radius:10px;padding:3px}
.auth-tab{border-radius:8px;font-size:13px}

/* Empty states — more refined */
.empty-state{min-height:120px;padding:20px}
.empty-state strong{font-size:15px;font-weight:700}
.empty-state p{font-size:13px;max-width:380px;line-height:1.55}

/* Stat badges — refined */
.signal-row b{font-size:10px;padding:5px 10px;border-radius:8px}
.priority{font-size:8px;letter-spacing:1px;font-weight:700}

/* Scrollbar — refined */
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--line);border-radius:99px}
::-webkit-scrollbar-thumb:hover{background:var(--muted)}

/* Smooth page transitions */
.page{animation:pageIn .3s ease}
@keyframes pageIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Refined academic cards */
.academic-overview>div{border-radius:20px;padding:26px}
.academic-overview strong{font-size:clamp(40px,5vw,56px);letter-spacing:-3px}

/* Refined attendance hero */
.attendance-hero-main{border-radius:24px;padding:32px}
.attendance-hero-ring{width:clamp(100px,12vw,140px);height:clamp(100px,12vw,140px)}

/* Refined vault */
.file-row{padding:12px 0;border-radius:8px;transition:background .15s}
.file-row:hover{background:var(--surface2)}

/* Refined opportunities */
.opportunity{border-radius:12px;padding:20px 0;transition:background .15s}
.opportunity:hover{background:var(--surface2)}

/* Refined settings */
.setting-row{padding:14px 0;border-radius:8px;transition:background .15s}
.setting-row:hover{background:var(--surface2)}
.switch{width:44px;height:26px;border-radius:99px;transition:background .2s}
.switch i{width:20px;height:20px;border-radius:50%}
#settingsTheme.switch{position:relative;width:76px;height:34px;padding:3px;border-radius:999px;background:var(--surface2);border:1px solid var(--line);display:flex;align-items:center;justify-content:flex-start;transition:background .3s,border-color .3s,box-shadow .3s,transform .22s}
#settingsTheme.switch i{position:absolute;left:3px;top:3px;width:26px;height:26px;border-radius:50%;background:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.16);transition:transform .32s cubic-bezier(.2,.8,.2,1),background .3s}
#settingsTheme.switch.on{background:var(--lime);border-color:var(--lime)}
#settingsTheme.switch.on i{transform:translateX(42px);background:#171816}
#settingsTheme.switch .switch-icon{position:relative;z-index:1;width:26px;height:26px;display:grid;place-items:center;color:var(--muted)}
#settingsTheme.switch .switch-icon svg{width:14px;height:14px}
#settingsTheme.switch .switch-icon.sun{margin-left:1px}
#settingsTheme.switch .switch-icon.moon{margin-left:42px}

/* Refined mini-focus timer */
.mini-focus{border-radius:14px;padding:8px 10px;min-width:190px}

/* Better focus layout */
.focus-layout{gap:16px}
.focus-settings{border-radius:20px;padding:24px}
.session-history div{font-size:11px}

/* Calendar layout refinement */
.calendar-layout{gap:16px}
.agenda{border-radius:20px;padding:20px}
.agenda-row{padding:10px 0;gap:10px}

/* Better dark mode refinements */
[data-theme=dark] .btn:hover,[data-theme=dark] .top-btn:hover{box-shadow:0 4px 16px rgba(0,0,0,.2)}
[data-theme=dark] .panel:hover{box-shadow:0 12px 40px rgba(0,0,0,.15)}
[data-theme=dark] .metric:hover{box-shadow:0 8px 24px rgba(0,0,0,.12)}
[data-theme=dark] .project:hover{box-shadow:0 12px 36px rgba(0,0,0,.15)}
[data-theme=dark] .auth-card{box-shadow:0 20px 60px rgba(0,0,0,.2)}
[data-theme=dark] .nav-item.active{background:rgba(183,227,82,.08)}
[data-theme=dark] .cal-cell.selected{background:rgba(183,227,82,.06)}

/* Nav external link indicator */
.nav-external{font-size:11px;color:var(--muted);margin-left:6px;opacity:.7}

/* Page transition animation */
.page-transition-overlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:var(--bg,#f5f3ec);opacity:0;pointer-events:none;transition:opacity .2s ease}
.page-transition-overlay.active{opacity:1;pointer-events:auto}
.page-transition-overlay .transition-brand{display:flex;gap:5px;align-items:center}
.page-transition-overlay .transition-brand i{width:10px;height:10px;border-radius:50%;background:var(--ink,#171816)}
.page-transition-overlay .transition-brand i:last-child{background:#a9d73f}
.page-transition-overlay .transition-text{margin-top:12px;color:var(--muted,#77786f);font-size:11px;letter-spacing:1.5px;text-transform:uppercase}

/* Footer donate visibility fix */
.app-footer-donate form{display:inline-block;margin-top:6px}
.app-footer-donate .razorpay-payment-button{min-height:auto!important}

/* Notes nav item styling */
.nav-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:10px;text-decoration:none;color:var(--ink);transition:background .15s}
.nav-item:hover,.nav-item.active{background:var(--surface2)}
.nav-item .nav-icon{width:18px;height:18px;flex-shrink:0}
.nav-item .label{font-size:13px;font-weight:600;white-space:nowrap}

/* Settings export/import/reset button styles */
.data-actions{display:flex;gap:10px;flex-wrap:wrap}

/* Signal display in Command */
.signal-display{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.signal-number{font-size:clamp(48px,6vw,72px);letter-spacing:-4px;line-height:1;color:inherit}
.signal-label{font-size:14px;font-weight:600;color:rgba(255,255,255,.7);letter-spacing:-.3px}

/* Mobile header search

/* Mobile footer layout fix */
@media(max-width:720px){
  .app-footer{grid-template-columns:1fr!important;gap:14px!important;padding:20px 18px 90px!important;margin:0 16px!important}
  .app-footer-brand{flex-direction:column;align-items:flex-start!important;gap:8px!important}
  .app-footer-brand p{font-size:11px;line-height:1.5;max-width:280px}
  .app-footer-brand>div{flex-direction:column;align-items:flex-start!important}
  .app-footer-links{display:flex;flex-wrap:wrap;gap:10px!important;padding-top:10px;border-top:1px solid var(--line)}
  .app-footer-links a{font-size:10px;font-weight:700;color:var(--muted)}
  .app-footer-bottom{flex-direction:column;align-items:flex-start!important;gap:6px!important;padding-top:12px;border-top:1px solid var(--line)}
  .app-footer-bottom span{font-size:9px}
  .app-footer-donate{margin-top:8px}
  .app-footer-donate span{font-size:10px;font-weight:700;color:var(--muted);display:block;margin-bottom:4px}
}





/* ═══════════════════════════════════════════════════════════════
   NUCLEAR MOBILE MENU FIX — force flex layout, visible text
   ═══════════════════════════════════════════════════════════════ */
@media(max-width:720px){
  .mobile-menu-link,
  .mobile-menu a.mobile-menu-link,
  .mobile-menu a{
    display:flex!important;
    grid-template-columns:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
    align-items:center!important;
    gap:10px!important;
    min-height:44px!important;
    padding:12px 14px!important;
    border-radius:14px!important;
    background:var(--surface)!important;
    border:1px solid var(--line)!important;
    box-shadow:0 8px 24px rgba(20,20,15,.08)!important;
    font-size:13px!important;
    font-weight:800!important;
    color:var(--ink)!important;
    text-decoration:none!important;
  }
  .mobile-menu a.mobile-menu-link span,
  .mobile-menu-link span{
    display:block!important;
    flex:1 1 auto!important;
    overflow:visible!important;
    white-space:nowrap!important;
    text-overflow:clip!important;
    font-size:13px!important;
    font-weight:800!important;
    color:var(--ink)!important;
    min-width:0!important;
    width:auto!important;
    order:0!important;
    padding:0!important;
    margin:0!important;
  }
  .mobile-menu a svg,
  .mobile-menu-link svg{
    width:18px!important;
    height:18px!important;
    flex:0 0 18px!important;
    min-width:18px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.7!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
  }
  .mobile-menu a b,
  .mobile-menu-link b{
    margin-left:auto!important;
    color:var(--muted)!important;
    font-size:16px!important;
    flex:0 0 auto!important;
  }
  .mobile-menu a:hover,
  .mobile-menu a:active,
  .mobile-menu-link:hover,
  .mobile-menu-link:active,
  .mobile-menu-link.active{
    background:var(--surface2)!important;
    border-color:var(--line)!important;
  }

  /* Fix footer gap */
  .app-footer{
    margin:16px 16px 80px!important;
    padding:16px 0 20px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:12px!important;
  }
  .app-footer-timer{
    margin-top:8px!important;
  }

  /* Fix Settings mobile — hide sidebar on mobile */
  .sidebar{display:none!important;width:0!important;overflow:hidden!important}

  /* Fix portfolio button alignment */
  .portfolio-grid{grid-template-columns:1fr!important;gap:14px!important}
}

/* ═══════════════════════════════════════════════════════════════
   ZEVUNA DOTS — dark mode: white+green, light mode: black+lime
   ═══════════════════════════════════════════════════════════════ */
.mark i:first-child{background:#171816}
.mark i:last-child{background:var(--lime)}
html[data-theme="dark"] .mark i:first-child{background:#f2f2ed}
html[data-theme="dark"] .mark i:last-child{background:#b7df52}

/* ═══════════════════════════════════════════════════════════════
   DARK MODE BUTTON FIX — ensure buttons are always visible
   ═══════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .btn:not(.dark):not(.danger),
html[data-theme="dark"] .top-btn:not(.dark),
html[data-theme="dark"] .cta,
html[data-theme="dark"] button[type="submit"],
html[data-theme="dark"] .notes-new{
  color:var(--ink)!important;
  background:var(--surface)!important;
  border-color:var(--line)!important;
}
html[data-theme="dark"] .btn.dark,
html[data-theme="dark"] .top-btn.dark,
html[data-theme="dark"] .cta.dark{
  background:var(--lime)!important;
  color:#0d0f0d!important;
  border-color:var(--lime)!important;
}
html[data-theme="dark"] .btn.danger{
  color:var(--danger)!important;
  background:var(--surface)!important;
  border-color:var(--danger)!important;
}

/* Portfolio grid button alignment fix */
.portfolio-card{position:relative}
.portfolio-card .card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.portfolio-card .card-head h3{margin:0;flex:1;min-width:0}

/* Search icon SVG style (replaces bulb) */
.top-btn svg,.mobile-topbar-search svg{
  width:17px;height:17px;fill:none;stroke:currentColor;
  stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;
}

/* Extra dark mode button fixes */
html[data-theme="dark"] .btn:not(.dark):not(.danger):not([data-close]),
html[data-theme="dark"] .icon-btn,
html[data-theme="dark"] .theme-toggle,
html[data-theme="dark"] .sidebar-collapse,
html[data-theme="dark"] .profile-link,
html[data-theme="dark"] .mobile-fab,
html[data-theme="dark"] .folder-item,
html[data-theme="dark"] .sort-dropdown button,
html[data-theme="dark"] .notes-actions button,
html[data-theme="dark"] .notes-nav button{
  background:var(--surface)!important;
  color:var(--ink)!important;
  border-color:var(--line)!important;
}
html[data-theme="dark"] .btn.dark,
html[data-theme="dark"] .cta.dark{
  background:var(--lime)!important;
  color:#0d0f0d!important;
  border-color:var(--lime)!important;
}

/* ═══════════════════════════════════════════════════════════════
   ZMM — zero-conflict mobile menu items
   ═══════════════════════════════════════════════════════════════ */
a.zmm {
  display: flex !important;
  align-items: center;
  gap: 10px;
  width: 100%;
  min-height: 44px;
  padding: 12px 14px;
  border-radius: 14px;
  background: var(--surface);
  border: 1px solid var(--line);
  box-shadow: 0 8px 24px rgba(20,20,15,.08);
  font-size: 13px;
  font-weight: 800;
  color: var(--ink);
  text-decoration: none;
  overflow: visible;
  box-sizing: border-box;
  flex-shrink: 0;
}
a.zmm svg {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  min-width: 18px;
  fill: none;
  stroke: var(--lime);
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
a.zmm span {
  display: block;
  flex: 1 1 auto;
  overflow: visible;
  white-space: nowrap;
  text-overflow: clip;
  font-size: 13px;
  font-weight: 800;
  color: var(--ink);
  min-width: 0;
  width: auto;
  padding: 0;
  margin: 0;
  line-height: 1.3;
}
a.zmm b {
  margin-left: auto;
  color: var(--muted);
  font-size: 16px;
  flex: 0 0 auto;
  font-weight: 400;
}
a.zmm:hover, a.zmm:active {
  background: var(--surface2);
  border-color: var(--line);
}
/* Mobile menu secondary links — small, not big buttons */
.mobile-menu-secondary {
  display: flex !important;
  gap: 4px !important;
  border-top: 1px solid var(--line) !important;
  margin-top: 4px !important;
  padding: 8px 6px 2px !important;
  flex-wrap: nowrap !important;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.mobile-menu-secondary a {
  font-size: 9px !important;
  color: var(--muted) !important;
  font-weight: 600 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 2px 0 !important;
  border-radius: 0 !important;
  min-width: 0 !important;
  text-decoration: none !important;
  letter-spacing: 0.2px;
}
.mobile-menu-secondary a:not(:last-child)::after {
  content: '\00b7';
  margin-left: 4px;
  color: var(--muted);
}
.mobile-menu-secondary a:hover {
  color: var(--ink) !important;
  background: transparent !important;
}

/* Force sidebar hidden on mobile — outside media query for max specificity */
@media(max-width:720px){
  aside.sidebar, .sidebar { display: none !important; width: 0 !important; overflow: hidden !important; }
  .app { grid-template-columns: 1fr !important; display: block !important; min-height: auto !important; height: auto !important; }
  .main { grid-column: 1 !important; width: 100% !important; min-height: auto !important; height: auto !important; flex-direction: column !important; }
  .page { flex: none !important; padding-bottom: 0 !important; }
  .app-footer { padding: 20px 16px 0 !important; margin: 0 !important; width: 100% !important; display: flex !important; flex-direction: column !important; align-items: center !important; }
  .app-footer-bottom { padding-bottom: 0 !important; margin-bottom: 0 !important; display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; }
  .app-footer-meta { justify-content: center !important; }
}

/* ─────────────────────────────────────────────────────────────
   TOOLS PAGE STYLES
   ───────────────────────────────────────────────────────────── */
.tools-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 14px;
}
.tool-card {
  cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.tool-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(20,20,15,.08);
}
.tool-card:focus-visible {
  outline: 2px solid var(--lime);
  outline-offset: 2px;
}
.tool-icon-wrap {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--surface2);
  display: grid;
  place-items: center;
  color: var(--ink);
  margin-bottom: 14px;
  flex-shrink: 0;
}
.tool-card h3 {
  margin: 0 0 6px;
  font-size: 15px;
  letter-spacing: -0.4px;
}
.tool-card p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
  margin: 0 0 12px;
  flex: 1;
}
.tool-link {
  font-size: 11px;
  font-weight: 700;
  color: var(--ink);
  opacity: 0.5;
  transition: opacity 0.2s;
}
.tool-card:hover .tool-link { opacity: 1; }

/* Grade Calculator */
.grade-calc {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.grade-calc-inputs {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.grade-calc-results {
  display: flex;
  gap: 20px;
}
.gc-result {
  flex: 1;
  background: var(--surface2);
  padding: 20px;
  border-radius: 16px;
  text-align: center;
}
.gc-result span {
  display: block;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--muted);
  margin-bottom: 8px;
}
.gc-result strong {
  font-size: 36px;
  letter-spacing: -2px;
}
.gc-subjects {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.gc-subject-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  background: var(--surface2);
  border-radius: 10px;
  font-size: 13px;
}
.gc-subject-row span {
  flex: 1;
}

/* Assignment Tracker */
.assignment-tracker {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.assignment-add {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}
.assignment-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.assignment-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px;
  background: var(--surface2);
  border-radius: 12px;
}
.assignment-row.overdue {
  border-left: 3px solid var(--danger);
}
.assignment-info {
  flex: 1;
  min-width: 0;
}
.assignment-info strong {
  display: block;
  font-size: 14px;
}
.assignment-info small {
  display: block;
  color: var(--muted);
  margin-top: 4px;
}
.assignment-status {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 4px 10px;
  border-radius: 6px;
  font-weight: 700;
}
.assignment-status.pending { background: #f0e68c; color: #8b7d00; }
.assignment-status.in-progress { background: #87ceeb; color: #005f73; }
.assignment-status.completed { background: #90ee90; color: #006400; }
.assignment-status.submitted { background: var(--lime2); color: #4a5d23; }

/* Pomodoro Timer */
.pomodoro-timer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  padding: 20px 0;
}
.pomodoro-display {
  font-size: 72px;
  font-weight: 800;
  letter-spacing: -4px;
  font-variant-numeric: tabular-nums;
}
.pomodoro-status {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--muted);
}
.pomodoro-controls {
  display: flex;
  gap: 10px;
}
.pomodoro-settings {
  display: flex;
  gap: 20px;
  width: 100%;
  max-width: 300px;
}
.pomodoro-settings .field {
  flex: 1;
}

/* Unit Converter */
.unit-converter {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.uc-result {
  text-align: center;
  padding: 24px;
  background: var(--surface2);
  border-radius: 16px;
  font-size: 18px;
  font-weight: 700;
}

/* Random Picker */
.random-picker {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.rp-result {
  text-align: center;
  padding: 30px;
  background: var(--surface2);
  border-radius: 16px;
}
.rp-result strong {
  display: block;
  font-size: 28px;
  letter-spacing: -1px;
  margin-bottom: 8px;
}
.rp-result small {
  color: var(--muted);
}

/* Stopwatch */
.stopwatch {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  padding: 20px 0;
}
.stopwatch-display {
  font-size: 64px;
  font-weight: 800;
  letter-spacing: -3px;
  font-variant-numeric: tabular-nums;
}
.stopwatch-controls {
  display: flex;
  gap: 10px;
}
.sw-laps {
  width: 100%;
  max-height: 200px;
  overflow-y: auto;
}
.sw-lap {
  display: flex;
  justify-content: space-between;
  padding: 8px 12px;
  border-top: 1px solid var(--line);
  font-size: 12px;
}

/* ─────────────────────────────────────────────────────────────
   STUDY GROUPS STYLES
   ───────────────────────────────────────────────────────────── */
.groups-layout {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 18px;
}
.group-card {
  transition: transform 0.2s;
}
.group-card:hover {
  transform: translateY(-2px);
}
.group-header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 12px;
}
.group-avatar {
  width: 48px;
  height: 48px;
  background: var(--ink);
  color: #fff;
  border-radius: 14px;
  display: grid;
  place-items: center;
  font-weight: 800;
  font-size: 16px;
  flex-shrink: 0;
}
.group-info h3 {
  margin: 0;
  font-size: 18px;
}
.group-info small {
  color: var(--muted);
  font-size: 12px;
}
.group-desc {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
  margin-bottom: 16px;
}
.group-actions {
  display: flex;
  gap: 8px;
}

/* Group Workspace */
.group-workspace {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.group-workspace > .panel{min-width:0;margin:0}
.group-workspace > .panel .panel-head{align-items:flex-start}
@media(max-width:900px){.group-workspace{grid-template-columns:1fr}}
.group-members {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.group-member {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid var(--line);
}
.group-member:first-child {
  border-top: 0;
}
.avatar-sm {
  width: 32px;
  height: 32px;
  background: var(--surface2);
  border-radius: 10px;
  display: grid;
  place-items: center;
  font-size: 11px;
  font-weight: 700;
  flex-shrink: 0;
}
.group-member strong {
  display: block;
  font-size: 13px;
}
.group-member small {
  color: var(--muted);
  font-size: 11px;
  text-transform: capitalize;
}

.group-tools {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.group-tool-btn {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 6px;
  padding: 16px;
  background: var(--surface2);
  border-radius: 14px;
  text-align: left;
  transition: background 0.2s, transform 0.2s;
}
.group-tool-btn:hover {
  background: var(--line);
  transform: translateY(-1px);
}
.group-tool-btn strong {
  font-size: 13px;
}
.group-tool-btn small {
  color: var(--muted);
  font-size: 11px;
}

.group-notes-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.group-note {
  padding: 14px;
  background: var(--surface2);
  border-radius: 12px;
}
.group-note strong {
  display: block;
  font-size: 14px;
  margin-bottom: 6px;
}
.group-note p {
  font-size: 13px;
  color: var(--muted);
  line-height: 1.5;
  margin: 0 0 8px;
}
.group-note small {
  font-size: 10px;
  color: var(--muted);
}

/* Group Focus */
.group-focus {
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center;
}
.group-focus p {
  color: var(--muted);
  text-align: center;
}

.typing-input{font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;font-size:13px!important;line-height:1.7!important;min-height:72px!important;letter-spacing:.5px}
.typing-prompt{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;line-height:2;max-height:90px;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--surface2)}
.typing-prompt .ok{color:#62b77b;font-weight:700}.typing-prompt .bad{color:var(--danger);text-decoration:underline;text-decoration-thickness:2px;font-weight:700}.typing-prompt .cur{border-bottom:2px solid var(--lime);animation:blink 1s step-end infinite}
@keyframes blink{50%{border-color:transparent}}
.typing-stats{display:flex;gap:10px;margin:14px 0}.typing-stat{flex:1;text-align:center;padding:10px 6px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.typing-stat span{display:block;font-size:8px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}.typing-stat strong{display:block;font-size:22px;letter-spacing:-1px;margin:4px 0}.typing-stat em{font-style:normal;font-size:9px;color:var(--muted)}.typing-stat.accent strong{color:var(--lime)}
.typing-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.typing-duration{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:700;color:var(--muted)}.typing-duration select{height:32px;border:1px solid var(--line);border-radius:8px;background:var(--surface2);padding:0 8px;font-size:11px}
.typing-result{margin-top:14px;padding:14px;border:1px solid var(--lime);border-radius:12px;background:var(--lime2);text-align:center}.typing-result strong{display:block;font-size:16px;margin-bottom:8px}
.typing-intro{color:var(--muted);font-size:11px;line-height:1.6;margin-bottom:4px}

/* Shared focus modal inputs */
.group-focus .field input{height:42px;border:1px solid var(--line);border-radius:10px;padding:0 12px;font-size:13px;background:var(--surface2);color:var(--text);width:240px}
.group-focus .field input:focus{border-color:var(--lime);box-shadow:0 0 0 3px rgba(169,215,63,.14)}
.group-focus .field{display:flex;flex-direction:column;gap:6px;align-items:center;text-align:center}
.group-focus .field label{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);font-weight:800}

/* Group detail page improvements */
.shared-focus-empty{background:var(--ink);color:#fff;border-radius:20px;padding:28px}
.shared-focus-empty .eyebrow{color:var(--lime)}
.shared-focus-empty h3{color:#fff}
.shared-focus-empty p{color:#aaa}
.shared-focus-empty .btn.dark{background:var(--lime);color:var(--ink);border-color:var(--lime)}
.group-presence{margin-bottom:0;padding:0}
.group-chat{border-radius:20px}
.group-chat-form input{height:44px;border:1px solid var(--line);border-radius:12px;padding:0 14px;font-size:12px}
.group-chat-form input:focus{border-color:var(--lime);box-shadow:0 0 0 3px rgba(169,215,63,.12)}

/* ─────────────────────────────────────────────────────────────
   FLASHCARDS STYLES
   ───────────────────────────────────────────────────────────── */
.flashcards-layout {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 18px;
}
.deck-card {
  transition: transform 0.2s;
}
.deck-card:hover {
  transform: translateY(-2px);
}
.deck-header {
  margin-bottom: 10px;
}
.deck-header h3 {
  margin: 0 0 4px;
  font-size: 20px;
}
.deck-header small {
  color: var(--muted);
  font-size: 12px;
}
.deck-desc {
  color: var(--muted);
  font-size: 13px;
  margin-bottom: 16px;
}
.deck-stats {
  display: flex;
  gap: 20px;
  margin-bottom: 16px;
  padding: 14px;
  background: var(--surface2);
  border-radius: 12px;
}
.deck-stats > div {
  text-align: center;
  flex: 1;
}
.deck-editor-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}
.deck-stats strong {
  display: block;
  font-size: 24px;
  letter-spacing: -1px;
}
.deck-stats span {
  font-size: 10px;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 1px;
}
.deck-actions {
  display: flex;
  gap: 8px;
}

/* Deck Editor */
.deck-editor {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.deck-cards-list {
  max-height: 300px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.flashcard-preview {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  background: var(--surface2);
  border-radius: 10px;
}
.fc-front, .fc-back {
  flex: 1;
  min-width: 0;
}
.fc-front strong {
  display: block;
  font-size: 13px;
}
.fc-back small {
  color: var(--muted);
  font-size: 12px;
}
.deck-add-card {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}

/* Study Mode */
.study-card {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-height: 300px;
}
.study-card-front, .study-card-back {
  padding: 30px;
  background: var(--surface2);
  border-radius: 16px;
  text-align: center;
}
.study-card-front h3 {
  font-size: 24px;
  margin: 10px 0 0;
}
.study-card-back p {
  font-size: 16px;
  line-height: 1.6;
  margin: 10px 0 0;
  color: var(--muted);
}
.study-controls {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
.study-rating {
  display: flex;
  gap: 10px;
}

/* Exam Study Planner */
.exam-planner {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.exam-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.exam-item {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px;
  background: var(--surface2);
  border-radius: 12px;
}
.exam-item.urgent {
  border-left: 3px solid var(--danger);
}
.exam-info {
  flex: 1;
}
.exam-info strong {
  display: block;
  font-size: 14px;
}
.exam-info small {
  color: var(--muted);
  font-size: 12px;
}
.exam-progress {
  width: 120px;
}
.exam-progress span {
  font-size: 10px;
  color: var(--muted);
}

.study-plan {
  padding: 20px;
  background: var(--surface2);
  border-radius: 16px;
}
.plan-timeline {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 16px 0;
  max-height: 300px;
  overflow-y: auto;
}
.plan-day {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px;
  background: var(--surface);
  border-radius: 8px;
  font-size: 12px;
}
.plan-day.revision {
  background: var(--lime2);
}
.plan-date {
  width: 90px;
  font-weight: 700;
}
.plan-type {
  width: 80px;
}
.plan-actions {
  display: flex;
  gap: 8px;
  margin-top: 12px;
}

/* Habit Tracker */
.habit-tracker {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.habit-add {
  display: flex;
  gap: 10px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}
.habit-add .field {
  flex: 1;
}
.habit-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.habit-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px;
  background: var(--surface2);
  border-radius: 10px;
}
.habit-row.completed {
  background: var(--lime2);
}
.habit-check {
  width: 28px;
  height: 28px;
  border: 2px solid var(--line);
  border-radius: 8px;
  display: grid;
  place-items: center;
  font-size: 14px;
  font-weight: 700;
}
.habit-check.done {
  background: var(--ink);
  color: #fff;
  border-color: var(--ink);
}
.habit-info {
  flex: 1;
}
.habit-info strong {
  display: block;
  font-size: 14px;
}
.habit-info small {
  color: var(--muted);
  font-size: 11px;
}

/* Quiz Generator */
.quiz-generator {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.quiz-questions {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 20px;
}
.quiz-question {
  padding: 16px;
  background: var(--surface2);
  border-radius: 12px;
}
.quiz-question strong {
  display: block;
  margin-bottom: 12px;
  font-size: 14px;
}
.quiz-options {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.quiz-option {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
  background: var(--surface);
  border-radius: 8px;
  cursor: pointer;
  font-size: 13px;
}
.quiz-option:hover {
  background: var(--line);
}
.quiz-score {
  text-align: center;
  padding: 20px;
  background: var(--lime2);
  border-radius: 12px;
  margin-top: 16px;
}
.quiz-score strong {
  font-size: 36px;
  display: block;
}

/* Formula Sheet */
.formula-sheet {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.formula-section h4 {
  margin: 0 0 12px;
  font-size: 16px;
  color: var(--ink);
}
.formula-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid var(--line);
}
.formula-name {
  font-size: 13px;
  color: var(--muted);
}
.formula-code {
  font-family: 'SF Mono', Monaco, monospace;
  font-size: 12px;
  background: var(--surface2);
  padding: 4px 8px;
  border-radius: 6px;
}

/* Time Tracker */
.time-tracker {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.tracker-current {
  text-align: center;
  padding: 24px;
  background: var(--surface2);
  border-radius: 16px;
}
.tracker-display {
  font-size: 56px;
  font-weight: 800;
  letter-spacing: -3px;
  font-variant-numeric: tabular-nums;
  margin-bottom: 16px;
}
.tracker-controls {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 16px;
}
.tracker-entries {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.tracker-entry {
  display: flex;
  justify-content: space-between;
  padding: 10px;
  background: var(--surface2);
  border-radius: 8px;
  font-size: 12px;
}

/* Progress Report */
.progress-report {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.report-header {
  text-align: center;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}
.report-header h3 {
  margin: 8px 0 0;
  font-size: 20px;
}
.report-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
.report-stat {
  padding: 20px;
  background: var(--surface2);
  border-radius: 12px;
  text-align: center;
}
.report-stat span {
  display: block;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--muted);
  margin-bottom: 8px;
}
.report-stat strong {
  display: block;
  font-size: 32px;
  letter-spacing: -2px;
}
.report-stat small {
  color: var(--muted);
  font-size: 11px;
}
.report-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

/* Export/Import */
.export-import {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.export-section, .import-section {
  padding: 20px;
  background: var(--surface2);
  border-radius: 12px;
}
.export-section h4, .import-section h4 {
  margin: 8px 0;
  font-size: 16px;
}
.export-section p, .import-section p {
  color: var(--muted);
  font-size: 13px;
  margin-bottom: 12px;
}
.import-drop {
  border: 2px dashed var(--line);
  border-radius: 12px;
  padding: 30px;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s;
}
.import-drop:hover, .import-drop.dragover {
  border-color: var(--lime);
  background: var(--lime2);
}
.import-drop p {
  margin: 0;
  color: var(--muted);
}

@media(max-width:720px) {
  .tools-grid, .groups-layout, .flashcards-layout {
    grid-template-columns: 1fr;
  }
  .group-tools {
    grid-template-columns: 1fr;
  }
  .grade-calc-results {
    flex-direction: column;
  }
  .pomodoro-display, .stopwatch-display, .tracker-display {
    font-size: 48px;
  }
  .report-grid {
    grid-template-columns: 1fr;
  }
}

/* v4.1 — tool workspace drawer: tools stay visible and shift instead of hiding behind a modal. */

body.tool-drawer-open .page-head .actions,body.tool-drawer-open .panel-head .btn,body.tool-drawer-open .panel-head>a.btn{position:relative;z-index:0!important}
@media(min-width:1001px){body.ai-drawer-open .main{padding-right:min(448px,34vw);transition:padding-right .28s ease}body.tool-drawer-open:not(.ai-drawer-open) .main{padding-right:min(420px,31vw);transition:padding-right .28s ease}}
html:fullscreen,html:-webkit-full-screen{background:var(--bg)!important;color:var(--ink)!important}
html:fullscreen body,html:-webkit-full-screen body{background:var(--bg)!important;color:var(--ink)!important}
html:fullscreen .app,html:-webkit-full-screen .app{background:var(--bg)!important;color:var(--ink)!important}
html:fullscreen .main,html:-webkit-full-screen .main{background:transparent!important}
html:fullscreen .sidebar,html:-webkit-full-screen .sidebar{z-index:1000!important;background:color-mix(in srgb,var(--bg) 92%,transparent)!important}
html:fullscreen .topbar,html:-webkit-full-screen .topbar{background:color-mix(in srgb,var(--bg) 90%,transparent)!important}
html[data-theme=dark]:fullscreen,html[data-theme=dark]:-webkit-full-screen,html[data-theme=dark]:fullscreen body,html[data-theme=dark]:-webkit-full-screen body,html[data-theme=dark]:fullscreen .app,html[data-theme=dark]:-webkit-full-screen .app{background:#0c0d0b!important;color:#f1f2ec!important}
html[data-theme=dark]:fullscreen .sidebar,html[data-theme=dark]:-webkit-full-screen .sidebar{background:rgba(12,13,11,.92)!important}
html[data-theme=dark]:fullscreen .topbar,html[data-theme=dark]:-webkit-full-screen .topbar{background:rgba(12,13,11,.9)!important}
body.tool-drawer-open{overflow-x:hidden}
body.tool-drawer-open .tools-grid{margin-right:min(410px,31vw);transition:margin-right .34s cubic-bezier(.2,.8,.2,1),grid-template-columns .34s ease}
.tool-drawer-backdrop{display:block!important;position:fixed!important;inset:0!important;padding:0!important;background:transparent!important;backdrop-filter:none!important;pointer-events:none!important;z-index:1200!important}.tool-drawer-backdrop .tool-drawer{z-index:1201!important}
.tool-drawer-backdrop .tool-drawer{pointer-events:auto;position:fixed;top:14px;right:14px;bottom:14px;width:min(390px,31vw);max-width:calc(100vw - 28px);height:auto;max-height:none;overflow:auto;border-radius:24px;padding:24px;box-shadow:0 24px 80px rgba(0,0,0,.22);animation:toolDrawerIn .32s cubic-bezier(.2,.8,.2,1);transform-origin:right center}
.tool-drawer-backdrop.closing .tool-drawer{animation:toolDrawerOut .18s ease forwards}
.tool-drawer .modal-head{position:sticky;top:-24px;z-index:2;padding:24px 0 16px;margin:0 -1px 18px;background:var(--surface);border-bottom:1px solid var(--line)}
.tool-drawer .modal-topline{padding-bottom:8px}
.tool-drawer .modal-head h3{font-size:24px}
.tool-drawer .form-actions{position:sticky;bottom:-24px;padding:14px 0 0;background:linear-gradient(transparent,var(--surface) 28%)}
.tool-drawer .deck-editor,.tool-drawer .quiz-generator,.tool-drawer .grade-calc,.tool-drawer .time-tracker{min-width:0}
@keyframes toolDrawerIn{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}
@keyframes toolDrawerOut{from{opacity:1;transform:none}to{opacity:0;transform:translateX(24px)}}
@media(max-width:1000px) and (min-width:721px){body.tool-drawer-open .tools-grid{margin-right:0;padding-right:min(360px,34vw)}.tool-drawer-backdrop .tool-drawer{width:min(360px,34vw)}}
@media(max-width:720px){body.tool-drawer-open .tools-grid{margin-right:0}.tool-drawer-backdrop .tool-drawer{top:8px;right:8px;bottom:8px;width:calc(100vw - 16px);max-width:none;border-radius:22px;padding:20px}.tool-drawer .modal-head{top:-20px;padding-top:20px}.tool-drawer .form-actions{bottom:-20px}}

/* v4.1 — settings polish and stable form feedback */
.settings-grid .panel{min-width:0}
.settings-grid .panel h3{margin-bottom:7px}
.settings-grid .panel>p{color:var(--muted);line-height:1.65}
.settings-grid .profile-form-status{min-height:17px;color:var(--muted);font-size:11px;margin-top:-4px}
.settings-grid .save-profile-btn{min-width:130px}
.settings-grid .data-actions .btn{min-height:38px}
.settings-grid .connections-panel .panel-head{align-items:flex-start}
@media(max-width:720px){.settings-grid .panel{padding:18px}.settings-grid .data-actions{display:grid;grid-template-columns:1fr}.settings-grid .data-actions .btn{width:100%}}

/* v4.1 — AI flashcard generator */
.ai-flashcard-generator{display:flex;flex-direction:column;gap:15px}
.ai-generator-intro{padding:14px 15px;background:var(--surface2);border:1px solid var(--line);border-radius:16px}
.ai-generator-intro h4{font-size:18px;letter-spacing:-.5px;margin:6px 0}
.ai-generator-intro p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}
.ai-generator-status{min-height:18px;color:var(--muted);font-size:11px;line-height:1.5}

/* v4.1 — persistent workspace AI drawer */
.ai-top-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7}
.global-ai-drawer{position:fixed;z-index:220;top:14px;right:14px;bottom:14px;width:min(420px,34vw);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:0 28px 90px rgba(0,0,0,.22);animation:globalAIIn .3s cubic-bezier(.2,.8,.2,1);min-width:0}
/* Intelligence mode switcher — intentionally large and obvious so AI and Agent feel like two modes of one surface. */
.intelligence-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:5px;margin:14px 0 8px;border:1px solid var(--line);border-radius:17px;background:var(--surface2);box-shadow:inset 0 1px 0 rgba(255,255,255,.35);width:100%;box-sizing:border-box}
.intelligence-tab{position:relative;min-width:0;height:50px;border:1px solid transparent;border-radius:13px;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:9px;padding:0 12px;font:800 13px/1 Inter,system-ui,sans-serif;letter-spacing:-.2px;cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.intelligence-tab>span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:rgba(0,0,0,.045);color:currentColor;font-size:13px;font-weight:900;line-height:1}
.intelligence-tab:hover{color:var(--ink);background:rgba(255,255,255,.62);border-color:var(--line);transform:translateY(-1px)}
.intelligence-tab.active{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:0 8px 20px rgba(0,0,0,.14)}
.intelligence-tab.active>span{background:rgba(255,255,255,.12);color:#fff}
.intelligence-tab[data-intelligence-tab="agent"].active{background:var(--lime);border-color:var(--lime);color:#11130f;box-shadow:0 8px 22px rgba(145,205,45,.2)}
.intelligence-tab[data-intelligence-tab="agent"].active>span{background:rgba(17,19,15,.09);color:#11130f}
.intelligence-tab:focus-visible{outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 28%,transparent),0 8px 22px rgba(0,0,0,.12)}
.global-ai-drawer.closing{animation:globalAIOut .18s ease forwards}
.ai-drawer-open .main{padding-right:min(434px,35vw);transition:padding-right .3s cubic-bezier(.2,.8,.2,1)}
.global-ai-head{display:flex;justify-content:space-between;gap:15px;padding-bottom:15px;border-bottom:1px solid var(--line)}
.global-ai-head h3{margin:5px 0;font-size:21px;letter-spacing:-.8px}.global-ai-head p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}
.global-ai-suggestions{display:flex;gap:7px;overflow:auto;padding:12px 0}.global-ai-suggestions button{white-space:nowrap;border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800;cursor:pointer}.global-ai-suggestions button:hover{border-color:var(--lime)}
.global-ai-thread{flex:1;min-height:0;overflow:auto;padding:4px 2px 12px;display:flex;flex-direction:column;gap:12px}.global-ai-msg{padding:11px 12px;border-radius:15px;border:1px solid var(--line);max-width:94%}.global-ai-msg.user{align-self:flex-end;background:var(--ink);color:#fff;border-color:var(--ink)}.global-ai-msg.assistant{align-self:flex-start;background:var(--surface2)}.global-ai-msg.error{align-self:flex-start;background:var(--surface2)}.global-ai-msg span{display:block;font-size:8px;letter-spacing:1.3px;font-weight:850;opacity:.6;margin-bottom:5px}.global-ai-msg p{margin:0;font-size:12px;line-height:1.6;overflow-wrap:anywhere}.global-ai-empty{margin:auto;text-align:center;max-width:260px}.global-ai-empty strong{font-size:15px}.global-ai-empty p{color:var(--muted);font-size:11px;line-height:1.5}
.global-ai-form{display:flex;gap:8px;border-top:1px solid var(--line);padding-top:12px}.global-ai-form textarea{min-height:50px;max-height:120px;resize:vertical;flex:1;border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:13px;padding:10px 11px;font:inherit;font-size:12px;outline:none}.global-ai-form textarea:focus{border-color:var(--lime)}.global-ai-form .btn{align-self:flex-end;min-height:40px}.global-ai-status{min-height:15px;color:var(--muted);font-size:9px;margin-top:5px}
@keyframes globalAIIn{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:none}}@keyframes globalAIOut{from{opacity:1;transform:none}to{opacity:0;transform:translateX(25px)}}
@media(max-width:1000px) and (min-width:721px){.global-ai-drawer{width:360px}.ai-drawer-open .main{padding-right:374px}}
@media(max-width:720px){.ai-top-btn{display:none!important}.global-ai-drawer{top:8px;right:8px;bottom:8px;width:calc(100vw - 16px);border-radius:22px;padding:18px}.ai-drawer-open .main{padding-right:0}.global-ai-form{align-items:flex-end}.global-ai-form .btn{padding-inline:13px}.intelligence-tabs{margin-top:12px;margin-bottom:7px;padding:4px;border-radius:15px}.intelligence-tab{height:48px;border-radius:11px;font-size:12px;gap:8px}.intelligence-tab>span{width:22px;height:22px;border-radius:7px;font-size:12px}}

/* v4.1.4 — dark-mode consistency, study-group quotes and AI quota badge */
[data-theme=dark] .intelligence-tabs{background:#1a1d19;border-color:#30342d;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
[data-theme=dark] .intelligence-tab:hover{background:#24281f;color:#f1f4eb;border-color:#3a3f34}
[data-theme=dark] .intelligence-tab>span{background:rgba(255,255,255,.055)}
[data-theme=dark] .btn.dark,[data-theme=dark] .top-btn.dark{background:var(--lime)!important;color:#11130f!important;border-color:var(--lime)!important}
[data-theme=dark] .btn.dark:hover,[data-theme=dark] .top-btn.dark:hover{background:#c8f15e!important;border-color:#c8f15e!important}
[data-theme=dark] .btn.dark:active,[data-theme=dark] .top-btn.dark:active{background:#9fc83f!important}
[data-theme=dark] .check.done{background:var(--lime)!important;color:#11130f!important;border-color:var(--lime)!important}
[data-theme=dark] .cal-cell.today>span,[data-theme=dark] .calendar-grid .cal-cell.today .cal-day-number{background:var(--lime)!important;color:#11130f!important}
[data-theme=dark] .profile-avatar,[data-theme=dark] .avatar{background:#20231c!important;color:var(--ink)!important}
[data-theme=dark] .focus-core .btn:not(.dark),[data-theme=dark] .focus-overlay .btn:not(.dark),[data-theme=dark] .focus-overlay .icon-btn{color:var(--ink)!important;background:var(--surface2)!important;border-color:var(--line)!important}
[data-theme=dark] .focus-core .btn:not(.dark):hover,[data-theme=dark] .focus-overlay .btn:not(.dark):hover,[data-theme=dark] .focus-overlay .icon-btn:hover{background:#252a21!important}
[data-theme=dark] .ai-message-user .ai-message-body{background:var(--surface2)!important;color:var(--ink)!important;border-color:var(--line)!important}
[data-theme=dark] .ai-message-user .ai-role{color:var(--muted)!important}
[data-theme=dark] .ai-message-error .ai-message-body{background:#2a1c1a!important;color:#f3f4ee!important}
[data-theme=dark] .assignment-status.pending{background:#5a501e!important;color:#f3f4ee!important;border-color:#74672a!important}

.ai-top-btn{position:relative}.global-ai-quota{display:inline-flex;vertical-align:middle;margin-left:7px;padding:4px 7px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:8px;letter-spacing:.7px}
.study-quote-card{margin:0 0 18px;padding:1px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(135deg,var(--surface),var(--surface2));overflow:hidden;position:relative}.study-quote-inner{padding:28px 30px;min-height:190px;display:flex;flex-direction:column;justify-content:center}.study-quote-inner.is-changing{animation:studyQuoteIn .42s cubic-bezier(.2,.8,.2,1)}.study-quote-inner blockquote{margin:12px 0 16px;max-width:940px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(24px,3vw,38px);line-height:1.16;letter-spacing:-1px;color:var(--ink)}.study-quote-by{display:flex;align-items:center;justify-content:space-between;gap:15px;color:var(--muted);font-size:11px;font-weight:700}.quote-next{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:8px 11px;font-size:10px;font-weight:800;cursor:pointer;transition:.2s}.quote-next:hover{border-color:var(--lime);transform:translateY(-1px)}@keyframes studyQuoteIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
[data-theme=dark] .study-quote-card{background:linear-gradient(135deg,#151714,#1d201b);border-color:var(--line)}
[data-theme=dark] .quote-next{background:#191b17;color:var(--ink);border-color:var(--line)}
@media(max-width:720px){.ai-top-quota{display:none}.study-quote-inner{padding:23px 20px;min-height:205px}.study-quote-inner blockquote{font-size:25px;line-height:1.2}.study-quote-by{align-items:flex-end}.global-ai-quota{display:block;margin:5px 0 0;width:max-content}.quote-next{padding:7px 10px}}
[data-theme=dark] .mobile-nav-item.active{background:var(--lime)!important;color:#11130f!important}
[data-theme=dark] .mobile-nav-item.active svg{color:#11130f!important}
[data-theme=dark] .week-header-day.today strong{background:var(--lime)!important;color:#11130f!important}
[data-theme=dark] .cal-cell .cal-event.exam-event{background:#4a2525!important;color:#ffd9d5!important}
[data-theme=dark] .week-event.exam-event{background:#4a2525!important;color:#ffd9d5!important}

/* v4.1.5 — focused flashcard studio, live groups, AI modes and refined controls */
:root{scrollbar-color:#b8b8b0 transparent;scrollbar-width:thin}
.sidebar .side-nav{scrollbar-width:thin;scrollbar-color:rgba(128,130,120,.42) transparent}
.sidebar .side-nav::-webkit-scrollbar{width:7px}.sidebar .side-nav::-webkit-scrollbar-track{background:transparent}.sidebar .side-nav::-webkit-scrollbar-thumb{background:rgba(128,130,120,.32);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.sidebar .side-nav::-webkit-scrollbar-thumb:hover{background:rgba(128,130,120,.6);border:2px solid transparent;background-clip:padding-box}
input::placeholder,textarea::placeholder,select::placeholder{color:#96978f;opacity:.9}input,textarea,select{transition:border-color .2s,box-shadow .2s,background .2s,transform .2s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--lime);box-shadow:0 0 0 3px rgba(169,215,63,.12)}
.flashcard-overview{display:flex;justify-content:space-between;gap:25px;align-items:stretch;margin-bottom:18px;padding:30px;border:1px solid var(--line);border-radius:26px;background:radial-gradient(circle at 85% 15%,var(--lime2),transparent 34%),var(--surface)}.flashcard-overview-copy{max-width:650px}.flashcard-overview h2,.flashcard-studio-hero h2{font-size:38px;letter-spacing:-2px;margin:7px 0}.flashcard-overview p,.flashcard-studio-hero p{color:var(--muted);line-height:1.65;margin:0}.flashcard-overview-metrics{display:grid;grid-template-columns:repeat(3,100px);gap:10px}.flashcard-overview-metrics>div,.studio-stat{border:1px solid var(--line);background:var(--surface2);border-radius:18px;padding:15px;display:flex;flex-direction:column;justify-content:center;text-align:center}.flashcard-overview-metrics strong,.studio-stat strong{font-size:28px;letter-spacing:-1px}.flashcard-overview-metrics span,.studio-stat span{font-size:9px;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted)}
.deck-card{padding:22px}.deck-card-top{display:flex;align-items:center;gap:12px}.deck-orbit{width:42px;height:42px;border:1px solid var(--line);border-radius:14px;display:grid;place-items:center;background:var(--surface2);position:relative}.deck-orbit:after{content:"";position:absolute;inset:-5px;border:1px dashed var(--line);border-radius:17px;opacity:.7}.deck-orbit span{font-size:11px;font-weight:900}.deck-header h3{margin:0 0 4px}.deck-progress{height:5px;background:var(--surface2);border-radius:99px;overflow:hidden;margin:18px 0 4px}.deck-progress span{display:block;height:100%;background:var(--lime);border-radius:inherit}.flashcard-create-hero{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:18px;background:radial-gradient(circle at 100% 0,var(--lime2),transparent 38%),var(--surface)}.flashcard-create-hero h2{font-size:32px;letter-spacing:-1.5px;margin:8px 0}.flashcard-create-form{display:flex;flex-direction:column;gap:10px}.inline-form-actions{display:flex;justify-content:flex-end;gap:8px}.flashcard-studio{display:flex;flex-direction:column;gap:18px}.flashcard-studio-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:32px;border-radius:28px;background:linear-gradient(135deg,var(--ink),#272a24);color:#fff}.flashcard-studio-hero p{color:#b8bbb1;max-width:680px}.flashcard-ai-composer{display:grid;grid-template-columns:.85fr 1.15fr;gap:25px}.composer-copy h3{font-size:25px;margin:7px 0}.composer-copy p{color:var(--muted);line-height:1.65}.composer-fields{display:flex;flex-direction:column;gap:10px}.composer-fields textarea{min-height:180px;resize:vertical;background:var(--surface2);border-radius:18px;padding:16px;font:inherit}.composer-row{display:flex;gap:10px;align-items:center}.select-shell{display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--line);border-radius:13px;background:var(--surface2);height:44px}.select-shell span{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.select-shell select{border:0;background:transparent;color:var(--ink);padding:0;box-shadow:none}.composer-row .btn{flex:1}.composer-status{min-height:18px;color:var(--muted);font-size:11px}.manual-card-fields{display:grid;grid-template-columns:1fr 1.4fr auto;gap:10px;align-items:start}.flashcard-card-list .panel-head{margin-bottom:8px}.studio-card-list{display:flex;flex-direction:column}.studio-card{display:grid;grid-template-columns:46px 1fr auto;gap:15px;align-items:center;padding:18px 0;border-top:1px solid var(--line)}.studio-card-index{font-size:10px;color:var(--muted);font-weight:900;letter-spacing:1px}.studio-card-copy strong{display:block;font-size:14px}.studio-card-copy p{color:var(--muted);font-size:12px;line-height:1.55;margin:5px 0}.studio-card-copy small{font-size:9px;color:var(--muted)}.flashcard-study-stage{max-width:900px;margin:10px auto 50px}.study-progress{height:6px;background:var(--surface2);border-radius:99px;overflow:hidden;margin-bottom:18px}.study-progress span{display:block;height:100%;background:var(--lime);transition:width .3s}.flashcard-study-card{min-height:480px;padding:clamp(30px,6vw,70px);border:1px solid var(--line);border-radius:32px;background:radial-gradient(circle at 80% 15%,var(--lime2),transparent 30%),var(--surface);display:flex;flex-direction:column;justify-content:center;gap:35px;box-shadow:var(--shadow)}.study-card-face{text-align:center;max-width:750px;margin:auto}.study-card-face h2{font-size:clamp(32px,5vw,58px);letter-spacing:-2.5px;line-height:1.03;margin:14px 0}.study-hint{color:var(--muted);font-size:12px}.study-answer{border-top:1px solid var(--line);padding-top:28px;max-width:760px;margin:0 auto;width:100%}.study-answer p{font-size:20px;line-height:1.65;color:var(--ink);margin:10px 0 0}.study-actions{display:flex;justify-content:center;margin-top:18px}.study-reveal{min-width:220px;height:50px}.study-rating-new{display:flex;flex-direction:column;align-items:center;gap:10px}.study-rating-new>span{font-size:10px;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted)}.study-rating-new>div{display:flex;gap:8px}.study-rating-new button{min-width:85px;height:44px;border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:12px;font-weight:800}.study-rating-new button:hover{border-color:var(--lime);transform:translateY(-1px)}.study-rating-new .rating-again{color:var(--danger)}.study-rating-new .rating-easy{background:var(--lime);color:#11130f;border-color:var(--lime)}.flashcard-session-done{max-width:760px;margin:30px auto;text-align:center;padding:70px 30px}.done-orbit{width:82px;height:82px;margin:0 auto 25px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--lime);background:var(--lime2);font-size:32px}.flashcard-session-done h2{font-size:42px;letter-spacing:-2px;margin:8px 0}.flashcard-session-done p{color:var(--muted);max-width:500px;margin:0 auto 25px}
.group-live-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:18px;margin-bottom:18px}.shared-focus-live,.shared-focus-empty{min-height:180px;display:flex;align-items:center;gap:20px}.shared-focus-live-main,.shared-focus-empty>div{flex:1}.shared-focus-live h3,.shared-focus-empty h3{font-size:25px;margin:6px 0}.shared-focus-live p,.shared-focus-empty p{color:var(--muted);line-height:1.5;margin:0}.shared-focus-count{font-variant-numeric:tabular-nums;font-size:52px;letter-spacing:-3px}.shared-focus-actions{display:flex;align-items:center}.member-live-dot,.live-pill{display:inline-flex;align-items:center;gap:6px;margin-left:auto;font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--lime);font-weight:900}.live-pill i,.member-live-dot:before{width:6px;height:6px;background:var(--lime);border-radius:50%;content:"";display:block;box-shadow:0 0 0 4px var(--lime2)}.group-chat{min-height:420px;display:flex;flex-direction:column}.group-chat .panel-head{flex-shrink:0}.group-chat-thread{flex:1;min-height:250px;max-height:390px;overflow:auto;display:flex;flex-direction:column;gap:9px;padding:8px 2px 14px}.group-message{max-width:78%;align-self:flex-start;padding:10px 12px;border:1px solid var(--line);background:var(--surface2);border-radius:14px 14px 14px 4px}.group-message.mine{align-self:flex-end;background:var(--ink);color:#fff;border-color:var(--ink);border-radius:14px 14px 4px 14px}.group-message span{display:block;font-size:8px;letter-spacing:1px;text-transform:uppercase;opacity:.65;margin-bottom:4px}.group-message p{margin:0;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.group-message small{display:block;font-size:8px;opacity:.5;margin-top:5px}.group-chat-empty{text-align:center;margin:auto;color:var(--muted);padding:25px}.group-chat-empty strong{display:block;color:var(--ink);margin-bottom:5px}.group-chat-empty p{font-size:11px}.group-chat-form{display:flex;gap:8px;border-top:1px solid var(--line);padding-top:12px}.group-chat-form input{flex:1;min-width:0}.group-chat-form .btn{height:44px}
.tool-ai-assist{display:flex;align-items:center;gap:10px;padding:11px 12px;margin:0 0 14px;border:1px solid var(--line);border-radius:15px;background:var(--surface2)}.tool-ai-mark{width:27px;height:27px;border-radius:9px;display:grid;place-items:center;background:var(--lime2);color:var(--ink);font-size:12px}.tool-ai-assist div{flex:1;min-width:0}.tool-ai-assist strong,.tool-ai-assist small{display:block}.tool-ai-assist strong{font-size:11px}.tool-ai-assist small{color:var(--muted);font-size:9px;margin-top:2px}.tool-ai-btn{height:32px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font-weight:800;font-size:10px}.tool-ai-btn:hover{border-color:var(--lime)}.global-ai-modebar{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}.global-ai-modebar label{font-size:8px;letter-spacing:1.2px;color:var(--muted);font-weight:900}.global-ai-modebar select{flex:1;min-width:0;border:1px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--ink);padding:8px 9px;font:inherit;font-size:10px}.global-ai-quota{white-space:nowrap;padding:5px 8px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:8px;letter-spacing:.5px}.ai-top-quota{display:none!important}
[data-theme=dark] .flashcard-studio-hero{background:linear-gradient(135deg,#0a0b09,#1c2118)}[data-theme=dark] .flashcard-overview{background:radial-gradient(circle at 85% 15%,#2b3c19,transparent 34%),var(--surface)}[data-theme=dark] .flashcard-study-card{background:radial-gradient(circle at 80% 15%,#263719,transparent 30%),var(--surface)}[data-theme=dark] .shared-focus-live,[data-theme=dark] .shared-focus-empty{background:linear-gradient(135deg,#171a15,#20251c)}[data-theme=dark] .group-message.mine{background:var(--lime);color:#11130f;border-color:var(--lime)}
@media(max-width:900px){.flashcard-overview,.flashcard-create-hero,.flashcard-ai-composer{grid-template-columns:1fr;display:grid}.flashcard-overview-metrics{grid-template-columns:repeat(3,1fr)}.group-live-grid{grid-template-columns:1fr}.manual-card-fields{grid-template-columns:1fr}.flashcard-studio-hero{align-items:flex-start;flex-direction:column}.studio-stat{width:max-content}.shared-focus-live,.shared-focus-empty{flex-wrap:wrap}.shared-focus-count{font-size:42px}.shared-focus-actions{margin-left:auto}}
@media(max-width:720px){.flashcard-overview{padding:22px}.flashcard-overview h2,.flashcard-studio-hero h2{font-size:30px}.flashcard-overview-metrics{gap:6px}.flashcard-overview-metrics strong{font-size:22px}.composer-row{flex-direction:column;align-items:stretch}.select-shell{justify-content:space-between}.studio-card{grid-template-columns:30px 1fr auto}.flashcard-study-card{min-height:420px;padding:28px 20px;border-radius:24px}.study-card-face h2{font-size:34px}.study-rating-new>div{display:grid;grid-template-columns:1fr 1fr;width:100%}.study-rating-new button{width:100%}.group-chat-thread{max-height:360px}.group-message{max-width:88%}.group-chat-form .btn{padding-inline:12px}.global-ai-modebar{flex-wrap:wrap}.global-ai-modebar select{order:3;flex-basis:100%}}

/* v4.1.5 AI mode controls */
.ai-mode-strip{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:11px 0;border-bottom:1px solid var(--line)}.ai-mode-strip>span{font-size:8px;letter-spacing:1.2px;color:var(--muted);font-weight:900;margin-right:3px}.ai-mode{height:30px;padding:0 10px;border:1px solid var(--line);background:var(--surface2);color:var(--muted);border-radius:999px;font-size:9px;font-weight:850;cursor:pointer;transition:.18s}.ai-mode:hover{color:var(--ink);border-color:var(--lime)}.ai-mode.active{background:var(--lime);border-color:var(--lime);color:#11130f}.ai-form textarea::placeholder,.global-ai-form textarea::placeholder,.composer-fields textarea::placeholder{color:color-mix(in srgb,var(--muted) 82%,transparent);letter-spacing:.05px}.flashcard-create-form input::placeholder,.manual-card-fields input::placeholder,.manual-card-fields textarea::placeholder{color:color-mix(in srgb,var(--muted) 82%,transparent)}

/* v4.1.6 — Posture Check: full-screen local camera analysis */
.posture-workbench{display:flex;flex-direction:column;gap:16px;min-width:0}.posture-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.posture-toolbar h4{font-size:22px;letter-spacing:-.7px;margin:5px 0 0}.posture-toolbar-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.posture-privacy{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:9px;letter-spacing:.3px}.posture-privacy i{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px var(--lime2)}.posture-fullscreen{white-space:nowrap}.posture-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:14px;min-height:0}.posture-camera-card,.posture-analysis-panel{border:1px solid var(--line);border-radius:20px;background:var(--surface);overflow:hidden}.posture-camera-card{display:flex;flex-direction:column;min-width:0}.posture-video-shell{position:relative;aspect-ratio:16/10;background:#0b0d0a;overflow:hidden;display:grid;place-items:center}.posture-video-shell video,.posture-video-shell canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.posture-video-shell video{transform:scaleX(-1)}.posture-video-shell canvas{pointer-events:none}.posture-camera-overlay{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;align-items:center;z-index:3}.posture-camera-overlay span{padding:6px 9px;border:1px solid rgba(255,255,255,.12);background:rgba(8,10,8,.64);backdrop-filter:blur(10px);border-radius:999px;color:#f4f5ef;font-size:8px;letter-spacing:1px;text-transform:uppercase}.posture-camera-overlay span:first-child.live{color:#d7f58a}.posture-start-card{position:relative;z-index:4;width:min(390px,82%);padding:26px;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(18,21,17,.88);backdrop-filter:blur(18px);text-align:center;color:#f3f4ee;box-shadow:0 18px 60px rgba(0,0,0,.3)}.posture-start-card[hidden]{display:none}.posture-start-icon{width:52px;height:52px;border:1px solid rgba(185,227,79,.4);border-radius:16px;display:grid;place-items:center;margin:0 auto 15px;color:var(--lime);font-size:26px}.posture-start-card strong{display:block;font-size:20px;letter-spacing:-.4px}.posture-start-card p{font-size:11px;line-height:1.55;color:#b8bcb2;margin:8px 0 17px}.posture-camera-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;color:var(--muted);font-size:9px}.posture-camera-footer .btn{height:32px;font-size:9px;padding:0 11px}.posture-analysis-panel{padding:19px;display:flex;flex-direction:column;gap:16px}.posture-score-wrap{display:grid;grid-template-columns:92px 1fr;gap:15px;align-items:center}.posture-score-ring{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;align-content:center;border:1px solid var(--line);background:radial-gradient(circle at 50% 50%,var(--surface2) 0 58%,transparent 59%),conic-gradient(var(--lime) 0deg, var(--lime) 0deg, var(--surface2) 0deg);position:relative}.posture-score-ring:after{content:'';position:absolute;inset:7px;border:1px solid var(--line);border-radius:50%;pointer-events:none}.posture-score-ring[data-level=good]{background:radial-gradient(circle at 50% 50%,var(--surface2) 0 58%,transparent 59%),conic-gradient(var(--lime) 0 300deg,var(--surface2) 300deg)}.posture-score-ring[data-level=watch]{background:radial-gradient(circle at 50% 50%,var(--surface2) 0 58%,transparent 59%),conic-gradient(var(--lime) 0 220deg,var(--surface2) 220deg)}.posture-score-ring[data-level=bad]{background:radial-gradient(circle at 50% 50%,var(--surface2) 0 58%,transparent 59%),conic-gradient(var(--danger) 0 150deg,var(--surface2) 150deg)}.posture-score-ring strong{font-size:27px;line-height:1;letter-spacing:-1.5px;z-index:1}.posture-score-ring span{font-size:7px;text-transform:uppercase;letter-spacing:1.1px;color:var(--muted);z-index:1;margin-top:4px}.posture-analysis-panel h3{font-size:20px;letter-spacing:-.6px;margin:5px 0}.posture-analysis-panel p{font-size:10px;line-height:1.55;color:var(--muted);margin:0}.posture-checklist{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.posture-checklist>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:10px}.posture-checklist>div:last-child{border-bottom:0}.posture-checklist b{font-size:8px;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}.posture-checklist b.good{color:var(--lime)}.posture-checklist b.bad{color:var(--danger)}.posture-tip{padding:13px;border-radius:15px;background:var(--surface2);border:1px solid var(--line)}.posture-tip strong{display:block;font-size:11px;line-height:1.5;margin-top:5px}.posture-disclaimer{font-size:8px;line-height:1.5;color:var(--muted)}
.posture-fullscreen-brand{display:none}.posture-workbench:fullscreen .posture-fullscreen-brand,.posture-workbench:-webkit-full-screen .posture-fullscreen-brand{display:flex;position:absolute;top:25px;left:30px;align-items:center;gap:9px;z-index:30;color:var(--ink);font-size:21px;line-height:1;letter-spacing:-.9px;white-space:nowrap;pointer-events:none}.posture-workbench:fullscreen .posture-fullscreen-brand .mark,.posture-workbench:-webkit-full-screen .posture-fullscreen-brand .mark{display:flex;gap:4px;align-items:center}.posture-workbench:fullscreen .posture-fullscreen-brand .mark i,.posture-workbench:-webkit-full-screen .posture-fullscreen-brand .mark i{display:block;width:8px;height:8px;border-radius:50%;background:var(--ink)}.posture-workbench:fullscreen .posture-fullscreen-brand .mark i:last-child,.posture-workbench:-webkit-full-screen .posture-fullscreen-brand .mark i:last-child{background:var(--lime)}.posture-workbench:fullscreen .posture-fullscreen-brand strong,.posture-workbench:-webkit-full-screen .posture-fullscreen-brand strong{font-weight:800}
.posture-workbench:fullscreen{background:var(--bg);color:var(--ink);padding:28px;overflow:auto;position:relative}.posture-workbench:fullscreen .posture-toolbar>div:first-child{padding-left:145px}.posture-workbench:-webkit-full-screen{position:relative}.posture-workbench:-webkit-full-screen .posture-toolbar>div:first-child{padding-left:145px}.posture-workbench:fullscreen .posture-grid{grid-template-columns:minmax(0,1.8fr) minmax(340px,.65fr);flex:1}.posture-workbench:fullscreen .posture-video-shell{aspect-ratio:auto;height:calc(100vh - 190px);min-height:480px}.posture-workbench:fullscreen .posture-camera-card,.posture-workbench:fullscreen .posture-analysis-panel{border-radius:24px}.posture-workbench:-webkit-full-screen{background:var(--bg);color:var(--ink);padding:28px;overflow:auto}.posture-workbench:-webkit-full-screen .posture-grid{grid-template-columns:minmax(0,1.8fr) minmax(340px,.65fr)}.posture-workbench:-webkit-full-screen .posture-video-shell{height:calc(100vh - 190px);aspect-ratio:auto;min-height:480px}
[data-theme=dark] .posture-start-card{background:rgba(17,19,16,.9)}[data-theme=dark] .posture-camera-card,[data-theme=dark] .posture-analysis-panel{background:#151714}
@media(max-width:900px){.posture-grid{grid-template-columns:1fr}.posture-video-shell{aspect-ratio:16/10}.posture-analysis-panel{display:grid;grid-template-columns:1fr 1fr}.posture-score-wrap{grid-column:1/-1}.posture-tip,.posture-disclaimer{grid-column:1/-1}}
@media(max-width:720px){.posture-toolbar{align-items:flex-start;flex-direction:column}.posture-toolbar-actions{justify-content:flex-start}.posture-analysis-panel{display:flex}.posture-camera-footer{align-items:flex-start;flex-direction:column}.posture-workbench:fullscreen,.posture-workbench:-webkit-full-screen{padding:16px}.posture-workbench:fullscreen .posture-toolbar>div:first-child,.posture-workbench:-webkit-full-screen .posture-toolbar>div:first-child{padding-left:0;padding-top:42px}.posture-workbench:fullscreen .posture-fullscreen-brand,.posture-workbench:-webkit-full-screen .posture-fullscreen-brand{top:17px;left:18px}.posture-workbench:fullscreen .posture-video-shell,.posture-workbench:-webkit-full-screen .posture-video-shell{height:auto;min-height:360px;aspect-ratio:4/3}}

/* v4.1.8 — Settings route recovery + mobile-first settings UX */
.settings-grid{align-items:start}
.settings-grid .panel{overflow:hidden}
.settings-grid .field input,.settings-grid .field textarea,.settings-grid .field select{min-width:0;width:100%;box-sizing:border-box}
.settings-grid .data-actions{display:flex;flex-wrap:wrap;gap:10px}
.settings-grid .data-actions .btn{flex:1 1 150px}
.settings-grid .connections-panel .connection-row{min-width:0}
.settings-grid .connections-panel .connection-row a{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:720px){
  body[data-page="settings"] .page{padding:18px 14px 110px!important}
  body[data-page="settings"] .page-head{padding:8px 2px 18px!important}
  body[data-page="settings"] .page-head h1{font-size:32px!important;letter-spacing:-1.5px!important}
  body[data-page="settings"] .page-head p{font-size:13px!important;max-width:42rem}
  .settings-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
  .settings-grid .panel{padding:18px!important;border-radius:18px!important}
  .settings-grid .panel h3{font-size:18px!important}
  .settings-grid .field-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  .settings-grid .form{gap:12px!important}
  .settings-grid .btn{min-height:44px!important}
  .settings-grid .data-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  .settings-grid .data-actions .btn{width:100%!important;min-width:0!important}
  .settings-grid .setting-row{align-items:center!important;padding:12px 0!important}
  .settings-grid .setting-row>div{min-width:0;flex:1 1 auto}
  .settings-grid .setting-row .switch{flex:0 0 auto}
  .settings-grid .connections-panel .panel-head{gap:10px;flex-wrap:wrap}
  .settings-grid .connections-panel .panel-head .btn{width:100%}
  .settings-grid .connection-row{display:grid!important;grid-template-columns:minmax(0,1fr) 40px!important;gap:10px!important;padding:12px 0!important}
  .settings-grid .connection-row .icon-btn{width:40px!important;height:40px!important}
  .settings-grid .help-panel,.settings-grid .share-panel{display:block!important}
  .settings-grid .help-panel .panel-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important;margin-top:14px!important}
  .settings-grid .help-panel .panel-actions .btn,.settings-grid .share-panel>button{width:100%!important}
  .settings-grid .profile-form-status{min-height:18px}
}

/* v4.1.9 — readability, footer, sidebar brand and compact posture */
.brand-full{display:inline!important;min-width:0;white-space:nowrap}.brand-collapsed{display:none!important}body.sidebar-collapsed .sidebar .brand-full{display:none!important}body.sidebar-collapsed .sidebar .brand-collapsed{display:inline!important}
[data-theme=dark] .btn,[data-theme=dark] .top-btn,[data-theme=dark] .icon-btn{color:var(--text)!important;background:var(--surface)!important}
[data-theme=dark] .btn.dark,[data-theme=dark] .top-btn.dark{background:var(--lime)!important;border-color:var(--lime)!important;color:#11130f!important}
[data-theme=dark] .ai-message-user{background:#f1f2ec!important;color:#11130f!important;border-color:#d8d9d0!important}.ai-message-user .ai-copy p{color:inherit!important}
[data-theme=dark] .global-ai-msg.user{background:#f1f2ec!important;color:#11130f!important;border-color:#d8d9d0!important}.global-ai-msg.user p,.global-ai-msg.user span{color:inherit!important}
.ai-copy p.ai-bullet{margin:3px 0}.page-error{max-width:720px;margin:40px auto;text-align:center}.page-error h2{font-size:30px;letter-spacing:-1px;margin:8px 0}.page-error p{color:var(--muted);line-height:1.6}
.notes-footer{width:min(820px,calc(100% - 80px));margin:0 auto;padding:26px 0 36px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;color:var(--muted);font-size:9px}.notes-footer-brand{display:flex;align-items:center;gap:8px;min-width:0}.notes-footer-brand strong{font-size:16px;color:var(--text);letter-spacing:-.6px}.notes-footer-brand small{font-size:9px;color:var(--muted)}.notes-footer-mark{display:inline-flex;gap:3px}.notes-footer-mark i{width:6px;height:6px;border-radius:50%;background:var(--text)}.notes-footer-mark i+i{background:var(--lime)}.notes-footer-links{display:flex;gap:15px;flex-wrap:wrap;justify-content:flex-end}.notes-footer-links a{color:var(--muted);font-weight:800}.notes-footer-links a:hover{color:var(--text)}.notes-footer-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:15px;padding-top:12px;border-top:1px solid var(--line);font-size:8px}
.posture-grid{grid-template-columns:minmax(0,1.25fr) minmax(250px,.75fr)}.tool-drawer .posture-grid{grid-template-columns:1fr}.tool-drawer .posture-video-shell{min-height:190px;aspect-ratio:16/10}.tool-drawer .posture-analysis-panel{padding:14px;gap:12px}.tool-drawer .posture-score-wrap{grid-template-columns:68px minmax(0,1fr)}.tool-drawer .posture-score-ring{width:68px;height:68px}.tool-drawer .posture-toolbar-actions{width:100%;justify-content:flex-start}.tool-drawer .posture-fullscreen{width:100%}.tool-drawer .posture-camera-footer{align-items:center}.posture-analysis-panel{min-width:0}.posture-analysis-panel h3,.posture-analysis-panel p{overflow-wrap:anywhere}
@media(max-width:1100px){.notes-page,.notes-footer{width:min(760px,calc(100% - 48px))}.notes-app{grid-template-columns:220px minmax(0,1fr) 330px}}
@media(max-width:900px){.posture-grid{grid-template-columns:1fr}.posture-analysis-panel{display:grid;grid-template-columns:1fr 1fr}.posture-score-wrap{grid-column:1/-1}.notes-footer{width:min(820px,calc(100% - 40px))}}
@media(max-width:720px){.notes-footer{width:calc(100% - 32px);grid-template-columns:1fr;padding:22px 0 95px}.notes-footer-links{justify-content:flex-start}.notes-footer-bottom{grid-column:1;flex-direction:column;gap:6px}.posture-analysis-panel{display:flex}.tool-drawer .posture-video-shell{min-height:180px;aspect-ratio:4/3}.tool-drawer .posture-camera-footer{flex-direction:row}.tool-drawer .posture-camera-footer span{flex:1}.tool-drawer .posture-camera-footer .btn{flex:0 0 auto}.page-error{margin:20px auto}}

.settings-loading-fallback{max-width:720px;margin:20px auto;text-align:center}.settings-loading-fallback h2{font-size:30px;letter-spacing:-1px;margin:8px 0}.settings-loading-fallback p{color:var(--muted);line-height:1.6}

/* v4.1.9 posture compact geometry */
.tool-drawer-backdrop .tool-drawer.posture-modal{overflow-y:auto!important;overflow-x:hidden!important}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-workbench{min-height:0;padding:0}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-video-shell{width:100%;background:#090b08;aspect-ratio:16/9;border-radius:14px}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-grid{grid-template-columns:1fr!important;gap:12px}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-camera-card{background:var(--surface);border-radius:14px;border:1px solid var(--line)}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-analysis-panel{background:var(--surface);border-radius:14px;border:1px solid var(--line)}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-toolbar{padding-bottom:12px}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-toolbar h4{font-size:20px}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-start-card{border-radius:16px;padding:20px}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-start-card strong{font-size:17px}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-start-card p{font-size:10px}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-analysis-panel h3{font-size:17px}.tool-drawer-backdrop .tool-drawer.posture-modal .posture-tip{border-radius:12px}
.settings-page{min-width:0}.settings-page .settings-loading-fallback{min-width:0}


/* v4.1.16 — final workspace surface polish */
/* User messages are deliberately simple: one compact bubble, no floating avatar tile. */
.ai-message-user{align-self:flex-end;display:block;max-width:min(720px,78%);margin-left:auto}
.ai-message-user .ai-message-body{display:block;background:var(--ink);color:#fff;border:1px solid var(--ink);border-radius:18px 18px 6px 18px;padding:11px 14px;box-shadow:0 8px 24px rgba(20,20,15,.08)}
.ai-message-user .ai-role{color:rgba(255,255,255,.58);margin-bottom:5px;font-size:8px;letter-spacing:1.4px}
.ai-message-user .ai-copy,.ai-message-user .ai-copy p{color:#fff!important;font-size:13px;line-height:1.55}
[data-theme=dark] .ai-message-user .ai-message-body{background:#252a21!important;color:#f5f6ef!important;border-color:#3a4034!important}
[data-theme=dark] .ai-message-user .ai-role{color:#aeb3a7!important}
[data-theme=dark] .ai-message-user .ai-copy,[data-theme=dark] .ai-message-user .ai-copy p{color:#f5f6ef!important}

/* AI and tool drawers share the right edge; AI moves left when a tool is open. */
body.tool-drawer-open .global-ai-drawer{right:calc(min(390px,31vw) + 28px);}
body.tool-drawer-open.ai-drawer-open .global-ai-drawer{right:calc(min(390px,31vw) + 28px);}
@media(max-width:1000px) and (min-width:721px){body.tool-drawer-open .global-ai-drawer{right:388px;width:360px}.ai-drawer-open.tool-drawer-open .main{padding-right:748px}}
@media(max-width:720px){body.tool-drawer-open.ai-drawer-open .global-ai-drawer{left:8px;right:8px;top:8px;bottom:8px;width:auto;z-index:260}.tool-drawer-backdrop{z-index:210!important}.global-ai-drawer{z-index:260!important}}

/* Give every workspace footer breathing room instead of ending abruptly at the viewport edge. */
.main>.app-footer{margin-bottom:30px!important}
@media(max-width:720px){.main>.app-footer{margin-bottom:104px!important}}
.notes-editor-scroll{padding-bottom:48px!important}
.notes-footer{margin-bottom:38px!important;padding-bottom:42px!important}
@media(max-width:720px){.notes-footer{margin-bottom:26px!important;padding-bottom:96px!important}}

/* Settings should always occupy a real surface, even if the renderer has a transient error. */
.settings-page{min-height:60vh}
.page-error{max-width:760px;margin:28px auto;padding:28px;text-align:center;border:1px solid var(--line);border-radius:20px;background:var(--surface)}
.page-error h2{margin:7px 0 8px;font-size:26px;letter-spacing:-.8px}.page-error p{color:var(--muted);line-height:1.6}

/* v4.1.16 — polished placeholder system */
input::placeholder,
textarea::placeholder,
select::placeholder{
  color:color-mix(in srgb,var(--muted) 78%,transparent);
  opacity:1;
  font-weight:650;
  letter-spacing:-.05px;
  transition:color .18s ease,opacity .18s ease,transform .18s ease;
}
input:focus::placeholder,
textarea:focus::placeholder{
  color:color-mix(in srgb,var(--muted) 52%,transparent);
  opacity:.72;
}
.form input::placeholder,
.form textarea::placeholder,
.search-input::placeholder,
.ai-form textarea::placeholder,
.global-ai-form textarea::placeholder,
.composer-fields textarea::placeholder{
  font-size:.94em;
}
[data-theme=dark] input::placeholder,
[data-theme=dark] textarea::placeholder,
[data-theme=dark] .form input::placeholder,
[data-theme=dark] .form textarea::placeholder,
[data-theme=dark] .search-input::placeholder{
  color:#8f9289;
  opacity:1;
}

/* v4.1.16 — settings never starts blank */
.settings-static-fallback{min-width:0}.settings-static-fallback .page-head{margin-bottom:24px}.settings-static-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.settings-static-fields>div{padding:13px;border:1px solid var(--line);border-radius:13px;background:var(--surface2);min-width:0}.settings-static-fields span{display:block;font-size:8px;text-transform:uppercase;letter-spacing:1.2px;color:var(--muted);font-weight:900;margin-bottom:5px}.settings-static-fields strong{display:block;font-size:12px;overflow-wrap:anywhere}.settings-static-fallback .empty-state{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.settings-static-fallback .panel-actions{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:720px){.settings-static-fields{grid-template-columns:1fr}.settings-static-fallback .panel-actions{display:grid;grid-template-columns:1fr}.settings-static-fallback .panel-actions .btn{width:100%}}

/* v4.1.16 — pinned Settings + refined placeholders */
.sidebar-bottom{flex-wrap:wrap}
.sidebar-settings{width:100%;height:42px;padding:0 12px;border-radius:13px;display:flex;align-items:center;gap:12px;color:var(--muted);font-weight:700;border:1px solid transparent;transition:.2s}
.sidebar-settings:hover{background:var(--surface2);color:var(--ink);transform:translateX(2px)}
.sidebar-settings.active{background:var(--surface2);color:var(--ink);border-color:var(--line)}
.sidebar-settings .nav-icon{color:inherit}
.sidebar-settings.active .nav-icon{color:var(--lime)}
body.sidebar-collapsed .sidebar-settings{justify-content:center;padding:0;width:42px}
body.sidebar-collapsed .sidebar-settings .label{display:none}
.sidebar-bottom .profile-link{min-width:0}
input,textarea,select{border-radius:14px}
input::placeholder,textarea::placeholder{font-weight:560;letter-spacing:.01em;opacity:.68}
input:focus::placeholder,textarea:focus::placeholder{opacity:.42;transform:translateX(2px)}
.field input,.field textarea,.field select,.search-input,.global-ai-form textarea,.ai-form textarea,.composer-fields textarea{background:var(--surface2);border-color:var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.field input:focus,.field textarea:focus,.field select:focus,.search-input:focus,.global-ai-form textarea:focus,.ai-form textarea:focus,.composer-fields textarea:focus{border-color:color-mix(in srgb,var(--lime) 55%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 13%,transparent),inset 0 1px 0 rgba(255,255,255,.18);outline:none}
.note-title-input::placeholder{font-size:.72em;color:color-mix(in srgb,var(--muted) 72%,transparent);opacity:.52}
.block-content[data-placeholder]::before{color:color-mix(in srgb,var(--muted) 70%,transparent)!important;font-weight:520!important;letter-spacing:.01em}
[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:#a3a69d;opacity:.68}
[data-theme=dark] .field input,[data-theme=dark] .field textarea,[data-theme=dark] .field select,[data-theme=dark] .search-input,[data-theme=dark] .global-ai-form textarea,[data-theme=dark] .ai-form textarea{background:#1a1d19;border-color:#30342d;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
@media(max-width:720px){.sidebar-settings{height:44px}.sidebar-bottom{gap:7px}.sidebar-settings{order:0}.profile-link{order:1}.theme-toggle{order:2}}


/* v4.1.19 — Notes rebuilt as a dedicated product surface */
.notes-app{
  --notes-rail:250px;--notes-ai:360px;
  background:var(--bg);color:var(--text);
  grid-template-columns:var(--notes-rail) minmax(0,1fr) var(--notes-ai);
}
.notes-side{background:var(--surface);border-right:1px solid var(--line);padding:20px 15px 16px;display:flex;flex-direction:column;min-width:0}
.notes-side-head{padding:2px 7px 18px}.notes-brand{gap:10px}.notes-brand-name{font-size:25px;letter-spacing:-1.5px}.notes-brand-sub{font-size:7px;letter-spacing:2px;margin-top:2px}
.notes-new{height:46px;border-radius:13px;background:var(--ink);color:var(--bg);font-size:12px;font-weight:850;letter-spacing:-.1px;box-shadow:0 10px 24px rgba(20,20,15,.10);transition:transform .18s,box-shadow .18s}.notes-new:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(20,20,15,.14)}
.notes-side-tools{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:10px 0}.notes-side-tools button{height:38px;border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:11px;font-size:10px;font-weight:800}.notes-side-tools button:hover{background:var(--surface2)}
.notes-nav{display:grid;gap:3px;margin:3px 0 12px}.notes-nav button{height:37px;border:0;background:transparent;color:var(--muted);border-radius:10px;text-align:left;padding:0 11px;font-size:11px;font-weight:800}.notes-nav button.active{background:var(--surface2);color:var(--text)}
.notes-search{height:40px!important;border-radius:11px!important;background:var(--bg)!important;padding:0 12px!important;border-color:var(--line)!important;font-size:11px!important}.notes-list{margin-top:10px;overflow:auto;min-height:0;padding-right:2px}.note-list-item{border:1px solid transparent!important;background:transparent!important;border-radius:13px!important;padding:10px 10px!important}.note-list-item:hover{background:var(--surface2)!important}.note-list-item.active{background:var(--ink)!important;color:var(--bg)!important;box-shadow:0 8px 20px rgba(20,20,15,.08)}.note-list-item.active small,.note-list-item.active .note-folder-tag{color:color-mix(in srgb,var(--bg) 65%,transparent)!important}.note-list-item strong{font-size:11px!important}.note-list-item small{font-size:9px!important;line-height:1.45!important}.notes-side-foot{border-top:1px solid var(--line);padding-top:13px;margin-top:auto}.notes-side-foot button{border:1px solid var(--line);background:var(--bg);color:var(--text);border-radius:9px}
.notes-editor{background:var(--bg)}.notes-topbar{height:68px;padding:0 30px;background:color-mix(in srgb,var(--bg) 92%,transparent);border-bottom:1px solid var(--line)}.notes-top-actions button{height:37px;border-radius:11px;padding:0 12px}.notes-top-actions .primary{box-shadow:0 8px 20px rgba(20,20,15,.10)}
.notes-editor-scroll{scrollbar-gutter:stable;padding-bottom:0!important}.notes-page{width:min(780px,calc(100% - 96px));min-height:calc(100vh - 68px);padding:74px 0 120px;margin:0 auto}.notes-page-head{margin-bottom:28px}.notes-folder{background:transparent;padding:7px 0;border:0;border-bottom:1px solid var(--line);border-radius:0}.icon-btn-note{background:transparent;border-color:transparent}.icon-btn-note:hover{background:var(--surface2);border-color:var(--line)}
.note-title-input{font-size:clamp(42px,5.8vw,68px);letter-spacing:-4px;line-height:1.02;margin-bottom:12px}.note-meta{margin:0 0 42px;font-size:9px;letter-spacing:.2px}.note-block{grid-template-columns:18px minmax(0,1fr);gap:6px;margin:7px 0}.block-content{font-size:16px;line-height:1.82;padding:3px 5px;border-radius:7px}.block-content:focus{background:var(--surface2)}
.notes-inline-tools{margin-top:34px;padding-top:12px;border-top:1px solid var(--line);gap:6px}.notes-inline-tools button{border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:9px;height:31px;padding:0 10px;font-size:9px;font-weight:800}.notes-inline-tools button:hover{background:var(--surface2);color:var(--text)}
.notes-stats{margin-top:18px;padding-top:13px;border-top:1px solid var(--line);font-size:9px;color:var(--muted)}
.notes-ai{background:var(--surface);border-left:1px solid var(--line);padding:25px 22px}.notes-ai-head{padding-bottom:19px;border-bottom:1px solid var(--line)}.notes-ai-head strong{font-size:27px;letter-spacing:-1.4px}.notes-ai-head small{line-height:1.55}.notes-ai-quota{font-size:9px;margin-top:10px}.notes-ai-mode{padding:17px 0 10px}.notes-ai-mode select{height:40px;border-radius:10px!important}.notes-ai-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.notes-ai-actions button{min-height:38px;border:1px solid var(--line);background:transparent;color:var(--text);border-radius:10px;padding:7px 9px;text-align:left;font-size:9px;font-weight:800}.notes-ai-actions button:hover{background:var(--surface2);border-color:color-mix(in srgb,var(--lime) 60%,var(--line))}.notes-ai-response{margin-top:12px;border:1px solid var(--line);border-radius:14px;background:var(--bg);min-height:130px;padding:13px;font-size:11px;line-height:1.65;overflow:auto}.notes-ai-form{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}.notes-ai-form input{height:43px;border-radius:11px!important}.notes-ai-form .send-btn{width:43px;height:43px;border-radius:11px}
.notes-empty-editor{min-height:360px;border:1px dashed var(--line);border-radius:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:48px;position:relative;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 72%,transparent),transparent)}.notes-empty-editor:after{content:'';position:absolute;width:240px;height:240px;border:1px solid color-mix(in srgb,var(--lime) 18%,transparent);border-radius:50%;right:-120px;top:-120px;box-shadow:0 0 0 35px color-mix(in srgb,var(--lime) 4%,transparent)}.notes-empty-kicker{font-size:8px;letter-spacing:2.4px;font-weight:900;color:var(--lime);position:relative;z-index:1}.notes-empty-editor h2{font-size:42px;letter-spacing:-2.3px;margin:10px 0 8px;position:relative;z-index:1}.notes-empty-editor p{max-width:510px;color:var(--muted);font-size:12px;line-height:1.7;margin:0;position:relative;z-index:1}.notes-empty-create{margin-top:24px;height:42px;padding:0 15px;border:1px solid var(--ink);background:var(--ink);color:var(--bg);border-radius:11px;font-size:10px;font-weight:850;position:relative;z-index:1}.notes-empty-create span{margin-left:8px}.notes-empty-orbit{display:none}.notes-app:not(.has-note) .notes-page-head,.notes-app:not(.has-note) .note-meta,.notes-app:not(.has-note) .notes-inline-tools,.notes-app:not(.has-note) .notes-stats{opacity:.35}.notes-app:not(.has-note) .note-title-input{opacity:.45}.notes-app:not(.has-note) .icon-btn-note{pointer-events:none}.notes-app:not(.has-note) .notes-ai-actions{opacity:.58}.notes-app:not(.has-note) .notes-ai-form{opacity:.7}
.notes-setup{display:none!important}
.notes-footer{width:min(780px,calc(100% - 96px));margin:70px auto 44px!important;padding:26px 0 42px!important}

/* Mobile tools only — keep desktop tool geometry untouched. */
@media(max-width:720px){
  body[data-page="tools"] .page{padding:14px 14px 108px!important}
  body[data-page="tools"] .page-head{padding:8px 2px 18px!important}
  body[data-page="tools"] .page-head h1{font-size:40px!important;letter-spacing:-2px!important}
  body[data-page="tools"] .page-head p{font-size:12px!important;line-height:1.55!important}
  body[data-page="tools"] .tools-grid{display:grid!important;grid-template-columns:1fr!important;gap:11px!important;margin:0!important}
  body[data-page="tools"] .tool-card{min-height:0!important;padding:19px!important;border-radius:17px!important;cursor:pointer;touch-action:manipulation}
  body[data-page="tools"] .tool-card h3{font-size:17px!important;margin:12px 0 6px!important}
  body[data-page="tools"] .tool-card p{font-size:11px!important;line-height:1.55!important;max-width:38rem!important}
  body[data-page="tools"] .tool-link{font-size:9px!important;margin-top:13px!important}
  body.tool-drawer-open .tools-grid{display:grid!important;grid-template-columns:1fr!important;padding:0!important;margin:0!important}
  .tool-drawer-backdrop{z-index:900!important;background:rgba(0,0,0,.34)!important;pointer-events:auto!important}
  .tool-drawer-backdrop .tool-drawer{z-index:901!important;position:fixed!important;inset:0!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;border-radius:0!important;padding:max(18px,env(safe-area-inset-top)) 16px max(24px,env(safe-area-inset-bottom))!important;overflow-y:auto!important;box-sizing:border-box!important}
  .tool-drawer .modal-head{top:calc(-1 * max(18px,env(safe-area-inset-top)))!important;padding-top:max(18px,env(safe-area-inset-top))!important;padding-bottom:14px!important;margin-bottom:16px!important}
  .tool-drawer .modal-head h3{font-size:22px!important}
  .tool-drawer .form-actions{bottom:calc(-1 * max(24px,env(safe-area-inset-bottom)))!important;padding-bottom:max(24px,env(safe-area-inset-bottom))!important}
  .tool-drawer input,.tool-drawer select,.tool-drawer textarea{font-size:16px!important;min-height:44px!important}
  .tool-drawer .btn{min-height:44px!important}
  .tool-drawer .posture-video-shell{min-height:220px!important;aspect-ratio:4/3!important}
  .tool-drawer .posture-grid{grid-template-columns:1fr!important}
  .tool-drawer .posture-analysis-panel{display:flex!important}
  .tool-drawer .posture-toolbar-actions{flex-wrap:wrap!important}
  .tool-drawer .posture-fullscreen{width:auto!important}
  .tool-drawer .posture-camera-footer{flex-wrap:wrap!important}
  .tool-drawer .posture-camera-footer .btn{min-width:100px!important}
  .notes-app{display:block!important;height:100dvh!important}
  .notes-editor{height:100dvh!important}
  .notes-topbar{height:60px!important;padding:0 12px!important}
  .notes-page{width:calc(100% - 28px)!important;min-height:auto!important;padding:42px 0 90px!important}
  .notes-page-head{margin-bottom:20px!important}.note-title-input{font-size:40px!important;letter-spacing:-2.2px!important}
  .block-content{font-size:16px!important;line-height:1.72!important}.notes-inline-tools{overflow:auto;flex-wrap:nowrap!important;padding-bottom:3px}.notes-inline-tools button{flex:0 0 auto}
  .notes-empty-editor{min-height:310px!important;padding:30px!important;border-radius:20px!important}.notes-empty-editor h2{font-size:34px!important}.notes-empty-editor p{font-size:11px!important}
  .notes-ai{width:100vw!important;max-width:none!important}.notes-footer{width:calc(100% - 28px)!important;margin:54px auto 30px!important;padding-bottom:70px!important}
}


/* v4.1.19 — sent message polish shared by Command + Zevuna AI */
.ai-message-user{max-width:min(640px,76%);gap:0!important}
.ai-message-user .ai-message-body{position:relative;min-width:86px;padding:12px 15px 13px!important;border-radius:16px 16px 5px 16px!important;background:var(--ink)!important;color:var(--bg)!important;border:1px solid color-mix(in srgb,var(--ink) 86%,transparent)!important;box-shadow:0 10px 28px rgba(20,20,15,.10)!important}
.ai-message-user .ai-message-body:after{content:'';position:absolute;right:7px;bottom:-5px;width:9px;height:9px;background:var(--ink);border-right:1px solid color-mix(in srgb,var(--ink) 86%,transparent);border-bottom:1px solid color-mix(in srgb,var(--ink) 86%,transparent);transform:rotate(45deg)}
.ai-message-user .ai-role{font-size:7px!important;letter-spacing:1.8px!important;color:color-mix(in srgb,var(--bg) 55%,transparent)!important;margin-bottom:5px!important}
.ai-message-user .ai-copy,.ai-message-user .ai-copy p{font-size:13px!important;line-height:1.58!important;color:var(--bg)!important}
[data-theme=dark] .ai-message-user .ai-message-body{background:#24291f!important;color:#f4f5ef!important;border-color:#3b4332!important}
[data-theme=dark] .ai-message-user .ai-message-body:after{background:#24291f;border-color:#3b4332}
[data-theme=dark] .ai-message-user .ai-role{color:#aab0a2!important}
[data-theme=dark] .ai-message-user .ai-copy,[data-theme=dark] .ai-message-user .ai-copy p{color:#f4f5ef!important}
.global-ai-msg.user{position:relative;max-width:78%;padding:11px 13px!important;border-radius:16px 16px 5px 16px!important;background:var(--ink)!important;color:var(--bg)!important;border:1px solid color-mix(in srgb,var(--ink) 86%,transparent)!important;box-shadow:0 9px 25px rgba(20,20,15,.09)!important}
.global-ai-msg.user:after{content:'';position:absolute;right:7px;bottom:-5px;width:9px;height:9px;background:var(--ink);border-right:1px solid color-mix(in srgb,var(--ink) 86%,transparent);border-bottom:1px solid color-mix(in srgb,var(--ink) 86%,transparent);transform:rotate(45deg)}
.global-ai-msg.user span{color:color-mix(in srgb,var(--bg) 55%,transparent)!important;font-size:7px!important;letter-spacing:1.7px!important}.global-ai-msg.user p{color:var(--bg)!important;font-size:12px!important;line-height:1.58!important}
[data-theme=dark] .global-ai-msg.user{background:#24291f!important;color:#f4f5ef!important;border-color:#3b4332!important}[data-theme=dark] .global-ai-msg.user:after{background:#24291f;border-color:#3b4332}[data-theme=dark] .global-ai-msg.user span{color:#aab0a2!important}[data-theme=dark] .global-ai-msg.user p{color:#f4f5ef!important}

/* v4.1.24 — collaboration command cards, group avatars, auth progress */
.command-collab-strip{margin:18px 0 20px;padding:24px;border:1px solid var(--line);border-radius:24px;background:var(--surface);overflow:hidden}
.command-collab-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:16px}.command-collab-head h3{margin:6px 0 5px;font-size:24px;letter-spacing:-1px}.command-collab-head p{margin:0;color:var(--muted);font-size:12px;line-height:1.55;max-width:620px}.command-collab-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.command-collab-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px}.command-mini-tile{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface2);color:var(--ink);text-decoration:none;transition:.22s ease}.command-mini-tile:hover{transform:translateY(-2px);border-color:var(--lime)}.mini-tile-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--lime);color:#11130f;font-size:20px}.command-mini-tile .eyebrow{display:block;margin-bottom:5px}.command-mini-tile strong{display:block;font-size:15px}.command-mini-tile small{display:block;margin-top:3px;color:var(--muted);font-size:10px;line-height:1.45}.command-mini-tile>b{font-size:18px;color:var(--muted)}.command-group-notifications{margin-top:10px}.notification-loading,.notification-empty{padding:12px 14px;border-radius:14px;background:var(--surface2);color:var(--muted);font-size:10px}.notification-list{display:grid;gap:6px}.group-notification{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface2);color:var(--ink);text-decoration:none}.group-notification:hover{border-color:var(--lime)}.notification-avatar{width:34px;height:34px;border-radius:10px;overflow:hidden;background:var(--surface)}.notification-avatar img{width:100%;height:100%;display:block}.notification-copy strong{display:block;font-size:11px}.notification-copy span{display:block;margin-top:2px;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-notification>small{color:var(--muted);font-size:8px;white-space:nowrap}
.group-avatar{position:relative;overflow:hidden;display:grid;place-items:center}.group-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.group-avatar span{position:relative;z-index:1;color:#11130f;font-weight:900;font-size:11px;text-shadow:0 1px 1px rgba(255,255,255,.25)}.group-title-inline{display:inline-flex;align-items:center;gap:10px}.group-title-inline img{width:30px;height:30px;border-radius:9px;vertical-align:middle}.group-member strong{color:var(--ink)!important}.group-member small{color:var(--muted)!important}.group-avatar-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.group-avatar-picker label{position:relative;display:grid;place-items:center;gap:5px;padding:8px;border:1px solid var(--line);border-radius:13px;cursor:pointer;background:var(--surface2);font-size:8px;text-transform:capitalize;color:var(--muted);transition:.18s}.group-avatar-picker label:hover{border-color:var(--lime)}.group-avatar-picker input{position:absolute;opacity:0;pointer-events:none}.group-avatar-picker input:checked+img{outline:2px solid var(--lime);outline-offset:2px}.group-avatar-picker img{width:42px;height:42px;border-radius:11px;display:block}.auth-progress-overlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:rgba(8,9,8,.72);backdrop-filter:blur(12px);opacity:0;pointer-events:none;transition:opacity .18s ease}.auth-progress-overlay.show{opacity:1}.auth-progress-card{width:min(390px,calc(100vw - 36px));padding:30px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:0 24px 80px rgba(0,0,0,.28);text-align:center}.auth-progress-mark{display:flex;justify-content:center;gap:4px;margin-bottom:18px}.auth-progress-mark i{width:8px;height:8px;border-radius:50%;background:var(--lime);animation:authPulse 1s ease-in-out infinite}.auth-progress-mark i:first-child{animation-delay:-.18s}.auth-progress-card strong{display:block;font-size:23px;letter-spacing:-1px;margin:7px 0}.auth-progress-card p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.auth-progress-line{height:3px;border-radius:99px;background:var(--line);overflow:hidden;margin-top:20px}.auth-progress-line i{display:block;width:35%;height:100%;background:var(--lime);border-radius:99px;animation:authProgress 1.15s ease-in-out infinite}@keyframes authPulse{0%,100%{transform:scale(.75);opacity:.45}50%{transform:scale(1);opacity:1}}@keyframes authProgress{0%{transform:translateX(-120%)}100%{transform:translateX(320%)}}
@media(max-width:720px){.command-collab-strip{padding:18px;border-radius:20px}.command-collab-head{display:block}.command-collab-actions{justify-content:flex-start;margin-top:12px}.command-collab-tiles{grid-template-columns:1fr}.command-mini-tile{padding:14px}.group-avatar-picker{grid-template-columns:repeat(4,1fr)}.group-avatar-picker img{width:36px;height:36px}.group-notification{grid-template-columns:32px 1fr}.group-notification>small{display:none}}


/* v4.1.24 — command posture drawer, group presence polish, mobile footer */
.command-mini-tile{border:0;font:inherit;text-align:left;cursor:pointer}
.group-presence{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(135deg,var(--surface2),var(--surface));min-width:0}
.group-presence-copy{min-width:0;flex:1}.group-presence-kicker{display:flex;align-items:center;gap:10px;margin-bottom:7px}.group-presence-copy strong{display:block;font-size:17px;letter-spacing:-.35px}.group-presence-copy small{display:block;margin-top:4px;color:var(--muted);font-size:10px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.presence-live-label{display:inline-flex;align-items:center;gap:5px;color:var(--lime);font-size:8px;font-weight:900;letter-spacing:1px}.presence-live-label i{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px var(--lime2)}
.group-presence-stack{display:flex;align-items:center;flex-direction:row-reverse;justify-content:flex-end}.presence-avatar{position:relative;width:36px;height:36px;margin-left:-8px;border:2px solid var(--surface);border-radius:12px;background:var(--lime);color:#11130f;display:grid;place-items:center;font-size:10px;font-weight:900;box-shadow:0 4px 12px rgba(0,0,0,.16)}.presence-avatar i{position:absolute;right:-1px;bottom:-1px;width:8px;height:8px;border-radius:50%;background:var(--lime);border:2px solid var(--surface)}.presence-empty{width:36px;height:36px;border:1px dashed var(--line);border-radius:12px;display:grid;place-items:center;color:var(--muted);font-weight:800}
@media(max-width:720px){body.tool-drawer-open .tools-grid{padding-bottom:16px!important}.group-presence{padding:15px 16px;gap:12px}.group-presence-copy strong{font-size:15px}.group-presence-copy small{font-size:9px}.presence-avatar{width:32px;height:32px;border-radius:10px}.presence-empty{width:32px;height:32px}.main>.app-footer{margin-bottom:46px!important}.notes-footer{margin-bottom:18px!important;padding-bottom:58px!important}}

/* v4.2.5 — profile avatars, cleaner writing fields and settings shortcuts */
.profile-avatar{position:relative;overflow:hidden;padding:0!important;background:var(--surface2)!important}
.profile-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;max-width:none}
.profile-avatar>span{position:relative;z-index:1;color:#11130f;font-size:10px;text-shadow:0 1px 2px rgba(255,255,255,.35)}
.profile-avatar-setting{display:grid;grid-template-columns:72px 1fr;gap:15px;align-items:start;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--surface2);margin-bottom:2px}
.profile-avatar-preview{width:64px;height:64px;border-radius:18px;overflow:hidden;border:1px solid var(--line);background:var(--surface)}
.profile-avatar-preview img{width:100%;height:100%;object-fit:cover}
.field-label{display:block;font-size:9px;letter-spacing:1.7px;text-transform:uppercase;font-weight:900;color:var(--muted)}
.avatar-setting-note{margin:4px 0 10px!important;font-size:10px!important;line-height:1.45!important}
.profile-avatar-picker{display:flex;gap:7px;flex-wrap:wrap}
.profile-avatar-option{width:38px;height:38px;padding:3px;border:1px solid var(--line);border-radius:11px;background:var(--surface);transition:transform .18s,border-color .18s,box-shadow .18s}
.profile-avatar-option:hover{transform:translateY(-2px);border-color:var(--lime)}
.profile-avatar-option.selected{border-color:var(--lime);box-shadow:0 0 0 2px color-mix(in srgb,var(--lime) 25%,transparent)}
.profile-avatar-option img{width:100%;height:100%;object-fit:cover;border-radius:8px}
.settings-shortcuts-btn{min-width:122px}
.group-chat-form{padding:14px 0 0;margin-top:2px}
.group-chat-form input{height:46px;border-radius:15px;padding:0 15px;background:var(--surface2);border:1px solid var(--line);font-size:12px}
.group-chat-form input::placeholder{font-weight:550;letter-spacing:0;color:color-mix(in srgb,var(--muted) 74%,transparent)}
.group-chat-form input:focus{border-color:color-mix(in srgb,var(--lime) 60%,var(--line));box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 12%,transparent)}
@media(max-width:720px){.profile-avatar-setting{grid-template-columns:56px 1fr;padding:12px}.profile-avatar-preview{width:52px;height:52px;border-radius:15px}.profile-avatar-option{width:34px;height:34px}.settings-shortcuts-btn{width:122px}}
.settings-plan-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:var(--soft);margin-top:14px}.settings-plan-summary strong{display:block;font-size:15px;letter-spacing:-.3px}.settings-plan-summary small{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.4}.plan-state{font-size:8px;letter-spacing:1.3px;font-weight:900;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:7px 9px;white-space:nowrap}.plan-state.active{color:var(--ink);border-color:var(--lime);background:color-mix(in srgb,var(--lime) 14%,transparent)}
@media(max-width:720px){.settings-plan-summary{align-items:flex-start}.settings-plan-summary .plan-state{margin-left:auto}}

/* v14 — entitlement UI and workspace polish */
.profile-avatar-sidebar{overflow:hidden!important;padding:0!important;background:var(--surface2)!important;border:1px solid var(--line)!important}
.profile-avatar-sidebar img{width:100%!important;height:100%!important;display:block!important;object-fit:cover!important}
.settings-grid-robust{grid-template-columns:1fr 1fr!important;align-items:stretch}
.settings-grid-robust .settings-profile-panel{grid-column:1!important;grid-row:1 / span 2!important}
.settings-grid-robust .settings-profile-panel + .panel{grid-column:2!important;grid-row:1!important}
.settings-grid-robust .settings-plan-panel{grid-column:2!important;grid-row:2!important}
.settings-grid-robust > section:nth-of-type(4){grid-column:1!important;grid-row:3!important}
.settings-grid-robust .connections-panel{grid-column:2!important;grid-row:3!important}
.settings-grid-robust .settings-account-panel{grid-column:1!important;grid-row:4!important}
.settings-grid-robust .settings-help-panel{grid-column:2!important;grid-row:4!important}
#settingsRobustTheme.switch{position:relative;width:76px;height:34px;padding:3px;border-radius:999px;background:var(--surface2);border:1px solid var(--line);display:flex;align-items:center;justify-content:flex-start;transition:background .3s,border-color .3s,box-shadow .3s,transform .22s}
#settingsRobustTheme.switch i{position:absolute;left:3px;top:3px;width:26px;height:26px;border-radius:50%;background:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.16);transition:transform .32s cubic-bezier(.2,.8,.2,1),background .3s}
#settingsRobustTheme.switch.on{background:var(--lime);border-color:var(--lime)}
#settingsRobustTheme.switch.on i{transform:translateX(42px);background:#171816}
#settingsRobustTheme.switch.theme-bump{animation:themeBump .38s cubic-bezier(.2,.8,.2,1)}
.flashcard-ai-launch{display:grid;grid-template-columns:.85fr 1.15fr;gap:30px;margin-bottom:18px;background:radial-gradient(circle at 90% 20%,rgba(169,215,63,.16),transparent 42%),var(--surface)}
.flashcard-ai-launch-copy h2{font-size:36px;letter-spacing:-2px;line-height:1;margin:10px 0}.flashcard-ai-launch-copy p{color:var(--muted);line-height:1.55;max-width:520px}.flashcard-ai-launch-form{display:flex;flex-direction:column;gap:10px}.flashcard-ai-launch-form input,.flashcard-ai-launch-form textarea{width:100%;border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:14px;padding:13px 14px;outline:0}.flashcard-ai-launch-form textarea{min-height:150px;resize:vertical;line-height:1.5}.flashcard-ai-launch-row{display:flex;align-items:center;justify-content:flex-end;gap:8px}.flashcard-ai-launch-row .select-shell{margin-right:auto}.flashcard-ai-launch-form input:focus,.flashcard-ai-launch-form textarea:focus{border-color:var(--lime);box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 18%,transparent)}
[data-theme=dark] .flashcard-ai-launch{background:radial-gradient(circle at 90% 20%,rgba(185,227,79,.12),transparent 42%),var(--surface)}
.sidebar-explore-hint{position:fixed;left:264px;bottom:92px;width:min(280px,calc(100vw - 290px));padding:14px 38px 14px 16px;background:#1a1c18;color:#e8ece0;border:1px solid #2a2d26;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.22);z-index:180;animation:sidebarHintIn .45s cubic-bezier(.2,.8,.2,1)}
.sidebar-explore-hint:before{content:"";position:absolute;left:-8px;bottom:24px;width:15px;height:15px;background:#1a1c18;border-left:1px solid #2a2d26;border-bottom:1px solid #2a2d26;transform:rotate(45deg)}
.sidebar-explore-hint strong{display:block;font-size:12px;margin-bottom:3px}.sidebar-explore-hint span{display:block;font-size:10px;line-height:1.45;opacity:.72}.sidebar-explore-hint button{position:absolute;right:9px;top:8px;width:24px;height:24px;border-radius:8px;color:inherit;font-size:16px}.sidebar-explore-hint.hide{animation:sidebarHintOut .22s ease forwards}@keyframes sidebarHintIn{from{opacity:0;transform:translateX(-10px) scale(.97)}to{opacity:1;transform:none}}@keyframes sidebarHintOut{to{opacity:0;transform:translateX(-8px) scale(.98)}}
.intelligence-offer-notice{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);width:min(620px,calc(100vw - 36px));display:flex;align-items:center;gap:13px;padding:12px 13px 12px 14px;background:#171816;color:#fff;border:1px solid rgba(255,255,255,.1);border-radius:17px;box-shadow:0 18px 55px rgba(0,0,0,.24);z-index:250;animation:intelligenceOfferIn .38s cubic-bezier(.2,.8,.2,1)}
.intelligence-offer-mark{width:32px;height:32px;flex:0 0 32px;border-radius:10px;background:var(--lime);display:flex;align-items:center;justify-content:center;gap:3px}.intelligence-offer-mark span{width:6px;height:6px;border-radius:50%;background:var(--ink)}
.intelligence-offer-copy{min-width:0;display:flex;flex-direction:column;gap:2px;flex:1}.intelligence-offer-copy strong{font-size:12px;letter-spacing:-.2px}.intelligence-offer-copy span{font-size:10px;color:rgba(255,255,255,.68);line-height:1.4}.intelligence-offer-action{flex:0 0 auto;padding:9px 12px;border-radius:11px;background:var(--lime);color:var(--ink);font-size:10px;font-weight:850;text-decoration:none}.intelligence-offer-close{width:26px;height:26px;border:0;background:rgba(255,255,255,.08);color:#fff;border-radius:8px;font-size:16px;cursor:pointer}
@keyframes intelligenceOfferIn{from{opacity:0;transform:translate(-50%,14px) scale(.97)}to{opacity:1;transform:translate(-50%,0) scale(1)}}
@media(max-width:720px){.settings-grid-robust{grid-template-columns:1fr!important}.settings-grid-robust > section{grid-column:1!important;grid-row:auto!important}.flashcard-ai-launch{grid-template-columns:1fr;gap:18px}.flashcard-ai-launch-copy h2{font-size:30px}.flashcard-ai-launch-row{flex-wrap:wrap}.flashcard-ai-launch-row .select-shell{margin-right:0}.sidebar-explore-hint{left:18px;bottom:88px;width:min(300px,calc(100vw - 36px))}.sidebar-explore-hint:before{display:none}.intelligence-offer-notice{bottom:82px;width:calc(100vw - 24px);padding:11px;gap:10px}.intelligence-offer-copy strong{font-size:11px}.intelligence-offer-copy span{font-size:9px}.intelligence-offer-action{padding:8px 10px}}

/* v17 — subscription renewal and offer contrast */
.settings-plan-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.settings-renew-btn{background:#6d5df6!important;border-color:#6d5df6!important;color:#fff!important;box-shadow:0 8px 22px rgba(109,93,246,.18);transition:transform .18s,background .18s,box-shadow .18s}.settings-renew-btn:hover{background:#5f50e6!important;border-color:#5f50e6!important;transform:translateY(-1px);box-shadow:0 10px 28px rgba(109,93,246,.25)}.settings-renew-note{font-size:10px;color:var(--muted);line-height:1.4}.intelligence-offer-action{background:#6d5df6!important;color:#fff!important;box-shadow:0 8px 22px rgba(109,93,246,.2);transition:transform .18s,background .18s,box-shadow .18s}.intelligence-offer-action:hover{background:#5f50e6!important;transform:translateY(-1px);box-shadow:0 10px 28px rgba(109,93,246,.26)}#settingsRobustTheme.switch:active{transform:scale(.96)}
@media(max-width:720px){.settings-plan-actions{align-items:flex-start;flex-direction:column}.settings-renew-btn{width:100%;justify-content:center}.settings-renew-note{max-width:300px}}

/* Zevuna ecosystem modules */
.eco-page{width:min(1180px,calc(100% - 70px));margin:0 auto;padding:52px 0 90px}.eco-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:28px}.eco-hero h1{font-size:clamp(42px,6vw,72px);letter-spacing:-4px;margin:8px 0 10px}.eco-hero p{max-width:650px;color:var(--muted);line-height:1.6}.eco-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.eco-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}.eco-stat-grid .panel{min-height:150px}.big-stat{display:block;font-size:36px;letter-spacing:-2px;margin:16px 0 5px}.level-number{font-size:54px;font-weight:900;letter-spacing:-4px;margin:10px 0 0}.xp-track,.category-list i,.goal-row i{display:block;height:7px;border-radius:99px;background:var(--surface2);overflow:hidden;margin:12px 0}.xp-track i,.category-list i b,.goal-row i b{display:block;height:100%;border-radius:99px;background:var(--lime)}.eco-two,.document-grid,.code-layout,.gesture-layout{display:grid;grid-template-columns:1.4fr .9fr;gap:14px}.eco-two .panel,.document-grid .panel,.code-layout .panel,.gesture-layout .panel{min-width:0}.achievement-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.achievement{display:flex;gap:12px;border:1px solid var(--line);border-radius:14px;padding:15px;background:var(--surface2)}.achievement-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--lime) 20%,var(--surface));color:var(--lime);font-weight:900}.achievement p,.achievement small{display:block;color:var(--muted);font-size:10px;line-height:1.5;margin:4px 0}.eco-loading{min-height:220px;display:grid;place-items:center;color:var(--muted)}.vault-storage-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:24px;align-items:center;padding:18px 20px;margin:0 0 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface2)}.vault-storage-copy strong{display:block;font-size:18px;letter-spacing:-.5px;margin:7px 0 5px}.vault-storage-copy p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}.vault-storage-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px;margin-bottom:8px}.vault-storage-meta span:first-child{color:var(--text);font-weight:800}.vault-storage-track,.vault-upload-track{height:8px;background:var(--surface);border:1px solid var(--line);border-radius:999px;overflow:hidden}.vault-storage-track i,.vault-upload-track i{display:block;height:100%;width:0;border-radius:999px;background:var(--lime);transition:width .2s ease}.eco-upload.uploading{pointer-events:none;opacity:.7}.vault-uploading{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 14px;align-items:center;min-height:150px}.vault-uploading>div:nth-child(3){grid-column:1/-1}.vault-uploading p{margin:5px 0 0;color:var(--muted);font-size:10px}.vault-loader-spinner{width:26px;height:26px;border:3px solid var(--line);border-top-color:var(--lime);border-radius:50%;animation:vaultSpin .8s linear infinite}@keyframes vaultSpin{to{transform:rotate(360deg)}}
.finance-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.finance-row:last-child{border-bottom:0}.finance-row small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.income{color:#62b77b}.expense{color:var(--text)}.category-list>div{display:grid;grid-template-columns:1fr auto;gap:6px;margin:13px 0}.category-list i{grid-column:1/-1;margin:0}.finance-goals{border-top:1px solid var(--line);margin-top:20px;padding-top:18px}.goal-row{display:grid;grid-template-columns:1fr auto;gap:6px;margin:14px 0}.goal-row i{grid-column:1/-1;margin:0}.eco-form{display:grid;gap:12px}.eco-form label{display:grid;gap:6px;font-size:10px;font-weight:800}.eco-form input,.eco-form select,.eco-form textarea,.document-toolbar input,.document-toolbar select,.code-toolbar input,.code-toolbar select,.code-ai textarea{width:100%;box-sizing:border-box;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:11px;padding:11px 12px;outline:none}.eco-form textarea,.code-ai textarea{min-height:90px;resize:vertical}.document-toolbar{display:grid;grid-template-columns:1fr 180px;gap:10px;margin-bottom:12px}.document-grid{grid-template-columns:1.45fr .75fr}.document-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.document-row:last-child{border-bottom:0}.file-icon{width:42px;height:42px;border:1px solid var(--line);border-radius:11px;display:grid;place-items:center;font-size:8px;font-weight:900;color:var(--lime)}.document-copy strong,.document-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-copy small{color:var(--muted);font-size:9px;margin-top:5px}.document-actions{display:flex;gap:6px}.doc-folders>div{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--line);font-size:10px}.document-ai-note{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.document-ai-note p{color:var(--muted);font-size:10px;line-height:1.6}.eco-upload{position:relative;overflow:hidden;cursor:pointer}.eco-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.document-viewer-frame{width:min(100%,900px);height:min(72vh,780px);border:0;background:white}.document-viewer{width:min(960px,calc(100vw - 30px))}.doc-image-wrap{display:grid;place-items:center;min-height:300px;background:var(--surface2);border-radius:12px;padding:15px}.doc-image-wrap img{max-height:70vh;object-fit:contain}.doc-unsupported{padding:40px 10px;text-align:center}.code-layout{grid-template-columns:1.7fr .7fr}.code-editor-panel{padding:0!important;overflow:hidden}.code-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 150px 90px;gap:7px;padding:10px;border-bottom:1px solid var(--line)}#codeEditor{display:block;width:100%;height:440px;box-sizing:border-box;resize:vertical;border:0;border-bottom:1px solid var(--line);outline:0;background:#111;color:#e8e8e8;padding:18px;font:13px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace}.code-output{padding:12px}.code-output pre{min-height:100px;max-height:260px;overflow:auto;white-space:pre-wrap;color:var(--muted);font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace}.code-ai{display:flex;flex-direction:column;gap:10px}.code-ai p{color:var(--muted);font-size:10px;line-height:1.6}.ai-answer{white-space:pre-wrap;color:var(--muted);font-size:10px;line-height:1.6;max-height:300px;overflow:auto}.code-preview{width:100%;height:250px;border:1px solid var(--line);background:white}.challenge-panel{margin-top:14px}.challenge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.challenge{border:1px solid var(--line);background:var(--surface2);border-radius:14px;padding:15px}.challenge>div{display:flex;justify-content:space-between}.challenge small{color:var(--muted);font-size:9px}.challenge h3{margin:16px 0 7px}.challenge p{color:var(--muted);font-size:10px;line-height:1.5;min-height:48px}.badge{border:1px solid var(--line);border-radius:99px;padding:4px 7px;font-size:8px}.challenge-modal{display:grid;gap:12px}.challenge-example{display:grid;grid-template-columns:auto 1fr;gap:5px 10px;font-size:10px}.challenge-example code{white-space:pre-wrap;background:var(--surface2);padding:7px;border-radius:7px}.challenge-modal textarea{min-height:240px;width:100%;box-sizing:border-box;background:#111;color:#eee;border:1px solid var(--line);padding:12px;font:12px/1.6 ui-monospace,monospace}.challenge-pass{color:#62b77b}.challenge-fail{color:#d96b5d}.gesture-layout{grid-template-columns:1.4fr .8fr}.gesture-camera{position:relative;min-height:440px;padding:0!important;overflow:hidden;background:#050505}.gesture-camera video{display:block;width:100%;height:100%;min-height:440px;object-fit:cover;transform:scaleX(-1)}.gesture-indicator{position:absolute;left:15px;bottom:15px;display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:99px;background:rgba(0,0,0,.72);color:#fff;font-size:10px}.gesture-indicator i{width:7px;height:7px;border-radius:50%;background:#777}.gesture-list{display:grid;gap:8px}.gesture-list div{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:10px 0}.gesture-list span{color:var(--muted);font-size:9px;text-align:right}.gesture-last{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}.gesture-last strong{display:block;font-size:24px;margin-top:8px}.muted{color:var(--muted);font-size:10px}
@media(max-width:900px){.eco-page{width:min(100% - 30px,760px)}.eco-stat-grid{grid-template-columns:1fr 1fr}.challenge-grid{grid-template-columns:1fr 1fr}.code-layout,.document-grid,.gesture-layout,.eco-two{grid-template-columns:1fr}}
@media(max-width:720px){.eco-page{width:calc(100% - 24px);padding:32px 0 60px}.eco-hero{display:block}.eco-hero h1{font-size:46px;letter-spacing:-3px}.eco-actions{margin-top:16px}.eco-stat-grid{grid-template-columns:1fr}.achievement-grid,.challenge-grid{grid-template-columns:1fr}.document-toolbar{grid-template-columns:1fr}.document-row{grid-template-columns:38px minmax(0,1fr)}.document-actions{grid-column:2;flex-wrap:wrap}.code-toolbar{grid-template-columns:1fr 1fr}.code-toolbar .btn{grid-column:1/-1}.gesture-camera,.gesture-camera video{min-height:300px}.finance-row{grid-template-columns:minmax(0,1fr) auto}.finance-row .icon-btn{grid-column:2}.big-stat{font-size:30px}}
.document-ai-panel{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.document-ai-panel h3{margin:5px 0 10px}.document-ai-row{display:grid;grid-template-columns:1fr auto;gap:7px}.document-ai-row input{width:100%;box-sizing:border-box;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:10px;padding:11px 12px}.document-ai-panel .ai-answer{margin-top:12px;max-height:260px;overflow:auto}.project-list{display:grid;gap:7px}.project-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px;border:1px solid var(--line);background:var(--surface2);border-radius:11px}.project-row strong,.project-row small{display:block}.project-row small{font-size:9px;color:var(--muted);margin-top:4px}.project-row>div:last-child{display:flex;gap:5px;align-items:center}.code-projects-panel .panel-head{align-items:center}.code-projects-panel .panel-head input{width:180px;border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:9px;padding:9px 10px}
@media(max-width:720px){.document-ai-row{grid-template-columns:1fr}.code-projects-panel .panel-head{display:grid;gap:10px}.code-projects-panel .panel-head input{width:100%}.project-row{align-items:flex-start;flex-direction:column}.project-row>div:last-child{width:100%}}
.finance-trend{height:130px;display:flex;align-items:flex-end;gap:10px;margin-top:12px}.finance-trend>div{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}.finance-trend i{display:flex;align-items:flex-end;width:100%;height:100%;background:var(--surface2);border-radius:8px;overflow:hidden}.finance-trend b{display:block;width:100%;background:var(--lime);border-radius:8px}.finance-trend span{font-size:8px;color:var(--muted)}.eco-check{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:8px!important}.eco-check input{width:auto!important}

/* Zevuna site-wide hand gesture mini-player */
.gesture-mini{position:fixed;right:18px;bottom:18px;width:300px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 18px 60px rgba(0,0,0,.28);z-index:1200;opacity:0;transform:translateY(10px) scale(.98);pointer-events:none;transition:opacity .22s ease,transform .22s ease}.gesture-mini.active{opacity:1;transform:none;pointer-events:auto}.gesture-mini-video-wrap{position:relative;aspect-ratio:16/9;background:#070807;overflow:hidden}.gesture-mini video{display:block;width:100%;height:100%;object-fit:cover;transform:scaleX(-1);background:#070807}.gesture-mini-status{position:absolute;left:9px;bottom:9px;display:flex;align-items:center;gap:7px;padding:6px 9px;border-radius:999px;background:rgba(0,0,0,.72);color:#fff;font-size:9px;line-height:1;max-width:calc(100% - 52px)}.gesture-mini-status i{width:6px;height:6px;border-radius:50%;background:#8b8b8b;flex:none}.gesture-mini.active .gesture-mini-status i{background:#b6eb38;box-shadow:0 0 0 3px rgba(182,235,56,.14)}.gesture-mini-close{position:absolute;right:8px;top:8px;width:27px;height:27px;border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(0,0,0,.68);color:#fff;font-size:16px;line-height:1;cursor:pointer}.gesture-mini-bar{height:39px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;background:var(--surface2);border-top:1px solid var(--line)}.gesture-mini-bar span{display:flex;align-items:baseline;gap:6px;min-width:0}.gesture-mini-bar b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}.gesture-mini-bar small{font-size:8px;color:var(--muted)}.gesture-mini-bar button{border:0;background:transparent;color:var(--muted);font-size:9px;font-weight:850;cursor:pointer;padding:6px 5px}.gesture-mini-bar button:hover{color:var(--text)}.gesture-optin{position:fixed;left:50%;bottom:20px;transform:translate(-50%,14px);width:min(560px,calc(100vw - 36px));display:flex;align-items:center;gap:11px;padding:10px 11px;background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 55px rgba(0,0,0,.25);z-index:1190;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}.gesture-optin.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}.gesture-optin-mark{width:32px;height:32px;flex:none;border-radius:9px;background:var(--surface2);display:flex;align-items:center;justify-content:center;gap:3px}.gesture-optin-mark span{width:6px;height:6px;border-radius:50%;background:var(--text)}.gesture-optin-mark span+span{background:var(--lime)}.gesture-optin-copy{min-width:0;display:grid;gap:2px;flex:1}.gesture-optin-copy strong{font-size:10px}.gesture-optin-copy span{font-size:8px;color:var(--muted);line-height:1.35}.gesture-optin-start{height:32px;padding:0 13px;border:1px solid var(--lime);border-radius:9px;background:var(--lime);color:#10120f;font-size:9px;font-weight:900;cursor:pointer}.gesture-optin-dismiss{width:29px;height:29px;border:1px solid var(--line);border-radius:8px;background:var(--surface2);color:var(--muted);font-size:15px;cursor:pointer}.gesture-focus{outline:2px solid var(--lime)!important;outline-offset:3px!important;box-shadow:0 0 0 5px color-mix(in srgb,var(--lime) 14%,transparent)!important}@media(max-width:720px){.gesture-mini{right:10px;bottom:70px;width:270px}.gesture-optin{bottom:78px;width:calc(100vw - 24px);padding:9px}.gesture-optin-copy span{display:none}.gesture-mini-bar b{max-width:160px}}
/* v4.2.26 — hand control UI */
.gesture-top-btn{gap:7px}
.gesture-top-btn svg{width:15px;height:15px}
.gesture-mini{width:250px;right:18px;bottom:18px;border-radius:14px}
.gesture-mini-video-wrap{aspect-ratio:16/9}
.gesture-mini-bar{height:36px;padding:0 8px;gap:4px}
.gesture-mini-bar span{margin-right:auto}
.gesture-mini-bar button{border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:5px 7px;color:var(--text);font-size:8px}
.gesture-mini-bar button:hover{background:var(--surface2)}
.gesture-hover{outline:2px solid var(--lime)!important;outline-offset:3px!important;box-shadow:0 0 0 5px color-mix(in srgb,var(--lime) 14%,transparent)!important}
.gesture-guide-modal .modal-body{max-width:760px}
.gesture-guide-content{display:grid;gap:14px}
.gesture-guide-intro{color:var(--muted);font-size:12px;line-height:1.6;max-width:650px}
.gesture-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.gesture-guide-card{display:grid;grid-template-columns:42px 1fr;gap:11px;align-items:center;border:1px solid var(--line);background:var(--surface2);border-radius:12px;padding:12px}
.gesture-guide-hand{width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:var(--panel);border:1px solid var(--line);font-size:22px}
.gesture-guide-card strong,.gesture-guide-card span{display:block}
.gesture-guide-card strong{font-size:11px;margin-bottom:3px}
.gesture-guide-card span{font-size:9px;line-height:1.45;color:var(--muted)}
.gesture-guide-note{border-top:1px solid var(--line);padding-top:12px;color:var(--muted);font-size:9px;line-height:1.5}
@media(max-width:720px){.gesture-top-btn span{display:none}.gesture-top-btn{padding:0 9px}.gesture-mini{width:235px;right:10px;bottom:70px}.gesture-guide-grid{grid-template-columns:1fr}.gesture-guide-card{grid-template-columns:36px 1fr}.gesture-guide-hand{width:34px;height:34px;font-size:19px}}
/* ── v4.3 polish layer ─────────────────────────────────────────────── */
/* Virtual gesture cursor */
.gesture-cursor{position:fixed;left:0;top:0;z-index:2147483000;width:22px;height:22px;margin-left:-11px;margin-top:-11px;pointer-events:none;opacity:0;display:none;transition:opacity .15s ease}.gesture-cursor:after{content:'';position:absolute;inset:0;border-radius:50%;border:2px solid var(--lime);background:color-mix(in srgb,var(--lime) 22%,transparent);box-shadow:0 0 0 3px rgba(0,0,0,.12)}.gesture-cursor.on{opacity:.95;display:block}.gesture-cursor.down:after{border-color:var(--ink);background:var(--lime);box-shadow:0 0 0 5px color-mix(in srgb,var(--lime) 45%,transparent)}.gesture-cursor.stroke:after{transform:scale(1.35);background:var(--lime);border-color:var(--ink);box-shadow:0 0 0 6px color-mix(in srgb,var(--lime) 50%,transparent)}
/* Code page — editor / console / projects share the left rail; AI stretches beside them */
.code-page .code-layout{grid-template-columns:minmax(0,1.65fr) minmax(0,.8fr);grid-template-areas:'editor ai' 'output ai' 'projects ai';align-items:stretch}.code-page .code-editor-panel{grid-area:editor;padding:0!important;overflow:hidden}.code-page .code-output-panel{grid-area:output;padding:0!important;overflow:hidden;display:flex;flex-direction:column;min-height:150px}.code-page .code-output-panel .code-output{padding:0 14px 12px}.code-page .code-ai{grid-area:ai;margin:0;min-width:0}.code-page .code-projects-panel{grid-area:projects;min-width:0}.code-page .code-toolbar{grid-template-columns:minmax(0,1fr) 148px 104px}.code-status{font-size:8px;font-weight:850;letter-spacing:.7px;text-transform:uppercase;color:var(--muted);padding:6px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);white-space:nowrap}.code-status.busy{color:var(--lime);border-color:color-mix(in srgb,var(--lime) 45%,var(--line))}.code-output pre{min-height:96px;max-height:230px}.code-ai .ai-answer{margin-top:4px}.code-projects-panel .project-row small{text-transform:capitalize}
@media(max-width:900px){.code-page .code-layout{grid-template-columns:1fr;grid-template-areas:'editor' 'output' 'ai' 'projects'}}
/* Friendly data errors with retry */
.eco-error-card{display:grid;gap:10px;text-align:center;min-height:190px;align-content:center;justify-items:center}.eco-error-card h2{margin:0;font-size:23px;letter-spacing:-1px}.eco-error-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.65;max-width:560px}
/* Auth terms checkbox */
.auth-terms{display:flex;align-items:flex-start;gap:9px;font-size:10.5px;line-height:1.55;color:var(--muted);cursor:pointer;user-select:none}.auth-terms input{width:16px;height:16px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--lime);cursor:pointer}.auth-terms a{color:var(--ink);text-decoration:underline;text-underline-offset:2px}.auth-terms:hover{color:var(--ink)}

.typing-fullscreen-backdrop{position:fixed!important;inset:0!important;z-index:1200!important;background:rgba(245,243,236,.96)!important;display:block!important;padding:0!important}.typing-fullscreen-modal{position:fixed!important;inset:0!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;border:0!important;border-radius:0!important;padding:clamp(22px,4vw,56px)!important;overflow:auto!important;background:var(--surface)!important;box-shadow:none!important;display:flex!important;flex-direction:column!important;justify-content:center!important}.typing-fullscreen-modal .typing-test{width:min(1000px,100%);margin:0 auto}.typing-fullscreen-modal .typing-prompt{max-height:30vh}.typing-fullscreen-modal .modal-head{width:min(1000px,100%);margin:0 auto 18px}.typing-fullscreen-modal .modal-topline{width:min(1000px,100%);margin:0 auto}.typing-fullscreen-modal .modal-body{width:min(1000px,100%);margin:0 auto}.typing-fullscreen-modal .tool-ai-assist{display:none}
@media(max-width:720px){.typing-fullscreen-modal{padding:max(16px,env(safe-area-inset-top)) 16px max(18px,env(safe-area-inset-bottom))!important}.typing-fullscreen-modal .typing-stats{grid-template-columns:1fr 1fr}.typing-fullscreen-modal .typing-prompt{max-height:34vh}}

/* Typing Speed Test tool */
.typing-test-modal{width:min(740px,calc(100vw - 34px))}.typing-test{display:grid;gap:13px}.typing-intro{margin:0;color:var(--muted);font-size:11px;line-height:1.6}.typing-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.typing-stat{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:0 6px;padding:11px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2)}.typing-stat span{grid-column:1/-1;font-size:8px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:850}.typing-stat strong{font-size:24px;letter-spacing:-1px}.typing-stat em{font-size:9px;color:var(--muted);font-style:normal}.typing-stat.accent strong,.typing-stat.accent em{color:var(--lime)}.typing-prompt{max-height:128px;overflow:auto;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);font:14px/1.85 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap;color:var(--muted);scrollbar-width:thin}.typing-prompt .cur{background:var(--lime);color:#13150f;border-radius:2px;box-shadow:0 0 0 2px color-mix(in srgb,var(--lime) 30%,transparent)}.typing-prompt .ok{color:var(--text)}.typing-prompt .bad{color:var(--danger);text-decoration:underline;text-decoration-thickness:1.5px}.typing-input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);padding:12px 13px;font:13px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical;outline:none}.typing-input:focus{border-color:var(--lime);box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 14%,transparent)}.typing-input:disabled{opacity:.55}.typing-controls{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.typing-duration{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:850;letter-spacing:1.1px;text-transform:uppercase;color:var(--muted)}.typing-duration select{height:34px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--text);padding:0 8px;font-size:11px;font-weight:750;outline:none}.typing-result{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 13px;border:1px solid color-mix(in srgb,var(--lime) 38%,var(--line));background:color-mix(in srgb,var(--lime) 10%,var(--surface));border-radius:12px;font-size:11px;color:var(--text)}.typing-result[hidden]{display:none}.typing-result button{margin-left:auto}
@media(max-width:560px){.typing-stats{grid-template-columns:1fr 1fr}.typing-controls{flex-direction:column;align-items:stretch}}
/* Global placeholder finish — consistent, calm, visible in both themes */
input::placeholder,textarea::placeholder,select::placeholder{color:color-mix(in srgb,var(--text) 44%,transparent);opacity:.8;font-weight:560;letter-spacing:.01em;transition:color .2s ease,opacity .2s ease}input:focus::placeholder,textarea:focus::placeholder,select:focus::placeholder{opacity:.38;color:color-mix(in srgb,var(--text) 30%,transparent)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder,[data-theme=dark] select::placeholder{color:#989d92;opacity:.85}

/* v4.2.35 — workspace assistant launcher (bottom-right) + perform-action chips */
.assistant-fab{position:fixed;right:22px;bottom:22px;z-index:130;width:60px;height:60px;border-radius:16px;background:#111310;color:#fff;border:1px solid rgba(255,255,255,.12);display:grid;place-items:center;cursor:pointer;box-shadow:0 12px 36px rgba(0,0,0,.4);transition:transform .2s cubic-bezier(.2,.8,.2,1),opacity .2s,box-shadow .2s;animation:fabIn .35s cubic-bezier(.2,.8,.2,1)}
.assistant-fab:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 16px 44px rgba(0,0,0,.48)}
.assistant-fab:active{transform:scale(.96)}
.assistant-fab-face{width:49px;height:49px;display:block;position:relative;overflow:hidden;border-radius:14px;background:radial-gradient(circle at 50% 36%,rgba(169,215,63,.16),transparent 55%)}
.assistant-fab-face img{position:absolute;top:-2px;left:50%;width:86px;max-width:none;height:auto;transform:translateX(-50%);filter:drop-shadow(0 5px 7px rgba(0,0,0,.3));transition:transform .22s cubic-bezier(.2,.8,.2,1)}
.assistant-fab:hover .assistant-fab-face img{transform:translateX(-50%) translateY(-2px) scale(1.05)}
.assistant-fab-status{position:absolute;right:6px;bottom:6px;width:9px;height:9px;border-radius:50%;background:var(--lime);border:2px solid #111310;box-shadow:0 0 10px rgba(169,215,63,.7)}
@keyframes fabIn{from{opacity:0;transform:translateY(14px) scale(.9)}to{opacity:1;transform:none}}
body.ai-drawer-open .assistant-fab,body.zevuna-focus-visible .assistant-fab{opacity:0;pointer-events:none;transform:translateY(10px)}
.zevuna-workspace-companion{order:3;min-width:225px;max-width:275px;display:flex;align-items:center;gap:9px;padding:8px 10px 8px 7px;border:1px solid color-mix(in srgb,var(--lime) 38%,var(--line));border-radius:16px;background:color-mix(in srgb,var(--lime) 9%,var(--surface));color:var(--ink);text-align:left;cursor:pointer;box-shadow:0 12px 28px rgba(28,34,18,.08);transition:transform .18s,box-shadow .18s,border-color .18s}
.zevuna-workspace-companion:hover{transform:translateY(-2px);border-color:var(--lime);box-shadow:0 16px 32px rgba(28,34,18,.13)}
.zevuna-workspace-companion-art{width:54px;height:54px;flex:0 0 54px;display:grid;place-items:center;overflow:hidden;border-radius:13px;background:radial-gradient(circle at 50% 35%,rgba(169,215,63,.16),transparent 62%)}
.zevuna-workspace-companion-art img{width:67px;max-width:none;filter:drop-shadow(0 7px 8px rgba(0,0,0,.14));animation:zevunaCompanionFloat 3.6s ease-in-out infinite}
.zevuna-workspace-companion-copy{min-width:0;display:grid;gap:3px}.zevuna-workspace-companion-copy strong{font-size:12px;letter-spacing:-.15px}.zevuna-workspace-companion-copy small{font-size:10px;line-height:1.35;color:var(--muted)}
.zevuna-workspace-companion-arrow{font-size:14px;color:var(--lime);margin-left:auto}.zevuna-workspace-companion:hover .zevuna-workspace-companion-arrow{transform:translate(1px,-1px)}
@keyframes zevunaCompanionFloat{0%,100%{transform:translateY(1px) rotate(-1.5deg)}50%{transform:translateY(-5px) rotate(1.5deg)}}
@media(prefers-reduced-motion:reduce){.zevuna-workspace-companion-art img{animation:none}.assistant-fab-face img{transition:none}}
/* Compact assistant popover */
.assistant-popover{position:fixed;z-index:140;width:min(340px,calc(100vw - 24px));background:#1a1c18;border:1px solid #2a2d26;border-radius:16px;padding:14px;box-shadow:0 16px 50px rgba(0,0,0,.45);opacity:0;transform:translateY(8px) scale(.97);pointer-events:none;transition:opacity .18s,transform .18s}
.assistant-popover.show{opacity:1;transform:none;pointer-events:auto}
.assistant-popover.closing{opacity:0;transform:translateY(6px) scale(.98)}
.assistant-pop-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.assistant-pop-chips button{border:1px solid #3a3d35;background:#25281f;color:#d4d9cc;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:700;cursor:pointer;transition:.15s;white-space:nowrap}
.assistant-pop-chips button:hover{border-color:var(--lime);background:#2c3025}
.assistant-pop-form{display:flex;gap:6px;align-items:center}
.assistant-pop-form input{flex:1;height:38px;border:1px solid #3a3d35;background:#222519;color:#e8ece0;border-radius:10px;padding:0 10px;font-size:12px;outline:none}
.assistant-pop-form input:focus{border-color:var(--lime)}
.assistant-pop-form input::placeholder{color:#7a7f70}
.assistant-pop-send{width:38px;height:38px;border-radius:10px;background:var(--lime);color:#111310;border:none;font-size:16px;font-weight:800;cursor:pointer;flex:0 0 38px;display:grid;place-items:center;transition:.15s}
.assistant-pop-send:hover{opacity:.88}
[data-theme=dark] .assistant-popover{border-color:#3a3d35}
.assistant-hint{position:fixed;right:26px;bottom:94px;z-index:135;width:min(300px,calc(100vw - 24px));background:#1a1c18;border:1px solid #2a2d26;border-radius:16px;padding:16px 16px 14px;box-shadow:0 16px 48px rgba(0,0,0,.4);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .25s,transform .25s}
.assistant-hint::after{content:"";position:absolute;bottom:-7px;right:22px;width:14px;height:14px;background:#1a1c18;border-right:1px solid #2a2d26;border-bottom:1px solid #2a2d26;transform:rotate(45deg)}
.assistant-hint.show{opacity:1;transform:none;pointer-events:auto}
.assistant-hint.closing{opacity:0;transform:translateY(8px)}
.assistant-hint-kicker{display:block;font-size:8px;letter-spacing:2px;color:#8da33a;font-weight:850;margin-bottom:6px}
.assistant-hint strong{display:block;font-size:15px;letter-spacing:-.3px;margin-bottom:6px;color:#e8ece0}
.assistant-hint p{margin:0 0 12px;color:#9a9f90;font-size:11.5px;line-height:1.55}
.assistant-hint-actions{display:flex;gap:8px}
.assistant-hint-actions .btn.dark{background:var(--lime);color:#111310;border-color:var(--lime);min-height:32px;padding:0 12px;font-size:10px;border-radius:10px}
.assistant-hint-actions .btn{background:#25281f;color:#d4d9cc;border:1px solid #3a3d35;min-height:32px;padding:0 12px;font-size:10px;border-radius:10px}
.assistant-hint-close{position:absolute;top:10px;right:10px;width:24px;height:24px;border-radius:8px;color:#7a7f70;font-size:14px;line-height:1}
.assistant-hint-close:hover{color:#e8ece0;background:#25281f}
[data-theme=dark] .assistant-hint .btn.dark{background:var(--lime)!important;color:#11130f!important;border-color:var(--lime)!important}

.global-ai-actions{padding:12px 0 10px;border-bottom:1px dashed var(--line)}
.global-ai-actions-label{display:block;font-size:8px;letter-spacing:1.8px;font-weight:850;color:var(--muted);margin-bottom:8px}
.global-ai-action-chips{display:flex;gap:6px;flex-wrap:wrap}
.global-ai-action-chips button{white-space:nowrap;border:1px solid var(--line);background:var(--lime2);color:var(--ink);border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800;cursor:pointer;transition:.18s}
.global-ai-action-chips button:hover{border-color:var(--lime);transform:translateY(-1px)}
[data-theme=dark] .global-ai-action-chips button{background:#24291d;color:#eef2e4;border-color:#343a29}
[data-theme=dark] .global-ai-action-chips button:hover{border-color:var(--lime)}
@media(max-width:720px){.assistant-fab{right:14px;bottom:88px;width:54px;height:54px;border-radius:18px}.assistant-fab-face{width:45px;height:45px;border-radius:13px}.assistant-fab-face img{width:79px}.assistant-hint{right:14px;bottom:156px}.zevuna-workspace-companion{grid-column:1/-1;max-width:none;width:100%;order:4}}

/* Zevuna Intelligence — compact top-bar entry. The right-side drawer contains the AI/Agent switcher. */
.topbar .ai-top-btn{height:38px;min-height:38px;padding:0 12px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}
.topbar .ai-top-btn svg{width:15px;height:15px}
@media(max-width:720px){.topbar .ai-top-btn{height:38px;min-height:38px;padding:0 11px;border-radius:11px;font-size:10px}.topbar .ai-top-btn svg{width:14px;height:14px}}

/* Global AI shortcuts start closed so the conversation gets the space. */
.global-ai-shortcuts{border-bottom:1px solid var(--line)}
.global-ai-shortcuts-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border:0;background:transparent;color:var(--ink);cursor:pointer;font:800 9px/1 Inter,system-ui,sans-serif;letter-spacing:1.25px;text-transform:uppercase;text-align:left}
.global-ai-shortcuts-toggle span{display:flex;align-items:center;gap:7px;min-width:0}.global-ai-shortcuts-toggle small{font-size:8px;letter-spacing:0;text-transform:none;font-weight:650;color:var(--muted)}
.global-ai-shortcuts-chevron{width:18px;height:18px;border:1px solid var(--line);border-radius:7px;display:grid;place-items:center;font-size:12px;line-height:1;transition:transform .18s,background .18s}
.global-ai-shortcuts.open .global-ai-shortcuts-chevron{transform:rotate(180deg);background:var(--lime2)}
.global-ai-shortcuts-content{padding:0 0 12px}
.global-ai-shortcuts-content[hidden]{display:none}
.global-ai-suggestions{display:flex;gap:6px;flex-wrap:wrap;padding:10px 0 0}
.global-ai-suggestions:empty{display:none}
.global-ai-suggestions button{border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:999px;padding:7px 10px;font-size:9px;font-weight:800;cursor:pointer;white-space:nowrap;transition:.16s}
.global-ai-suggestions button:hover{border-color:var(--lime);transform:translateY(-1px)}
.global-ai-shortcuts-content .global-ai-actions{padding:0;border:0}
.global-ai-shortcuts-content .global-ai-actions-label{margin-top:0}
@media(max-width:720px){.global-ai-shortcuts-toggle{padding:9px 0}.global-ai-shortcuts-content{padding-bottom:10px}.global-ai-action-chips button,.global-ai-suggestions button{font-size:9px;padding:7px 9px}}

.global-ai-pdf-btn{border:none;background:transparent;color:var(--muted);border-radius:50%;width:36px;height:36px;display:grid;place-items:center;font-size:16px;cursor:pointer;flex:0 0 auto;transition:.15s;line-height:1;padding:0}.global-ai-pdf-btn:hover{color:var(--lime);background:rgba(169,215,63,.1)}.global-ai-form{display:flex;gap:6px;align-items:flex-end}.global-ai-form textarea{flex:1}

/* Typing test fullscreen-only + inline AI */
.typing-test[fullscreen]{max-width:none;width:100vw;height:100vh;display:flex;flex-direction:column;padding:28px 40px;background:var(--bg);overflow:auto;border-radius:0}
.typing-test[fullscreen] .typing-prompt{max-height:none;flex:1;overflow:auto}
.typing-test[fullscreen] .typing-input{min-height:80px;resize:none}
.typing-test[fullscreen] .typing-controls{position:sticky;bottom:0;background:var(--bg);padding:10px 0;border-top:1px solid var(--line)}
.typing-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.typing-ai-trigger{border:1px solid var(--line);background:var(--surface2);color:var(--text);border-radius:999px;padding:7px 14px;font-size:11px;font-weight:700;cursor:pointer;transition:.15s}
.typing-ai-trigger:hover{border-color:var(--lime);transform:translateY(-1px)}
.typing-ai-inline{border-top:1px solid var(--line);padding-top:10px;display:flex;flex-direction:column;gap:8px}
.typing-ai-inline[hidden]{display:none}
.typing-ai-row{display:flex;gap:8px;align-items:center}
.typing-ai-row input{flex:1;height:38px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);color:var(--text);padding:0 12px;font-size:12px;outline:none}
.typing-ai-row input:focus{border-color:var(--lime)}
.typing-ai-response{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);font-size:12px;line-height:1.6;max-height:200px;overflow:auto}
.typing-ai-response[hidden]{display:none}
.typing-ai-response p{margin:0}
.typing-ai-response small{color:var(--muted)}

/* Assistant hint — sleek like sidebar-explore-hint */
.assistant-hint{position:fixed;right:26px;bottom:94px;z-index:135;width:min(250px,calc(100vw - 24px));background:#1a1c18;color:#e8ece0;border:1px solid #2a2d26;border-radius:14px;padding:12px 34px 12px 12px;box-shadow:0 14px 40px rgba(0,0,0,.3);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .25s,transform .25s}
.assistant-hint::after{content:"";position:absolute;bottom:-7px;right:22px;width:14px;height:14px;background:#1a1c18;border-right:1px solid #2a2d26;border-bottom:1px solid #2a2d26;transform:rotate(45deg)}
.assistant-hint.show{opacity:1;transform:none;pointer-events:auto}
.assistant-hint.closing{opacity:0;transform:translateY(8px)}
.assistant-hint-kicker{display:block;font-size:8px;letter-spacing:2px;color:var(--lime);font-weight:850;margin-bottom:6px}
.assistant-hint strong{display:block;font-size:12px;letter-spacing:-.3px;margin-bottom:4px;color:#e8ece0}
.assistant-hint p{margin:0 0 10px;color:#9a9f90;font-size:10px;line-height:1.45}
.assistant-hint-actions{display:flex;gap:8px}
.assistant-hint-actions .btn.dark{background:var(--lime);color:#111310;border-color:var(--lime);min-height:28px;padding:0 11px;font-size:9px;border-radius:8px}
.assistant-hint-actions .btn{background:rgba(255,255,255,.08);color:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.12);min-height:28px;padding:0 11px;font-size:9px;border-radius:8px}
.assistant-hint-close{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:8px;color:rgba(255,255,255,.4);font-size:14px;line-height:1}
.assistant-hint-close:hover{color:#fff;background:rgba(255,255,255,.08)}

/* Assistant popover — sleeker */
.assistant-popover{position:fixed;z-index:140;width:min(280px,calc(100vw - 24px));background:#1a1c18;border:1px solid #2a2d26;border-radius:14px;padding:10px;box-shadow:0 16px 50px rgba(0,0,0,.45);opacity:0;transform:translateY(8px) scale(.97);pointer-events:none;transition:opacity .18s,transform .18s}
.assistant-popover.show{opacity:1;transform:none;pointer-events:auto}
.assistant-popover.closing{opacity:0;transform:translateY(6px) scale(.98)}
.assistant-pop-chips{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px}
.assistant-pop-chips button{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.06);color:rgba(255,255,255,.75);border-radius:999px;padding:5px 10px;font-size:9px;font-weight:700;cursor:pointer;transition:.15s;white-space:nowrap}
.assistant-pop-chips button:hover{border-color:var(--lime);background:rgba(169,215,63,.08);color:var(--lime)}
.assistant-pop-form{display:flex;gap:6px;align-items:center}
.assistant-pop-form input{flex:1;height:34px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:rgba(255,255,255,.85);border-radius:8px;padding:0 10px;font-size:11px;outline:none}
.assistant-pop-form input:focus{border-color:var(--lime)}
.assistant-pop-form input::placeholder{color:rgba(255,255,255,.3)}
.assistant-pop-send{width:34px;height:34px;border-radius:8px;background:var(--lime);color:var(--ink);border:none;font-size:14px;font-weight:800;cursor:pointer;flex:0 0 34px;display:grid;place-items:center;transition:.15s}
.assistant-pop-send:hover{opacity:.88}
[data-theme=light] .assistant-hint{background:#1a1c18;border-color:#2a2d26}
[data-theme=light] .assistant-hint::after{background:#1a1c18;border-color:#2a2d26}
[data-theme=light] .assistant-popover{background:#1a1c18;border-color:#2a2d26}

/* Groups — spacing after PEOPLE section */
.group-collab-bar{margin-bottom:18px}

/* Groups — hover effects and polish */
.group-card{transition:transform .2s,box-shadow .2s}
.group-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.08)}
.group-tool-btn{transition:border-color .15s,transform .15s}
.group-tool-btn:hover{border-color:var(--lime);transform:translateY(-1px)}
.group-member{transition:background .15s;border-radius:10px;padding:6px 8px}
.group-member:hover{background:var(--surface2)}
.group-note{transition:transform .15s;border-radius:12px}
.group-note:hover{transform:translateY(-1px)}
.group-chat-form input{border-radius:10px;transition:border-color .15s}
.group-chat-form input:focus{border-color:var(--lime)}

/* Onboarding Guide */
.onboarding-overlay{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.7);backdrop-filter:blur(8px);opacity:0;transition:opacity .3s ease}.onboarding-overlay.show{opacity:1}.onboarding-overlay.closing{opacity:0}
.onboarding-card{background:var(--surface,#1a1c18);border:1px solid var(--line,#2a2d26);border-radius:16px;padding:32px 28px;max-width:320px;width:90%;text-align:center;transform:translateY(12px) scale(.97);transition:transform .3s ease}.onboarding-overlay.show .onboarding-card{transform:translateY(0) scale(1)}
.onboarding-progress{display:flex;gap:6px;justify-content:center;margin-bottom:20px}
.onboarding-dot{width:6px;height:6px;border-radius:50%;background:var(--line,#2a2d26);transition:background .2s,transform .2s}.onboarding-dot.active{background:var(--lime,#c8ff00);transform:scale(1.3)}
.onboarding-icon{width:48px;height:48px;border-radius:50%;background:var(--lime,#c8ff00);color:#1a1c18;display:flex;align-items:center;justify-content:center;font-size:20px;margin:0 auto 16px}
.onboarding-card h3{font-size:18px;font-weight:700;margin:0 0 8px;color:var(--ink,#f2f2ed)}
.onboarding-card p{font-size:13px;color:var(--muted,#8a8d85);margin:0 0 24px;line-height:1.5}
.onboarding-nav{display:flex;align-items:center;justify-content:space-between;gap:8px}
.onboarding-btns{display:flex;gap:8px;margin-left:auto}
.onboarding-overlay .btn{padding:8px 16px;border-radius:8px;font-size:12px;font-weight:600}

/* Zevuna in-app confirmations — never use native browser confirm dialogs for workspace actions. */
.zevuna-confirm-backdrop{z-index:10050}
.confirm-modal{width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto}
.confirm-modal-body{padding:0 26px 26px}
.confirm-modal-body p{margin:0;color:var(--muted);font-size:14px;line-height:1.6;max-width:430px}
.confirm-modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px;flex-wrap:wrap}
.confirm-modal-actions .btn.danger{color:#fff;background:var(--danger);border-color:var(--danger)}
@media (max-width:720px){.confirm-modal-actions{display:grid;grid-template-columns:1fr 1fr}.confirm-modal-actions .btn{width:100%}}

/* Vault viewer hard lock: it must be a right-side drawer, never a centered modal. */
.file-drawer-backdrop{position:fixed!important;inset:0!important;display:block!important;z-index:10000!important;pointer-events:auto!important;}
.file-drawer{position:fixed!important;top:14px!important;right:14px!important;bottom:14px!important;left:auto!important;width:min(620px,calc(100vw - 28px))!important;max-width:calc(100vw - 28px)!important;margin:0!important;transform:none!important;z-index:10001!important;}
@media(max-width:720px){.file-drawer{top:8px!important;right:8px!important;bottom:8px!important;width:calc(100vw - 16px)!important;max-width:none!important;}}


/* Deprecated sponsor styles retained only for source compatibility; no markup is emitted. */
.workspace-sponsor{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;max-width:min(186px,29%);min-width:0;padding:2px 8px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface) 95%,transparent);white-space:nowrap;text-decoration:none;z-index:4;overflow:hidden;transition:border-color .2s,transform .2s}.workspace-sponsor-label{display:inline-flex;align-items:center;flex:0 0 auto;font-size:6px;letter-spacing:.72px;text-transform:uppercase;color:var(--muted);font-weight:850;line-height:1}.workspace-sponsor-logo{position:relative;display:block;flex:0 0 94px;width:94px;height:22px;overflow:hidden}.workspace-sponsor-logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transition:filter .2s,opacity .2s}.workspace-sponsor-fallback{position:absolute;inset:0;display:grid;place-items:center;font-family:Arial,'Noto Sans Devanagari',sans-serif;font-size:8px;line-height:1;color:var(--ink);opacity:0;pointer-events:none}.workspace-sponsor-logo img:not([src]){opacity:0}.workspace-sponsor-logo.is-fallback img{opacity:0}.workspace-sponsor-logo.is-fallback .workspace-sponsor-fallback{opacity:1}.workspace-sponsor:hover{border-color:#bdb9ae;transform:translate(-50%,-50%) translateY(-1px)}.topbar .crumb,.topbar .top-actions{position:relative;z-index:3}.topbar .top-actions{margin-left:auto}
@media(max-width:1080px) and (min-width:721px){.workspace-sponsor{max-width:170px}.workspace-sponsor-logo{flex-basis:82px;width:82px}.workspace-sponsor-label{font-size:5.5px}}
@media(max-width:860px) and (min-width:721px){.workspace-sponsor{display:none}}
@media(max-width:720px){.workspace-sponsor{display:none}}
html[data-theme="dark"] .workspace-sponsor-logo img{display:none!important}
html[data-theme="dark"] .workspace-sponsor-fallback{color:#fff;opacity:1;position:static;display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-family:Arial,"Noto Sans",sans-serif;font-size:8px;font-weight:800;letter-spacing:.25px;white-space:nowrap}
html[data-theme="dark"] .workspace-sponsor-logo{display:flex;align-items:center;justify-content:center;overflow:hidden}

/* Theme hint is anchored to the actual workspace switch on the left rail. */
#zevuna-theme-hint{position:fixed;max-width:270px;min-width:220px;pointer-events:auto}.theme-toggle{position:relative}
#zevuna-theme-hint i{z-index:-1}
@media(max-width:720px){#zevuna-theme-hint{left:18px!important;right:18px!important;width:auto!important;min-width:0!important;max-width:none!important}}


/* v4.2.52 — mobile menu, footer spacing, typing fullscreen and header polish */
@media(max-width:720px){
  .mobile-menu{
    touch-action:pan-y!important;
    -webkit-overflow-scrolling:touch!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-width:thin!important;
  }
  .mobile-menu a.zmm{flex:0 0 auto!important;}
  .mobile-theme-toggle{
    width:100%!important;
    min-height:52px!important;
    display:flex!important;
    align-items:center!important;
    gap:11px!important;
    padding:9px 12px!important;
    margin-top:2px!important;
    border:1px solid var(--line)!important;
    border-radius:14px!important;
    background:var(--surface2)!important;
    color:var(--ink)!important;
    cursor:pointer!important;
    text-align:left!important;
  }
  .mobile-theme-icon{display:grid!important;place-items:center!important;width:18px!important;height:18px!important;color:var(--muted)!important;flex:0 0 18px!important}
  .mobile-theme-icon svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important}
  .mobile-theme-copy{display:flex!important;flex-direction:column!important;gap:2px!important;min-width:0!important;flex:1!important}
  .mobile-theme-copy strong{font-size:11px!important;font-weight:850!important;line-height:1.2!important}
  .mobile-theme-copy small{font-size:8px!important;color:var(--muted)!important;line-height:1.2!important}
  .mobile-theme-switch{position:relative!important;width:34px!important;height:20px!important;border-radius:999px!important;background:color-mix(in srgb,var(--muted) 28%,transparent)!important;border:1px solid var(--line)!important;flex:0 0 34px!important;transition:.2s ease!important}
  .mobile-theme-switch i{position:absolute!important;top:2px!important;left:2px!important;width:14px!important;height:14px!important;border-radius:50%!important;background:var(--surface)!important;box-shadow:0 1px 3px rgba(0,0,0,.18)!important;transition:.2s ease!important}
  .mobile-theme-switch.on{background:var(--lime)!important;border-color:var(--lime)!important}
  .mobile-theme-switch.on i{left:16px!important;background:#11130f!important}
  .app-footer{margin-top:48px!important;margin-bottom:98px!important}
  .ai-panel-head{display:flex!important;align-items:flex-start!important;gap:12px!important}
  .ai-panel-head>div{min-width:0!important;flex:1 1 auto!important}
  .ai-panel-head #aiClearHistory{flex:0 0 auto!important;width:auto!important;min-width:88px!important;white-space:nowrap!important;word-break:normal!important;padding-inline:12px!important}
}

.typing-fullscreen-backdrop{background:rgba(7,9,7,.96)!important;backdrop-filter:blur(8px)!important}
.typing-fullscreen-modal{box-sizing:border-box!important;justify-content:flex-start!important;align-items:stretch!important;gap:0!important;padding:clamp(20px,4vw,48px) clamp(18px,5vw,64px) clamp(22px,4vw,40px)!important;background:var(--bg)!important;color:var(--text)!important}
.typing-fullscreen-brand{width:min(1080px,100%);margin:0 auto 22px;display:flex;align-items:center;gap:10px;flex:0 0 auto}
.typing-fullscreen-brand .mark{display:inline-flex;align-items:center;gap:4px}
.typing-fullscreen-brand .mark i{display:block;width:7px;height:7px;border-radius:50%;background:var(--text)}
.typing-fullscreen-brand .mark i+i{background:var(--lime)}
.typing-fullscreen-brand strong{font-size:18px;letter-spacing:-.7px}
.typing-fullscreen-brand-label{margin-left:auto;font-size:8px;letter-spacing:2.4px;font-weight:850;color:var(--muted)}
.typing-fullscreen-modal .modal-topline{width:min(1080px,100%);margin:0 auto 8px;opacity:.6}
.typing-fullscreen-modal .modal-head{width:min(1080px,100%);margin:0 auto 18px}
.typing-fullscreen-modal .typing-test{width:min(1080px,100%);margin:0 auto}
.typing-fullscreen-modal .typing-prompt{max-height:30vh;min-height:96px;overflow:auto;scroll-behavior:auto}
.typing-fullscreen-modal .typing-input{min-height:104px}
@media(max-width:720px){
  .typing-fullscreen-modal{padding:max(16px,env(safe-area-inset-top)) 14px max(18px,env(safe-area-inset-bottom))!important;overflow:auto!important}
  .typing-fullscreen-brand{margin-bottom:12px;gap:8px}
  .typing-fullscreen-brand strong{font-size:16px}
  .typing-fullscreen-brand-label{font-size:7px;letter-spacing:1.8px}
  .typing-fullscreen-modal .modal-topline{margin-bottom:4px}
  .typing-fullscreen-modal .modal-head{margin-bottom:14px}
  .typing-fullscreen-modal .modal-head h3{font-size:24px}
  .typing-fullscreen-modal .typing-prompt{max-height:none;min-height:120px}
  .typing-fullscreen-modal .typing-input{min-height:110px}
}

.workspace-sponsor{padding:2px 12px!important;gap:8px!important}


/* Launch fix: Vault file-row alignment and responsive handling. */
.vault-file-row{display:grid;grid-template-columns:44px minmax(0,1fr) minmax(150px,210px) auto;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--line)}
.vault-file-row:first-of-type{border-top:0}
.vault-file-row .file-type{width:44px;height:44px;display:grid;place-items:center;flex:0 0 44px}
.vault-file-row .file-copy{min-width:0;padding-right:4px}
.vault-file-row .file-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}
.vault-file-row .file-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vault-file-folder{min-width:0}
.vault-folder-control{display:block;min-width:0}
.vault-folder-select{width:100%;min-width:0;min-height:38px;border:1px solid var(--line);border-radius:11px;background:var(--surface2);color:var(--text);padding:0 28px 0 10px;font-size:10px;font-weight:700;outline:none}
.vault-folder-select:focus{border-color:var(--lime);box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 14%,transparent)}
.vault-file-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:nowrap}
.vault-file-actions .btn{white-space:nowrap}
.vault-file-actions .icon-btn{flex:0 0 36px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:900px){
  .vault-file-row{grid-template-columns:40px minmax(0,1fr);row-gap:10px;column-gap:12px}
  .vault-file-row .file-type{width:40px;height:40px;flex-basis:40px}
  .vault-file-folder,.vault-file-actions{grid-column:1/-1}
  .vault-file-actions{justify-content:flex-start}
  .vault-file-actions .btn{flex:1;min-width:0}
}
@media(max-width:560px){
  .vault-file-row{padding:13px 0}
  .vault-file-folder .vault-folder-select{min-height:42px}
  .vault-file-actions{display:grid;grid-template-columns:minmax(0,1fr) 40px 40px;width:100%}
  .vault-file-actions .btn{width:100%}
}


/* Launch polish: tool drawers, forms and typing prompt */
.modal{max-width:min(560px,calc(100vw - 28px));background:var(--surface);border:1px solid var(--line)}
.modal .field{margin-top:13px}
.modal .field input,.modal .field textarea,.modal .field select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:var(--surface2);color:var(--ink);font-size:13px;line-height:1.35}
.modal .field textarea{min-height:100px;resize:vertical}
.modal .field input::placeholder,.modal .field textarea::placeholder{color:var(--muted);opacity:.62;font-size:12px}
.modal .field input:focus,.modal .field textarea:focus,.modal .field select:focus{border-color:var(--lime);outline:none;box-shadow:0 0 0 3px rgba(169,215,63,.12)}
.assignment-modal,.pomodoro-modal,.unit-converter-modal,.random-picker-modal,.typing-test-modal{overflow:hidden}
.tool-card{cursor:pointer}.tool-card:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.typing-prompt{scroll-behavior:auto!important;overflow:hidden!important;white-space:normal!important;overflow-wrap:anywhere!important}
.typing-prompt span{display:inline!important}
.typing-prompt .cur{outline:2px solid rgba(169,215,63,.35);outline-offset:1px;border-radius:3px}
.typing-prompt .ok{color:#6f9622}.typing-prompt .bad{color:#bd544b;background:rgba(189,84,75,.08)}
[data-theme=dark] .modal .field input,[data-theme=dark] .modal .field textarea,[data-theme=dark] .modal .field select{background:#1b1e19;color:#f1f2ec;border-color:#383b33}
[data-theme=dark] .modal .field input::placeholder,[data-theme=dark] .modal .field textarea::placeholder{color:#9ba096}
@media(max-width:720px){.modal{padding:22px!important;border-radius:18px!important}.modal .field-row{grid-template-columns:1fr!important}.typing-prompt{max-height:none!important}}

.workspace-fullscreen-btn{width:44px;min-width:44px;padding:0!important}.workspace-fullscreen-btn.is-active{background:var(--surface2);border-color:#bdb9ae}.workspace-fullscreen-btn svg{width:16px;height:16px}
:fullscreen .app{min-height:100vh!important;height:100vh!important}
@media(max-width:960px){.workspace-fullscreen-btn{width:40px;min-width:40px}}



/* Final workspace polish: fullscreen keeps the normal workspace skin. */
.workspace-fullscreen-btn{display:inline-flex!important;align-items:center;justify-content:center!important;width:44px!important;min-width:44px!important;height:40px!important;padding:0!important;color:var(--ink)!important;visibility:visible!important;opacity:1!important}
.workspace-fullscreen-btn svg{display:block!important;width:17px!important;height:17px!important;stroke:currentColor!important;fill:none!important;visibility:visible!important}
.workspace-fullscreen-btn .fs-glyph{display:inline-block!important;font-size:17px!important;line-height:1!important;font-weight:700}
@media(min-width:1001px){body.ai-drawer-open .page,body.tool-drawer-open .page{padding-right:24px!important;overflow-x:hidden!important}body.ai-drawer-open .page-head .actions,body.tool-drawer-open .page-head .actions{max-width:100%}body.ai-drawer-open .two-col,body.ai-drawer-open .task-board,body.ai-drawer-open .calendar-layout,body.ai-drawer-open .focus-layout,body.ai-drawer-open .vault-layout,body.ai-drawer-open .insights-grid,body.ai-drawer-open .settings-grid,body.ai-drawer-open .portfolio-grid{min-width:0!important;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr)!important}}

/* AI drawer + Calendar: keep the calendar readable instead of squeezing the
   month grid beside the selected-date panel. The agenda flows underneath while
   the AI assistant owns the right-side workspace rail. */
@media(min-width:1001px){
  body[data-page="calendar"].ai-drawer-open .calendar-layout{
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
  }
  body[data-page="calendar"].ai-drawer-open .calendar-grid{
    width:100%!important;
  }
  body[data-page="calendar"].ai-drawer-open .calendar-layout>.agenda{
    width:100%!important;
  }
}

/* Final repair: tool cards remain a clean two-column grid when a tool drawer is open.
   The drawer owns the right side; the tool list should not collapse to one long column. */
@media(min-width:1001px){
  body.tool-drawer-open .tools-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
    margin-right:min(410px,31vw)!important;
    padding-right:0!important;
  }
}
@media(max-width:1000px) and (min-width:721px){
  body.tool-drawer-open .tools-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:11px!important;
    margin-right:0!important;
    padding-right:min(360px,34vw)!important;
  }
}

/* Zev Agents: compact, workspace-native custom agent gallery. */
.zev-agent-studio{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.zev-agent-studio h3{margin:6px 0;font-size:24px}.zev-agent-studio p{margin:0;color:var(--muted);max-width:54ch}.zev-agent-list{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.zev-agent-card{min-width:126px;padding:12px;text-align:left;border:1px solid var(--line);border-radius:12px;background:var(--surface2);color:var(--ink);cursor:pointer}.zev-agent-card strong,.zev-agent-card small{display:block}.zev-agent-card strong{font-size:14px}.zev-agent-card small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.25}.zev-agent-card:hover,.zev-agent-card.active{border-color:var(--lime);box-shadow:0 0 0 2px color-mix(in srgb,var(--lime) 20%,transparent);background:color-mix(in srgb,var(--lime) 11%,var(--surface))}@media(max-width:720px){.zev-agent-studio{display:block}.zev-agent-list{margin-top:14px;justify-content:flex-start}.zev-agent-card{min-width:110px}}
@media(max-width:720px){body.tool-drawer-open .tools-grid{grid-template-columns:1fr!important}}

.ai-error-next{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.ai-error-next span{font-size:9px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted)}.ai-error-next .btn{font-size:10px;min-height:32px;padding:0 11px;text-decoration:none}

/* Vault restoration: match the established Vault layout. The storage card stays horizontal,
   file rows keep their compact action alignment, and bulk-delete UI is intentionally removed. */
.vault-storage-card{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr)!important;align-items:center!important;gap:24px!important;padding:18px 20px!important;margin:0 0 14px!important}
.vault-storage-copy{min-width:0!important;display:block!important}
.vault-storage-copy .eyebrow{display:block!important}
.vault-storage-copy strong{display:block!important;margin:7px 0 5px!important;font-size:18px!important;line-height:1.25!important}
.vault-storage-copy p{display:block!important;margin:0!important;max-width:620px!important}
.vault-storage-meter{min-width:0!important}
.document-list .panel-head{display:flex!important;align-items:center!important;justify-content:space-between!important}
.document-row{display:grid!important;grid-template-columns:42px minmax(220px,1fr) auto!important;align-items:center!important;gap:12px!important}
.document-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;flex-wrap:wrap!important}
.document-bulk-tools,.bulk-select-bar,.document-select{display:none!important}
@media(max-width:900px){.vault-storage-card{grid-template-columns:1fr!important}.document-row{grid-template-columns:42px minmax(0,1fr)!important}.document-actions{grid-column:2;justify-content:flex-start!important}}

/* Vault final cleanup: bulk selection UI is intentionally not part of Vault. */
.document-bulk-tools,.bulk-select-bar,.document-select,#deleteSelectedFiles{display:none!important}
.document-list>.panel-head .document-bulk-tools{display:none!important}


/* 0.0.25 launch polish — tools shift the workspace instead of sitting on top of it. */
@media(min-width:721px){
  body.tool-drawer-open .main{padding-right:min(430px,31vw)!important;transition:padding-right .34s cubic-bezier(.2,.8,.2,1)}
  body.tool-drawer-open .page{padding-right:24px!important;overflow-x:clip!important}
  body.tool-drawer-open .tools-grid{margin-right:0!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .tool-drawer-backdrop{pointer-events:none!important;background:transparent!important;backdrop-filter:none!important}
  .tool-drawer-backdrop .tool-drawer{pointer-events:auto!important;top:14px!important;right:14px!important;bottom:14px!important;width:min(390px,31vw)!important;max-width:calc(100vw - 28px)!important;max-height:none!important;padding:24px!important;border-radius:24px!important;overflow:auto!important;box-shadow:0 24px 80px rgba(0,0,0,.22)!important}
}
@media(max-width:1000px) and (min-width:721px){body.tool-drawer-open .main{padding-right:min(360px,34vw)!important}.tool-drawer-backdrop .tool-drawer{width:min(360px,34vw)!important}}
@media(max-width:720px){body.tool-drawer-open .main{padding-right:0!important}.tool-drawer-backdrop .tool-drawer{top:56px!important;right:8px!important;bottom:8px!important;inset-inline:8px!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 64px)!important;border-radius:20px!important;padding:18px!important}}

/* Vault: compact, aligned file actions and a useful storage summary. */
.vault-storage-card{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(310px,.9fr)!important;gap:28px!important;padding:20px 22px!important;min-height:118px!important}
.vault-storage-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:7px}
.vault-storage-title-row strong{margin:0!important}
.vault-storage-upgrade{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border:1px solid var(--line);border-radius:999px;min-height:32px;padding:0 12px;font-size:9px;font-weight:850;transition:.18s ease}
.vault-storage-upgrade:hover{border-color:var(--lime);background:var(--surface2);transform:translateY(-1px)}
.vault-storage-copy p{font-size:10px!important;line-height:1.5!important}
.vault-storage-meta{display:grid!important;grid-template-columns:1fr 1fr 1fr;gap:8px!important}
.vault-storage-meta span{font-size:9px!important;color:var(--muted);white-space:nowrap}
.vault-storage-meta span:first-child{color:var(--ink);font-weight:800}
.document-row{grid-template-columns:44px minmax(0,1fr) minmax(360px,auto)!important;gap:14px!important;padding:15px 0!important}
.document-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:7px!important;flex-wrap:nowrap!important;white-space:nowrap!important}
.document-actions .btn,.document-actions .icon-btn,.vault-folder-select{height:38px!important;min-height:38px!important}
.document-actions .btn{padding:0 12px!important;border-radius:10px!important;font-size:10px!important}
.vault-folder-control{display:block!important}
.vault-folder-select{min-width:70px;max-width:90px;border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:10px;padding:0 8px;font-size:10px;outline:none}
.document-row:hover .document-actions .btn,.document-row:hover .document-actions .icon-btn,.document-row:hover .vault-folder-select{border-color:color-mix(in srgb,var(--lime) 60%,var(--line))}
@media(max-width:1120px){.document-row{grid-template-columns:44px minmax(0,1fr) auto!important}.document-actions{grid-column:2/-1;justify-content:flex-start!important;flex-wrap:wrap!important}}
@media(max-width:900px){.vault-storage-card{grid-template-columns:1fr!important}.vault-storage-title-row{align-items:flex-start}.document-row{grid-template-columns:44px minmax(0,1fr)!important}.document-actions{grid-column:2!important}}
@media(max-width:560px){.vault-storage-title-row{flex-direction:column}.vault-storage-meta{grid-template-columns:1fr 1fr!important}.vault-storage-meta span:last-child{grid-column:1/-1}.document-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.document-actions .btn,.document-actions .icon-btn,.vault-folder-select{width:100%!important;max-width:none!important}}

.workspace-sponsor{display:none!important}

/* Vault policy acknowledgment */
.vault-policy-note{margin:8px 0 0!important;font-size:10px!important;line-height:1.5!important;color:var(--muted)!important}.vault-policy-note a{color:var(--ink)!important;text-decoration:underline!important;text-decoration-color:color-mix(in srgb,var(--lime) 72%,transparent)!important;text-underline-offset:3px!important}.vault-policy-note a:hover{color:var(--lime)!important}

.vault-ai-consent{display:flex;align-items:flex-start;gap:8px;margin:10px 0 2px;font-size:10px;line-height:1.45;color:var(--muted,#7b8178)}.vault-ai-consent input{margin-top:2px;accent-color:#a9d73f;flex:0 0 auto}.vault-ai-consent a{color:inherit;text-decoration:underline}.document-ai-panel .document-ai-row{display:flex;align-items:center;gap:8px}.document-ai-panel .document-ai-row input{min-width:0;flex:1}

.notes-ai-consent-note{padding:0 20px 12px;background:var(--surface);font-size:9px;line-height:1.4;color:var(--muted,#737971);text-align:left}.notes-ai-consent-note a{color:inherit;text-decoration:underline}

.vault-ai-consent-note{margin:8px 0 2px;font-size:9px;line-height:1.4;color:var(--muted,#737971)}.vault-ai-consent-note a{color:inherit;text-decoration:underline}


/* 0.0.25 — final mobile calendar layout */
@media(max-width:720px){
  body[data-page="calendar"] .page{padding:24px 12px 98px!important}
  body[data-page="calendar"] .page-head{margin-bottom:18px!important}
  body[data-page="calendar"] .page-head h1{font-size:clamp(40px,12vw,56px)!important;letter-spacing:-3px!important;line-height:.92!important}
  body[data-page="calendar"] .page-head p{font-size:12px!important;max-width:300px!important}
  body[data-page="calendar"] .calendar-toolbar{display:grid!important;grid-template-columns:38px minmax(0,1fr) 38px!important;gap:6px!important;align-items:center!important;margin-bottom:10px!important}
  body[data-page="calendar"] .calendar-toolbar>button{min-width:38px!important;width:38px!important;padding:0!important}
  body[data-page="calendar"] .calendar-toolbar>div{min-width:0!important;display:flex!important;align-items:center!important;gap:4px!important;overflow-x:auto!important;scrollbar-width:none!important;white-space:nowrap!important}
  body[data-page="calendar"] .calendar-toolbar>div::-webkit-scrollbar{display:none!important}
  body[data-page="calendar"] .calendar-toolbar>div .btn{min-height:34px!important;padding:0 9px!important;font-size:10px!important;flex:0 0 auto!important}
  body[data-page="calendar"] .calendar-toolbar strong{font-size:12px!important;letter-spacing:-.25px!important;margin-left:2px!important;white-space:nowrap!important;flex:0 0 auto!important}
  body[data-page="calendar"] .calendar-layout{grid-template-columns:1fr!important;gap:12px!important}
  body[data-page="calendar"] .calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:3px!important;padding:5px!important;border-radius:18px!important;overflow:hidden!important;width:100%!important}
  body[data-page="calendar"] .calendar-grid .cal-weekday{text-align:center!important;padding:6px 0!important;font-size:7px!important;letter-spacing:.7px!important;overflow:hidden!important}
  body[data-page="calendar"] .calendar-grid .cal-cell{min-width:0!important;min-height:62px!important;height:auto!important;padding:5px!important;border-radius:9px!important;gap:3px!important;overflow:hidden!important}
  body[data-page="calendar"] .calendar-grid .cal-cell .cal-day-number{width:23px!important;height:23px!important;font-size:10px!important;flex:0 0 23px!important}
  body[data-page="calendar"] .calendar-grid .cal-events{width:100%!important;min-width:0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;gap:2px!important}
  body[data-page="calendar"] .calendar-grid .cal-event{font-size:7px!important;line-height:1.1!important;padding:2px 3px!important;border-radius:5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:100%!important}
  body[data-page="calendar"] .calendar-grid .cal-event b{display:none!important}
  body[data-page="calendar"] .calendar-grid .cal-events>small{font-size:6px!important;line-height:1!important}
  body[data-page="calendar"] .calendar-layout>.agenda{padding:16px!important}
  body[data-page="calendar"] .calendar-layout>.agenda .panel-head{margin-bottom:14px!important}
}

/* Mobile settings: keep the full settings renderer usable on narrow screens. */
@media(max-width:720px){
  body[data-page="settings"] .main{grid-column:1!important;grid-row:1!important;min-width:0!important;width:100%!important}
  body[data-page="settings"] .topbar{padding:0 16px!important}
  body[data-page="settings"] .page{padding:26px 12px 110px!important;width:100%!important;max-width:none!important}
  body[data-page="settings"] .page-head{align-items:flex-start!important;flex-direction:column!important;gap:10px!important;margin-bottom:22px!important}
  body[data-page="settings"] .page-head h1{font-size:42px!important;line-height:.95!important;letter-spacing:-2.6px!important}
  body[data-page="settings"] .page-head p{font-size:13px!important;line-height:1.5!important}
  body[data-page="settings"] .settings-grid-robust{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%!important}
  body[data-page="settings"] .settings-grid-robust>section{grid-column:1!important;grid-row:auto!important;min-width:0!important;width:100%!important}
  body[data-page="settings"] .settings-grid-robust .panel{padding:18px!important;border-radius:18px!important}
  body[data-page="settings"] .settings-grid-robust .field-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  body[data-page="settings"] .settings-grid-robust .field input{min-width:0!important;width:100%!important}
  body[data-page="settings"] .settings-grid-robust .profile-avatar-setting{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:14px!important}
  body[data-page="settings"] .settings-grid-robust .profile-avatar-picker{max-width:100%!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
  body[data-page="settings"] .settings-grid-robust .profile-avatar-option{width:100%!important;min-width:0!important}
  body[data-page="settings"] .settings-grid-robust .data-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  body[data-page="settings"] .settings-grid-robust .data-actions .btn{width:100%!important;min-width:0!important}
  body[data-page="settings"] .settings-grid-robust .connections-panel .panel-head{align-items:flex-start!important;flex-wrap:wrap!important}
  body[data-page="settings"] .settings-grid-robust .connections-panel .panel-head .btn{width:100%!important}
  body[data-page="settings"] .settings-grid-robust .panel-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important}
  body[data-page="settings"] .settings-grid-robust .panel-actions .btn{width:100%!important}
}

/* Final mobile polish */
@media(max-width:720px){
  body[data-page=calendar] .main{grid-column:1!important;grid-row:1!important;min-width:0!important;width:100%!important}
  body[data-page=calendar] .topbar{padding:0 16px!important}
  body[data-page=calendar] .page{padding:26px 12px 110px!important}
  body[data-page=calendar] .page-head{align-items:flex-start!important;flex-direction:column!important;gap:16px!important;margin-bottom:22px!important}
  body[data-page=calendar] .page-head h1{font-size:48px!important;letter-spacing:-3px!important}
  body[data-page=calendar] .page-head .actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  body[data-page=calendar] .page-head .actions .btn{width:100%;padding-inline:10px}
  body[data-page=calendar] .calendar-toolbar{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;gap:6px!important;align-items:center!important;margin-bottom:10px}
  body[data-page=calendar] .calendar-toolbar>div{min-width:0!important;overflow:hidden;display:flex!important;align-items:center!important;gap:4px!important;justify-content:center!important;flex-wrap:wrap!important}
  body[data-page=calendar] .calendar-toolbar .btn{min-height:36px!important;padding:0 10px!important;font-size:11px!important}
  body[data-page=calendar] .calendar-toolbar .btn:nth-child(1),body[data-page=calendar] .calendar-toolbar .btn:nth-child(2),body[data-page=calendar] .calendar-toolbar .btn:nth-child(3){font-size:10px!important}
  body[data-page=calendar] .calendar-toolbar strong{width:100%;text-align:center;font-size:13px!important;margin-left:0!important;order:2!important;white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis}
  body[data-page=calendar] .calendar-layout{display:flex!important;flex-direction:column!important;gap:12px!important;margin-bottom:18px!important}
  body[data-page=calendar] .calendar-grid{width:100%!important;display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:3px!important;padding:4px!important;border-radius:14px!important}
  body[data-page=calendar] .calendar-grid .cal-weekday{min-width:0!important;text-align:center!important;font-size:8px!important;letter-spacing:.2px!important;padding:3px 0!important}
  body[data-page=calendar] .calendar-grid .cal-cell{min-height:58px!important;height:58px!important;padding:5px 3px!important;border-radius:8px!important}
  body[data-page=calendar] .calendar-grid .cal-cell .cal-day-number{width:22px!important;height:22px!important;font-size:9px!important;margin-bottom:2px!important}
  body[data-page=calendar] .calendar-grid .cal-events{display:flex!important;flex-direction:column!important;gap:2px!important;overflow:hidden!important}
  body[data-page=calendar] .calendar-grid .cal-event{font-size:7px!important;line-height:1.15!important;padding:2px 3px!important;border-radius:5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  body[data-page=calendar] .calendar-grid .cal-event b{font-size:6px!important}
  body[data-page=calendar] .calendar-grid .cal-events>small{font-size:6px!important}
  body[data-page=calendar] .agenda{width:100%!important}
  body[data-page=calendar] .agenda .panel-head{margin-bottom:12px!important}
  body[data-page=calendar] .agenda-row{padding:12px 0!important}
  .sidebar-explore-hint,.assistant-hint,.intelligence-offer-notice{display:none!important}
}
/* Flashcard studio stat is readable in both themes. */
.flashcard-studio-hero .studio-stat{color:var(--ink);background:var(--surface);border-color:var(--line)}
[data-theme=dark] .flashcard-studio-hero .studio-stat{color:#f3f4ee;background:#161814;border-color:#3a3d35}

/* v4.1.25 — posture camera framing and fullscreen two-column layout */
.tool-drawer-backdrop .tool-drawer.posture-modal .posture-video-shell{aspect-ratio:4/3!important;min-height:240px}
.tool-drawer-backdrop .tool-drawer.posture-modal .posture-grid{grid-template-columns:1fr!important}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-grid,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-grid{grid-template-columns:minmax(0,1.65fr) minmax(320px,.72fr)!important;gap:16px!important;align-items:stretch}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-video-shell,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-video-shell{aspect-ratio:4/3!important;height:auto!important;min-height:0!important;max-height:calc(100vh - 190px)}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-camera-card,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-camera-card{min-height:0}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-analysis-panel,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-analysis-panel{min-width:0;overflow:auto}
@media(max-width:900px){
  .tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-grid,
  .tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-grid{grid-template-columns:1fr!important}
  .tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-video-shell,
  .tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-video-shell{aspect-ratio:4/3!important;max-height:none}
}

/* v4.2.0 — definitive mobile Settings layout
   Keep Settings on the same mobile shell as the rest of the workspace.
   This block intentionally comes last so older desktop shell overrides cannot win. */
@media (max-width:720px){
  html,body{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important}
  body[data-page="settings"] .app{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:100dvh!important;
    padding-bottom:78px!important;
    grid-template-columns:none!important;
  }
  body[data-page="settings"] .sidebar{display:none!important;width:0!important;min-width:0!important}
  body[data-page="settings"] .main{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    grid-column:auto!important;
    grid-row:auto!important;
    padding:0!important;
    margin:0!important;
  }
  body[data-page="settings"] .topbar{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:68px!important;
    flex:0 0 68px!important;
    padding:0 14px!important;
    overflow:hidden!important;
  }
  body[data-page="settings"] .mobile-topbar-left{
    min-width:0!important;
    flex:1 1 auto!important;
    overflow:hidden!important;
  }
  body[data-page="settings"] .mobile-topbar-brand{flex:0 0 auto!important}
  body[data-page="settings"] .mobile-topbar-title{
    min-width:0!important;
    max-width:120px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body[data-page="settings"] .mobile-topbar-search{
    flex:0 0 42px!important;
    width:42px!important;
    height:42px!important;
    margin-left:10px!important;
  }
  body[data-page="settings"] .page{
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:28px 16px 116px!important;
    overflow:visible!important;
  }
  body[data-page="settings"] .settings-hero{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 24px!important;
    padding:0 2px!important;
  }
  body[data-page="settings"] .settings-hero h1{
    margin:8px 0 10px!important;
    font-size:clamp(36px,10.5vw,48px)!important;
    line-height:.94!important;
    letter-spacing:-2.8px!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
  }
  body[data-page="settings"] .settings-hero p{
    margin:0!important;
    max-width:360px!important;
    font-size:13px!important;
    line-height:1.55!important;
  }
  body[data-page="settings"] .settings-grid-robust{
    display:grid!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    gap:12px!important;
    margin:0!important;
  }
  body[data-page="settings"] .settings-grid-robust>section,
  body[data-page="settings"] .settings-grid-robust .settings-profile-panel,
  body[data-page="settings"] .settings-grid-robust .settings-plan-panel,
  body[data-page="settings"] .settings-grid-robust .settings-account-panel,
  body[data-page="settings"] .settings-grid-robust .connections-panel,
  body[data-page="settings"] .settings-grid-robust .settings-help-panel{
    grid-column:1!important;
    grid-row:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:20px!important;
    border-radius:20px!important;
    box-shadow:0 8px 28px rgba(20,20,15,.035)!important;
    overflow:hidden!important;
  }
  body[data-page="settings"] .settings-grid-robust .panel h3{
    margin:7px 0 6px!important;
    font-size:20px!important;
    line-height:1.12!important;
    letter-spacing:-.8px!important;
  }
  body[data-page="settings"] .settings-grid-robust .panel>p,
  body[data-page="settings"] .settings-grid-robust .modal-note{
    font-size:12px!important;
    line-height:1.55!important;
    overflow-wrap:anywhere!important;
  }
  body[data-page="settings"] .profile-avatar-setting{
    display:flex!important;
    align-items:flex-start!important;
    gap:14px!important;
    padding:14px!important;
    margin:16px 0 18px!important;
    border:1px solid var(--line)!important;
    border-radius:16px!important;
    background:var(--surface2)!important;
    min-width:0!important;
  }
  body[data-page="settings"] .profile-avatar-preview{
    flex:0 0 56px!important;
    width:56px!important;
    height:56px!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }
  body[data-page="settings"] .profile-avatar-setting>div:last-child{min-width:0!important;flex:1 1 auto!important}
  body[data-page="settings"] .avatar-setting-note{margin:5px 0 10px!important}
  body[data-page="settings"] .profile-avatar-picker{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
    max-width:240px!important;
  }
  body[data-page="settings"] .profile-avatar-option{width:100%!important;height:auto!important;aspect-ratio:1!important;min-width:0!important}
  body[data-page="settings"] .settings-grid-robust .form{display:grid!important;gap:12px!important;width:100%!important;min-width:0!important}
  body[data-page="settings"] .settings-grid-robust .field,
  body[data-page="settings"] .settings-grid-robust .field-row{min-width:0!important;width:100%!important}
  body[data-page="settings"] .settings-grid-robust .field-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:12px!important;
  }
  body[data-page="settings"] .settings-grid-robust .field input,
  body[data-page="settings"] .settings-grid-robust .field textarea,
  body[data-page="settings"] .settings-grid-robust .field select{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  body[data-page="settings"] .settings-grid-robust .form>.btn{width:100%!important;min-height:46px!important;margin-top:2px!important}
  body[data-page="settings"] .setting-row{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:14px!important;
    min-width:0!important;
    padding:14px 0!important;
    border-top:1px solid var(--line)!important;
  }
  body[data-page="settings"] .setting-row:first-of-type{margin-top:18px!important}
  body[data-page="settings"] .setting-row>div{min-width:0!important;flex:1 1 auto!important}
  body[data-page="settings"] .setting-row strong{display:block!important;font-size:14px!important;line-height:1.3!important}
  body[data-page="settings"] .setting-row small{display:block!important;margin-top:3px!important;font-size:10px!important;line-height:1.4!important;color:var(--muted)!important}
  body[data-page="settings"] #settingsRobustTheme.switch{flex:0 0 76px!important;width:76px!important;height:36px!important}
  body[data-page="settings"] .settings-shortcuts-row .settings-shortcuts-btn{flex:0 0 auto!important;width:auto!important;min-width:122px!important;min-height:42px!important}
  body[data-page="settings"] .settings-plan-summary{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:12px!important;
    width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    margin-top:14px!important;
    padding:14px!important;
  }
  body[data-page="settings"] .settings-plan-summary>div{min-width:0!important;flex:1 1 auto!important}
  body[data-page="settings"] .settings-plan-summary strong{font-size:14px!important;overflow-wrap:anywhere!important}
  body[data-page="settings"] .settings-plan-summary small{font-size:10px!important;line-height:1.45!important;overflow-wrap:anywhere!important}
  body[data-page="settings"] .settings-plan-actions{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:8px!important}
  body[data-page="settings"] .settings-renew-btn{width:100%!important;min-height:44px!important}
  body[data-page="settings"] .data-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important}
  body[data-page="settings"] .data-actions .btn{width:100%!important;min-width:0!important;min-height:44px!important}
  body[data-page="settings"] .connections-panel .panel-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:12px!important;
    flex-wrap:wrap!important;
  }
  body[data-page="settings"] .connections-panel .panel-head>div{min-width:0!important;flex:1 1 160px!important}
  body[data-page="settings"] .connections-panel .panel-head .btn{width:auto!important;min-height:40px!important}
  body[data-page="settings"] .connection-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 40px!important;
    gap:10px!important;
    align-items:start!important;
    min-width:0!important;
    padding:14px 0!important;
  }
  body[data-page="settings"] .connection-row>div{min-width:0!important}
  body[data-page="settings"] .connection-row a{display:block!important;overflow-wrap:anywhere!important;word-break:break-word!important;font-size:10px!important;line-height:1.45!important}
  body[data-page="settings"] .connection-row .icon-btn{width:40px!important;height:40px!important}
  body[data-page="settings"] .panel-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important}
  body[data-page="settings"] .panel-actions .btn{width:100%!important;min-height:44px!important}
}

@media (max-width:380px){
  body[data-page="settings"] .page{padding-left:12px!important;padding-right:12px!important}
  body[data-page="settings"] .settings-grid-robust>section{padding:17px!important;border-radius:18px!important}
  body[data-page="settings"] .settings-hero h1{font-size:34px!important;letter-spacing:-2.2px!important}
  body[data-page="settings"] .profile-avatar-setting{gap:10px!important;padding:11px!important}
  body[data-page="settings"] .profile-avatar-preview{flex-basis:50px!important;width:50px!important;height:50px!important}
  body[data-page="settings"] .profile-avatar-picker{gap:5px!important}
  body[data-page="settings"] .setting-row{gap:9px!important}
  body[data-page="settings"] .settings-shortcuts-row .settings-shortcuts-btn{min-width:108px!important;padding:0 10px!important}
}

/* v4.1.30 — Settings responsive rebuild: final scoped layout rules */
body[data-page="settings"] .settings-page{width:100%;min-width:0;overflow:visible}
body[data-page="settings"] .settings-grid-robust{width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(300px,.82fr);gap:18px;align-items:start}
body[data-page="settings"] .settings-grid-robust > .settings-profile-panel{grid-column:1;grid-row:1 / span 2}
body[data-page="settings"] .settings-grid-robust > .settings-plan-panel{grid-column:2;grid-row:2}
body[data-page="settings"] .settings-grid-robust > section:nth-child(2){grid-column:2;grid-row:1}
body[data-page="settings"] .settings-grid-robust > section:nth-child(4){grid-column:1;grid-row:3}
body[data-page="settings"] .settings-grid-robust > .settings-account-panel{grid-column:1;grid-row:4}
body[data-page="settings"] .settings-grid-robust > .connections-panel{grid-column:2;grid-row:3}
body[data-page="settings"] .settings-grid-robust > .settings-help-panel{grid-column:2;grid-row:4}
body[data-page="settings"] .settings-grid-robust > section{min-width:0}
body[data-page="settings"] .settings-grid-robust input,
body[data-page="settings"] .settings-grid-robust textarea,
body[data-page="settings"] .settings-grid-robust select,
body[data-page="settings"] .settings-grid-robust button,
body[data-page="settings"] .settings-grid-robust a{max-width:100%;box-sizing:border-box}
body[data-page="settings"] .settings-grid-robust .field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body[data-page="settings"] .settings-grid-robust .field input{width:100%;min-width:0}
body[data-page="settings"] .profile-avatar-setting{min-width:0;display:grid;grid-template-columns:56px minmax(0,1fr);gap:14px;align-items:start}
body[data-page="settings"] .profile-avatar-picker{width:min(100%,260px);display:grid;grid-template-columns:repeat(4,minmax(34px,1fr));gap:8px}
body[data-page="settings"] .profile-avatar-option{width:100%;aspect-ratio:1;min-width:0}
body[data-page="settings"] .settings-grid-robust .panel-head{min-width:0}
body[data-page="settings"] .settings-grid-robust .panel-head > div{min-width:0}
body[data-page="settings"] .settings-grid-robust .panel-head .btn{flex:0 0 auto;white-space:nowrap}
body[data-page="settings"] .settings-plan-summary{min-width:0}
body[data-page="settings"] .settings-plan-summary > div{min-width:0}
body[data-page="settings"] .settings-plan-summary strong,
body[data-page="settings"] .settings-plan-summary small{overflow-wrap:anywhere}
body[data-page="settings"] .connections-panel .panel-head{min-width:0}
body[data-page="settings"] .connection-row{min-width:0}
body[data-page="settings"] .connection-row > div{min-width:0}
body[data-page="settings"] .connection-row a{overflow-wrap:anywhere;word-break:break-word}
body[data-page="settings"] .data-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
body[data-page="settings"] .data-actions .btn{width:100%;min-width:0}
body[data-page="settings"] .panel-actions{display:flex;flex-wrap:wrap;gap:8px}
body[data-page="settings"] .panel-actions .btn{flex:1 1 140px;min-width:0}

@media (max-width: 980px){
  body[data-page="settings"] .page{padding-left:28px;padding-right:28px}
  body[data-page="settings"] .settings-grid-robust{grid-template-columns:minmax(0,1fr) minmax(260px,.78fr);gap:14px}
  body[data-page="settings"] .settings-grid-robust > .settings-profile-panel{grid-row:1 / span 2}
  body[data-page="settings"] .settings-grid-robust .panel{padding:22px}
}

@media (max-width: 760px){
  body[data-page="settings"] .main{width:100%!important;grid-column:1!important;min-width:0!important}
  body[data-page="settings"] .page{width:100%!important;max-width:none!important;margin:0!important;padding:24px 14px 92px!important}
  body[data-page="settings"] .page-head.settings-hero{display:block!important;margin:0 2px 20px!important}
  body[data-page="settings"] .settings-hero h1{font-size:clamp(34px,11vw,46px)!important;line-height:.94!important;letter-spacing:-2.6px!important;max-width:13ch!important}
  body[data-page="settings"] .settings-hero p{font-size:13px!important;line-height:1.55!important;max-width:42ch!important}
  body[data-page="settings"] .settings-grid-robust{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-auto-flow:row!important;gap:12px!important;margin:0!important}
  body[data-page="settings"] .settings-grid-robust > section,
  body[data-page="settings"] .settings-grid-robust > .settings-profile-panel,
  body[data-page="settings"] .settings-grid-robust > .settings-plan-panel,
  body[data-page="settings"] .settings-grid-robust > section:nth-child(2),
  body[data-page="settings"] .settings-grid-robust > section:nth-child(4),
  body[data-page="settings"] .settings-grid-robust > .settings-account-panel,
  body[data-page="settings"] .settings-grid-robust > .connections-panel,
  body[data-page="settings"] .settings-grid-robust > .settings-help-panel{grid-column:1!important;grid-row:auto!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important}
  body[data-page="settings"] .settings-grid-robust .panel{padding:18px!important;border-radius:19px!important}
  body[data-page="settings"] .settings-grid-robust .panel h3{font-size:19px!important;line-height:1.15!important}
  body[data-page="settings"] .settings-grid-robust .panel>p,
  body[data-page="settings"] .settings-grid-robust .modal-note{font-size:12px!important;line-height:1.55!important;overflow-wrap:anywhere}
  body[data-page="settings"] .profile-avatar-setting{grid-template-columns:52px minmax(0,1fr)!important;gap:12px!important;padding:12px!important;margin:14px 0 16px!important}
  body[data-page="settings"] .profile-avatar-preview{width:52px!important;height:52px!important;border-radius:14px!important}
  body[data-page="settings"] .profile-avatar-picker{width:100%!important;max-width:232px!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}
  body[data-page="settings"] .settings-grid-robust .field-row{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
  body[data-page="settings"] .settings-grid-robust .form{gap:10px!important}
  body[data-page="settings"] .settings-grid-robust .field input{min-height:44px!important;font-size:13px!important}
  body[data-page="settings"] .settings-grid-robust .form>.btn{min-height:46px!important}
  body[data-page="settings"] .setting-row{gap:12px!important;padding:13px 0!important}
  body[data-page="settings"] .setting-row>div{min-width:0!important}
  body[data-page="settings"] #settingsRobustTheme.switch{flex:0 0 70px!important;width:70px!important;height:34px!important}
  body[data-page="settings"] .settings-shortcuts-row .settings-shortcuts-btn{min-width:118px!important;min-height:42px!important;padding:0 11px!important}
  body[data-page="settings"] .settings-plan-summary{flex-direction:column!important;gap:10px!important;padding:13px!important}
  body[data-page="settings"] .settings-plan-summary .plan-state{align-self:flex-start!important;margin-left:0!important}
  body[data-page="settings"] .settings-plan-actions{align-items:stretch!important}
  body[data-page="settings"] .settings-renew-btn{width:100%!important}
  body[data-page="settings"] .data-actions{grid-template-columns:minmax(0,1fr)!important}
  body[data-page="settings"] .connections-panel .panel-head{display:flex!important;align-items:flex-start!important;flex-wrap:wrap!important}
  body[data-page="settings"] .connections-panel .panel-head>div{flex:1 1 180px!important;min-width:0!important}
  body[data-page="settings"] .connections-panel .panel-head .btn{width:100%!important;flex:1 0 100%!important}
  body[data-page="settings"] .connection-row{grid-template-columns:minmax(0,1fr) 40px!important;gap:10px!important}
  body[data-page="settings"] .panel-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
  body[data-page="settings"] .panel-actions .btn{width:100%!important;min-height:44px!important}
}

@media (max-width: 430px){
  body[data-page="settings"] .page{padding-left:11px!important;padding-right:11px!important}
  body[data-page="settings"] .settings-grid-robust{gap:10px!important}
  body[data-page="settings"] .settings-grid-robust .panel{padding:16px!important;border-radius:17px!important}
  body[data-page="settings"] .settings-hero h1{font-size:34px!important;letter-spacing:-2.2px!important;max-width:14ch!important}
  body[data-page="settings"] .settings-hero p{font-size:12px!important}
  body[data-page="settings"] .profile-avatar-setting{grid-template-columns:48px minmax(0,1fr)!important;gap:10px!important;padding:10px!important}
  body[data-page="settings"] .profile-avatar-preview{width:48px!important;height:48px!important}
  body[data-page="settings"] .profile-avatar-picker{max-width:208px!important;gap:5px!important}
  body[data-page="settings"] .setting-row{gap:9px!important}
  body[data-page="settings"] .settings-shortcuts-row{align-items:flex-start!important}
  body[data-page="settings"] .settings-shortcuts-row .settings-shortcuts-btn{min-width:0!important;width:auto!important;max-width:128px!important;white-space:normal!important;line-height:1.2!important;padding:8px 10px!important}
}
/* Zevuna PWA install experience */
.install-app-btn{width:40px!important;min-width:40px!important;height:40px!important;padding:0!important;justify-content:center!important;border-radius:12px!important}
.install-app-btn svg{width:17px!important;height:17px!important}
.install-app-btn span{display:none!important}
.pwa-install-modal-backdrop{}
.pwa-install-modal{width:min(460px,calc(100vw - 28px))!important;padding:22px!important;border-radius:24px!important}
.pwa-install-modal:before{width:36px;height:3px;margin-bottom:14px}
.pwa-install-modal .modal-topline{margin-bottom:8px}
.pwa-install-modal .modal-head{margin-bottom:16px}
.pwa-install-modal .modal-head h3{font-size:26px!important}
.pwa-install-card{display:grid;grid-template-columns:auto 1fr;gap:13px 14px;align-items:start}
.pwa-install-icon{width:46px;height:46px;border-radius:14px;background:var(--ink);color:#fff;display:grid;place-items:center;box-shadow:0 10px 24px rgba(20,20,15,.12)}
.pwa-install-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pwa-install-copy .eyebrow{display:block;margin-top:2px}
.pwa-install-copy h4{margin:4px 0 4px;font-size:20px;letter-spacing:-.9px}
.pwa-install-copy>p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.pwa-install-step{grid-column:1/-1;display:flex;gap:11px;padding:13px 14px;border:1px solid var(--line);border-radius:15px;background:var(--surface2)}
.pwa-install-step-no{width:24px;height:24px;border-radius:8px;background:var(--lime);color:var(--ink);display:grid;place-items:center;font-size:11px;font-weight:900;flex:0 0 auto}
.pwa-install-step strong{display:block;font-size:12px}
.pwa-install-step p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.55}
.pwa-install-note{grid-column:1/-1;color:var(--muted);font-size:10px;line-height:1.5;padding:0 2px}
.pwa-install-actions{margin-top:15px!important}
.pwa-install-actions .btn{max-width:none;width:100%}
.pwa-install-modal .modal-close{border-radius:12px}
[data-theme=dark] .pwa-install-icon{background:#f0f1ea;color:#11130f}
@media(max-width:720px){.pwa-install-modal{width:calc(100vw - 20px)!important;padding:19px!important;border-radius:20px!important}.pwa-install-copy h4{font-size:19px}.pwa-install-note{font-size:9.5px}.install-app-btn{width:38px!important;min-width:38px!important;height:38px!important}}
/* Password recovery surfaces */
.field-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.auth-link{font-size:11px;font-weight:800;color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.auth-link:hover{opacity:.7}
.auth-message{margin:0 0 14px;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);font-size:12px;line-height:1.5;color:var(--muted)}
.auth-message-error{border-color:#e6b8b8;background:#fff5f5;color:#8d3b3b}
.auth-message-success{border-color:#c7dd86;background:var(--lime2);color:#53622d}
.auth-success-state,.auth-error-state,.auth-loading-state{padding:6px 0 2px;text-align:left}
.auth-success-mark{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--lime2);border:1px solid #c8dd8a;color:var(--ink);font-size:21px;font-weight:900;margin-bottom:18px}
.auth-success-state h2,.auth-error-state h2,.auth-loading-state h2{font-size:30px;letter-spacing:-1.5px;margin:8px 0 10px}
.auth-success-state p,.auth-error-state p,.auth-loading-state p{color:var(--muted);line-height:1.6;margin:0 0 18px}
.auth-loading-state .auth-progress-line{margin-top:20px}
.auth-loading-state .auth-progress-line i{display:block;width:42%;height:100%;background:var(--lime);border-radius:inherit;animation:authProgress 1.25s ease-in-out infinite}
@keyframes authProgress{0%{transform:translateX(-110%)}100%{transform:translateX(250%)}}
@media (max-width:560px){
  .auth-card{padding:24px;border-radius:24px}
  .auth-card h1{font-size:40px;letter-spacing:-2.4px}
  .auth-success-state h2,.auth-error-state h2,.auth-loading-state h2{font-size:27px}
  .field-label-row{align-items:flex-start}
}

/* v4.2.2 — Settings desktop composition pass
   A balanced two-column workspace for laptops/desktops. The profile owns the
   left rail while appearance + plan form the right rail; utility cards align
   in the rows below. Mobile rules remain in the existing <=720px block. */
@media (min-width: 861px){
  body[data-page="settings"] .settings-grid-robust{
    width:100%!important;
    max-width:1180px!important;
    margin:0 auto!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.28fr) minmax(320px,.72fr)!important;
    grid-template-areas:
      "profile appearance"
      "profile plan"
      "data account"
      "connections connections"
      "help help";
    gap:18px!important;
    align-items:stretch!important;
  }
  body[data-page="settings"] .settings-grid-robust > section{
    min-width:0!important;
    max-width:none!important;
    width:auto!important;
    margin:0!important;
    box-sizing:border-box!important;
    align-self:stretch!important;
    display:flex!important;
    flex-direction:column!important;
  }
  body[data-page="settings"] .settings-grid-robust > .settings-profile-panel{grid-area:profile!important}
  body[data-page="settings"] .settings-grid-robust > section:nth-child(2){grid-area:appearance!important}
  body[data-page="settings"] .settings-grid-robust > .settings-plan-panel{grid-area:plan!important}
  body[data-page="settings"] .settings-grid-robust > section:nth-child(4){grid-area:data!important}
  body[data-page="settings"] .settings-grid-robust > .settings-account-panel{grid-area:account!important}
  body[data-page="settings"] .settings-grid-robust > .connections-panel{grid-area:connections!important}
  body[data-page="settings"] .settings-grid-robust > .settings-help-panel{grid-area:help!important}

  body[data-page="settings"] .settings-profile-panel{padding:28px!important}
  body[data-page="settings"] .settings-profile-panel > h3{font-size:28px!important;line-height:1.08!important;margin-top:8px!important}
  body[data-page="settings"] .settings-profile-panel > p{max-width:62ch;line-height:1.55}
  body[data-page="settings"] .profile-avatar-setting{grid-template-columns:76px minmax(0,1fr)!important;gap:16px!important;padding:14px!important}
  body[data-page="settings"] .profile-avatar-preview{width:76px!important;height:76px!important;border-radius:20px!important}
  body[data-page="settings"] .profile-avatar-picker{grid-template-columns:repeat(8,minmax(0,1fr))!important;gap:7px!important;max-width:none!important}
  body[data-page="settings"] .profile-avatar-option{width:100%!important;aspect-ratio:1!important}
  body[data-page="settings"] .settings-grid-robust .field-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:12px!important}
  body[data-page="settings"] .settings-grid-robust .form{gap:14px!important}
  body[data-page="settings"] .settings-grid-robust .field input{min-height:46px!important}
  body[data-page="settings"] .settings-grid-robust .form>.btn{min-height:48px!important;margin-top:2px!important}
  body[data-page="settings"] .settings-grid-robust > .settings-plan-panel .panel-head{margin-bottom:18px!important}
  body[data-page="settings"] .settings-grid-robust > .settings-plan-panel .panel-head .btn{flex:0 0 auto!important}
  body[data-page="settings"] .settings-grid-robust .data-actions{margin-top:auto!important;padding-top:18px!important}
  body[data-page="settings"] .settings-grid-robust .panel-actions{display:flex!important;flex-wrap:wrap!important;gap:9px!important;margin-top:auto!important}
  body[data-page="settings"] .settings-grid-robust .panel-actions .btn{flex:0 1 auto!important}
  body[data-page="settings"] .settings-grid-robust .connection-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;gap:14px!important}
  body[data-page="settings"] .settings-hero{max-width:1180px!important;margin-left:auto!important;margin-right:auto!important}
}

@media (min-width:861px) and (max-width:1100px){
  body[data-page="settings"] .page{padding-left:30px!important;padding-right:30px!important}
  body[data-page="settings"] .settings-grid-robust{grid-template-columns:minmax(0,1fr) minmax(280px,.78fr)!important;gap:14px!important}
  body[data-page="settings"] .settings-profile-panel{padding:24px!important}
  body[data-page="settings"] .profile-avatar-setting{grid-template-columns:64px minmax(0,1fr)!important;gap:12px!important}
  body[data-page="settings"] .profile-avatar-preview{width:64px!important;height:64px!important}
  body[data-page="settings"] .profile-avatar-picker{grid-template-columns:repeat(4,minmax(0,1fr))!important;max-width:250px!important}
  body[data-page="settings"] .settings-grid-robust .field-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Posture Check — immersive fullscreen workspace
   Recreate the original wide posture-monitor layout when the tool enters native fullscreen. */
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:24px 30px 26px!important;
  border:0!important;
  border-radius:0!important;
  overflow:hidden!important;
  background:#090b08!important;
  color:#f3f4ee!important;
  box-shadow:none!important;
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .modal-topline,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .modal-topline,
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .modal-head,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .modal-head,
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .tool-ai-assist,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .tool-ai-assist{display:none!important}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-workbench,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-workbench{
  position:relative!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  background:#090b08!important;
  color:#f3f4ee!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-fullscreen-brand,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-fullscreen-brand{
  display:flex!important;
  position:absolute!important;
  top:2px!important;
  left:0!important;
  z-index:40!important;
  color:#f3f4ee!important;
  font-size:18px!important;
  letter-spacing:-.8px!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-toolbar,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-toolbar{
  flex:0 0 auto!important;
  min-height:64px!important;
  padding:0 0 12px 132px!important;
  border-bottom:1px solid rgba(255,255,255,.11)!important;
  color:#f3f4ee!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-toolbar h4,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-toolbar h4{
  color:#f3f4ee!important;
  font-size:21px!important;
  letter-spacing:-.6px!important;
  margin-top:4px!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-toolbar .eyebrow,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-toolbar .eyebrow{color:#8d9388!important}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-privacy,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-privacy{color:#9da39a!important}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-fullscreen,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-fullscreen{
  min-height:34px!important;
  border-color:rgba(255,255,255,.13)!important;
  background:#151814!important;
  color:#f3f4ee!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-grid,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-grid{
  flex:1 1 auto!important;
  min-height:0!important;
  grid-template-columns:minmax(0,1.7fr) minmax(300px,.72fr)!important;
  gap:14px!important;
  align-items:stretch!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-camera-card,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-camera-card,
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-analysis-panel,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-analysis-panel{
  min-height:0!important;
  border-color:rgba(255,255,255,.11)!important;
  background:#111410!important;
  color:#f3f4ee!important;
  box-shadow:none!important;
  border-radius:18px!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-camera-card,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-camera-card{overflow:hidden!important}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-video-shell,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-video-shell{
  flex:1 1 auto!important;
  min-height:0!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  background:#060806!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-camera-footer,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-camera-footer{
  flex:0 0 auto!important;
  padding:10px 13px!important;
  color:#92988e!important;
  background:#111410!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-analysis-panel,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-analysis-panel{
  padding:20px!important;
  gap:16px!important;
  overflow:auto!important;
}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-analysis-panel h3,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-analysis-panel h3{color:#f3f4ee!important}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-analysis-panel p,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-analysis-panel p,
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-disclaimer,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-disclaimer{color:#92988e!important}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-checklist,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-checklist{border-color:rgba(255,255,255,.1)!important}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-checklist>div,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-checklist>div{border-color:rgba(255,255,255,.1)!important}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-tip,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-tip{background:#171a15!important;border-color:rgba(255,255,255,.1)!important}
.tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-start-card,
.tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-start-card{background:rgba(12,15,11,.9)!important}

@media(max-width:900px){
  .tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen,
  .tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen{padding:18px!important}
  .tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-toolbar,
  .tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-toolbar{padding-left:0!important;padding-top:40px!important}
  .tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-grid,
  .tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-grid{grid-template-columns:1fr!important;overflow:auto!important}
  .tool-drawer-backdrop .tool-drawer.posture-modal:fullscreen .posture-video-shell,
  .tool-drawer-backdrop .tool-drawer.posture-modal:-webkit-full-screen .posture-video-shell{flex:none!important;aspect-ratio:4/3!important;min-height:300px!important}
}


/* v5.1 accessibility + interaction polish — intentionally lightweight. */
:where(button,a,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--lime)!important;outline-offset:3px!important}
html[data-reduced-motion="true"] *,html[data-reduced-motion="true"] *::before,html[data-reduced-motion="true"] *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
html[data-large-targets="true"] button,html[data-large-targets="true"] .btn,html[data-large-targets="true"] .top-btn,html[data-large-targets="true"] .icon-btn,html[data-large-targets="true"] input,html[data-large-targets="true"] select,html[data-large-targets="true"] textarea{min-height:44px}
html[data-large-targets="true"] .icon-btn{min-width:44px}
html[data-high-contrast="true"]{--muted:#55584f;--line:#9a9d93}
html[data-theme="dark"][data-high-contrast="true"]{--muted:#c6c9bf;--line:#62675b}
html[data-high-contrast="true"] .panel,html[data-high-contrast="true"] .btn,html[data-high-contrast="true"] .top-btn,html[data-high-contrast="true"] .icon-btn,html[data-high-contrast="true"] input,html[data-high-contrast="true"] select,html[data-high-contrast="true"] textarea{border-width:1.5px}
html[data-high-contrast="true"] .eyebrow,html[data-high-contrast="true"] .hint{color:var(--text)}

.attendance-card-v2{position:relative;overflow:hidden;touch-action:pan-y;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.attendance-card-v2.swipe-tracking{box-shadow:0 14px 35px rgba(0,0,0,.08);transform:scale(.995)}
.attendance-card-v2.swipe-present{animation:attendanceSwipePresent .22s ease}
.attendance-card-v2.swipe-missed{animation:attendanceSwipeMissed .22s ease}
.attendance-card-v2::after{content:"";position:absolute;inset:auto 0 0;height:3px;transform:scaleX(0);transform-origin:center;background:var(--lime);opacity:0;pointer-events:none}
.attendance-card-v2.swipe-present::after{animation:attendanceSwipeBar .22s ease}
.attendance-card-v2.swipe-missed::after{background:var(--danger);animation:attendanceSwipeBar .22s ease}
@keyframes attendanceSwipePresent{50%{transform:translateX(8px)}to{transform:translateX(0)}}
@keyframes attendanceSwipeMissed{50%{transform:translateX(-8px)}to{transform:translateX(0)}}
@keyframes attendanceSwipeBar{0%{transform:scaleX(0);opacity:.2}60%{transform:scaleX(1);opacity:.9}100%{transform:scaleX(1);opacity:0}}
.attendance-swipe-hint{display:flex;align-items:center;gap:12px;margin:0 0 18px;padding:12px 14px;border:1px solid var(--line);background:var(--surface);border-radius:16px;box-shadow:0 8px 28px rgba(20,20,15,.04)}
.attendance-swipe-arrow{width:36px;height:36px;display:grid;place-items:center;flex:none;border-radius:11px;background:var(--surface2);font-size:20px}
.attendance-swipe-hint div{min-width:0;flex:1}.attendance-swipe-hint strong,.attendance-swipe-hint small{display:block}.attendance-swipe-hint strong{font-size:11px}.attendance-swipe-hint small{color:var(--muted);font-size:9px;line-height:1.45;margin-top:3px}
.settings-accessibility-panel{grid-column:1/-1}
.settings-accessibility-panel .setting-row{align-items:center}
.settings-swipe-direction select{width:min(250px,45%);min-height:40px;padding:0 11px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--text)}
@media(max-width:720px){
  .settings-swipe-direction{align-items:flex-start!important;flex-direction:column}
  .settings-swipe-direction select{width:100%}
  .attendance-card-v2 .attendance-card-actions{grid-template-columns:1fr 1fr}
}

/* Forum / Community — lightweight, responsive, accessibility-first */
.forum-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;margin-bottom:18px;padding:6px 0}.forum-hero h1{font-size:clamp(30px,4vw,46px);letter-spacing:-.04em;margin:6px 0 8px}.forum-hero p{max-width:720px;color:var(--muted);margin:0}.forum-hero-actions{display:flex;gap:8px;flex-wrap:wrap}.forum-search{padding:12px;display:grid;gap:10px;margin-bottom:14px}.forum-search-main{display:flex;align-items:center;gap:10px}.forum-search-main>span{font-size:22px;color:var(--muted)}.forum-search-main input{flex:1;border:0;background:transparent;outline:0;font:inherit;color:inherit;min-width:0}.forum-filters{display:flex;gap:8px}.forum-filters select,.faq-controls select{min-height:40px}.forum-tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:18px}.forum-tabs button{border:0;background:transparent;color:var(--muted);padding:10px 14px;border-bottom:2px solid transparent;cursor:pointer;font:inherit}.forum-tabs button.active{color:var(--text);border-bottom-color:currentColor}.forum-tabs span{font-size:11px;padding:2px 6px;border-radius:99px;background:var(--soft)}.forum-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.forum-section-head{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:10px}.forum-section-head h2{margin:4px 0 0}.forum-count{font-size:13px;color:var(--muted)}.forum-post-card{display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;padding:16px;border:1px solid var(--line);background:var(--panel);border-radius:16px;margin-bottom:10px;transition:transform .16s ease,border-color .16s ease}.forum-post-card:hover{transform:translateY(-1px);border-color:var(--line-strong)}.forum-vote{display:flex;flex-direction:column;align-items:center;gap:3px}.forum-vote button{border:0;background:var(--soft);width:34px;height:34px;border-radius:10px;cursor:pointer;color:var(--muted)}.forum-vote strong{font-size:13px}.forum-post-meta,.forum-post-bottom{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:12px}.forum-category,.forum-tag{display:inline-flex;align-items:center;padding:4px 8px;border-radius:99px;background:var(--soft);color:var(--text);font-size:11px}.forum-resolved,.forum-accepted{display:inline-flex;padding:4px 8px;border-radius:99px;background:rgba(45,190,110,.12);color:#39b976;font-size:11px}.forum-post-title{display:block;text-align:left;border:0;background:none;color:var(--text);font:600 18px/1.25 inherit;padding:6px 0;cursor:pointer}.forum-post-main p{color:var(--muted);line-height:1.55;margin:2px 0 10px}.forum-post-bottom{justify-content:space-between}.forum-post-bottom>div{display:flex;gap:5px;flex-wrap:wrap}.forum-side{display:grid;gap:12px;align-content:start}.forum-help-links,.forum-categories{display:grid}.forum-help-links button,.forum-help-links a,.forum-categories button{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:11px 0;border:0;border-bottom:1px solid var(--line);background:none;color:var(--text);text-align:left;text-decoration:none;cursor:pointer;font:inherit}.forum-help-links button:last-child,.forum-help-links a:last-child,.forum-categories button:last-child{border-bottom:0}.forum-guidelines p{color:var(--muted);font-size:13px;line-height:1.55}.forum-empty{text-align:center;padding:40px 20px}.forum-empty-icon{margin:auto;width:44px;height:44px;border-radius:14px;background:var(--soft);display:grid;place-items:center;font-weight:700}.faq-head{padding:22px;margin-bottom:14px}.faq-head h2{margin:5px 0}.faq-head p{color:var(--muted);max-width:760px}.faq-controls{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:8px;margin-top:16px}.faq-controls input,.faq-controls select,.forum-dialog input,.forum-dialog textarea{width:100%;box-sizing:border-box}.faq-grid{display:grid;gap:8px}.faq-item{border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden}.faq-item summary{list-style:none;display:flex;justify-content:space-between;gap:14px;padding:16px;cursor:pointer;font-weight:600}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary span{color:var(--muted)}.faq-item>div{padding:0 16px 16px;color:var(--muted);line-height:1.6}.faq-item small{font-size:11px;color:var(--muted)}.faq-item p{margin:6px 0 0}.forum-dialog-backdrop{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.55);backdrop-filter:blur(6px);display:grid;place-items:center;padding:18px}.forum-dialog{width:min(720px,100%);max-height:min(90vh,850px);overflow:auto;padding:20px}.forum-dialog label{display:grid;gap:6px;margin:12px 0;font-size:13px;font-weight:600}.forum-dialog label small{font-weight:400;color:var(--muted)}.forum-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.forum-thread{width:min(820px,100%);max-height:min(92vh,900px);overflow:auto;padding:0}.forum-thread-head{display:flex;gap:12px;padding:20px;border-bottom:1px solid var(--line)}.forum-thread-head h2{margin:7px 0}.forum-thread-head small{color:var(--muted)}.forum-thread-body{padding:20px;border-bottom:1px solid var(--line)}.forum-thread-body>p{line-height:1.7;white-space:normal}.forum-thread-actions{display:flex;gap:8px;flex-wrap:wrap}.forum-replies{padding:20px}.forum-reply{padding:15px;border:1px solid var(--line);border-radius:14px;margin:10px 0;background:var(--panel)}.forum-reply.accepted{border-color:rgba(45,190,110,.45)}.forum-reply>div{display:flex;justify-content:space-between;gap:8px}.forum-reply small{color:var(--muted)}.forum-reply p{line-height:1.65}.forum-reply-box{display:grid;gap:8px;margin-top:18px}.forum-reply-box textarea{width:100%;box-sizing:border-box}.forum-reply-box button{justify-self:end}.forum-root input,.forum-root textarea,.forum-root select,.forum-dialog input,.forum-dialog textarea{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:10px;padding:10px 12px;font:inherit}.forum-root input:focus,.forum-root textarea:focus,.forum-root select:focus,.forum-dialog input:focus,.forum-dialog textarea:focus{outline:2px solid currentColor;outline-offset:2px}.forum-post-title:focus-visible,.forum-tabs button:focus-visible,.forum-vote button:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:900px){.forum-layout{grid-template-columns:1fr}.forum-side{grid-template-columns:repeat(2,minmax(0,1fr))}.forum-guidelines{grid-column:1/-1}}
@media(max-width:640px){.forum-hero{display:block}.forum-hero-actions{margin-top:14px}.forum-search-main{flex-wrap:wrap}.forum-search-main input{order:1;flex-basis:calc(100% - 40px)}.forum-search-main button{width:100%}.forum-filters{display:grid;grid-template-columns:1fr 1fr}.forum-side{grid-template-columns:1fr}.faq-controls{grid-template-columns:1fr}.forum-post-card{grid-template-columns:40px minmax(0,1fr);padding:13px}.forum-post-title{font-size:16px}.forum-post-bottom{display:block}.forum-post-bottom>div{margin-top:7px}.forum-dialog-backdrop{padding:8px}.forum-dialog,.forum-thread{border-radius:14px}.forum-replies,.forum-thread-body,.forum-thread-head{padding:15px}}
@media(prefers-reduced-motion:reduce){.forum-post-card{transition:none}.forum-post-card:hover{transform:none}}
.quick-help-popover{position:fixed;z-index:2600;padding:16px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:16px;box-shadow:0 22px 70px rgba(20,20,15,.18);font-size:12px}.quick-help-popover .quick-help-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.quick-help-popover .quick-help-head strong{display:block;margin-top:4px;font-size:15px}.quick-help-popover .quick-help-head button{font-size:18px;color:var(--muted);padding:2px 6px}.quick-help-popover p{margin:12px 0 14px;color:var(--muted);line-height:1.55}.quick-help-links{display:grid;gap:6px}.quick-help-links a,.quick-help-links button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);text-align:left;color:var(--text);font-size:11px}.quick-help-links a:hover,.quick-help-links button:hover{border-color:var(--lime);transform:translateY(-1px)}.help-top-btn{font-weight:850;font-size:15px;line-height:1}.help-top-btn:focus-visible,.workspace-fullscreen-btn:focus-visible{outline:2px solid var(--lime);outline-offset:2px}

/* Forum + workspace topbar polish */
.topbar .top-actions{align-items:center;height:100%;gap:9px}
.topbar .top-actions .top-btn{height:42px;min-height:42px;line-height:1}
.topbar .top-actions .help-top-btn,
.topbar .top-actions .workspace-fullscreen-btn{width:42px;min-width:42px;padding:0;flex:0 0 42px}
.topbar .top-actions .help-top-btn{font-size:15px;font-weight:850;letter-spacing:0}
.topbar .top-actions .workspace-fullscreen-btn svg{width:17px;height:17px}
.topbar .top-actions .help-top-btn:hover,
.topbar .top-actions .workspace-fullscreen-btn:hover{transform:translateY(-1px);background:var(--surface2)}

.forum-search{padding:14px;gap:10px}
.forum-search-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.forum-search-field{min-width:0;position:relative;height:44px;display:flex;align-items:center;border:1px solid var(--line);border-radius:13px;background:var(--surface2);transition:border-color .18s,box-shadow .18s,background .18s}
.forum-search-field:focus-within{border-color:#bdb9ae;box-shadow:0 0 0 3px rgba(169,215,63,.13);background:var(--surface)}
.forum-search-field>span{flex:0 0 40px;text-align:center;color:var(--muted);font-size:20px;line-height:1}
.forum-search-field input{width:100%;height:100%;border:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;padding:0 8px 0 0!important;border-radius:0!important}
.forum-search-field input::-webkit-search-cancel-button{display:none}
.forum-search-clear{width:34px;height:34px;margin-right:4px;border-radius:9px;color:var(--muted);font-size:18px;display:grid;place-items:center}
.forum-search-clear:hover{background:var(--surface);color:var(--text)}
.forum-search-clear[hidden]{display:none}
.forum-search-submit{height:44px;min-width:92px;border-radius:13px}
.forum-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
.forum-filters select{width:100%;height:40px;border-radius:11px}
.forum-search-faq{margin-bottom:14px}
.forum-search-faq .forum-search-main{grid-template-columns:minmax(0,1fr) auto}
.faq-controls{display:flex;justify-content:flex-end;margin-top:16px}
.faq-controls select{width:min(260px,100%)}

@media(max-width:900px){
  .topbar{padding:0 24px}
}
@media(max-width:720px){
  .topbar .top-actions{gap:6px}
  .topbar .top-actions .top-btn{height:40px;min-height:40px}
  .topbar .top-actions .help-top-btn,.topbar .top-actions .workspace-fullscreen-btn{width:40px;min-width:40px;flex-basis:40px}
  .forum-search-main{grid-template-columns:1fr}
  .forum-search-submit{width:100%}
  .forum-filters{grid-template-columns:1fr 1fr}
}

/* Forum UX polish — lightweight, responsive, intentionally restrained. */
.forum-hero-premium{padding:8px 0 20px;align-items:center}.forum-hero-copy h1{font-size:clamp(38px,5vw,60px);margin:6px 0 10px;letter-spacing:-.055em}.forum-hero-copy p{font-size:16px;max-width:680px}.forum-hero-meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px;color:var(--muted);font-size:12px}.forum-hero-meta span{display:inline-flex;align-items:center;gap:5px}.forum-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 14px}.forum-stats>div{border:1px solid var(--line);background:var(--panel);border-radius:15px;padding:14px 16px;min-width:0}.forum-stats strong{display:block;font-size:23px;letter-spacing:-.03em}.forum-stats span{display:block;margin-top:3px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.09em}.forum-welcome{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:18px;margin-bottom:14px}.forum-welcome h2{margin:4px 0 5px}.forum-welcome p{margin:0;color:var(--muted);max-width:680px;line-height:1.55}.forum-topic-row{margin:0 0 18px}.forum-topic-chips{display:flex;gap:7px;overflow:auto;padding:9px 0 2px;scrollbar-width:none}.forum-topic-chips::-webkit-scrollbar{display:none}.forum-topic-chips button,.faq-category-chips button{border:1px solid var(--line);background:var(--panel);color:var(--muted);border-radius:999px;padding:8px 11px;white-space:nowrap;cursor:pointer;font:inherit;font-size:12px}.forum-topic-chips button:hover,.faq-category-chips button:hover{color:var(--text);border-color:var(--line-strong)}.forum-side-card{padding:17px}.forum-tips{margin:0;padding-left:19px;color:var(--muted);line-height:1.75;font-size:13px}.forum-tips li+li{margin-top:5px}.forum-guidelines-copy{color:var(--muted);font-size:13px;line-height:1.6;margin:0}.faq-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:18px}.faq-intro{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:20px;margin-bottom:16px}.faq-intro h2{margin:4px 0 5px}.faq-intro p{margin:0;color:var(--muted);line-height:1.55}.faq-category-bar{margin:0 0 18px}.faq-category-chips{display:flex;gap:7px;overflow:auto;padding:9px 0 2px;scrollbar-width:none}.faq-category-chips::-webkit-scrollbar{display:none}.faq-category-chips button.active{background:var(--text);color:var(--panel);border-color:var(--text)}.faq-featured{margin-bottom:22px}.faq-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.faq-featured-item{border-color:var(--line-strong)}.faq-results-head{margin-top:4px}.faq-results-head h3{margin:4px 0 0}.forum-count{white-space:nowrap}.forum-post-card{box-shadow:0 1px 0 rgba(0,0,0,.02)}.forum-post-card:hover{transform:translateY(-1px)}
@media(max-width:1000px){.faq-layout{grid-template-columns:1fr}.faq-layout>.forum-side{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-layout>.forum-side .forum-side-card:last-child{grid-column:1/-1}.forum-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.forum-hero-copy h1{font-size:40px}.forum-hero-meta{gap:8px;display:grid}.forum-stats{grid-template-columns:repeat(2,1fr)}.forum-stats>div{padding:12px}.forum-welcome{display:block}.forum-welcome .btn{margin-top:13px;width:100%}.faq-layout>.forum-side{grid-template-columns:1fr}.faq-layout>.forum-side .forum-side-card:last-child{grid-column:auto}.faq-intro{display:block}.faq-intro-actions{margin-top:13px}.faq-intro-actions .btn{width:100%}.faq-featured-grid{grid-template-columns:1fr}.forum-section-head{align-items:start}.forum-count{white-space:normal;text-align:right}.forum-search-main{grid-template-columns:1fr}.forum-search-submit{width:100%}}
@media(prefers-reduced-motion:reduce){.forum-post-card:hover{transform:none}}

/* Forum workspace alignment polish: use the full content rail instead of a narrow centered column. */
body[data-page="forum"] .page{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-left:48px!important;
  padding-right:48px!important;
}
body[data-page="forum"] .forum-root{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
body[data-page="forum"] .forum-hero-premium,
body[data-page="forum"] .forum-stats,
body[data-page="forum"] .forum-search,
body[data-page="forum"] .forum-tabs,
body[data-page="forum"] #forumContent{
  width:100%!important;
  max-width:none!important;
}
body[data-page="forum"] .forum-hero-premium{
  padding-top:8px;
  padding-bottom:24px;
}
body[data-page="forum"] .forum-layout,
body[data-page="forum"] .faq-layout{
  grid-template-columns:minmax(0,1fr) 320px;
  gap:20px;
}
body[data-page="forum"] .forum-stats>div{
  min-height:76px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
body[data-page="forum"] .forum-search{
  margin-bottom:16px;
}
@media(max-width:1100px){
  body[data-page="forum"] .forum-layout,
  body[data-page="forum"] .faq-layout{grid-template-columns:minmax(0,1fr) 280px}
}
@media(max-width:900px){
  body[data-page="forum"] .forum-layout,
  body[data-page="forum"] .faq-layout{grid-template-columns:1fr}
}
@media(max-width:720px){
  body[data-page="forum"] .page{padding-left:16px!important;padding-right:16px!important}
}

/* Forum dedicated workspace shell: never inherit the generic page-head/grid constraints. */
body[data-page="forum"] .main > .page{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:32px 42px 84px!important;}
body[data-page="forum"] .forum-workspace{display:block!important;width:100%!important;max-width:none!important;margin:0!important;}
body[data-page="forum"] .forum-workspace > *{max-width:none!important;}
body[data-page="forum"] .forum-hero-premium{display:flex!important;width:100%!important;}
body[data-page="forum"] #forumContent{display:block!important;width:100%!important;}
body[data-page="forum"] .faq-layout,body[data-page="forum"] .forum-layout{width:100%!important;max-width:none!important;}
@media(max-width:720px){body[data-page="forum"] .main > .page{padding:24px 16px 84px!important;}}


/* Forum final mobile hardening — keep the complete help surface usable on narrow screens. */
body[data-page="forum"] .forum-vote button{touch-action:manipulation;min-width:38px;min-height:38px;display:grid;place-items:center;transition:background .18s,color .18s,transform .18s}
body[data-page="forum"] .forum-vote button:hover{transform:none}
body[data-page="forum"] .forum-vote button.is-voted{background:var(--ink);color:var(--surface)}
body[data-page="forum"] .forum-vote button:disabled{opacity:.62;cursor:wait;transform:none}
body[data-page="forum"] .forum-vote strong{min-height:18px;display:block}
@media(max-width:720px){
  body[data-page="forum"] .app{display:block!important;grid-template-columns:1fr!important;width:100%!important;min-width:0!important;min-height:100dvh!important}
  body[data-page="forum"] .sidebar{display:none!important;width:0!important}
  body[data-page="forum"] .main{display:flex!important;flex-direction:column!important;grid-column:auto!important;width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important}
  body[data-page="forum"] .topbar{height:66px!important;flex:0 0 66px!important;width:100%!important;min-width:0!important;padding:0 14px!important;overflow:hidden!important}
  body[data-page="forum"] .page{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:20px 12px 100px!important;overflow:visible!important}
  body[data-page="forum"] .forum-root{width:100%!important;max-width:none!important;min-width:0!important;overflow:visible!important}
  body[data-page="forum"] .forum-hero-premium{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:16px!important;padding:2px 2px 18px!important;margin-bottom:10px!important}
  body[data-page="forum"] .forum-hero-copy h1{font-size:clamp(36px,11vw,48px)!important;line-height:.94!important;letter-spacing:-2.8px!important;margin:7px 0 10px!important}
  body[data-page="forum"] .forum-hero-copy p{font-size:13px!important;line-height:1.55!important;max-width:100%!important}
  body[data-page="forum"] .forum-hero-meta{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin-top:12px!important;font-size:10px!important}
  body[data-page="forum"] .forum-hero-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important}
  body[data-page="forum"] .forum-hero-actions .btn{width:100%!important;min-width:0!important;padding-inline:10px!important}
  body[data-page="forum"] .forum-stats{grid-template-columns:1fr 1fr!important;gap:8px!important;margin-bottom:10px!important}
  body[data-page="forum"] .forum-stats>div{min-height:74px!important;padding:12px!important;border-radius:15px!important}
  body[data-page="forum"] .forum-stats strong{font-size:22px!important}
  body[data-page="forum"] .forum-stats span{font-size:9px!important;letter-spacing:.07em!important}
  body[data-page="forum"] .forum-search{padding:10px!important;border-radius:18px!important;margin-bottom:10px!important}
  body[data-page="forum"] .forum-search-main{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
  body[data-page="forum"] .forum-search-field{height:46px!important;width:100%!important;min-width:0!important}
  body[data-page="forum"] .forum-search-submit{width:100%!important;height:44px!important}
  body[data-page="forum"] .forum-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important}
  body[data-page="forum"] .forum-filters select{min-width:0!important;width:100%!important}
  body[data-page="forum"] .forum-tabs{width:100%!important;overflow-x:auto!important;scrollbar-width:none!important;margin-bottom:12px!important}
  body[data-page="forum"] .forum-tabs::-webkit-scrollbar{display:none!important}
  body[data-page="forum"] .forum-tabs button{flex:0 0 auto!important;padding:10px 12px!important;font-size:13px!important}
  body[data-page="forum"] .forum-layout,body[data-page="forum"] .faq-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;width:100%!important}
  body[data-page="forum"] .forum-layout>main,body[data-page="forum"] .faq-layout>main{min-width:0!important;width:100%!important}
  body[data-page="forum"] .forum-side{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;width:100%!important}
  body[data-page="forum"] .forum-welcome{display:block!important;padding:17px!important;margin-bottom:12px!important}
  body[data-page="forum"] .forum-welcome .btn{width:100%!important;margin-top:12px!important}
  body[data-page="forum"] .forum-topic-chips,.faq-category-chips{overflow-x:auto!important;max-width:100%!important;padding-bottom:4px!important;scrollbar-width:none!important}
  body[data-page="forum"] .forum-topic-chips::-webkit-scrollbar,body[data-page="forum"] .faq-category-chips::-webkit-scrollbar{display:none!important}
  body[data-page="forum"] .forum-section-head{align-items:flex-start!important;gap:8px!important;flex-wrap:wrap!important}
  body[data-page="forum"] .forum-section-head h2{font-size:22px!important}
  body[data-page="forum"] .forum-count{margin-left:auto!important;max-width:45%!important;text-align:right!important;font-size:10px!important}
  body[data-page="forum"] .forum-post-card{grid-template-columns:42px minmax(0,1fr)!important;gap:10px!important;padding:13px!important;border-radius:15px!important}
  body[data-page="forum"] .forum-post-title{font-size:16px!important;line-height:1.3!important;padding:5px 0!important}
  body[data-page="forum"] .forum-post-main p{font-size:12px!important;line-height:1.55!important;overflow-wrap:anywhere!important}
  body[data-page="forum"] .forum-post-bottom{display:block!important}
  body[data-page="forum"] .forum-post-bottom>div{margin-top:7px!important}
  body[data-page="forum"] .faq-intro{display:block!important;padding:17px!important;margin-bottom:12px!important}
  body[data-page="forum"] .faq-intro h2{font-size:25px!important}
  body[data-page="forum"] .faq-intro p{font-size:12px!important}
  body[data-page="forum"] .faq-intro-actions{margin-top:12px!important}
  body[data-page="forum"] .faq-intro-actions .btn{width:100%!important}
  body[data-page="forum"] .faq-featured-grid{grid-template-columns:minmax(0,1fr)!important}
  body[data-page="forum"] .faq-item summary{padding:14px!important;font-size:13px!important;line-height:1.4!important}
  body[data-page="forum"] .faq-item>div{padding:0 14px 14px!important;font-size:12px!important;overflow-wrap:anywhere!important}
  body[data-page="forum"] .forum-dialog-backdrop{padding:8px!important;align-items:end!important}
  body[data-page="forum"] .forum-dialog,body[data-page="forum"] .forum-thread{width:100%!important;max-width:none!important;max-height:calc(100dvh - 16px)!important;border-radius:18px!important}
  body[data-page="forum"] .forum-dialog{padding:16px!important}
  body[data-page="forum"] .forum-thread-head,body[data-page="forum"] .forum-thread-body,body[data-page="forum"] .forum-replies{padding:15px!important}
  body[data-page="forum"] .forum-thread-head h2{font-size:22px!important;line-height:1.15!important;overflow-wrap:anywhere!important}
  body[data-page="forum"] .forum-thread-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-page="forum"] .forum-thread-actions .btn{width:100%!important}
  body[data-page="forum"] .forum-dialog-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
  body[data-page="forum"] .forum-dialog-actions .btn{width:100%!important}
  body[data-page="forum"] .forum-reply>div{align-items:flex-start!important;flex-wrap:wrap!important}
  body[data-page="forum"] .forum-reply .btn{margin-top:7px!important}
  body[data-page="forum"] .forum-reply-box button{width:100%!important}
  body[data-page="forum"] .forum-categories button,.forum-help-links button,.forum-help-links a{min-height:44px!important}
}
@media(max-width:420px){
  body[data-page="forum"] .page{padding-left:10px!important;padding-right:10px!important}
  body[data-page="forum"] .forum-hero-actions{grid-template-columns:1fr!important}
  body[data-page="forum"] .forum-filters{grid-template-columns:1fr!important}
  body[data-page="forum"] .forum-post-card{grid-template-columns:38px minmax(0,1fr)!important}
  body[data-page="forum"] .forum-post-bottom>span{display:block;overflow-wrap:anywhere}
  body[data-page="forum"] .forum-thread-actions{grid-template-columns:1fr!important}
}

/* Zevuna 0.88 collaboration mobile hardening */
@media(max-width:720px){
  body[data-page="groups"] .page{padding-left:14px!important;padding-right:14px!important}
  body[data-page="groups"] .group-live-grid{grid-template-columns:1fr!important}
  body[data-page="groups"] .shared-focus-live,body[data-page="groups"] .shared-focus-empty{display:grid!important;grid-template-columns:1fr;gap:14px;padding:18px!important;min-height:0}
  body[data-page="groups"] .shared-focus-count{font-size:40px;letter-spacing:-2px}
  body[data-page="groups"] .shared-focus-actions{margin-left:0!important}
  body[data-page="groups"] .group-chat{min-height:0}
  body[data-page="groups"] .group-chat-thread{min-height:220px;max-height:52vh;padding-inline:0}
  body[data-page="groups"] .group-chat-form{position:sticky;bottom:0;background:var(--surface);padding:10px 0 max(10px,env(safe-area-inset-bottom));z-index:2}
  body[data-page="groups"] .group-chat-form .btn{min-width:72px}
  body[data-page="groups"] .group-message{max-width:92%}
  body[data-page="groups"] .group-presence{align-items:flex-start}
  body[data-page="groups"] .group-presence-copy small{white-space:normal}
  body[data-page="groups"] .group-actions{display:grid;grid-template-columns:1fr 1fr}
  body[data-page="groups"] .group-actions .btn{width:100%}
}
@media(max-width:420px){
  body[data-page="groups"] .group-actions{grid-template-columns:1fr}
  body[data-page="groups"] .group-presence-stack{display:none}
  body[data-page="groups"] .group-chat-form{gap:6px}
  body[data-page="groups"] .group-chat-form input{font-size:13px}
}
/* Zevuna 0.88 release additions */
.activity-top-btn{position:relative}.activity-top-btn svg{width:17px;height:17px}.activity-unread-dot{position:absolute;top:7px;right:7px;width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 3px var(--surface)}
.activity-center-popover{position:fixed;z-index:12000;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.22);overflow:hidden}.activity-center-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}.activity-center-head strong{display:block;font-size:18px}.activity-center-body{max-height:min(520px,65vh);overflow:auto;padding:8px}.activity-item{width:100%;display:flex;gap:11px;text-align:left;border:0;background:transparent;border-radius:14px;padding:12px;cursor:pointer;color:var(--ink)}.activity-item:hover,.activity-item.unread{background:var(--surface2)}.activity-item.unread{box-shadow:inset 3px 0 var(--lime)}.activity-icon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:var(--surface2);flex:0 0 30px;font-weight:800}.activity-item>span:last-child{min-width:0}.activity-item strong,.activity-item small,.activity-item time{display:block}.activity-item strong{font-size:12px}.activity-item small{font-size:10px;color:var(--muted);line-height:1.45;margin-top:2px}.activity-item time{font-size:8px;color:var(--muted);margin-top:5px}.activity-empty{padding:35px 18px;text-align:center}.activity-empty strong{display:block}.activity-empty p{color:var(--muted);font-size:11px}.activity-center-foot{padding:10px 12px;border-top:1px solid var(--line);display:flex;justify-content:flex-end}
.group-resource-list,.group-task-list,.group-poll-list{display:grid;gap:8px}.group-resource,.group-task-row{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px;border:1px solid var(--line);background:var(--surface2);border-radius:13px;text-align:left;color:var(--ink);cursor:pointer}.group-resource:hover,.group-task-row:hover{border-color:#a8bd75}.group-resource .file-type{width:38px;height:38px;border-radius:10px;background:var(--surface);display:grid;place-items:center;font-size:8px;font-weight:900}.group-resource strong,.group-resource small,.group-task-row strong,.group-task-row small{display:block}.group-resource small,.group-task-row small{font-size:9px;color:var(--muted);margin-top:3px}.group-resource>b{font-size:20px;color:var(--muted)}.group-task-row{grid-template-columns:auto minmax(0,1fr)}.task-check{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;font-weight:900}.group-task-row.done{opacity:.65}.group-task-row.done strong{text-decoration:line-through}.group-poll{padding:12px;border:1px solid var(--line);border-radius:14px}.group-poll>strong{display:block;margin-bottom:9px}.poll-option{width:100%;display:flex;justify-content:space-between;gap:8px;padding:9px 10px;margin-top:6px;border:1px solid var(--line);background:var(--surface2);border-radius:10px;color:var(--ink);cursor:pointer;text-align:left}.poll-option:hover{border-color:#a8bd75}.poll-option small,.poll-meta{color:var(--muted);font-size:9px}.poll-meta{display:block;margin-top:8px}.office-preview{width:100%;height:min(62vh,680px);overflow:auto;background:#fff;color:#171a16;padding:20px}.office-preview-loading,.office-preview-error{min-height:300px;display:grid;place-items:center;text-align:center;color:#687066}.docx-preview{max-width:820px;margin:0 auto}.sheet-preview{margin-bottom:24px}.sheet-preview h4{margin:0 0 8px}.sheet-preview table{border-collapse:collapse;width:100%;font-size:11px}.sheet-preview td,.sheet-preview th{border:1px solid #d8ddd4;padding:6px;text-align:left}.group-resource-viewer{width:min(900px,calc(100vw - 28px))}.group-resource-viewer .file-drawer-preview{min-height:60vh}.group-resource-viewer .file-drawer-preview .file-frame{height:65vh;min-height:420px;width:100%}
@media(max-width:720px){.activity-center-popover{position:fixed!important;left:12px!important;right:12px!important;width:auto!important;top:62px!important}.activity-center-body{max-height:60vh}.group-resource-viewer{top:8px!important;right:8px!important;bottom:8px!important;width:calc(100vw - 16px)!important}.group-resource-viewer .file-drawer-preview .file-frame{height:58vh;min-height:300px}.office-preview{height:58vh;padding:10px}.group-resource{grid-template-columns:auto minmax(0,1fr) auto}}

/* 0.88 connected workspace polish */
body[data-page=groups] .group-workspace .panel{padding:18px} body[data-page=groups] .group-resource-list,body[data-page=groups] .group-task-list,body[data-page=groups] .group-poll-list{max-height:330px;overflow:auto;padding-right:2px} body[data-page=groups] .group-resource,body[data-page=groups] .group-task-row{padding:10px} body[data-page=groups] .group-tool-btn{min-height:92px} @media(max-width:720px){body[data-page=groups] .group-workspace{grid-template-columns:1fr!important;gap:12px!important}body[data-page=groups] .group-workspace .panel{padding:15px!important}}

/* Posture Check — the actual workbench enters native fullscreen, so style that element directly. */
.posture-workbench:fullscreen,.posture-workbench:-webkit-full-screen{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;box-sizing:border-box!important;padding:22px 28px 24px!important;background:#090b08!important;color:#f3f4ee!important;display:flex!important;flex-direction:column!important;gap:14px!important;overflow:hidden!important;z-index:99999!important}
.posture-workbench:fullscreen .posture-fullscreen-brand,.posture-workbench:-webkit-full-screen .posture-fullscreen-brand{display:flex!important;position:absolute!important;top:20px!important;left:28px!important;align-items:center!important;gap:8px!important;color:#f3f4ee!important;font-size:20px!important;z-index:20!important}
.posture-workbench:fullscreen .posture-fullscreen-brand .mark,.posture-workbench:-webkit-full-screen .posture-fullscreen-brand .mark{display:flex!important;gap:4px!important}.posture-workbench:fullscreen .posture-fullscreen-brand .mark i,.posture-workbench:-webkit-full-screen .posture-fullscreen-brand .mark i{width:7px!important;height:7px!important;border-radius:50%!important;background:#f3f4ee!important}.posture-workbench:fullscreen .posture-fullscreen-brand .mark i:last-child,.posture-workbench:-webkit-full-screen .posture-fullscreen-brand .mark i:last-child{background:var(--lime)!important}
.posture-workbench:fullscreen .posture-toolbar,.posture-workbench:-webkit-full-screen .posture-toolbar{flex:0 0 auto!important;min-height:60px!important;padding:0 0 12px 135px!important;border-bottom:1px solid rgba(255,255,255,.11)!important;color:#f3f4ee!important}
.posture-workbench:fullscreen .posture-toolbar h4,.posture-workbench:-webkit-full-screen .posture-toolbar h4{color:#f3f4ee!important;font-size:22px!important;margin:4px 0 0!important}.posture-workbench:fullscreen .posture-toolbar .eyebrow,.posture-workbench:-webkit-full-screen .posture-toolbar .eyebrow{color:#8d9388!important}.posture-workbench:fullscreen .posture-privacy,.posture-workbench:-webkit-full-screen .posture-privacy{color:#9da39a!important}
.posture-workbench:fullscreen .posture-grid,.posture-workbench:-webkit-full-screen .posture-grid{flex:1 1 auto!important;min-height:0!important;grid-template-columns:minmax(0,1.72fr) minmax(320px,.72fr)!important;gap:14px!important}
.posture-workbench:fullscreen .posture-camera-card,.posture-workbench:-webkit-full-screen .posture-camera-card,.posture-workbench:fullscreen .posture-analysis-panel,.posture-workbench:-webkit-full-screen .posture-analysis-panel{min-height:0!important;border-color:rgba(255,255,255,.11)!important;background:#111410!important;color:#f3f4ee!important;border-radius:18px!important}
.posture-workbench:fullscreen .posture-video-shell,.posture-workbench:-webkit-full-screen .posture-video-shell{flex:1 1 auto!important;min-height:0!important;width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:auto!important;background:#060806!important}
.posture-workbench:fullscreen .posture-camera-footer,.posture-workbench:-webkit-full-screen .posture-camera-footer{flex:0 0 auto!important;color:#92988e!important;background:#111410!important}.posture-workbench:fullscreen .posture-analysis-panel,.posture-workbench:-webkit-full-screen .posture-analysis-panel{padding:20px!important;gap:16px!important;overflow:auto!important}.posture-workbench:fullscreen .posture-analysis-panel h3,.posture-workbench:-webkit-full-screen .posture-analysis-panel h3{color:#f3f4ee!important}.posture-workbench:fullscreen .posture-analysis-panel p,.posture-workbench:-webkit-full-screen .posture-analysis-panel p,.posture-workbench:fullscreen .posture-disclaimer,.posture-workbench:-webkit-full-screen .posture-disclaimer{color:#92988e!important}.posture-workbench:fullscreen .posture-tip,.posture-workbench:-webkit-full-screen .posture-tip{background:#171a15!important;border-color:rgba(255,255,255,.1)!important}
@media(max-width:900px){.posture-workbench:fullscreen,.posture-workbench:-webkit-full-screen{padding:18px!important}.posture-workbench:fullscreen .posture-toolbar,.posture-workbench:-webkit-full-screen .posture-toolbar{padding:42px 0 12px!important}.posture-workbench:fullscreen .posture-grid,.posture-workbench:-webkit-full-screen .posture-grid{grid-template-columns:1fr!important;overflow:auto!important}.posture-workbench:fullscreen .posture-video-shell,.posture-workbench:-webkit-full-screen .posture-video-shell{flex:none!important;aspect-ratio:4/3!important;min-height:300px!important}}
/* Settings layout polish */
.settings-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:2px}.settings-section-head>div{min-width:0}.settings-save-state{flex:0 0 auto;display:inline-flex;align-items:center;min-height:28px;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);color:var(--muted);font-size:8px;font-weight:800;letter-spacing:.7px;white-space:nowrap}.settings-accessibility-panel .setting-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px}.settings-accessibility-panel .setting-row>div{min-width:0}.settings-accessibility-panel .setting-row small{display:block;max-width:720px;line-height:1.5}
@media(max-width:720px){.settings-section-head{align-items:flex-start;flex-direction:column;gap:7px}.settings-save-state{white-space:normal}.settings-accessibility-panel .setting-row{grid-template-columns:minmax(0,1fr) auto;gap:10px}.settings-accessibility-panel .setting-row small{font-size:9px}}


/* Groups collaboration polish — aligned live tools, polls, activity and upload progress */
body[data-page="groups"] .group-live-grid{grid-template-columns:minmax(300px,.9fr) minmax(0,1.35fr);align-items:stretch;gap:16px}
body[data-page="groups"] #groupFocusPanel{min-width:0;display:flex}
body[data-page="groups"] #groupFocusPanel>.panel{width:100%;height:100%;box-sizing:border-box}
body[data-page="groups"] .shared-focus-live,body[data-page="groups"] .shared-focus-empty{min-height:420px;height:100%;box-sizing:border-box;padding:26px;align-items:flex-start;flex-direction:column;justify-content:center;border-radius:20px}
body[data-page="groups"] .shared-focus-live-main,body[data-page="groups"] .shared-focus-empty>div{width:100%;flex:none}
body[data-page="groups"] .shared-focus-count{font-size:clamp(44px,5vw,64px);line-height:1;letter-spacing:-3px;margin-top:10px}
body[data-page="groups"] .shared-focus-actions{margin-top:8px;width:100%}
body[data-page="groups"] .group-chat{height:420px;min-height:420px;box-sizing:border-box}
body[data-page="groups"] .group-chat-thread{min-height:0;max-height:none}
body[data-page="groups"] .group-chat-form{margin-top:auto}
body[data-page="groups"] .group-workspace{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
body[data-page="groups"] #groupActivityHost{min-width:0}
body[data-page="groups"] #groupActivityHost>.panel{height:100%;box-sizing:border-box}
.group-activity-list{display:grid;gap:0;max-height:330px;overflow:auto;padding-right:2px}
.group-activity-item{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:10px;align-items:start;padding:11px 0;border-top:1px solid var(--line)}
.group-activity-item:first-child{border-top:0;padding-top:2px}
.activity-icon{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:var(--lime2);color:var(--ink);font-size:11px;font-weight:900}
.group-activity-item strong{display:block;font-size:11px}.group-activity-item p{margin:2px 0 0;font-size:10px;line-height:1.4}.group-activity-item small{display:block;color:var(--muted);font-size:9px;line-height:1.4;margin-top:2px}.group-activity-item time{font-size:8px;color:var(--muted);white-space:nowrap}.activity-count{font-size:9px;color:var(--muted);font-weight:800;padding:5px 8px;border:1px solid var(--line);border-radius:999px}
.group-poll{padding:15px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.group-poll+.group-poll{margin-top:10px}.group-poll-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.group-poll-head>div{min-width:0}.group-poll-head strong{display:block;margin-top:5px;line-height:1.4}.poll-author{font-size:8px;color:var(--muted);white-space:nowrap}.poll-options{display:grid;gap:7px;margin-top:12px}.poll-option{position:relative;overflow:hidden;width:100%;display:grid;grid-template-columns:minmax(0,1fr) 120px;align-items:center;gap:12px;padding:10px 11px;margin:0;border:1px solid var(--line);background:var(--surface2);border-radius:12px;color:var(--ink);cursor:pointer;text-align:left;transition:border-color .16s,transform .16s,background .16s}.poll-option:hover{border-color:#a8bd75;transform:translateY(-1px)}.poll-option.selected{border-color:var(--lime);background:color-mix(in srgb,var(--lime2) 45%,var(--surface2))}.poll-option:disabled{cursor:wait;opacity:.7;transform:none}.poll-option-copy{display:flex;align-items:center;gap:8px;min-width:0}.poll-option-copy b{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.poll-radio{width:13px;height:13px;flex:0 0 13px;border:1px solid var(--muted);border-radius:50%;position:relative}.poll-option.selected .poll-radio{border-color:var(--lime);box-shadow:inset 0 0 0 3px var(--surface2);background:var(--lime)}.poll-option-result{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px}.poll-bar{height:5px;border-radius:999px;background:var(--line);overflow:hidden}.poll-bar i{display:block;height:100%;background:var(--lime);border-radius:inherit;transition:width .25s ease}.poll-option-result small{font-size:8px;color:var(--muted);min-width:42px;text-align:right}.poll-meta{display:flex;justify-content:space-between;gap:10px;margin-top:9px;color:var(--muted);font-size:8px}.poll-add-option{margin-top:7px!important;width:max-content}.field-hint{color:var(--muted);font-weight:500;margin-left:5px}.group-poll-form #pollOptionFields{display:grid;gap:7px}
.group-upload-progress{position:fixed;right:24px;bottom:24px;width:min(440px,calc(100vw - 32px));z-index:100000}.group-upload-card{padding:17px 18px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 20px 60px rgba(0,0,0,.18)}.group-upload-head{display:flex;align-items:flex-start;gap:15px;justify-content:space-between}.group-upload-head>div{min-width:0}.group-upload-head strong,.group-upload-head small{display:block}.group-upload-head strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:330px;margin-top:5px}.group-upload-head small{font-size:9px;color:var(--muted);margin-top:3px}.group-upload-head>#groupUploadPct{font:900 18px/1 var(--mono);letter-spacing:-1px}.group-upload-track{height:7px;background:var(--surface2);border-radius:999px;overflow:hidden;margin:14px 0 8px}.group-upload-track i{display:block;width:0;height:100%;background:var(--lime);border-radius:inherit;transition:width .15s ease}.group-upload-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:8px}
@media(max-width:900px){body[data-page="groups"] .group-live-grid{grid-template-columns:1fr}body[data-page="groups"] .shared-focus-live,body[data-page="groups"] .shared-focus-empty{min-height:230px;height:auto}body[data-page="groups"] .group-chat{height:420px}body[data-page="groups"] .group-workspace{grid-template-columns:1fr}}
@media(max-width:720px){body[data-page="groups"] .group-live-grid{gap:12px}body[data-page="groups"] .group-chat{height:390px;min-height:390px}.poll-option{grid-template-columns:minmax(0,1fr) 100px}.group-upload-progress{right:16px;bottom:16px;width:calc(100vw - 32px)}}
.activity-ai-digest{margin:0 0 8px;padding:10px 11px;border:1px solid rgba(169,215,63,.18);background:linear-gradient(135deg,rgba(169,215,63,.08),rgba(169,215,63,.025));border-radius:12px}.activity-ai-digest span{display:block;font:800 8px/1 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:1.5px;color:#a9d73f;margin-bottom:5px}.activity-ai-digest strong{display:block;font-size:11px;line-height:1.45;color:var(--ink,#e8e8e4)}


/* ─────────────────────────────────────────────────────────────
   Zevuna Agent — action-first workspace surface
   ───────────────────────────────────────────────────────────── */
.agent-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);gap:24px;align-items:center;padding:30px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--lime2) 20%,var(--surface)));overflow:hidden;position:relative}
.agent-hero:after{content:"";position:absolute;width:310px;height:310px;border-radius:50%;right:-170px;top:-120px;border:1px solid color-mix(in srgb,var(--lime) 24%,transparent);box-shadow:0 0 0 34px color-mix(in srgb,var(--lime) 4%,transparent),0 0 0 70px color-mix(in srgb,var(--lime) 2%,transparent);pointer-events:none}
.agent-hero h2{font-size:clamp(40px,6vw,68px);line-height:.95;letter-spacing:-4px;margin:10px 0 14px}.agent-hero h2 em{font-style:normal;color:var(--lime-deep,#6b9d13)}.agent-hero p{max-width:620px;color:var(--muted);font-size:12px;line-height:1.7}.agent-proof{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.agent-proof span{padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);font-size:9px;color:var(--muted)}.agent-proof b{color:var(--ink);font-size:11px}
.agent-orbit{min-height:260px;display:grid;place-items:center;position:relative}.agent-orbit-ring{width:220px;height:220px;border:1px solid color-mix(in srgb,var(--lime) 42%,var(--line));border-radius:50%;box-shadow:0 0 0 18px color-mix(in srgb,var(--lime) 4%,transparent),inset 0 0 80px color-mix(in srgb,var(--lime) 7%,transparent);position:absolute}.agent-orbit-ring:before,.agent-orbit-ring:after{content:"";position:absolute;width:9px;height:9px;border-radius:50%;background:var(--lime);top:18px;left:50%;box-shadow:0 0 0 7px color-mix(in srgb,var(--lime) 16%,transparent)}.agent-orbit-ring:after{top:auto;left:auto;bottom:35px;right:25px;width:6px;height:6px;background:var(--ink)}.agent-orbit-core{width:128px;height:128px;border-radius:34px;background:var(--ink);color:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:1;box-shadow:0 24px 70px rgba(0,0,0,.18)}.agent-orbit-core strong{font-size:16px;letter-spacing:1px;margin-top:8px}.agent-orbit-core small{font-size:7px;letter-spacing:1.3px;color:var(--muted);margin-top:5px}
.agent-missions{margin-top:18px}.agent-mission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.agent-mission{position:relative;text-align:left;border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:16px;padding:17px;cursor:pointer;min-height:132px;transition:.18s}.agent-mission:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--lime) 60%,var(--line));box-shadow:0 12px 30px rgba(0,0,0,.06)}.agent-mission-kicker{display:block;color:var(--muted);font-size:8px;letter-spacing:1.4px;font-weight:900}.agent-mission strong{display:block;font-size:17px;margin-top:9px;letter-spacing:-.4px}.agent-mission small{display:block;color:var(--muted);font-size:10px;margin-top:6px;max-width:80%}.agent-mission b{position:absolute;right:16px;bottom:16px;font-size:18px;color:var(--lime-deep,#6b9d13)}
.agent-live{margin-top:18px}.agent-live-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.agent-status-pill{display:inline-flex;align-items:center;gap:6px;font-size:8px;font-weight:900;letter-spacing:.9px;text-transform:uppercase;color:var(--muted);padding:7px 9px;border:1px solid var(--line);border-radius:999px}.agent-status-pill i{width:6px;height:6px;border-radius:50%;background:var(--lime);display:block}.agent-thread{min-height:110px;max-height:520px;overflow:auto;padding:14px 2px 4px}.agent-form{display:flex;gap:10px;align-items:flex-end;border-top:1px solid var(--line);padding-top:14px}.agent-form textarea{flex:1;min-height:68px;max-height:180px;resize:vertical;border:1px solid var(--line);border-radius:14px;background:var(--surface2);color:var(--ink);padding:12px 14px;font:inherit;outline:none}.agent-form textarea:focus{border-color:var(--lime);box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 14%,transparent)}.agent-form .btn{min-height:46px;white-space:nowrap}.agent-status{min-height:17px;margin-top:8px;font-size:9px;color:var(--muted)}.agent-change-log{margin:10px 0 0;padding:12px;border:1px solid color-mix(in srgb,var(--lime) 30%,var(--line));border-radius:13px;background:color-mix(in srgb,var(--lime2) 38%,var(--surface))}.agent-change-log>span{display:block;color:var(--lime-deep,#6b9d13);font-size:8px;font-weight:900;letter-spacing:1.3px}.agent-change-log>div{display:grid;gap:5px;margin-top:7px}.agent-change-log span:not(.eyebrow){font-size:10px;color:var(--ink)}
.agent-signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.agent-signal-grid .panel{display:flex;flex-direction:column;gap:6px}.agent-signal-grid strong{font-size:21px;letter-spacing:-.5px}.agent-signal-grid small{font-size:9px;color:var(--muted)}

/* Zev Agents + rebuilt Intelligence composer */
.ai-panel-rebuilt{padding:clamp(18px,3vw,30px);border-radius:24px}.ai-panel-topline{display:flex;gap:18px;justify-content:space-between;align-items:flex-start}.ai-panel-topline h3{font-size:clamp(25px,3vw,38px);letter-spacing:-1.7px;margin:6px 0}.ai-panel-topline p{max-width:64ch;margin:0;color:var(--muted);font-size:12px;line-height:1.65}.ai-clear{flex:0 0 auto}.ai-workbench{margin-top:21px;border:1px solid var(--line);border-radius:20px;background:color-mix(in srgb,var(--surface2) 56%,var(--surface));overflow:hidden}.ai-workbench .ai-mode-strip{padding:12px 15px;background:color-mix(in srgb,var(--surface) 78%,transparent)}.ai-thread-shell{padding:4px 16px;border-block:1px solid var(--line);background:var(--surface)}.ai-workbench .ai-thread{min-height:210px;max-height:460px;padding:18px 0}.ai-composer{border:0;padding:12px 14px;background:var(--surface2);align-items:center}.ai-composer-field{flex:1;min-width:0}.ai-composer textarea{display:block;width:100%;min-height:55px;border:0!important;background:transparent!important;box-shadow:none!important;padding:7px 2px}.ai-composer-field small{display:block;padding:0 2px 2px;color:var(--muted);font-size:8px}.ai-composer .btn{border-radius:13px}.zev-agent-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:center;min-height:288px;margin-bottom:18px;padding:30px 34px;border-radius:26px;overflow:hidden;color:#f4f6ee;background:radial-gradient(circle at 80% 35%,rgba(181,232,58,.22),transparent 25%),linear-gradient(130deg,#171a15,#252b20)}.zev-agent-hero h2{font-size:clamp(38px,5vw,65px);letter-spacing:-3px;line-height:.9;margin:9px 0 13px}.zev-agent-hero p{max-width:570px;color:#bfc4b9;font-size:12px;line-height:1.65}.agent-plan-meter{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;margin-top:20px;color:#c8ccc2;font-size:9px;font-weight:800}.agent-plan-meter i{height:5px;border-radius:99px;background:#444a3e;overflow:hidden}.agent-plan-meter b{display:block;height:100%;border-radius:inherit;background:var(--lime)}.agent-plan-meter strong{color:var(--lime);font-size:8px}.zev-character{position:relative;justify-self:center;width:150px;height:150px;border-radius:48px;background:linear-gradient(145deg,#c1ed45,#87b821);box-shadow:0 26px 55px rgba(0,0,0,.28),inset 0 2px 0 rgba(255,255,255,.32);animation:zevAgentBob 3.8s ease-in-out infinite}.zev-character:after{content:'';position:absolute;inset:17px;border-radius:38px;background:linear-gradient(135deg,#1d221b,#10130f)}.zev-eye{position:absolute;z-index:2;top:61px;width:14px;height:18px;border-radius:50%;background:#eaffbb;box-shadow:0 0 12px rgba(199,242,91,.68);animation:zevBlink 5s infinite}.zev-eye-a{left:46px}.zev-eye-b{right:46px}.zev-antenna{position:absolute;z-index:3;left:72px;top:-18px;width:6px;height:30px;border-radius:9px;background:var(--lime);transform:rotate(17deg)}.zev-antenna:after{content:'';position:absolute;top:-5px;left:-4px;width:14px;height:14px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 7px rgba(181,232,58,.12)}.zev-orbit{position:absolute;border:1px solid rgba(181,232,58,.42);border-radius:50%;inset:-28px;animation:zevOrbit 10s linear infinite}.zev-orbit:after{content:'';position:absolute;width:7px;height:7px;border-radius:50%;background:var(--lime);top:16px;left:24px}.zev-orbit-b{inset:-50px;transform:rotate(58deg);animation-duration:15s;animation-direction:reverse}.agent-workspace-config{display:grid;grid-template-columns:1fr 1.15fr;gap:22px;align-items:center;margin-bottom:18px}.agent-workspace-config h3{margin:6px 0;font-size:22px;letter-spacing:-.7px}.agent-workspace-config p{margin:0;color:var(--muted);font-size:11px;line-height:1.55}.agent-scope-chips{display:flex;gap:7px;flex-wrap:wrap}.agent-scope-chip{border:1px solid var(--line);border-radius:999px;padding:8px 11px;background:var(--surface2);color:var(--muted);font-size:9px;font-weight:850;cursor:pointer}.agent-scope-chip.selected{background:var(--ink);border-color:var(--ink);color:var(--bg)}.agent-capability-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:9px}.agent-thinking{display:flex;align-items:center;gap:11px;padding:12px 13px;margin:14px 0 0;border:1px solid color-mix(in srgb,var(--lime) 45%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--lime) 11%,var(--surface))}.agent-thinking>span{width:27px;height:27px;border:3px solid color-mix(in srgb,var(--lime) 24%,transparent);border-top-color:var(--lime);border-radius:50%;animation:zevThinking .8s linear infinite}.agent-thinking b,.agent-thinking small{display:block}.agent-thinking b{font-size:10px}.agent-thinking small{margin-top:2px;color:var(--muted);font-size:9px}.agent-upgrade-callout{display:flex;align-items:center;gap:14px;margin-top:18px;padding:16px 18px;border-radius:17px;background:#171a15;color:#f4f6ee}.agent-upgrade-callout>span{color:var(--lime);font-size:8px;font-weight:900;letter-spacing:1px}.agent-upgrade-callout div{flex:1}.agent-upgrade-callout strong,.agent-upgrade-callout small{display:block}.agent-upgrade-callout strong{font-size:13px}.agent-upgrade-callout small{font-size:9px;color:#afb5a9;margin-top:3px}@keyframes zevAgentBob{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-11px) rotate(2deg)}}@keyframes zevOrbit{to{transform:rotate(360deg)}}@keyframes zevBlink{0%,44%,48%,100%{transform:scaleY(1)}46%{transform:scaleY(.08)}}@keyframes zevThinking{to{transform:rotate(360deg)}}
@media(max-width:760px){.ai-panel-topline,.agent-workspace-config{display:block}.ai-clear{margin-top:14px}.zev-agent-hero{grid-template-columns:1fr;padding:24px;min-height:0}.zev-character{margin:42px auto 20px}.agent-workspace-config>div+div{margin-top:16px}.agent-capability-grid{grid-template-columns:1fr 1fr}.agent-upgrade-callout{align-items:flex-start;flex-wrap:wrap}.agent-upgrade-callout .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.zev-character,.zev-orbit,.zev-eye,.agent-thinking>span{animation:none!important}}

/* Use the real Zev mascot consistently in navigation and agent workspaces. */
.zev-character-agents{background:#1b2019 url('/assets/zevuna-mascot-v2-cute.png') center/126px auto no-repeat!important;border:1px solid rgba(181,232,58,.35)}.zev-character-agents:after,.zev-character-agents .zev-antenna,.zev-character-agents .zev-eye{display:none}.zev-character-agents .zev-orbit{pointer-events:none}.sidebar .nav-item[href$="/ai.html"] .nav-icon,.sidebar .nav-item[href$="/agent.html"] .nav-icon{width:23px;height:23px;border-radius:8px;background:url('/assets/zevuna-mascot-v2-cute.png') center/22px auto no-repeat}.sidebar .nav-item[href$="/ai.html"] .nav-icon svg,.sidebar .nav-item[href$="/agent.html"] .nav-icon svg{opacity:0}.command-mini-tile .mini-tile-icon{font-size:0;background:linear-gradient(145deg,#c4f04c,#94c426)}.command-mini-tile .mini-tile-icon:after{content:'✦';font-size:19px;font-weight:900;color:#172015}.command-mini-tile:nth-child(2) .mini-tile-icon:after{content:'◌';font-size:25px}.agent-live:after{content:'Keep this browser open while Zev works.';display:block;margin-top:9px;color:var(--muted);font-size:9px}
.global-ai-head{display:grid!important;grid-template-columns:1fr auto auto;align-items:start}.global-ai-head:before{content:'';grid-column:2;width:46px;height:46px;margin-right:10px;border-radius:15px;background:#20251d url('/assets/zevuna-mascot-v2-cute.png') center/42px auto no-repeat;box-shadow:inset 0 0 0 1px rgba(181,232,58,.28)}.global-ai-head>div{grid-column:1;grid-row:1}.global-ai-head>[data-ai-close]{grid-column:3;grid-row:1}.intelligence-tabs{padding:5px!important;background:var(--surface2);border:1px solid var(--line)!important;border-radius:18px!important}.intelligence-tab{border:0!important;border-radius:13px!important}.intelligence-tab.active{box-shadow:0 8px 18px rgba(0,0,0,.12)}
[data-theme=dark] .agent-hero{background:linear-gradient(135deg,#171a15,#11130f)}
@media(max-width:760px){.agent-hero{grid-template-columns:1fr;padding:23px 20px}.agent-orbit{min-height:180px}.agent-orbit-ring{width:160px;height:160px}.agent-orbit-core{width:100px;height:100px;border-radius:28px}.agent-mission-grid{grid-template-columns:1fr}.agent-form{flex-direction:column;align-items:stretch}.agent-form .btn{width:100%}.agent-signal-grid{grid-template-columns:1fr}.agent-hero h2{letter-spacing:-2.5px}.agent-proof{gap:6px}}

/* Zevuna Study — connected planning surface */
.study-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(230px,.75fr);gap:20px;align-items:center;padding:30px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--lime2) 22%,var(--surface)));overflow:hidden;position:relative}
.study-hero:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-190px;top:-160px;border:1px solid color-mix(in srgb,var(--lime) 35%,var(--line));box-shadow:0 0 0 30px color-mix(in srgb,var(--lime) 4%,transparent),0 0 0 65px color-mix(in srgb,var(--lime) 2%,transparent);pointer-events:none}
.study-hero h2{font-size:clamp(42px,6vw,70px);line-height:.94;letter-spacing:-4px;margin:10px 0 14px}.study-hero h2 em{font-style:normal;color:var(--lime-deep,#6b9d13)}.study-hero p{max-width:640px;color:var(--muted);font-size:12px;line-height:1.75}.study-hero-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.study-hero-orbit{min-height:240px;display:grid;place-items:center;position:relative}.study-ring{position:absolute;width:195px;height:195px;border:1px solid color-mix(in srgb,var(--lime) 45%,var(--line));border-radius:50%;box-shadow:0 0 0 18px color-mix(in srgb,var(--lime) 4%,transparent),inset 0 0 70px color-mix(in srgb,var(--lime) 7%,transparent)}.study-ring:before,.study-ring:after{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:var(--lime);top:15px;left:50%;box-shadow:0 0 0 6px color-mix(in srgb,var(--lime) 18%,transparent)}.study-ring:after{top:auto;left:auto;bottom:28px;right:20px;width:6px;height:6px;background:var(--ink)}.study-core{width:118px;height:118px;border-radius:30px;background:var(--ink);color:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;z-index:1;box-shadow:0 22px 65px rgba(0,0,0,.16)}.study-core strong{font-size:15px;letter-spacing:1px;margin-top:7px}.study-core small{font-size:7px;letter-spacing:1.2px;color:var(--muted);margin-top:5px}
.study-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.study-metrics .panel{display:flex;flex-direction:column;gap:6px;min-width:0}.study-metrics strong{font-size:18px;letter-spacing:-.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.study-metrics small{font-size:9px;color:var(--muted)}
.study-builder,.study-today{margin-top:16px}.study-form{margin-top:12px}.study-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.study-form-actions{display:flex;gap:8px;margin-top:12px}.study-preview{margin-top:18px}.study-preview-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--surface2)}.study-preview-head h3{margin:4px 0 6px;font-size:18px}.study-preview-head p{margin:0;color:var(--muted);font-size:10px;line-height:1.55}.study-timeline{display:grid;gap:7px;margin-top:10px}.study-preview-row{display:grid;grid-template-columns:92px 1fr;gap:10px;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.study-day{display:flex;flex-direction:column;gap:4px}.study-day span,.study-day strong{font-size:9px}.study-day span{color:var(--muted)}.study-day strong{font-size:12px}.study-session{display:flex;flex-direction:column;gap:4px;min-width:0}.study-session strong{font-size:12px}.study-session small{font-size:9px;color:var(--muted)}.study-type{display:inline-flex;align-self:flex-start;font-size:8px;letter-spacing:1px;text-transform:uppercase;color:var(--lime-deep,#6b9d13);font-weight:900}
.study-today-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.study-today-row:last-child{border-bottom:0}.study-today-row.done{opacity:.62}.study-today-row>div:first-child{display:flex;flex-direction:column;gap:4px;min-width:0}.study-today-row strong{font-size:13px}.study-today-row small{font-size:9px;color:var(--muted)}.study-row-actions{display:flex;gap:7px;flex:none}.study-row-actions .btn{min-height:34px;padding:7px 10px;font-size:9px}.study-active{margin-top:16px}.study-plan-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.study-plan-card{padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.study-plan-top{display:flex;justify-content:space-between;gap:12px}.study-plan-top h3{margin:5px 0 3px;font-size:17px}.study-plan-top small{font-size:9px;color:var(--muted)}.study-plan-top>strong{font-size:25px;letter-spacing:-1px}.study-plan-card .bar{margin-top:12px}.study-plan-meta{display:flex;align-items:center;gap:10px;margin-top:10px;color:var(--muted);font-size:9px}.study-plan-meta .btn{margin-left:auto;min-height:32px;padding:6px 9px;font-size:8px}.study-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}.study-links a{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:var(--ink)}.study-links strong{font-size:14px}.study-links small{font-size:9px;line-height:1.5;color:var(--muted)}
[data-theme=dark] .study-hero{background:linear-gradient(135deg,#171a15,#11130f)}
@media(max-width:900px){.study-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.study-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.study-hero{grid-template-columns:1fr;padding:23px 20px}.study-hero-orbit{min-height:170px}.study-ring{width:160px;height:160px}.study-core{width:98px;height:98px;border-radius:26px}.study-hero h2{letter-spacing:-2.5px}.study-preview-head{flex-direction:column;align-items:stretch}.study-preview-head .btn{width:100%}.study-plan-list,.study-links{grid-template-columns:1fr}.study-form-grid{grid-template-columns:1fr}.study-form-actions{flex-direction:column}.study-form-actions .btn{width:100%}.study-preview-row{grid-template-columns:1fr;gap:5px}.study-day{flex-direction:row;align-items:center;justify-content:space-between}.study-today-row{align-items:flex-start;flex-direction:column}.study-row-actions{width:100%}.study-row-actions .btn{flex:1}.study-metrics strong{font-size:17px}}



/* v4.2 — Intelligence drawer visual polish */
.global-ai-drawer{
  width:min(452px,36vw);
  padding:20px;
  border-radius:26px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 98%,transparent),var(--surface));
  box-shadow:0 30px 100px rgba(0,0,0,.24),0 1px 0 rgba(255,255,255,.35) inset;
}
.global-ai-head{gap:12px;padding-bottom:17px}
.global-ai-head .eyebrow{margin-bottom:2px}
.global-ai-head h3{font-size:24px;letter-spacing:-1.05px;line-height:1.05}
.global-ai-head p{font-size:11.5px;line-height:1.55;max-width:340px}
.global-ai-head .icon-btn{
  flex:0 0 38px;width:38px;height:38px;border-radius:12px;
  background:var(--surface2);border-color:var(--line);font-size:20px;
}
.global-ai-head .icon-btn:hover{background:var(--ink);color:var(--bg);border-color:var(--ink);transform:none}

.intelligence-tabs{
  display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin:15px 0 10px;
  border:1px solid var(--line);border-radius:19px;background:color-mix(in srgb,var(--surface2) 92%,var(--surface));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5);width:100%;box-sizing:border-box;
}
.intelligence-tab{
  min-width:0;height:58px;border:1px solid transparent;border-radius:15px;
  background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:flex-start;
  gap:10px;padding:0 14px;font:800 12px/1 Inter,system-ui,sans-serif;text-align:left;
  cursor:pointer;transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.intelligence-tab:hover{background:color-mix(in srgb,var(--surface) 90%,transparent);color:var(--ink);border-color:var(--line);transform:translateY(-1px)}
.intelligence-tab.active{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:0 10px 24px rgba(0,0,0,.15)}
.intelligence-tab[data-intelligence-tab="agent"].active{background:var(--lime);border-color:var(--lime);color:#11130f;box-shadow:0 10px 24px rgba(145,205,45,.22)}
.intelligence-tab:focus-visible{outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 26%,transparent),0 10px 24px rgba(0,0,0,.12)}
.intelligence-tab-icon{
  width:30px;height:30px;flex:0 0 30px;display:grid;place-items:center;border-radius:10px;
  background:rgba(0,0,0,.055);color:currentColor;font-size:14px;font-weight:900;line-height:1;
}
.intelligence-tab-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.intelligence-tab-agent-icon{font-size:16px}
.intelligence-tab.active .intelligence-tab-icon{background:rgba(255,255,255,.12)}
.intelligence-tab[data-intelligence-tab="agent"].active .intelligence-tab-icon{background:rgba(17,19,15,.09)}
.intelligence-tab-copy{display:flex;min-width:0;flex-direction:column;gap:4px}
.intelligence-tab-copy b{font-size:13px;letter-spacing:-.15px;line-height:1}
.intelligence-tab-copy small{font-size:8.5px;letter-spacing:.2px;font-weight:650;color:var(--muted);line-height:1.15}
.intelligence-tab.active .intelligence-tab-copy small{color:color-mix(in srgb,currentColor 62%,transparent)}

.global-ai-modebar{
  display:flex;align-items:center;gap:8px;margin-top:2px;padding:10px 11px;
  border:1px solid var(--line);border-radius:14px;background:var(--surface2);border-bottom:1px solid var(--line);
}
.global-ai-modebar label{font-size:8px;letter-spacing:1.4px;font-weight:900;color:var(--muted)}
.global-ai-modebar select{min-height:38px;padding:8px 10px;border-radius:11px!important;background:var(--surface)!important}
.global-ai-agent-badge{padding:6px 9px;border-radius:999px;background:color-mix(in srgb,var(--lime) 18%,var(--surface));border:1px solid color-mix(in srgb,var(--lime) 42%,var(--line));color:var(--lime-deep,#6b9d13);font-size:8px;letter-spacing:.75px;font-weight:900;white-space:nowrap}
.global-ai-quota{padding:6px 9px;border-radius:999px;background:var(--surface);font-size:8px;font-weight:800;white-space:nowrap}

.global-ai-shortcuts{margin-top:10px;border:1px solid var(--line);border-radius:15px;background:var(--surface2);overflow:hidden}
.global-ai-shortcuts-toggle{padding:11px 12px}
.global-ai-shortcuts-toggle:hover{background:color-mix(in srgb,var(--surface) 48%,transparent)}
.global-ai-shortcuts-chevron{width:20px;height:20px;border-radius:8px;background:var(--surface);box-shadow:0 1px 0 rgba(255,255,255,.4) inset}
.global-ai-shortcuts-content{padding:0 12px 12px}
.global-ai-actions{padding:10px 0 9px!important;border:0!important}
.global-ai-actions-label{margin-bottom:8px}
.global-ai-action-chips{gap:7px}
.global-ai-action-chips button,.global-ai-suggestions button{
  min-height:32px;padding:0 11px;border-radius:11px;
  background:var(--surface)!important;border:1px solid var(--line);box-shadow:0 2px 7px rgba(0,0,0,.04);
  font-size:9px;font-weight:800;color:var(--ink);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.global-ai-action-chips button:hover,.global-ai-suggestions button:hover{transform:translateY(-1px);border-color:var(--lime);box-shadow:0 7px 15px rgba(0,0,0,.06)}

.global-ai-thread{padding:10px 2px 12px;gap:13px}
.global-ai-msg{padding:12px 13px;border-radius:17px;max-width:92%;box-shadow:0 6px 18px rgba(20,20,15,.035)}
.global-ai-msg.assistant{border-color:var(--line);background:color-mix(in srgb,var(--surface2) 86%,var(--surface));border-left:3px solid color-mix(in srgb,var(--lime) 55%,var(--line));padding-left:12px}
.global-ai-msg p{font-size:12.25px;line-height:1.62}

.global-ai-form{
  gap:6px;margin-top:4px;padding:6px;border:1px solid var(--line);border-radius:18px;
  background:var(--surface2);box-shadow:0 5px 18px rgba(20,20,15,.045);align-items:flex-end;
}
.global-ai-form textarea{
  min-height:48px;max-height:140px;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:13px;padding:9px 8px!important;
}
.global-ai-form textarea:focus{outline:none!important}
.global-ai-pdf-btn{
  width:38px;height:38px;border:1px solid var(--line);background:var(--surface);border-radius:12px;color:var(--muted);font-size:15px;
  box-shadow:0 2px 8px rgba(0,0,0,.035)
}
.global-ai-pdf-btn:hover{color:var(--ink);background:var(--surface2);border-color:var(--lime)}
.global-ai-form .btn{
  min-height:42px;height:42px;padding:0 14px!important;border-radius:12px!important;font-size:10px;font-weight:850;
  border:1px solid var(--ink);box-shadow:0 7px 16px rgba(0,0,0,.11);transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;
}
.global-ai-form .btn:hover{transform:translateY(-1px);box-shadow:0 10px 21px rgba(0,0,0,.15)}
.global-ai-drawer.agent-active .global-ai-form .btn{background:var(--lime)!important;color:#11130f!important;border-color:var(--lime)!important;box-shadow:0 8px 19px rgba(145,205,45,.19)}
.global-ai-drawer.agent-active .global-ai-form .btn:hover{box-shadow:0 11px 24px rgba(145,205,45,.24)}
.global-ai-status{font-size:9px;margin:5px 4px 0}

[data-theme=dark] .global-ai-drawer{background:linear-gradient(180deg,#151814,#121510);box-shadow:0 30px 100px rgba(0,0,0,.52),0 1px 0 rgba(255,255,255,.035) inset}
[data-theme=dark] .intelligence-tabs{background:#1a1d19;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
[data-theme=dark] .intelligence-tab:hover{background:#23271f}
[data-theme=dark] .global-ai-modebar,[data-theme=dark] .global-ai-shortcuts{background:#191c18}
[data-theme=dark] .global-ai-shortcuts-toggle:hover{background:#24281f}
[data-theme=dark] .global-ai-action-chips button,[data-theme=dark] .global-ai-suggestions button{background:#21251f!important;border-color:#34392f;color:#eef1e9}
[data-theme=dark] .global-ai-form{background:#191c18}
[data-theme=dark] .global-ai-form textarea{color:#eef1e9}

@media(max-width:1000px) and (min-width:721px){.global-ai-drawer{width:390px}}
@media(max-width:720px){
  .global-ai-drawer{width:calc(100vw - 16px);padding:16px;border-radius:22px}
  .global-ai-head h3{font-size:22px}
  .global-ai-head .icon-btn{width:36px;height:36px;flex-basis:36px;border-radius:11px}
  .intelligence-tabs{margin-top:12px;border-radius:17px;padding:4px}
  .intelligence-tab{height:55px;border-radius:13px;padding:0 11px;gap:8px}
  .intelligence-tab-icon{width:28px;height:28px;flex-basis:28px;border-radius:9px}
  .intelligence-tab-copy b{font-size:12px}
  .intelligence-tab-copy small{font-size:8px}
  .global-ai-modebar{flex-wrap:wrap;padding:9px}
  .global-ai-modebar select{flex:1;min-width:0}
  .global-ai-agent-badge{order:3}
  .global-ai-quota{order:4}
  .global-ai-shortcuts{margin-top:8px}
  .global-ai-thread{padding-top:8px}
  .global-ai-form .btn{padding-inline:12px!important}
}

/* Learning upgrades: evidence-based flashcard recall, Exam Readiness and ZevScan */
.flashcard-subject-assign{display:flex;flex-direction:column;gap:7px;min-width:220px;max-width:300px}.flashcard-subject-assign label{font-size:12px;font-weight:700;color:var(--ink)}.flashcard-subject-assign select,.zevscan-form select{width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);padding:10px 12px;font:inherit}.flashcard-subject-assign small{color:var(--muted);font-size:11px;line-height:1.5}.readiness-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.readiness-head h3{margin:6px 0}.readiness-head p{margin:0;color:var(--muted);font-size:12px}.readiness-score{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:3px}.readiness-score strong{font-size:30px;letter-spacing:-.04em}.readiness-score small{font-size:11px;color:var(--muted)}.readiness-score.is-incomplete strong{font-size:16px;letter-spacing:0}.readiness-signals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.readiness-signal{border:1px solid var(--line);background:var(--surface2);border-radius:12px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.readiness-signal>div{min-width:0}.readiness-signal strong{display:block;font-size:12px}.readiness-signal small{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45}.readiness-signal>b{font-size:14px;white-space:nowrap}.readiness-signal.missing{opacity:.78}.readiness-footnote{margin-top:13px;color:var(--muted);font-size:11px;line-height:1.6}.practice-test-panel{margin:16px 0;padding:16px;background:var(--surface2)}.practice-test-panel .panel-head{margin-bottom:10px}.practice-test-form{border:1px solid var(--line);border-radius:14px;padding:14px;margin:12px 0;background:var(--surface)}.practice-test-form[hidden]{display:none}.practice-test-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.practice-test-actions{display:flex;justify-content:flex-end;gap:8px}.practice-test-error{font-size:12px;color:var(--danger);margin:8px 0 0}.practice-test-list{display:grid;gap:8px;margin-top:12px}.practice-test-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.practice-test-row strong,.practice-test-row small{display:block}.practice-test-row strong{font-size:12px}.practice-test-row small{margin-top:3px;color:var(--muted);font-size:11px}.practice-test-row>b{font-size:12px;white-space:nowrap}.exam-readiness-overview{margin:24px 0}.exam-readiness-overview>.section-heading{margin-bottom:12px}.exam-readiness-overview .section-heading h2{margin:5px 0;font-size:22px}.exam-readiness-overview .section-heading p{margin:0;color:var(--muted);font-size:12px}.exam-readiness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.readiness-link-card{display:block;text-align:left;width:100%;border:1px solid var(--line);border-radius:18px;padding:16px;background:var(--surface);color:var(--ink);cursor:pointer;transition:transform .16s,border-color .16s}.readiness-link-card:hover{transform:translateY(-2px);border-color:var(--accent,var(--lime))}.readiness-mini-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.readiness-mini-top>strong{font-size:24px}.readiness-link-card h3{margin:10px 0 4px;font-size:16px}.readiness-link-card p,.readiness-link-card small{display:block;color:var(--muted);font-size:11px;line-height:1.5;margin:0 0 10px}.readiness-link-card .bar{margin:10px 0}.readiness-subcard{border:1px solid var(--line);border-radius:14px;padding:14px;margin:15px 0;background:var(--surface2)}.readiness-subcard .readiness-head{margin-bottom:10px}.readiness-subcard .readiness-head h3{font-size:15px}.readiness-subcard .readiness-signals{gap:7px}.readiness-subcard .readiness-signal{padding:9px;background:var(--surface)}.zevscan-panel{margin:0 0 18px;padding:clamp(16px,3vw,24px);border:1px solid var(--line);overflow:hidden}.zevscan-intro{display:flex;justify-content:space-between;align-items:center;gap:18px}.zevscan-intro h2{margin:8px 0;font-size:clamp(20px,3vw,28px);letter-spacing:-.035em}.zevscan-intro p{max-width:700px;color:var(--muted);line-height:1.65;font-size:13px;margin:0}.zevscan-mark{width:58px;height:58px;flex:0 0 auto;border-radius:18px;display:grid;place-items:center;background:var(--surface2);border:1px solid var(--line);font-size:36px}.zevscan-form{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(170px,.8fr) auto;gap:12px;align-items:end;margin-top:18px}.zevscan-file-label{display:flex;flex-direction:column;gap:7px;padding:12px;border:1px dashed var(--line);border-radius:13px;background:var(--surface2);min-width:0}.zevscan-file-label>span,.zevscan-form .field>label{font-size:12px;font-weight:700}.zevscan-file-label input{max-width:100%;font-size:12px}.zevscan-file-label small{color:var(--muted);font-size:11px}.zevscan-form .field{margin:0}.zevscan-form .btn{white-space:nowrap}.zevscan-status{color:var(--muted);font-size:12px;line-height:1.6;margin-top:10px}.zevscan-preview{margin-top:14px}.zevscan-preview:empty{display:none}.zevscan-preview-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:0 0 12px;margin-bottom:12px}.zevscan-preview-head h3{margin:4px 0}.zevscan-preview-head p{font-size:12px;color:var(--muted);margin:0}.zevscan-notes{border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--surface2)}.zevscan-notes summary{font-weight:700;font-size:12px;cursor:pointer}.zevscan-notes>div{margin-top:10px;font-size:13px;line-height:1.7;overflow-wrap:anywhere}.zevscan-list{margin-top:14px}.zevscan-list h4{margin:0 0 8px}.zevscan-list article{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.zevscan-list article>span{font-size:11px;color:var(--muted);padding-top:3px;min-width:22px}.zevscan-list article strong{font-size:12px}.zevscan-list article p{margin:5px 0 0;font-size:12px;color:var(--muted);line-height:1.5}.zevscan-review-note{font-size:11px;color:var(--muted);line-height:1.6;margin-top:12px}@media(max-width:760px){.readiness-signals{grid-template-columns:1fr}.exam-readiness-grid{grid-template-columns:1fr}.zevscan-form{grid-template-columns:1fr}.zevscan-form .btn{width:100%}.practice-test-fields{grid-template-columns:1fr}.flashcard-studio-hero{flex-wrap:wrap}.flashcard-subject-assign{max-width:none;width:100%}.readiness-head{gap:10px}.readiness-score strong{font-size:24px}.zevscan-mark{width:44px;height:44px;font-size:28px}.practice-test-row{align-items:flex-start;flex-direction:column}}


/* AI response typography: readable structure without heavy UI chrome */
.zv-markdown{min-width:0;overflow-wrap:anywhere;color:inherit;font-size:13px;line-height:1.7}
.zv-markdown>p{margin:0 0 11px;white-space:normal}
.zv-markdown>p:last-child{margin-bottom:0}
.zv-markdown h2,.zv-markdown h3,.zv-markdown h4,.zv-markdown h5{font-weight:760;letter-spacing:-.025em;line-height:1.28;margin:17px 0 7px;color:inherit}
.zv-markdown h2{font-size:18px}.zv-markdown h3{font-size:16px}.zv-markdown h4,.zv-markdown h5{font-size:14px}
.zv-markdown h2:first-child,.zv-markdown h3:first-child,.zv-markdown h4:first-child{margin-top:0}
.zv-markdown ul,.zv-markdown ol{margin:7px 0 13px;padding-left:22px}
.zv-markdown li{padding-left:2px;margin:4px 0;line-height:1.65}
.zv-markdown li::marker{color:var(--lime-deep,#78a91e)}
.zv-markdown blockquote{margin:11px 0;padding:9px 13px;border-left:3px solid var(--lime,#a9d73f);background:color-mix(in srgb,var(--surface2) 78%,transparent);border-radius:0 10px 10px 0}
.zv-markdown blockquote p{margin:0 0 6px}.zv-markdown blockquote p:last-child{margin-bottom:0}
.zv-markdown a{color:inherit;text-decoration:underline;text-decoration-color:var(--lime-deep,#78a91e);text-underline-offset:2px}
.zv-markdown hr{border:0;border-top:1px solid var(--line);margin:14px 0}
.zv-markdown code{font: .9em/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;background:color-mix(in srgb,var(--surface2) 90%,var(--line));border:1px solid var(--line);border-radius:5px;padding:2px 5px;overflow-wrap:anywhere}
.zv-code-block{position:relative;overflow:auto;max-width:100%;margin:12px 0;padding:30px 13px 13px;border:1px solid #30352b;border-radius:13px;background:#151813;color:#f2f5eb;font:12px/1.65 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre;tab-size:2}
.zv-code-block code{display:block;background:transparent;border:0;padding:0;color:inherit;white-space:pre;font:inherit}
.zv-code-lang{position:absolute;top:8px;left:12px;color:#bac5a9;font:700 9px/1.2 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.zv-table-wrap{width:100%;max-width:100%;overflow:auto;margin:12px 0;border:1px solid var(--line);border-radius:12px;background:var(--surface);-webkit-overflow-scrolling:touch}
.zv-table-wrap table{width:100%;min-width:360px;border-collapse:separate;border-spacing:0;font-size:12px;line-height:1.5}
.zv-table-wrap th,.zv-table-wrap td{padding:9px 11px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;vertical-align:top;white-space:normal}
.zv-table-wrap th:last-child,.zv-table-wrap td:last-child{border-right:0}.zv-table-wrap tbody tr:last-child td{border-bottom:0}
.zv-table-wrap th{background:var(--surface2);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.zv-table-wrap th.center,.zv-table-wrap td.center{text-align:center}.zv-table-wrap th.right,.zv-table-wrap td.right{text-align:right}
.zv-diagram{width:100%;overflow:auto;margin:12px 0;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface2);color:var(--muted);-webkit-overflow-scrolling:touch}
.zv-diagram svg{display:block;max-width:100%;height:auto;margin:0 auto;color:var(--muted)}
.zv-diagram-node{fill:var(--surface);stroke:var(--line);stroke-width:1.5}.zv-diagram-text{fill:var(--ink);font:600 12px system-ui,sans-serif}.zv-diagram-label{fill:var(--muted);font:600 10px system-ui,sans-serif}
.global-ai-msg.assistant>.zv-markdown{font-size:12px;line-height:1.62;max-width:100%}.global-ai-msg.assistant>.zv-markdown h2{font-size:15px}.global-ai-msg.assistant>.zv-markdown h3{font-size:14px}.global-ai-msg.assistant>.zv-markdown h4{font-size:13px}
.global-ai-msg.assistant>.zv-markdown .zv-table-wrap{margin:9px 0}.global-ai-msg.assistant>.zv-markdown .zv-table-wrap table{min-width:300px;font-size:10px}.global-ai-msg.assistant>.zv-markdown .zv-table-wrap th,.global-ai-msg.assistant>.zv-markdown .zv-table-wrap td{padding:7px 8px}
.ai-message{width:fit-content;max-width:min(820px,96%);align-items:flex-start}.ai-message-assistant .ai-message-body{width:100%;max-width:78ch;min-width:0}.ai-message .zv-markdown{max-width:100%}.agent-thread{scrollbar-gutter:stable}

/* ZevScan — clear upload, analyze, review flow */
.zevscan-panel{padding:clamp(18px,2.4vw,30px);border-radius:24px;background:var(--surface)}
.zevscan-intro{align-items:flex-start;gap:22px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.zevscan-intro h2{font-size:clamp(23px,2.7vw,32px);line-height:1.12;letter-spacing:-.045em;margin:8px 0 10px;max-width:650px}
.zevscan-intro p{max-width:720px;font-size:13px;line-height:1.7}
.zevscan-trustline{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:13px;font-size:10px;color:var(--muted)}
.zevscan-trustline i{width:4px;height:4px;border-radius:50%;background:var(--lime-deep,#77a91b)}
.zevscan-mark{width:48px;height:48px;border-radius:15px;color:var(--ink);background:var(--surface2);display:grid;place-items:center}
.zevscan-mark svg{width:22px;height:22px}
.zevscan-form{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(220px,.8fr);gap:14px;margin-top:18px;align-items:stretch}
.zevscan-dropzone{position:relative;display:flex;align-items:center;gap:14px;padding:20px;border:1px dashed color-mix(in srgb,var(--muted) 50%,var(--line));border-radius:17px;background:var(--surface2);min-height:130px;cursor:pointer;transition:border-color .16s,background .16s,box-shadow .16s}
.zevscan-dropzone:hover,.zevscan-dropzone.is-dragging,.zevscan-dropzone:focus-within{border-color:var(--lime-deep,#78a91e);box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 15%,transparent);outline:0}
.zevscan-drop-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border-radius:13px;background:var(--surface);border:1px solid var(--line);color:var(--lime-deep,#78a91e)}
.zevscan-drop-icon svg{width:23px;height:23px}
.zevscan-drop-copy{display:flex;flex-direction:column;gap:5px;min-width:0}.zevscan-drop-copy strong{font-size:13px;line-height:1.4}.zevscan-drop-copy>span{font-size:12px;color:var(--muted)}.zevscan-drop-copy u{text-underline-offset:3px;text-decoration-color:var(--lime-deep,#78a91e)}.zevscan-drop-copy small{font-size:10px;color:var(--muted);line-height:1.4}
.zevscan-file-input{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;opacity:0!important}
.zevscan-options{display:flex;flex-direction:column;gap:11px;min-width:0}.zevscan-options .field{margin:0}.zevscan-options .field>label{display:block;font-size:11px;font-weight:750;margin:0 0 6px}.zevscan-options .field>label span{font-weight:500;color:var(--muted)}.zevscan-form select{font-size:12px;padding:11px 12px}
.zevscan-selected-file{display:flex;align-items:center;gap:10px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.zevscan-selected-file[hidden]{display:none}.zevscan-file-badge{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:10px;background:var(--surface2);color:var(--ink);font-size:9px;font-weight:850;letter-spacing:.04em}.zevscan-file-info{min-width:0;flex:1}.zevscan-file-info strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.zevscan-file-info small{display:block;margin-top:3px;color:var(--muted);font-size:10px}.zevscan-remove-file{width:28px;height:28px;border:1px solid var(--line);border-radius:8px;background:var(--surface2);color:var(--ink);font-size:18px;cursor:pointer;flex:0 0 auto}
.zevscan-step-note{display:flex;align-items:center;gap:9px;color:var(--muted)}.zevscan-step-number{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:var(--surface2);font-size:10px;font-weight:800;color:var(--ink)}.zevscan-step-note strong,.zevscan-step-note small{display:block}.zevscan-step-note strong{font-size:10px;color:var(--ink)}.zevscan-step-note small{font-size:10px;margin-top:3px}
.zevscan-actions{grid-column:1/-1;display:flex;justify-content:flex-end;padding-top:2px}.zevscan-actions .btn{min-height:44px;padding:0 18px;white-space:nowrap}.zevscan-actions .btn:disabled{opacity:.48;cursor:not-allowed}
.zevscan-status{margin-top:12px;padding:0;font-size:12px;line-height:1.55;overflow-wrap:anywhere}.zevscan-status:empty,[hidden].zevscan-status{display:none}.zevscan-status[data-state="progress"]{padding:10px 12px;border-radius:10px;background:var(--surface2);color:var(--ink)}.zevscan-status[data-state="success"]{padding:10px 12px;border-radius:10px;background:color-mix(in srgb,var(--lime) 13%,var(--surface));color:var(--ink)}.zevscan-status[data-state="error"]{padding:10px 12px;border:1px solid #dca8a4;border-radius:10px;background:#fff5f3;color:#8b3028}
.zevscan-vault-note{margin-top:7px;font-size:10px;color:var(--muted)}.zevscan-preview{padding-top:4px}.zevscan-preview-head{align-items:flex-start}.zevscan-preview-head h3{font-size:20px;letter-spacing:-.035em}.zevscan-notes{padding:16px;border-radius:15px}.zevscan-notes>div{font-size:13px;line-height:1.7}.zevscan-notes .zv-markdown h2{font-size:17px}.zevscan-notes .zv-markdown h3{font-size:15px}.zevscan-notes .zv-markdown ul,.zevscan-notes .zv-markdown ol{padding-left:20px}
[data-theme=dark] .zevscan-status[data-state="error"]{background:#2a1c1a;color:#ffd9d5;border-color:#633b35}
@media(max-width:900px){.zevscan-form{grid-template-columns:1fr}.zevscan-options{display:grid;grid-template-columns:1fr 1fr;align-items:start}.zevscan-actions{justify-content:stretch}.zevscan-actions .btn{width:100%}}
@media(max-width:600px){.zevscan-panel{padding:17px;border-radius:19px}.zevscan-intro{gap:12px;padding-bottom:17px}.zevscan-intro h2{font-size:24px}.zevscan-intro p{font-size:12px}.zevscan-mark{width:38px;height:38px;flex-basis:38px}.zevscan-trustline{font-size:9px}.zevscan-form{gap:11px}.zevscan-dropzone{min-height:118px;padding:14px;gap:11px}.zevscan-drop-icon{width:38px;height:38px;flex-basis:38px}.zevscan-drop-copy strong{font-size:12px}.zevscan-options{grid-template-columns:1fr}.zevscan-actions .btn{white-space:normal}.ai-message{max-width:100%;width:100%}.ai-message-assistant .ai-message-body{max-width:100%}.zv-table-wrap table{min-width:320px}.zv-diagram{padding:8px}}

/* Zevuna AI UX pass — clearer hierarchy, narrower reading measure, compact agent thread. */
.agent-live{padding:clamp(16px,2.3vw,26px);border-radius:22px}
.agent-live-head{padding-bottom:12px;border-bottom:1px solid var(--line)}
.agent-live-head h3{margin:6px 0 0;font-size:clamp(18px,2vw,22px);letter-spacing:-.035em}
.agent-thread{display:flex;flex-direction:column;align-items:stretch;gap:16px;min-height:120px;max-height:min(62vh,660px);padding:20px 2px 12px;overflow:auto;scroll-behavior:smooth}
.agent-thread .ai-message{width:fit-content;max-width:min(760px,92%);min-width:0;margin:0;flex:0 0 auto}
.agent-thread .ai-message-assistant{align-self:flex-start}
.agent-thread .ai-message-user{align-self:flex-end;max-width:min(560px,78%)}
.agent-thread .ai-message-assistant .ai-message-body{width:auto;max-width:68ch;padding:16px 19px;border-radius:16px 17px 17px 5px;box-shadow:0 4px 16px rgba(20,20,15,.035)}
.agent-thread .ai-message-assistant .ai-copy{max-width:68ch;font-size:13px;line-height:1.74;overflow-wrap:anywhere}
.agent-thread .ai-message-assistant .ai-copy .zv-markdown h2{font-size:19px;margin-top:20px}
.agent-thread .ai-message-assistant .ai-copy .zv-markdown h3{font-size:16px;margin-top:17px}
.agent-thread .ai-message-assistant .ai-copy .zv-markdown h4{font-size:14px;margin-top:14px}
.agent-thread .ai-message-assistant .ai-copy .zv-markdown>ol>li::marker{font-weight:800}
.agent-thread .ai-message-user .ai-message-body{max-width:100%;padding:11px 14px}
.agent-thread .ai-message-user .ai-copy{font-size:12px;line-height:1.6}
.agent-form{gap:12px;padding-top:16px}
.agent-form textarea{min-height:58px;max-height:150px;font-size:13px;line-height:1.55}
.agent-form .btn{min-height:48px;border-radius:13px}
.global-ai-msg.assistant{max-width:100%;width:100%;min-width:0}
.global-ai-msg.assistant>.zv-markdown{font-size:12.5px;line-height:1.7;max-width:68ch;overflow-wrap:anywhere}
.global-ai-msg.assistant>.zv-markdown h2{font-size:16px}
.global-ai-msg.assistant>.zv-markdown h3{font-size:14px}
.global-ai-msg.assistant>.zv-markdown ol,.global-ai-msg.assistant>.zv-markdown ul{padding-left:19px}
.global-ai-msg.assistant>.zv-markdown li{margin:4px 0}
.global-ai-msg.assistant>.zv-markdown .zv-table-wrap{max-width:100%;margin:10px 0}
.global-ai-msg.assistant>.zv-markdown .zv-table-wrap table{min-width:280px;font-size:11px}
.global-ai-msg.assistant>.zv-markdown .zv-diagram{max-width:100%}
.zevscan-panel{box-shadow:0 10px 32px rgba(30,35,18,.025)}
.zevscan-intro{gap:16px}
.zevscan-intro>div:first-child{min-width:0;max-width:760px}
.zevscan-trustline{font-size:11px;line-height:1.5}
.zevscan-form{grid-template-columns:minmax(0,1.15fr) minmax(230px,.85fr);gap:16px}
.zevscan-dropzone{align-items:center;min-height:148px;padding:22px;background:color-mix(in srgb,var(--surface2) 68%,var(--surface))}
.zevscan-drop-copy strong{font-size:14px}
.zevscan-drop-copy>span{font-size:12px}
.zevscan-drop-copy small{font-size:11px}
.zevscan-options{justify-content:center;padding:2px 0}
.zevscan-selected-file{margin-top:2px}
.zevscan-step-note{padding:3px 1px}
.zevscan-actions .btn{min-height:46px;border-radius:13px}
.zevscan-status[data-state="progress"]{display:flex;align-items:center;gap:8px}
.zevscan-status[data-state="progress"]:before{content:"";width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:var(--lime-deep,#78a91e);box-shadow:0 0 0 3px color-mix(in srgb,var(--lime) 18%,transparent)}
.zevscan-preview{margin-top:16px;padding:17px;border:1px solid var(--line);border-radius:17px;background:color-mix(in srgb,var(--surface2) 48%,var(--surface))}
.zevscan-preview-head{border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:14px}
.zevscan-preview-head .btn{min-height:40px;border-radius:11px}
.zevscan-list{padding:0 2px}
.zevscan-list article{align-items:flex-start}
.zevscan-list article>span{display:grid;place-items:center;width:24px;height:24px;min-width:24px;border:1px solid var(--line);border-radius:8px;background:var(--surface2);font-size:10px}
.zevscan-list article strong{font-size:13px;line-height:1.45}
.zevscan-list article p{font-size:12px;line-height:1.6}
@media(max-width:760px){.agent-live{padding:16px}.agent-thread{max-height:58vh;padding-top:15px;gap:13px}.agent-thread .ai-message{max-width:96%}.agent-thread .ai-message-assistant .ai-message-body{padding:14px}.agent-thread .ai-message-user{max-width:86%}.agent-form{flex-direction:column;align-items:stretch}.agent-form .btn{width:100%}.zevscan-form{grid-template-columns:1fr}.zevscan-dropzone{min-height:126px}}
@media(prefers-reduced-motion:reduce){.agent-thread{scroll-behavior:auto}.zevscan-dropzone,.readiness-link-card{transition:none!important}}

/* Zevuna site-wide UX system — 0.90
   Consolidates the most important interaction and layout rules in one final layer.
   This is intentionally restrained: strong hierarchy, predictable controls, no decorative motion dependency. */
:root{
  --zv-space-1:4px;--zv-space-2:8px;--zv-space-3:12px;--zv-space-4:16px;
  --zv-space-5:20px;--zv-space-6:24px;--zv-space-8:32px;
  --zv-content-width:1360px;--zv-reading-width:72ch;
  --zv-radius-sm:10px;--zv-radius-md:14px;--zv-radius-lg:20px;
  --zv-focus-ring:0 0 0 3px color-mix(in srgb,var(--lime,#b5e83a) 35%,transparent);
}
html{scroll-padding-top:88px;scroll-behavior:smooth}
body{font-kerning:normal;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.skip-link{position:fixed;z-index:1000;left:16px;top:12px;transform:translateY(-180%);padding:11px 15px;border-radius:10px;background:var(--ink,#171816);color:var(--surface,#fffdf7);font-size:13px;font-weight:800;text-decoration:none;box-shadow:0 8px 28px rgba(0,0,0,.18)}
.skip-link:focus{transform:translateY(0);outline:3px solid var(--lime,#b5e83a);outline-offset:3px}
:where(a,button,input,select,textarea,[role="button"],[tabindex]):focus-visible{outline:2px solid var(--lime-deep,#78a91e);outline-offset:3px;box-shadow:var(--zv-focus-ring)}
:where(button,input,select,textarea){font:inherit}
button:disabled,[aria-disabled="true"]{cursor:not-allowed!important;opacity:.58}
.page{width:100%;max-width:var(--zv-content-width);padding:clamp(24px,3vw,40px) clamp(18px,3.15vw,44px) 68px}
.page-head{align-items:flex-end;gap:22px;margin-bottom:clamp(24px,3vw,36px)}
.page-head h1{max-width:18ch;font-size:clamp(40px,4.65vw,62px);font-weight:850;line-height:.98;letter-spacing:-.055em;overflow-wrap:anywhere;text-wrap:balance;margin:7px 0 10px}
.page-head p{max-width:72ch;font-size:14px;line-height:1.7;text-wrap:pretty}
.page-head .actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.page-head .actions .btn{min-height:42px}
.panel{border-radius:var(--zv-radius-lg);border-color:color-mix(in srgb,var(--line) 90%,transparent);box-shadow:0 2px 10px rgba(28,30,22,.018)}
.panel:hover{box-shadow:0 8px 26px rgba(28,30,22,.045)}
.panel-head{gap:14px;align-items:flex-start}
.eyebrow{line-height:1.4}
.btn,.top-btn,.icon-btn,.icon-button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.btn,.top-btn{transition:background-color .16s,border-color .16s,color .16s,box-shadow .16s,transform .16s}
.btn:hover,.top-btn:hover{transform:translateY(-1px)}
.btn:active,.top-btn:active{transform:translateY(0)}
input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{min-width:0;max-width:100%}
input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:var(--lime-deep,#78a91e)!important}
textarea{resize:vertical}
:where(.page, .global-ai-drawer, .modal, .app-more-sheet) :where(p,li,small,label){overflow-wrap:anywhere}
:where(.page, .global-ai-drawer, .modal) img, :where(.page, .global-ai-drawer, .modal) svg{max-width:100%}
.nav-item[aria-current="page"]{background:color-mix(in srgb,var(--lime,#b5e83a) 13%,var(--surface));color:var(--ink);font-weight:800;box-shadow:inset 2px 0 0 var(--lime-deep,#78a91e)}
.nav-item[aria-current="page"] .nav-icon{color:var(--lime-deep,#78a91e)}
.topbar{gap:12px}
.topbar .crumb{min-width:0}
.topbar .crumb strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.topbar .top-actions{min-width:0;gap:7px}
.topbar .top-actions .top-btn{flex-shrink:0}
/* Give the Agent clear priorities: useful action first, large decoration second. */
.agent-hero{grid-template-columns:minmax(0,1.25fr) minmax(210px,.75fr);gap:clamp(18px,2.5vw,28px);padding:clamp(22px,2.8vw,32px);border-radius:24px}
.agent-hero h2{max-width:10ch;font-size:clamp(38px,4.6vw,58px);line-height:.99;letter-spacing:-.058em;text-wrap:balance}
.agent-hero p{max-width:58ch;font-size:13px;line-height:1.75}
.agent-orbit{min-height:220px}
.agent-orbit-ring{width:min(100%,210px);height:auto;aspect-ratio:1}
.agent-orbit-core{width:116px;height:116px;border-radius:30px}
.agent-proof span{font-size:10px}
.agent-live{border:1px solid var(--line);box-shadow:0 8px 26px rgba(28,30,22,.035)}
.agent-thread{overscroll-behavior:contain;scrollbar-gutter:stable}
.agent-thread:empty{min-height:0;padding:0}
.agent-thread .ai-message-assistant .ai-message-body{box-shadow:0 2px 10px rgba(20,20,15,.025)}
.agent-missions{margin-top:14px}
.agent-mission-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.agent-mission{min-height:116px;padding:15px}
.agent-mission strong{font-size:15px;line-height:1.3}
.agent-mission small{max-width:90%;font-size:11px;line-height:1.45}
/* AI drawer: make empty state a useful starting surface, not a blank cavity. */
.global-ai-empty{width:100%;max-width:360px;margin:auto;padding:20px 4px;text-align:left}
.global-ai-empty-mark{display:grid;place-items:center;width:42px;height:42px;margin:0 0 15px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--lime,#b5e83a) 18%,var(--surface));font-size:20px;color:var(--lime-deep,#78a91e)}
.global-ai-empty strong{display:block;font-size:17px;line-height:1.35;letter-spacing:-.035em}
.global-ai-empty p{margin:7px 0 16px;font-size:12px;line-height:1.65}
.global-ai-empty-actions{display:grid;grid-template-columns:1fr;gap:7px}
.global-ai-empty-actions button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:42px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);text-align:left;font-size:11px;font-weight:750;cursor:pointer;transition:border-color .16s,background .16s,transform .16s}
.global-ai-empty-actions button:hover{border-color:var(--lime-deep,#78a91e);background:var(--surface2);transform:translateY(-1px)}
.global-ai-empty-actions button span{color:var(--lime-deep,#78a91e);font-size:14px}
.global-ai-thread{overscroll-behavior:contain;scrollbar-gutter:stable}
.global-ai-msg{line-height:1.65}
.global-ai-msg.assistant{width:100%;max-width:100%;padding:14px;border-radius:14px 14px 14px 5px}
.global-ai-msg.user{max-width:90%;padding:11px 13px;border-radius:14px 14px 5px 14px}
.global-ai-msg.assistant>.zv-markdown{max-width:100%;font-size:13px;line-height:1.75}
.global-ai-msg.assistant>.zv-markdown h2{margin:18px 0 8px;font-size:18px;line-height:1.25;letter-spacing:-.035em}
.global-ai-msg.assistant>.zv-markdown h3{margin:15px 0 7px;font-size:15px;line-height:1.3;letter-spacing:-.02em}
.global-ai-msg.assistant>.zv-markdown p{font-size:13px;line-height:1.75}
.global-ai-msg.assistant>.zv-markdown .zv-table-wrap{margin:13px 0}
.global-ai-msg.assistant>.zv-markdown .zv-diagram{margin:13px 0}
/* ZevScan remains available, but is secondary to the user's library and current cards. */
.zevscan-panel{margin-top:clamp(18px,2.5vw,28px);border-color:color-mix(in srgb,var(--line) 85%,transparent)}
.zevscan-intro h2{max-width:22ch}
.zevscan-form{align-items:start}
.zevscan-dropzone{min-width:0}
.zevscan-file-info strong{overflow-wrap:anywhere}
.flashcard-overview{gap:20px;border-radius:22px}
.flashcard-overview-copy h2{font-size:clamp(27px,3.1vw,40px);line-height:1.08;letter-spacing:-.05em;text-wrap:balance}
.flashcard-overview-copy p{max-width:60ch;line-height:1.65}
.flashcard-overview-metrics>div{min-width:88px}
.flashcards-layout{align-items:stretch}
.deck-card{min-width:0}
/* Avoid mobile-only shell styles being applied to desktop, while keeping mobile layouts compact. */
@media(min-width:1001px){.page-head .actions{max-width:50%}.agent-live{margin-top:16px}.agent-thread{max-height:min(55vh,600px)}}
@media(max-width:1000px){.page{padding:28px 24px 64px}.page-head{align-items:flex-start}.page-head h1{font-size:clamp(38px,5.7vw,54px)}.agent-hero{grid-template-columns:minmax(0,1fr) minmax(180px,.65fr)}.agent-orbit{min-height:180px}.agent-orbit-ring{max-width:175px}.agent-orbit-core{width:98px;height:98px}.agent-mission-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar .top-actions .top-btn{padding-inline:10px}}
@media(max-width:720px){
  html{scroll-padding-top:72px}
  .page{padding:22px 16px 88px;max-width:100%}
  .page-head{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-bottom:22px}
  .page-head h1{max-width:100%;font-size:clamp(34px,9.5vw,46px);line-height:1.01;letter-spacing:-.055em;margin:5px 0 8px}
  .page-head p{font-size:13px;line-height:1.65}
  .page-head .actions{display:flex;width:100%;justify-content:stretch;gap:8px}
  .page-head .actions .btn{flex:1 1 auto;min-width:0;white-space:normal;padding-inline:11px;font-size:12px}
  .panel{border-radius:18px}
  .agent-hero{grid-template-columns:1fr;padding:20px;gap:14px;border-radius:20px}
  .agent-hero h2{max-width:12ch;font-size:clamp(36px,10vw,48px);letter-spacing:-.06em}
  .agent-hero p{font-size:12px}
  .agent-orbit{min-height:125px;max-height:160px}
  .agent-orbit-ring{max-width:140px}
  .agent-orbit-core{width:82px;height:82px;border-radius:24px}
  .agent-proof span{padding:7px 9px}
  .agent-live{padding:15px;border-radius:18px}
  .agent-thread{max-height:52vh;min-height:80px;padding:14px 0 10px}
  .agent-thread .ai-message{width:100%;max-width:100%}
  .agent-thread .ai-message-assistant .ai-message-body{max-width:100%;padding:12px;border-radius:13px}
  .agent-thread .ai-message-user{max-width:90%}
  .agent-thread .ai-message-assistant .ai-copy{font-size:12px;line-height:1.7}
  .agent-form{gap:8px}
  .agent-form textarea{min-height:58px;font-size:13px}
  .agent-form .btn{white-space:normal}
  .agent-mission-grid{grid-template-columns:1fr}
  .agent-mission{min-height:unset;padding:15px}
  .global-ai-empty{max-width:100%;padding:14px 2px}
  .global-ai-empty-actions{grid-template-columns:1fr}
  .global-ai-msg.assistant{padding:12px}
  .global-ai-msg.assistant>.zv-markdown,.global-ai-msg.assistant>.zv-markdown p{font-size:12px}
  .flashcard-overview{display:flex;flex-direction:column;align-items:stretch;padding:18px!important}
  .flashcard-overview-copy h2{font-size:29px}
  .flashcard-overview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .flashcard-overview-metrics>div{min-width:0;padding:12px 6px}
  .flashcards-layout{grid-template-columns:1fr!important}
  .zevscan-panel{margin-top:18px;padding:16px;border-radius:18px}
  .zevscan-form{grid-template-columns:1fr;gap:12px}
  .zevscan-options{grid-template-columns:1fr}
  .zevscan-dropzone{min-height:110px;padding:13px}
  .topbar .top-actions{gap:5px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.top-btn,.panel,.agent-mission,.global-ai-empty-actions button{transition:none!important}.btn:hover,.top-btn:hover,.agent-mission:hover,.global-ai-empty-actions button:hover{transform:none!important}}
[data-theme=dark] .panel{box-shadow:0 2px 12px rgba(0,0,0,.10)}
[data-theme=dark] .panel:hover{box-shadow:0 8px 26px rgba(0,0,0,.18)}
[data-theme=dark] .global-ai-empty-actions button{background:var(--surface2)}
[data-theme=dark] .skip-link{background:var(--lime,#b5e83a);color:#11130f}

/* v0.92 — AI drawer legibility and workspace heading layout repair.
   Keep the shared Intelligence surface readable at laptop widths and prevent
   flex children from collapsing into one-character columns. */
.intelligence-tabs{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.intelligence-tab{width:100%;min-width:0;overflow:hidden;justify-content:flex-start;padding-inline:12px;gap:10px}
.intelligence-tab>span.intelligence-tab-icon{width:30px;height:30px;min-width:30px;flex:0 0 30px;display:grid;place-items:center;overflow:hidden}
.intelligence-tab>span.intelligence-tab-copy{width:auto;height:auto;min-width:0;min-height:0;flex:1 1 0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;overflow:hidden;background:transparent;place-items:initial}
.intelligence-tab-copy b{display:block;max-width:100%;font-size:13px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.intelligence-tab-copy small{display:block;max-width:100%;font-size:9px;line-height:1.25;letter-spacing:0;white-space:normal;overflow-wrap:normal;word-break:normal}
.global-ai-drawer{min-height:0;overflow:hidden}
.global-ai-drawer>.global-ai-head,.global-ai-drawer>.intelligence-tabs,.global-ai-drawer>.global-ai-modebar,.global-ai-drawer>.global-ai-shortcuts,.global-ai-drawer>.global-ai-form,.global-ai-drawer>.global-ai-status{flex:0 0 auto;min-width:0}
.global-ai-modebar{min-width:0;flex-wrap:wrap;row-gap:7px}
.global-ai-modebar select{flex:1 1 180px;width:100%;min-width:0;max-width:100%}
.global-ai-quota,.global-ai-agent-badge{flex:0 1 auto;max-width:100%;white-space:normal;line-height:1.25}
.global-ai-thread{flex:1 1 auto;min-height:0;max-height:none;min-width:0;width:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:14px 2px 16px;display:flex;flex-direction:column;align-items:stretch;gap:14px;position:relative;isolation:isolate}
.global-ai-msg{min-width:0;flex-shrink:0;overflow-wrap:anywhere}
.global-ai-msg.assistant{width:100%;max-width:100%;align-self:stretch;border-radius:15px 15px 15px 5px}
.global-ai-msg.user{max-width:min(88%,32rem);align-self:flex-end}
.global-ai-msg.assistant>.zv-markdown{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal}
.global-ai-msg.assistant .zv-table-wrap{max-width:100%;width:100%;overflow-x:auto}
.global-ai-msg.assistant .zv-diagram{max-width:100%;overflow-x:auto}

/* When the Intelligence drawer opens, stop competing page actions from
   compressing the title into a narrow flex column. The heading and actions
   occupy separate rows until the drawer closes. */
@media(min-width:1001px){
  body.ai-drawer-open .page-head,body.tool-drawer-open .page-head{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:14px;margin-bottom:28px}
  body.ai-drawer-open .page-head>div:first-child,body.tool-drawer-open .page-head>div:first-child{width:100%;min-width:0;flex:0 0 auto}
  body.ai-drawer-open .page-head h1,body.tool-drawer-open .page-head h1{width:100%;max-width:100%;font-size:clamp(42px,4.2vw,60px);line-height:1;letter-spacing:-.055em;overflow-wrap:normal;word-break:normal;text-wrap:balance}
  body.ai-drawer-open .page-head p,body.tool-drawer-open .page-head p{max-width:68ch}
  body.ai-drawer-open .page-head .actions,body.tool-drawer-open .page-head .actions{width:100%;max-width:100%!important;justify-content:flex-start;align-self:stretch}
  body.ai-drawer-open .page-head .actions .btn,body.tool-drawer-open .page-head .actions .btn{flex:0 1 auto;white-space:nowrap}
}

/* Restore Zevuna's quieter rounded active navigation state; no vertical rail. */
.sidebar .nav-item[aria-current="page"],.sidebar .nav-item.active{background:#e6e3d9;color:var(--ink);font-weight:750;box-shadow:none;transform:none}
.sidebar .nav-item[aria-current="page"] .nav-icon,.sidebar .nav-item.active .nav-icon{color:var(--lime)}
[data-theme=dark] .sidebar .nav-item[aria-current="page"],[data-theme=dark] .sidebar .nav-item.active{background:#252821;color:var(--ink);box-shadow:none}
@media(max-width:1000px){
  .intelligence-tab{padding-inline:10px;gap:8px}
  .intelligence-tab-copy small{font-size:8.5px}
}
@media(max-height:760px) and (min-width:721px){
  .global-ai-drawer{top:8px;bottom:8px;padding:15px}
  .global-ai-head{padding-bottom:10px}
  .intelligence-tabs{margin-top:10px;margin-bottom:7px}
  .intelligence-tab{height:48px}
  .global-ai-modebar{padding:8px}
  .global-ai-shortcuts{margin-top:7px}
  .global-ai-thread{padding-top:10px;gap:10px}
}



/* v0.94 — OAuth redirect URI compatibility; retains the v0.93 UI motion system. */
.global-ai-drawer{box-sizing:border-box;width:min(456px,calc(100vw - 28px));min-width:0;min-height:0;gap:0}
.global-ai-head{flex:0 0 auto;min-width:0;align-items:flex-start;padding-bottom:13px;gap:12px}
.global-ai-head>div{min-width:0;flex:1 1 auto}
.global-ai-head h3{font-size:clamp(21px,2vw,24px);line-height:1.08;letter-spacing:-.045em;overflow-wrap:normal;word-break:normal}
.global-ai-head p{max-width:34ch;margin-top:7px;font-size:12px;line-height:1.5}
.intelligence-tabs{flex:0 0 auto;gap:5px;margin:11px 0 9px;padding:4px;background:var(--surface2);box-shadow:none}
.intelligence-tab{height:54px;min-width:0;padding-inline:12px;gap:9px;border-radius:13px;overflow:hidden}
.intelligence-tab.active{background:#191c17!important;color:#f5f6ef!important;border-color:#191c17!important;box-shadow:0 5px 14px rgba(0,0,0,.12)}
.intelligence-tab[data-intelligence-tab="agent"].active{background:var(--lime,#b9e34f)!important;color:#151710!important;border-color:var(--lime,#b9e34f)!important;box-shadow:0 5px 16px rgba(145,205,45,.16)}
.intelligence-tab.active .intelligence-tab-copy b{color:inherit}
.intelligence-tab.active .intelligence-tab-copy small{color:inherit;opacity:.72}
.intelligence-tab.active .intelligence-tab-icon{background:rgba(255,255,255,.12);color:inherit}
.intelligence-tab[data-intelligence-tab="agent"].active .intelligence-tab-icon{background:rgba(17,19,15,.09)}
.global-ai-modebar{flex:0 0 auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px;min-width:0}
.global-ai-modebar select{width:100%;min-width:0;max-width:100%;font-size:11px}
.global-ai-quota{max-width:116px;text-align:center;line-height:1.25;white-space:normal;overflow-wrap:normal;font-size:8px;padding:6px 8px}
.global-ai-agent-badge{font-size:8px;white-space:normal;line-height:1.25}
.global-ai-shortcuts{position:relative;z-index:2;flex:0 0 auto;margin-top:8px}
.global-ai-shortcuts-toggle{min-height:39px;padding:9px 11px;letter-spacing:.9px}
.global-ai-shortcuts-toggle>span{min-width:0;flex-wrap:wrap;gap:7px}
.global-ai-shortcuts-toggle small{font-size:9px;letter-spacing:0}
.global-ai-shortcuts-content[hidden]{display:none!important}
.global-ai-shortcuts-content{max-height:min(24dvh,190px);overflow:auto;overscroll-behavior:contain}
.global-ai-thread{position:relative;z-index:1;flex:1 1 0;min-height:140px;max-height:none;width:100%;margin:0;overflow-x:hidden;overflow-y:auto;padding:12px 2px 13px;gap:11px;scrollbar-gutter:stable;overscroll-behavior:contain}
.global-ai-msg{flex-shrink:0;min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:normal}
.global-ai-msg>span:first-child{display:block;font-size:8px;letter-spacing:1.15px;font-weight:850;opacity:.68;margin:0 0 6px;line-height:1.3}
.global-ai-msg .zv-markdown span{display:inline;letter-spacing:normal;font-weight:inherit;opacity:1;margin:0}
.global-ai-msg.assistant>.zv-markdown{width:100%;max-width:72ch;min-width:0;overflow-wrap:anywhere;word-break:normal}
.global-ai-form{flex:0 0 auto;min-width:0;margin-top:0;gap:7px;align-items:flex-end}
.global-ai-form textarea{min-width:0;max-height:128px;font-size:12px;line-height:1.5}
.global-ai-form .btn{flex:0 0 auto;min-width:60px;white-space:nowrap}
.global-ai-status{flex:0 0 auto;min-height:0;margin-top:4px;line-height:1.4}
[data-theme=dark] .intelligence-tabs{background:#1a1d19;border-color:#34392f}
[data-theme=dark] .intelligence-tab:not(.active){color:#b5b9af}
[data-theme=dark] .intelligence-tab.active{background:#292d25!important;color:#f5f6ef!important;border-color:#41483a!important}
[data-theme=dark] .intelligence-tab[data-intelligence-tab="agent"].active{background:var(--lime,#b9e34f)!important;color:#151710!important;border-color:var(--lime,#b9e34f)!important}
[data-theme=dark] .global-ai-modebar select{background:#20231e!important;color:#f2f4ec!important;border-color:#383d33!important}
[data-theme=dark] .global-ai-quota{background:#20231e;color:#d7dbd0;border:1px solid #34392f}

/* Signature motion graphics: circular, connected and deliberately lightweight. */
.ai-context-clean{min-width:0;min-height:260px!important;background:radial-gradient(circle at 50% 42%,rgba(185,227,79,.075),transparent 46%),#11130f!important}
.ai-context-clean:before{inset:20px 28px!important;border:1px solid rgba(185,227,79,.08)!important;border-radius:50%!important;background:none!important}
.zevuna-motion-graphic{position:relative;width:100%;height:100%;min-width:0;min-height:235px;display:flex;align-items:center;justify-content:center;overflow:hidden;isolation:isolate}
.zevuna-motion-graphic svg{display:block;width:min(100%,380px);height:auto;max-height:100%;overflow:visible;flex:1 1 auto}
.zevuna-motion-graphic .motion-track{fill:none;stroke:rgba(185,227,79,.2);stroke-width:1;vector-effect:non-scaling-stroke}
.zevuna-motion-graphic .motion-track-soft{stroke:rgba(185,227,79,.09);stroke-dasharray:2 7}
.zevuna-motion-graphic .motion-connector{fill:none;stroke:rgba(185,227,79,.24);stroke-width:1.2;stroke-dasharray:3 6;stroke-linecap:round;stroke-linejoin:round}
.zevuna-motion-graphic .motion-node{fill:#c5ed5a;stroke:#192015;stroke-width:2;filter:drop-shadow(0 0 7px rgba(185,227,79,.45))}
.zevuna-motion-graphic .motion-node-large{fill:#eff8cf;stroke:#9ecb38;stroke-width:2.5}
.zevuna-motion-graphic .motion-node-dark{fill:#20251b;stroke:#b9e34f;stroke-width:2}
.zevuna-motion-graphic .motion-dot{fill:#b9e34f;opacity:.75}
.zevuna-motion-graphic .motion-center-halo{fill:rgba(185,227,79,.055);stroke:rgba(185,227,79,.25);stroke-width:1}
.zevuna-motion-graphic .motion-center{fill:#151913;stroke:rgba(185,227,79,.7);stroke-width:1.4;filter:drop-shadow(0 10px 24px rgba(0,0,0,.28))}
.zevuna-motion-graphic .motion-center-inner{fill:url(#aiGlow);stroke:rgba(185,227,79,.3);stroke-width:1}
.zevuna-motion-graphic .motion-spark{fill:#d9f69a;filter:drop-shadow(0 0 7px rgba(185,227,79,.48))}
.zevuna-motion-graphic .motion-book{fill:none;stroke:#d8f39a;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.zevuna-motion-graphic .motion-progress-arc{fill:none;stroke:url(#aiStroke);stroke-width:3;stroke-linecap:round;stroke-dasharray:40 90;animation:zevunaDash 5s ease-in-out infinite alternate}
.zevuna-motion-graphic .motion-spin{transform-box:view-box;transform-origin:50% 44%;animation:zevunaOrbit 22s linear infinite}
.zevuna-motion-graphic .motion-spin-b{animation-duration:29s;animation-direction:reverse;transform-origin:50% 44%}
.zevuna-motion-graphic .motion-spin-c{animation-duration:17s;transform-origin:50% 44%}
.zevuna-motion-graphic .motion-caption{position:absolute;left:18px;right:18px;bottom:12px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;color:#b9c0ad;font-size:8px;letter-spacing:1.4px;font-weight:800;text-align:center;pointer-events:none}
.zevuna-motion-graphic .motion-caption b{font-weight:650;letter-spacing:.1px;color:#f0f3e8;font-size:10px}
.zevuna-motion-graphic .motion-live-dot{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#b9e34f;box-shadow:0 0 0 4px rgba(185,227,79,.1);animation:zevunaPulse 2.4s ease-in-out infinite}
.ai-context-clean .zevuna-motion-graphic{padding:8px 8px 24px}
.ai-context-clean .motion-caption{bottom:15px}
.study-hero-orbit{min-width:0;min-height:250px;overflow:hidden;border-radius:20px;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--lime) 8%,transparent),transparent 60%)}
.study-hero-orbit .zevuna-motion-graphic{min-height:250px}
.study-hero-orbit .motion-center{fill:color-mix(in srgb,var(--surface) 88%,#141710)}
.study-hero-orbit .motion-center-inner{fill:url(#studyGlow);stroke:rgba(185,227,79,.38)}
.study-hero-orbit .motion-progress-arc{stroke:url(#studyStroke)}
.study-hero-orbit .motion-book{stroke:var(--ink)}
.study-hero-orbit .motion-caption{color:var(--muted);bottom:9px}
.study-hero-orbit .motion-caption b{color:var(--ink)}
[data-theme=dark] .study-hero-orbit{background:radial-gradient(circle at 50% 45%,rgba(185,227,79,.08),transparent 62%)}
[data-theme=dark] .study-hero-orbit .motion-center{fill:#171a14}
[data-theme=dark] .study-hero-orbit .motion-book{stroke:#d8f39a}
@keyframes zevunaOrbit{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes zevunaDash{from{stroke-dashoffset:0;opacity:.55}to{stroke-dashoffset:-48;opacity:1}}
@keyframes zevunaPulse{0%,100%{opacity:.65;box-shadow:0 0 0 3px rgba(185,227,79,.08)}50%{opacity:1;box-shadow:0 0 0 6px rgba(185,227,79,.02)}}
@media(max-width:1000px) and (min-width:721px){.global-ai-drawer{width:390px;padding:16px}.global-ai-modebar{grid-template-columns:auto minmax(0,1fr);}.global-ai-quota{grid-column:2;justify-self:start;max-width:none}.global-ai-thread{min-height:120px}}
@media(max-width:720px){.global-ai-drawer{width:calc(100vw - 16px);padding:15px;gap:0}.global-ai-head{padding-bottom:11px}.global-ai-head h3{font-size:21px}.intelligence-tab{height:50px;padding-inline:9px;gap:7px}.intelligence-tab-icon{width:27px;height:27px;flex-basis:27px}.intelligence-tab-copy b{font-size:12px}.intelligence-tab-copy small{font-size:8px}.global-ai-modebar{grid-template-columns:auto minmax(0,1fr);gap:7px}.global-ai-modebar select{grid-column:2}.global-ai-quota{grid-column:2}.global-ai-shortcuts{margin-top:7px}.global-ai-thread{min-height:100px;padding:9px 1px 10px;gap:9px}.global-ai-msg.assistant>.zv-markdown{font-size:12px}.ai-context-clean{min-height:220px!important}.study-hero-orbit,.study-hero-orbit .zevuna-motion-graphic{min-height:185px}.zevuna-motion-graphic .motion-caption{left:8px;right:8px;bottom:5px;font-size:7px}.zevuna-motion-graphic .motion-caption b{font-size:9px}}
@media(max-height:760px) and (min-width:721px){.global-ai-head{padding-bottom:8px}.global-ai-head p{margin-top:4px}.intelligence-tabs{margin-top:7px;margin-bottom:6px}.intelligence-tab{height:46px}.global-ai-shortcuts{margin-top:5px}.global-ai-thread{min-height:82px;padding-block:7px}.global-ai-form textarea{min-height:42px}}
@media(prefers-reduced-motion:reduce){.zevuna-motion-graphic *{animation:none!important;transition:none!important}.zevuna-motion-graphic .motion-spin{transform:none!important}}

/* Zev is the visible guide for AI and welcome moments. */
.ai-zev-hero{width:100%;height:100%;min-height:230px;position:relative;display:grid;place-items:center;overflow:hidden}.ai-zev-glow{position:absolute;width:175px;height:175px;border-radius:50%;background:radial-gradient(circle,rgba(185,227,79,.22),rgba(185,227,79,0) 68%);filter:blur(2px)}.ai-zev-hero img{position:relative;z-index:1;width:205px;max-width:72%;filter:drop-shadow(0 22px 20px rgba(0,0,0,.35));animation:zevHeroFloat 4s ease-in-out infinite}.ai-zev-caption{position:absolute;z-index:2;left:18px;right:18px;bottom:15px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;color:#b9c0ad;text-align:center}.ai-zev-caption span{font-size:8px;letter-spacing:1.4px;font-weight:850;color:#b9e34f}.ai-zev-caption span i{display:inline-block;width:6px;height:6px;margin-right:6px;border-radius:50%;background:#b9e34f;box-shadow:0 0 0 4px rgba(185,227,79,.1)}.ai-zev-caption b{font-size:10px;font-weight:650;color:#f0f3e8}@keyframes zevHeroFloat{0%,100%{transform:translateY(2px) rotate(-1.5deg)}50%{transform:translateY(-9px) rotate(1.5deg)}}
.zev-welcome-backdrop{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:20px;background:rgba(8,10,7,.56);backdrop-filter:blur(9px);opacity:0;transition:opacity .22s}.zev-welcome-backdrop.show{opacity:1}.zev-welcome-backdrop.closing{opacity:0}.zev-welcome-card{width:min(440px,100%);position:relative;overflow:hidden;padding:28px;border:1px solid color-mix(in srgb,var(--lime) 38%,var(--line));border-radius:28px;background:var(--surface);box-shadow:0 30px 90px rgba(0,0,0,.3);text-align:center;transform:translateY(14px) scale(.97);transition:transform .25s cubic-bezier(.2,.8,.2,1)}.zev-welcome-backdrop.show .zev-welcome-card{transform:none}.zev-welcome-art{height:150px;margin:-5px 0 6px;display:grid;place-items:center;position:relative}.zev-welcome-art:before{content:'';position:absolute;width:150px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(169,215,63,.22),transparent 70%)}.zev-welcome-art img{width:155px;max-width:none;position:relative;filter:drop-shadow(0 16px 14px rgba(0,0,0,.18));animation:zevWelcomeFloat 3.5s ease-in-out infinite}.zev-welcome-card h2{margin:9px 0;font-size:31px;letter-spacing:-1.7px}.zev-welcome-card p{max-width:340px;margin:0 auto;color:var(--muted);font-size:13px;line-height:1.6}.zev-welcome-help{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:18px 0}.zev-welcome-help span{padding:7px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);font-size:10px;font-weight:750}.zev-welcome-actions{display:flex;gap:8px;justify-content:center}.zev-welcome-close{position:absolute;top:12px;right:12px;width:30px;height:30px;border-radius:9px;color:var(--muted);font-size:18px}.zev-welcome-close:hover{background:var(--surface2);color:var(--ink)}@keyframes zevWelcomeFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(2deg)}}
@media(max-width:720px){.ai-zev-hero{min-height:205px}.ai-zev-hero img{width:175px}.zev-welcome-card{padding:24px 18px;border-radius:24px}.zev-welcome-art{height:132px}.zev-welcome-art img{width:138px}}
@media(prefers-reduced-motion:reduce){.ai-zev-hero img,.zev-welcome-art img{animation:none}}

/* Tablet drawer behavior: overlay instead of squeezing every workspace page into a sliver. */
@media(max-width:1000px) and (min-width:721px){
  body.ai-drawer-open .main,body.tool-drawer-open.ai-drawer-open .main{padding-right:0!important}
  .global-ai-drawer{top:12px;right:12px;bottom:12px;width:min(390px,calc(100vw - 32px));padding:16px}
  body.ai-drawer-open .page-head,body.tool-drawer-open .page-head{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px;margin-bottom:24px}
  body.ai-drawer-open .page-head>div:first-child,body.tool-drawer-open .page-head>div:first-child{width:100%;min-width:0;flex:0 0 auto}
  body.ai-drawer-open .page-head h1,body.tool-drawer-open .page-head h1{width:100%;max-width:100%;line-height:1;letter-spacing:-.055em;overflow-wrap:normal;word-break:normal;text-wrap:balance}
  body.ai-drawer-open .page-head p,body.tool-drawer-open .page-head p{max-width:68ch}
  body.ai-drawer-open .page-head .actions,body.tool-drawer-open .page-head .actions{width:100%;max-width:100%!important;justify-content:flex-start;align-self:stretch}
}

/* Zev Agents sidebar/nav icon uses the Zev mascot */
.icon-mascot{width:20px;height:20px;object-fit:contain;display:block;flex:none}
.nav-icon .icon-mascot{width:20px;height:20px}
/* In-page PDF viewer */
.file-drawer-preview:has(.pdf-viewer-host){display:block;background:var(--surface2)}
.pdf-viewer-host{width:100%}
.pdf-viewer{width:100%;max-height:min(64vh,720px);overflow:auto;-webkit-overflow-scrolling:touch}
.pdf-viewer-bar{position:sticky;top:0;z-index:1;padding:8px 12px;font-size:12px;color:var(--muted);background:var(--surface);border-bottom:1px solid var(--line)}
.pdf-viewer-pages{display:flex;flex-direction:column;gap:10px;padding:10px}
.pdf-viewer-page{background:#fff;border-radius:6px;box-shadow:0 1px 4px rgba(0,0,0,.12);max-width:100%}
.pdf-viewer-status{padding:48px 16px;text-align:center;color:var(--muted)}


/* Calm, purposeful motion for AI, Agent and everyday workspace surfaces. */
@keyframes zevPageArrive{from{opacity:0;transform:translate3d(0,10px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes zevGlowBreathe{0%,100%{opacity:.62;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
@keyframes zevAgentOrbit{to{transform:rotate(360deg)}}
@keyframes zevStatusBreath{0%,100%{box-shadow:0 0 0 0 rgba(185,227,79,.10)}50%{box-shadow:0 0 0 6px rgba(185,227,79,0)}}
.ai-hero-clean .ai-hero-copy{animation:zevPageArrive .55s cubic-bezier(.2,.75,.25,1) both}
.ai-hero-clean .ai-hero-context{animation:zevPageArrive .65s .08s cubic-bezier(.2,.75,.25,1) both}
.ai-zev-glow{animation:zevGlowBreathe 5s ease-in-out infinite}
.ai-context-pills span{transition:transform .2s ease,border-color .2s ease,background-color .2s ease}
.ai-context-pills span:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--lime) 45%,var(--line))}
.ai-hero-clean+.ai-panel,.ai-hero-clean+section{animation:zevPageArrive .5s .12s ease both}
.agent-hero>div:first-child{animation:zevPageArrive .55s cubic-bezier(.2,.75,.25,1) both}
.agent-orbit{animation:zevPageArrive .7s .08s cubic-bezier(.2,.75,.25,1) both}
.agent-orbit-ring{animation:zevAgentOrbit 24s linear infinite}
.agent-orbit-core{animation:zevGlowBreathe 4.8s ease-in-out infinite}
.agent-live{animation:zevPageArrive .5s .12s ease both}
.agent-status-pill i,.agent-status-pill:before{animation:zevStatusBreath 2.8s ease-in-out infinite}
.agent-mission{transition:transform .22s cubic-bezier(.2,.8,.2,1),border-color .22s ease,box-shadow .22s ease}
.agent-mission:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--lime) 45%,var(--line));box-shadow:0 18px 40px rgba(0,0,0,.09)}
.agent-mission:nth-child(2){transition-delay:15ms}.agent-mission:nth-child(3){transition-delay:30ms}.agent-mission:nth-child(4){transition-delay:45ms}
.agent-proof span{transition:transform .2s ease,color .2s ease}.agent-proof span:hover{transform:translateY(-2px);color:var(--ink)}
.command-mini-tile,.subject-card,.readiness-link-card{transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.command-mini-tile:hover,.subject-card:hover,.readiness-link-card:hover{transform:translateY(-3px)}
.page .panel-head h3{transition:color .18s ease}
@media(max-width:720px){.ai-hero-clean .ai-hero-copy,.ai-hero-clean .ai-hero-context,.agent-hero>div:first-child,.agent-orbit,.agent-live{animation-duration:.35s}.agent-mission:hover,.command-mini-tile:hover,.subject-card:hover,.readiness-link-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){
 .ai-hero-clean .ai-hero-copy,.ai-hero-clean .ai-hero-context,.ai-zev-glow,.agent-hero>div:first-child,.agent-orbit,.agent-orbit-ring,.agent-orbit-core,.agent-live,.agent-status-pill i,.agent-status-pill:before{animation:none!important}
 .ai-context-pills span,.agent-mission,.agent-proof span,.command-mini-tile,.subject-card,.readiness-link-card,.page .panel-head h3{transition:none!important}
 .agent-mission:hover,.command-mini-tile:hover,.subject-card:hover,.readiness-link-card:hover{transform:none!important;box-shadow:none!important}
}


/* Zev cinematic welcome — full-screen introduction, not a compact modal. */
body.zev-cinematic-open{overflow:hidden}
.zev-welcome-backdrop.zev-cinematic{z-index:10020;position:fixed;inset:0;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:clamp(18px,3.2vw,42px) clamp(18px,5.2vw,76px);background-color:rgba(11,13,10,.48);background-image:radial-gradient(ellipse at 50% 47%,color-mix(in srgb,var(--lime) 11%,transparent),transparent 31%),linear-gradient(135deg,rgba(17,20,15,.88) 0%,rgba(25,29,22,.82) 48%,rgba(13,16,13,.9) 100%);color:#f7f8f0;opacity:0;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);transition:opacity .55s ease,backdrop-filter .7s ease;isolation:isolate}
.zev-welcome-backdrop.zev-cinematic.show{opacity:1;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.zev-welcome-backdrop.zev-cinematic:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 0%,rgba(0,0,0,.12) 56%,rgba(0,0,0,.42) 100%)}
.zev-cinema-grain{position:absolute;inset:0;z-index:-1;opacity:.13;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.3) .6px,transparent .7px);background-size:5px 5px;mask-image:linear-gradient(transparent,black 20%,black 80%,transparent)}
.zev-cinema-top,.zev-cinema-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;position:relative;z-index:2}
.zev-cinema-brand{display:inline-flex;align-items:center;min-width:110px;padding:5px 9px;background:#f7f8f0;border-radius:9px}.zev-cinema-brand img{width:116px;max-height:32px;object-fit:contain;object-position:left center}
.zev-cinema-counter{font:700 10px/1 ui-monospace,SFMono-Regular,monospace;letter-spacing:2px;color:rgba(245,248,236,.58);margin-left:auto;margin-right:16px}
.zev-welcome-backdrop.zev-cinematic .zev-welcome-close{position:static;flex:0 0 40px;width:40px;height:40px;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:rgba(255,255,255,.04);color:#fff;font-size:23px;transition:background .2s,transform .2s}
.zev-welcome-backdrop.zev-cinematic .zev-welcome-close:hover{background:rgba(255,255,255,.12);transform:rotate(90deg)}
.zev-cinema-layout{width:min(1280px,100%);flex:1;min-height:0;align-self:center;display:grid;grid-template-columns:minmax(170px,1fr) minmax(320px,1.25fr) minmax(170px,1fr);align-items:center;gap:clamp(20px,4vw,72px);position:relative}
.zev-cinema-main{grid-column:2;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;z-index:1;padding:10px 0 24px;min-width:0}
.zev-welcome-backdrop.zev-cinematic .zev-welcome-art{height:clamp(180px,29vh,300px);width:min(100%,420px);margin:0 0 4px;display:grid;place-items:center;position:relative;isolation:isolate}
.zev-welcome-backdrop.zev-cinematic .zev-welcome-art:before{content:"";position:absolute;width:clamp(190px,23vw,320px);height:clamp(145px,18vw,245px);border-radius:50%;background:radial-gradient(ellipse,rgba(180,235,67,.22),rgba(180,235,67,.06) 44%,transparent 72%);filter:blur(10px);animation:zevCinemaGlow 4.8s ease-in-out infinite}
.zev-welcome-backdrop.zev-cinematic .zev-welcome-art img{position:relative;width:clamp(185px,22vw,290px);height:100%;max-width:none;object-fit:contain;filter:drop-shadow(0 26px 34px rgba(0,0,0,.3));animation:zevCinemaFloat 4s ease-in-out infinite;transform-origin:50% 65%}
.zev-cinema-shadow{position:absolute;bottom:6%;left:50%;width:118px;height:15px;border-radius:50%;background:rgba(0,0,0,.38);filter:blur(9px);transform:translateX(-50%);animation:zevCinemaShadow 4s ease-in-out infinite}
.zev-cinema-orbit{position:absolute;top:13%;left:50%;width:clamp(235px,29vw,390px);height:clamp(235px,29vw,390px);border:1px solid rgba(198,238,115,.13);border-radius:50%;transform:translateX(-50%) rotate(-23deg);pointer-events:none}
.zev-cinema-orbit:before,.zev-cinema-orbit:after{content:"";position:absolute;width:6px;height:6px;border-radius:50%;background:#c7f26d;box-shadow:0 0 18px rgba(199,242,109,.8)}
.zev-cinema-orbit:before{top:15%;left:15%}.zev-cinema-orbit:after{bottom:18%;right:8%;width:4px;height:4px}
.zev-cinema-orbit-two{width:clamp(275px,34vw,460px);height:clamp(220px,26vw,350px);border-color:rgba(255,255,255,.07);transform:translateX(-50%) rotate(28deg) scaleY(.8);animation:zevCinemaOrbit 22s linear infinite}
.zev-cinema-eyebrow{font:800 10px/1.4 ui-monospace,SFMono-Regular,monospace;letter-spacing:2.8px;color:#c8ef78;margin:7px 0 15px}
.zev-welcome-backdrop.zev-cinematic .zev-cinema-title{font-size:clamp(36px,5vw,66px);line-height:.98;letter-spacing:-.065em;font-weight:750;max-width:760px;margin:0 auto 17px;color:#fbfcf6;text-wrap:balance}
.zev-welcome-backdrop.zev-cinematic .zev-cinema-copy{font-size:clamp(14px,1.25vw,17px);line-height:1.7;color:rgba(242,245,234,.68);max-width:470px;margin:0 auto}
.zev-cinema-side{align-self:center;max-width:230px;position:relative;padding:18px 0;border-top:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.1);opacity:0;animation:zevCinemaSideIn .75s .45s both}
.zev-cinema-left{grid-column:1;text-align:left}.zev-cinema-right{grid-column:3;text-align:right}
.zev-cinema-side .zev-cinema-spark{display:block;color:#c8ef78;font-size:18px;margin-bottom:16px;animation:zevCinemaSpark 3.2s ease-in-out infinite}
.zev-cinema-side strong{display:block;font-size:11px;letter-spacing:1.6px;line-height:1.5;color:rgba(247,248,240,.9)}
.zev-cinema-side small{display:block;font-size:12px;line-height:1.6;color:rgba(242,245,234,.48);margin-top:7px}
.zev-cinema-mobile-notes{display:none}
.zev-cinema-bottom{padding-top:12px}
.zev-cinema-skip{border:0;background:none;color:rgba(245,248,236,.54);font-size:12px;cursor:pointer;padding:12px 0;transition:color .2s}
.zev-cinema-skip:hover{color:#fff}.zev-cinema-skip[hidden]{visibility:hidden;display:block}
.zev-cinema-progress{display:flex;gap:7px;align-items:center;justify-content:center}
.zev-cinema-progress-dot{display:block;width:5px;height:5px;border-radius:50%;background:rgba(255,255,255,.23);transition:width .3s,background .3s,border-radius .3s}
.zev-cinema-progress-dot.active{width:28px;border-radius:5px;background:#c8ef78}.zev-cinema-progress-dot.done{background:rgba(200,239,120,.55)}
.zev-cinema-controls{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:150px}
.zev-welcome-backdrop.zev-cinematic .zev-cinema-controls .btn{min-height:44px;padding:0 18px;border-radius:999px;font-size:12px;font-weight:750;transition:transform .2s,background .2s,border-color .2s}
.zev-welcome-backdrop.zev-cinematic .zev-cinema-controls .btn:hover{transform:translateY(-2px)}
.zev-welcome-backdrop.zev-cinematic .zev-cinema-controls .btn.dark{background:#c8ef78;border-color:#c8ef78;color:#15180f;box-shadow:0 8px 30px rgba(169,215,63,.14)}
.zev-welcome-backdrop.zev-cinematic .zev-cinema-controls .btn.dark:hover{background:#d7ff8b;border-color:#d7ff8b}
.zev-welcome-backdrop.zev-cinematic .zev-cinema-controls [hidden]{display:none}
.zev-welcome-backdrop.zev-cinematic.is-transitioning .zev-cinema-title,.zev-welcome-backdrop.zev-cinematic.is-transitioning .zev-cinema-copy,.zev-welcome-backdrop.zev-cinematic.is-transitioning .zev-cinema-eyebrow{animation:zevCinemaTextIn .42s both}
.zev-cinema-arrive{animation:zevCinemaMascotArrive .75s cubic-bezier(.16,1,.3,1) both!important}
.zev-welcome-backdrop.zev-cinematic.closing{opacity:0;transform:scale(1.015);pointer-events:none}
@keyframes zevCinemaFloat{0%,100%{transform:translateY(0) rotate(-1.2deg)}50%{transform:translateY(-13px) rotate(1.2deg)}}
@keyframes zevCinemaGlow{0%,100%{transform:scale(.95);opacity:.7}50%{transform:scale(1.08);opacity:1}}
@keyframes zevCinemaShadow{0%,100%{transform:translateX(-50%) scaleX(1);opacity:.7}50%{transform:translateX(-50%) scaleX(.75);opacity:.38}}
@keyframes zevCinemaOrbit{to{transform:translateX(-50%) rotate(337deg) scaleY(.8)}}
@keyframes zevCinemaSideIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes zevCinemaSpark{0%,100%{transform:rotate(0) scale(1);opacity:.8}50%{transform:rotate(18deg) scale(1.12);opacity:1}}
@keyframes zevCinemaTextIn{from{opacity:.15;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes zevCinemaMascotArrive{0%{opacity:.3;transform:translateY(28px) scale(.84) rotate(-8deg)}58%{opacity:1;transform:translateY(-8px) scale(1.04) rotate(3deg)}100%{opacity:1;transform:translateY(0) scale(1) rotate(0)}}
@media(max-width:800px){
 .zev-welcome-backdrop.zev-cinematic{padding:16px 20px 18px}
 .zev-cinema-layout{grid-template-columns:minmax(0,1fr);gap:0;align-content:center;justify-items:center}
 .zev-cinema-main{grid-column:1;grid-row:1;width:100%;padding:0 0 8px}
 .zev-cinema-side{display:none}
 .zev-welcome-backdrop.zev-cinematic .zev-welcome-art{height:clamp(155px,27vh,230px);margin-bottom:2px}
 .zev-welcome-backdrop.zev-cinematic .zev-welcome-art img{width:clamp(165px,48vw,220px)}
 .zev-cinema-orbit{top:3%;width:230px;height:230px}
 .zev-cinema-orbit-two{width:270px;height:210px}
 .zev-welcome-backdrop.zev-cinematic .zev-cinema-title{font-size:clamp(35px,8vw,52px);max-width:540px}
 .zev-welcome-backdrop.zev-cinematic .zev-cinema-copy{font-size:14px;max-width:430px}
 .zev-cinema-mobile-notes{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:18px}
 .zev-cinema-mobile-notes span{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.045);border-radius:999px;padding:8px 10px;color:rgba(247,248,240,.7);font-size:9px;letter-spacing:.6px}
 .zev-cinema-bottom{align-items:flex-end}
 .zev-cinema-progress{position:absolute;left:50%;top:0;transform:translateX(-50%)}
 .zev-cinema-skip{font-size:11px;max-width:85px;text-align:left}
 .zev-cinema-controls{min-width:0}
 .zev-welcome-backdrop.zev-cinematic .zev-cinema-controls .btn{min-height:42px;padding:0 14px}
}
@media(max-width:420px){
 .zev-welcome-backdrop.zev-cinematic{padding:14px 14px 16px}
 .zev-cinema-brand img{width:100px}
 .zev-cinema-counter{font-size:9px;letter-spacing:1px}
 .zev-welcome-backdrop.zev-cinematic .zev-welcome-art{height:clamp(140px,23vh,190px)}
 .zev-welcome-backdrop.zev-cinematic .zev-cinema-title{font-size:34px}
 .zev-cinema-controls{gap:6px}
 .zev-welcome-backdrop.zev-cinematic .zev-cinema-controls .btn{padding:0 12px;font-size:11px}
}
@media(max-height:650px) and (min-width:801px){
 .zev-welcome-backdrop.zev-cinematic{padding-top:14px;padding-bottom:14px}
 .zev-welcome-backdrop.zev-cinematic .zev-welcome-art{height:clamp(130px,24vh,190px)}
 .zev-welcome-backdrop.zev-cinematic .zev-cinema-title{font-size:clamp(32px,4vw,46px)}
 .zev-cinema-side{padding:12px 0}
}
@media(prefers-reduced-motion:reduce){
 .zev-welcome-backdrop.zev-cinematic,.zev-welcome-backdrop.zev-cinematic *{animation:none!important;scroll-behavior:auto!important;transition:none!important}
 .zev-welcome-backdrop.zev-cinematic .zev-welcome-art img{transform:none}
}

.zev-cinema-ask{margin-top:17px;border:0;background:transparent;color:rgba(245,248,236,.62);font-size:12px;padding:8px 12px;cursor:pointer;text-decoration:underline;text-decoration-color:rgba(200,239,120,.35);text-underline-offset:4px;transition:color .2s}
.zev-cinema-ask:hover{color:#c8ef78}.zev-cinema-ask[hidden]{display:none}

/* AI composer: queued attachment and useful follow-up prompts */
.ai-pending-attachment{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 14px;margin:0 0 10px;border:1px solid var(--line,#34372e);border-radius:14px;background:rgba(185,227,79,.06);color:var(--text,#f5f5ef)}
.ai-pending-file-name{font-size:12px;font-weight:650;overflow-wrap:anywhere}.ai-pending-attachment small{font-size:11px;color:var(--muted,#9b9d93);flex:1}
.ai-pending-remove{border:1px solid var(--line,#34372e);border-radius:999px;background:transparent;color:inherit;padding:6px 10px;font-size:11px;cursor:pointer}.ai-pending-remove:hover{border-color:var(--lime,#b9e34f)}
.ai-followup-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 14px 48px}.ai-followup-chip{max-width:100%;text-align:left;border:1px solid var(--line,#34372e);background:var(--surface,#1b1d18);color:var(--text,#f5f5ef);border-radius:999px;padding:8px 12px;font-size:11px;line-height:1.4;cursor:pointer;transition:transform .18s,border-color .18s,background .18s}.ai-followup-chip:hover{transform:translateY(-1px);border-color:var(--lime,#b9e34f);background:rgba(185,227,79,.07)}
@media(prefers-reduced-motion:reduce){.ai-followup-chip{transition:none}.ai-followup-chip:hover{transform:none}}

/* 0.98 — distinct character language: calm AI, attentive agent, minimal intro. */
.ai-hero-clean .ai-zev-hero{background:radial-gradient(ellipse at 50% 54%,rgba(185,227,79,.09),transparent 60%)}
.ai-hero-clean .ai-zev-hero img{animation:zevAiBreath 5.6s ease-in-out infinite;transform-origin:50% 72%}
.ai-hero-clean .ai-zev-glow{animation:zevAiGlow 5.6s ease-in-out infinite}
.ai-hero-clean .ai-zev-caption{flex-direction:column;gap:5px;bottom:13px}
.ai-hero-clean .ai-zev-caption b{font-size:11px}
@keyframes zevAiBreath{0%,100%{transform:translateY(1px) scale(1)}50%{transform:translateY(-5px) scale(1.025)}}
@keyframes zevAiGlow{0%,100%{opacity:.65;transform:scale(.94)}50%{opacity:1;transform:scale(1.06)}}
.zev-agent-mascot-stage{position:relative;justify-self:center;width:min(100%,300px);height:245px;display:grid;place-items:center;isolation:isolate}
.zev-agent-mascot-stage:before{content:"";position:absolute;z-index:-1;width:175px;height:175px;border-radius:50%;border:1px solid rgba(185,227,79,.24);box-shadow:0 0 0 18px rgba(185,227,79,.025),0 0 0 38px rgba(185,227,79,.02)}
.zev-agent-mascot{width:152px;height:152px;object-fit:contain;filter:drop-shadow(0 16px 16px rgba(0,0,0,.24));animation:zevAgentAttentive 5.2s ease-in-out infinite;transform-origin:50% 75%}
.zev-agent-speech{position:absolute;top:8px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:10px 14px;border:1px solid rgba(185,227,79,.3);border-radius:13px;background:#20251b;color:#f5f7ed;font-size:12px;font-weight:750;box-shadow:0 8px 22px rgba(0,0,0,.15);animation:zevAgentHello .7s .18s both}
.zev-agent-speech:after{content:"";position:absolute;left:50%;bottom:-5px;width:8px;height:8px;transform:translateX(-50%) rotate(45deg);background:#20251b;border-right:1px solid rgba(185,227,79,.3);border-bottom:1px solid rgba(185,227,79,.3)}
.zev-agent-speech small{display:block;margin-top:3px;color:#b9e34f;font-size:10px;font-weight:600;text-align:center}
.zev-agent-spark{position:absolute;color:#b9e34f;font-size:20px}.zev-agent-spark-one{right:24px;top:66px;animation:zevAgentSpark 3.8s ease-in-out infinite}.zev-agent-spark-two{left:25px;bottom:55px;font-size:32px;animation:zevAgentSpark 2.8s .6s ease-in-out infinite}
@keyframes zevAgentAttentive{0%,100%{transform:translateY(3px) rotate(-2deg)}28%{transform:translateY(-4px) rotate(1deg)}42%{transform:translateY(-4px) rotate(1deg) scale(1.025)}58%{transform:translateY(2px) rotate(0)} }
@keyframes zevAgentHello{from{opacity:0;translate:0 7px}to{opacity:1;translate:0 0}}
@keyframes zevAgentSpark{0%,100%{opacity:.45;scale:.8;rotate:-10deg}50%{opacity:1;scale:1.12;rotate:12deg}}
.zev-welcome-backdrop.zev-intro-minimal{z-index:10020;position:fixed;inset:0;display:grid;place-items:center;padding:24px;background:rgba(9,11,8,.35);backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);opacity:0;transition:opacity .3s ease,backdrop-filter .35s ease;color:#f5f6ef}
.zev-welcome-backdrop.zev-intro-minimal.show{opacity:1;background:rgba(9,11,8,.68);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.zev-welcome-backdrop.zev-intro-minimal .zev-welcome-close{position:absolute;top:24px;right:28px;width:38px;height:38px;border:1px solid rgba(255,255,255,.16);border-radius:50%;background:rgba(255,255,255,.04);color:#f5f6ef;font-size:22px}
.zev-intro-content{width:min(480px,100%);text-align:center;padding:20px 22px;transform:translateY(9px);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.zev-intro-minimal.show .zev-intro-content{transform:none}
.zev-intro-mark{display:flex;justify-content:center;gap:5px;margin-bottom:18px}.zev-intro-mark span{width:7px;height:7px;border-radius:50%;background:#f5f6ef}.zev-intro-mark span+span{background:var(--lime,#b9e34f)}
.zev-intro-mascot{height:142px;display:grid;place-items:center;margin:0 auto 10px}.zev-intro-mascot img{width:128px;height:128px;object-fit:contain;filter:drop-shadow(0 14px 22px rgba(0,0,0,.24));animation:zevIntroHello 3.8s ease-in-out infinite}
.zev-intro-kicker{font-size:9px;font-weight:800;letter-spacing:2px;color:var(--lime,#b9e34f);margin:0 0 13px}.zev-intro-content h2{font-size:clamp(34px,5vw,48px);line-height:1.02;letter-spacing:-2.4px;margin:0 0 12px;font-weight:760}.zev-intro-copy{max-width:390px;margin:0 auto;color:rgba(245,246,239,.7);font-size:14px;line-height:1.75}.zev-intro-actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:25px}.zev-intro-actions .btn{min-height:45px;padding:0 22px;border-radius:999px}.zev-intro-dismiss{border:0;background:transparent;color:rgba(245,246,239,.52);font-size:11px;padding:7px 12px;cursor:pointer}.zev-intro-dismiss:hover{color:#fff}.zev-intro-footnote{display:block;margin-top:21px;color:rgba(245,246,239,.36);font-size:10px}
.zev-welcome-backdrop.zev-intro-minimal.closing{opacity:0;pointer-events:none}
@keyframes zevIntroHello{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}
@media(max-width:760px){.zev-agent-mascot-stage{height:210px;margin:15px auto 0}.zev-agent-mascot{width:135px;height:135px}.zev-agent-speech{top:0}}
@media(prefers-reduced-motion:reduce){.ai-hero-clean .ai-zev-hero img,.ai-hero-clean .ai-zev-glow,.zev-agent-mascot,.zev-agent-speech,.zev-agent-spark,.zev-intro-mascot img{animation:none!important}.zev-welcome-backdrop.zev-intro-minimal,.zev-intro-content{transition:none!important}}

/* v1.00 — agent studio controls, responsive live-send feedback and Zev's calmer intro. */
.zev-agent-editor-modal{width:min(720px,calc(100vw - 30px));max-height:min(88vh,900px);overflow:auto}
.zev-agent-editor-modal .modal-head h3{font-size:27px;letter-spacing:-1px}
.zev-agent-create-form{padding-top:6px}
.zev-agent-form-intro{margin:0 0 13px;color:var(--muted);font-size:12px;line-height:1.65}
.zev-agent-create-form .field{min-width:0}
.zev-agent-create-form .field input,.zev-agent-create-form .field select,.zev-agent-create-form .field textarea{width:100%;min-width:0}
.zev-agent-create-form select{min-height:44px;border:1px solid var(--line);border-radius:11px;padding:0 12px;background:var(--surface2);color:var(--ink);font:inherit;font-size:12px}
.zev-agent-create-form .field label{display:block;margin-bottom:7px}
.field-optional{font-size:10px;color:var(--muted);font-weight:500}
.zev-agent-scope-fieldset,.zev-agent-policy-fieldset{min-width:0;margin:16px 0 0;padding:14px;border:1px solid var(--line);border-radius:15px}
.zev-agent-scope-fieldset legend,.zev-agent-policy-fieldset legend{padding:0 7px;font-size:12px;font-weight:800;letter-spacing:-.1px}
.zev-agent-scope-fieldset>p{margin:0 0 12px;color:var(--muted);font-size:10px;line-height:1.55}
.zev-agent-scope-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.zev-agent-scope-option{display:flex;gap:9px;align-items:flex-start;min-width:0;padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--surface2);cursor:pointer;transition:border-color .18s,background .18s}
.zev-agent-scope-option:has(input:checked){border-color:color-mix(in srgb,var(--lime) 68%,var(--line));background:color-mix(in srgb,var(--lime) 9%,var(--surface2))}
.zev-agent-scope-option input,.zev-agent-policy-option input{flex:0 0 auto;margin-top:3px;accent-color:var(--lime)}
.zev-agent-scope-option span,.zev-agent-policy-option span{display:block;min-width:0}
.zev-agent-scope-option b,.zev-agent-scope-option small,.zev-agent-policy-option b,.zev-agent-policy-option small{display:block}
.zev-agent-scope-option b,.zev-agent-policy-option b{font-size:11px;line-height:1.4}
.zev-agent-scope-option small,.zev-agent-policy-option small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.5}
.zev-agent-policy-option{display:flex;gap:10px;padding:12px 0;cursor:pointer}
.zev-agent-policy-option+.zev-agent-policy-option{border-top:1px solid var(--line)}
.zev-agent-create-form .form-actions{position:sticky;bottom:-1px;padding:12px 0 0;background:var(--surface);margin-top:17px}
.zev-agent-settings-summary{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.zev-agent-settings-summary span{padding:6px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);font-size:9px;font-weight:750;color:var(--muted)}
.agent-config-hint{display:block;margin-top:9px;color:var(--muted);font-size:9px;line-height:1.5}
.agent-capability-grid-rich span{display:flex;align-items:center;gap:7px;line-height:1.45}
.agent-capability-grid-rich b{color:var(--lime);font-size:9px}
.zev-agent-character-stage .zev-agent-character-wrap{position:relative;display:grid;place-items:center;width:190px;height:210px;isolation:isolate}
.zev-agent-character-stage .zev-agent-mascot{width:162px;height:162px;position:relative;z-index:1;animation:zevAgentCharacterListen 4.8s ease-in-out infinite}
.zev-agent-neck-orbit{position:absolute;z-index:3;left:50%;top:59%;width:165px;height:48px;border:1.5px solid rgba(206,242,124,.94);border-radius:50%;transform:translate(-50%,-50%) rotate(-17deg);box-shadow:0 0 9px rgba(185,227,79,.2),inset 0 0 6px rgba(185,227,79,.12);animation:zevAgentNeckOrbit 5.8s linear infinite}
.zev-agent-neck-orbit:before{content:"";position:absolute;inset:5px 8px;border:1px solid rgba(245,246,239,.42);border-radius:50%}
.zev-agent-neck-orbit i{position:absolute;left:15%;top:4px;width:6px;height:6px;border-radius:50%;background:#d6fa82;box-shadow:0 0 9px rgba(214,250,130,.9)}
.zev-agent-eye-blink{position:absolute;z-index:2;width:10px;height:17px;border-radius:50%;background:#272a24;transform:scaleY(0);transform-origin:center;animation:zevCharacterBlink 5.4s ease-in-out infinite;pointer-events:none}
.zev-agent-eye-blink-left{top:34%;left:38.5%}.zev-agent-eye-blink-right{top:39%;left:61%;animation-delay:.025s}
@keyframes zevAgentCharacterListen{0%,100%{transform:translateY(1px) rotate(-1deg)}35%{transform:translateY(-4px) rotate(1deg)}42%{transform:translateY(-4px) rotate(1deg) scale(1.015)}52%{transform:translateY(1px) rotate(0)}}
@keyframes zevAgentNeckOrbit{0%{transform:translate(-50%,-50%) rotate(-17deg)}50%{transform:translate(-50%,-50%) rotate(17deg)}100%{transform:translate(-50%,-50%) rotate(343deg)}}
@keyframes zevCharacterBlink{0%,44%,47%,100%{transform:scaleY(0)}45.5%{transform:scaleY(1)}46.3%{transform:scaleY(.85)}}
/* The composer makes its network request explicit instead of leaving a disabled button. */
#aiForm.is-sending{position:relative}
#aiForm.is-sending .ai-composer,#aiForm.is-sending .ai-workbench{border-color:color-mix(in srgb,var(--lime) 44%,var(--line))}
#aiForm.is-sending #aiSubmit{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:135px;opacity:1;cursor:progress}
#aiForm.is-sending #aiSubmit:disabled{filter:saturate(.85)}
.ai-submit-spinner{display:inline-block;width:13px;height:13px;border:2px solid rgba(18,22,12,.22);border-top-color:currentColor;border-radius:50%;animation:aiSubmitSpin .8s linear infinite}
.ai-send-status{display:flex;align-items:center;gap:10px;align-self:flex-start;max-width:min(550px,96%);padding:11px 14px;margin:4px 0 8px 46px;border:1px solid color-mix(in srgb,var(--lime) 28%,var(--line));border-radius:14px 14px 14px 4px;background:color-mix(in srgb,var(--surface2) 88%,var(--lime));color:var(--muted);font-size:11px;animation:aiSendArrive .22s ease-out both}
.ai-send-status-copy{line-height:1.45}
.ai-send-dots{display:flex;gap:3px;align-items:center;flex:0 0 auto}
.ai-send-dots i{display:block;width:5px;height:5px;border-radius:50%;background:var(--lime);animation:aiSendDot 1.1s ease-in-out infinite}
.ai-send-dots i:nth-child(2){animation-delay:.14s}.ai-send-dots i:nth-child(3){animation-delay:.28s}
@keyframes aiSubmitSpin{to{transform:rotate(360deg)}}
@keyframes aiSendDot{0%,60%,100%{opacity:.32;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
@keyframes aiSendArrive{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
/* Minimal split welcome: the existing workspace blurs first; Zev arrives second. */
.zev-welcome-backdrop.zev-intro-minimal{display:grid;place-items:center;padding:24px;background:rgba(8,10,7,.1);backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);transition:opacity .45s ease,background 1.15s ease,backdrop-filter 1.15s ease,-webkit-backdrop-filter 1.15s ease}
.zev-welcome-backdrop.zev-intro-minimal.show{background:rgba(8,10,7,.68);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px)}
.zev-intro-shell{position:relative;display:grid;grid-template-columns:minmax(280px,.88fr) minmax(360px,1.12fr);width:min(900px,100%);min-height:445px;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:26px;background:linear-gradient(112deg,rgba(26,29,23,.95),rgba(18,20,16,.97));box-shadow:0 25px 90px rgba(0,0,0,.24);opacity:0;transform:translateY(16px);transition:opacity .55s .52s ease,transform .7s .52s cubic-bezier(.2,.8,.2,1)}
.zev-intro-minimal.show .zev-intro-shell{opacity:1;transform:none}
.zev-welcome-backdrop.zev-intro-minimal .zev-welcome-close{z-index:4;top:16px;right:16px}
.zev-intro-left{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:36px 32px;background:radial-gradient(ellipse at 48% 40%,rgba(185,227,79,.1),transparent 56%);border-right:1px solid rgba(255,255,255,.1)}
.zev-intro-mark{display:flex;justify-content:flex-start;gap:5px;margin:0 0 auto}.zev-intro-mark i{width:7px;height:7px;border-radius:50%;background:#f5f6ef}.zev-intro-mark i+i{background:var(--lime,#b9e34f)}
.zev-intro-mascot{position:relative;width:100%;height:218px;display:grid;place-items:center;margin:3px 0 9px;isolation:isolate;opacity:0;transform:translateY(14px) scale(.95);transition:opacity .65s .85s ease,transform .8s .8s cubic-bezier(.2,.8,.2,1)}
.zev-intro-minimal.show .zev-intro-mascot{opacity:1;transform:none}
.zev-intro-mascot img{position:relative;z-index:1;width:clamp(190px,22vw,245px);height:100%;object-fit:contain;filter:drop-shadow(0 14px 22px rgba(0,0,0,.25));animation:zevIntroFloat 4.5s ease-in-out infinite;animation-delay:1.2s}
.zev-intro-arrival-glow{position:absolute;z-index:0;width:180px;height:160px;border-radius:50%;background:radial-gradient(ellipse,rgba(185,227,79,.16),transparent 72%);opacity:0}
.zev-intro-minimal.show .zev-intro-arrival-glow{animation:zevIntroGlow .8s 1.05s ease-out forwards}
.zev-intro-orbit{position:absolute;z-index:3;top:57%;left:50%;width:158px;height:49px;border:1.5px solid rgba(207,242,119,.92);border-radius:50%;transform:translate(-50%,-50%) rotate(-18deg);box-shadow:0 0 8px rgba(185,227,79,.16);animation:zevIntroOrbit 6.2s linear infinite;animation-delay:1.1s;opacity:0}
.zev-intro-minimal.show .zev-intro-orbit{opacity:1;transition:opacity .4s 1s}
.zev-intro-orbit:before{content:"";position:absolute;inset:5px 8px;border:1px solid rgba(245,246,239,.38);border-radius:50%}.zev-intro-orbit i{position:absolute;top:2px;left:15%;width:6px;height:6px;border-radius:50%;background:#d4f786;box-shadow:0 0 10px rgba(212,247,134,.9)}
.zev-intro-eye-lid{position:absolute;z-index:2;width:7.2%;height:13%;border-radius:50%;background:#282a25;transform:scaleY(0);transform-origin:center;animation:zevCharacterBlink 5.1s ease-in-out infinite;animation-delay:1.8s;pointer-events:none}
.zev-intro-eye-lid-left{left:42%;top:34.5%}.zev-intro-eye-lid-right{left:61.5%;top:39%;animation-delay:1.825s}
.zev-intro-kicker{font-size:8px;font-weight:850;letter-spacing:1.8px;color:var(--lime,#b9e34f);margin:8px 0 12px}.zev-intro-left h2{margin:0;font-size:clamp(28px,3.1vw,38px);line-height:1.02;letter-spacing:-1.8px;font-weight:760;color:#f5f6ef}.zev-intro-left h2 span{color:rgba(245,246,239,.7);font-weight:570}
.zev-intro-right{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:48px 42px 34px;opacity:0;transform:translateY(10px);transition:opacity .6s .8s ease,transform .65s .8s ease}
.zev-intro-minimal.show .zev-intro-right{opacity:1;transform:none}
.zev-intro-overline{margin:0 0 14px;font-size:8px;font-weight:850;letter-spacing:1.8px;color:var(--lime,#b9e34f)}
.zev-intro-right h3{margin:0 0 10px;color:#f5f6ef;font-size:clamp(22px,2.5vw,29px);line-height:1.1;letter-spacing:-1.1px}
.zev-intro-copy{max-width:430px;margin:0;color:rgba(245,246,239,.63);font-size:12px;line-height:1.75}
.zev-intro-help-list{display:grid;gap:14px;margin:23px 0 23px}
.zev-intro-help-list>div{display:grid;grid-template-columns:26px minmax(0,1fr);gap:10px;align-items:start}
.zev-intro-help-list>div>span{display:grid;place-items:center;width:23px;height:23px;border:1px solid rgba(185,227,79,.32);border-radius:7px;color:var(--lime,#b9e34f);font-size:8px;font-weight:850}
.zev-intro-help-list b,.zev-intro-help-list small{display:block}.zev-intro-help-list b{font-size:11px;color:#f5f6ef}.zev-intro-help-list small{margin-top:4px;font-size:10px;line-height:1.5;color:rgba(245,246,239,.5)}
.zev-intro-actions{display:flex;align-items:center;gap:15px;margin-top:auto}.zev-intro-actions .btn{min-height:43px;padding:0 16px;border-radius:11px;white-space:nowrap}.zev-intro-dismiss{border:0;background:transparent;color:rgba(245,246,239,.48);font-size:10px;cursor:pointer;padding:8px 0}.zev-intro-dismiss:hover{color:#fff}.zev-intro-footnote{display:block;margin-top:15px;color:rgba(245,246,239,.3);font-size:9px}
.zev-welcome-backdrop.zev-intro-minimal.closing{opacity:0;pointer-events:none;backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0)}
@keyframes zevIntroFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-7px) rotate(1deg)}}
@keyframes zevIntroOrbit{0%{transform:translate(-50%,-50%) rotate(-18deg)}50%{transform:translate(-50%,-50%) rotate(18deg)}100%{transform:translate(-50%,-50%) rotate(342deg)}}
@keyframes zevIntroGlow{0%{opacity:0;transform:scale(.7)}45%{opacity:1;transform:scale(1.25)}100%{opacity:.75;transform:scale(1)}}
@media(max-width:760px){.zev-intro-shell{grid-template-columns:minmax(0,1fr);width:min(500px,100%);max-height:88vh;overflow:auto;border-radius:22px}.zev-intro-left{align-items:center;text-align:center;padding:22px 22px 10px;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.zev-intro-mark{align-self:flex-start;margin-bottom:0}.zev-intro-mascot{height:155px;margin:0}.zev-intro-mascot img{width:175px}.zev-intro-orbit{width:128px;height:39px}.zev-intro-left h2{font-size:29px}.zev-intro-right{padding:23px 24px 22px}.zev-intro-right h3{font-size:24px}.zev-intro-help-list{gap:10px;margin:17px 0}.zev-intro-help-list small{font-size:9px}.zev-intro-actions{justify-content:space-between}.zev-intro-footnote{margin-top:10px}}
@media(max-width:420px){.zev-welcome-backdrop.zev-intro-minimal{padding:10px}.zev-intro-shell{max-height:calc(100vh - 20px)}.zev-intro-left{padding:17px 16px 9px}.zev-intro-mascot{height:130px}.zev-intro-mascot img{width:150px}.zev-intro-left h2{font-size:25px}.zev-intro-right{padding:18px 18px 16px}.zev-intro-right h3{font-size:21px}.zev-intro-help-list{gap:8px;margin:13px 0}.zev-intro-actions .btn{min-height:40px;padding:0 12px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.zev-welcome-backdrop.zev-intro-minimal,.zev-intro-shell,.zev-intro-mascot,.zev-intro-right{transition:none!important}.zev-intro-mascot img,.zev-intro-orbit,.zev-intro-eye-lid,.zev-agent-neck-orbit,.zev-agent-eye-blink,.zev-agent-mascot,.ai-submit-spinner,.ai-send-dots i{animation:none!important}.zev-intro-mascot,.zev-intro-right{opacity:1;transform:none}}
@media(max-width:720px){.zev-agent-scope-options{grid-template-columns:1fr}.zev-agent-create-form .field-row{grid-template-columns:1fr}.zev-agent-editor-modal{width:calc(100vw - 20px);max-height:92vh;padding:15px}.agent-capability-grid-rich{grid-template-columns:1fr 1fr}}


/* AI composer refinement: keep input, hint and send control on a clean baseline. */
.ai-composer{align-items:flex-end;gap:12px}
.ai-composer-field{display:flex;flex-direction:column;justify-content:flex-end;gap:5px;min-width:0}
.ai-composer textarea{box-sizing:border-box;min-height:48px;max-height:160px;resize:vertical;line-height:1.5;padding:9px 3px 3px;overflow-y:auto}
.ai-composer-field small{line-height:1.35;min-height:11px;font-size:9px;padding:0 3px 1px;white-space:normal}
.ai-composer .global-ai-pdf-btn{flex:0 0 40px;align-self:flex-end;margin-bottom:1px}
.ai-composer #aiSubmit{flex:0 0 auto;align-self:flex-end;min-height:46px;white-space:nowrap}
.ai-send-status{box-shadow:0 8px 24px rgba(0,0,0,.05)}
.ai-send-status-copy{max-width:60ch}
.ai-followup-suggestions{align-items:center}
.ai-followup-chip{max-width:min(340px,100%);white-space:normal}
.zev-agent-create-form .field-optional{display:block;color:var(--muted);font-size:10px;line-height:1.45;margin-top:5px;font-weight:450}
.zev-agent-create-form .field-row{align-items:start;gap:14px}
.zev-agent-create-form select:focus-visible,.zev-agent-create-form input:focus-visible,.zev-agent-create-form textarea:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.zev-agent-settings-summary{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.zev-agent-settings-summary span{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:5px 8px;font-size:9px;color:var(--muted)}
@media(max-width:620px){.ai-composer{gap:8px;padding:10px}.ai-composer .global-ai-pdf-btn{flex-basis:36px;width:36px;height:42px}.ai-composer #aiSubmit{min-height:42px;padding:0 12px;font-size:11px}.ai-composer textarea{min-height:44px}.ai-composer-field small{font-size:8px}}
@media(prefers-reduced-motion:reduce){.ai-followup-chip,.ai-send-status{animation:none!important;transition:none!important}}

/* Agent memory & continuity: visible capabilities, not hidden chatbot history. */
.agent-memory-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:18px 0;padding:22px 24px;background:linear-gradient(115deg,color-mix(in srgb,var(--lime) 7%,var(--surface)),var(--surface));border-color:color-mix(in srgb,var(--lime) 25%,var(--line))}
.agent-memory-copy{min-width:0;max-width:700px}
.agent-memory-copy h3{font-size:clamp(20px,2vw,27px);letter-spacing:-.9px;margin:5px 0 8px}
.agent-memory-copy p{font-size:12px;line-height:1.7;color:var(--muted);max-width:660px;margin:0}
.agent-memory-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:13px}
.agent-memory-tags span{display:inline-flex;padding:6px 9px;border-radius:999px;border:1px solid var(--line);font-size:9px;font-weight:750;color:var(--muted);background:var(--surface)}
.agent-memory-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;flex-shrink:0}
.zev-agent-memory-fieldset{min-width:0;margin:16px 0 0;padding:14px;border:1px solid color-mix(in srgb,var(--lime) 26%,var(--line));border-radius:15px;background:color-mix(in srgb,var(--lime) 3%,var(--surface))}
.zev-agent-memory-fieldset legend{padding:0 7px;font-size:12px;font-weight:800}
.zev-agent-memory-fieldset>p{font-size:10px;color:var(--muted);line-height:1.6;margin:0 0 7px}
.zev-agent-memory-fieldset .zev-agent-policy-option{gap:10px;padding:11px 0}
.zev-agent-memory-fieldset .zev-agent-policy-option input{accent-color:var(--lime)}
.zev-agent-memory-fieldset .zev-agent-policy-option+.zev-agent-policy-option{border-top:1px solid var(--line)}
@media(max-width:760px){.agent-memory-panel{align-items:flex-start;flex-direction:column;gap:16px;padding:18px}.agent-memory-actions{justify-content:flex-start;width:100%}}

/* Account deletion (Settings → Account) */
.settings-account-panel .danger-zone{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);align-items:center;gap:16px}
.settings-account-panel .danger-zone strong{color:var(--danger)}
.delete-account-copy ul{margin:10px 0 12px 18px;padding:0;display:grid;gap:6px;line-height:1.45}
.delete-account-modal .field input{width:100%}
.delete-account-modal .profile-form-status{min-height:1.4em;color:var(--danger)}


/* WP5 server-backed custom-agent runtime console */
.zev-server-agent-console{margin-top:22px;padding:clamp(16px,3vw,26px);min-width:0}
.zev-server-agent-heading,.zev-server-agent-runtime-head{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}
.zev-server-agent-heading h2,.zev-server-agent-runtime h3{margin:6px 0}
.zev-server-agent-heading p,.zev-server-agent-runtime-head p{margin:6px 0;color:var(--muted);font-size:13px;max-width:720px}
.zev-server-agent-badge{border:1px solid var(--line);border-radius:999px;padding:5px 10px;font-size:11px;color:var(--muted);white-space:nowrap}
.zev-server-agent-notice{margin:16px 0 4px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font-size:13px;color:var(--muted)}
.zev-server-agent-notice.error{color:var(--text);background:var(--panel)}
.zev-server-agent-create,.zev-server-agent-runtime{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}
.zev-server-agent-create h3{margin:0 0 14px}
.zev-server-agent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.zev-server-agent-grid label,.zev-server-agent-instructions,.zev-server-agent-run-panel label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;min-width:0}
.zev-server-agent-grid input,.zev-server-agent-grid select,.zev-server-agent-instructions textarea,.zev-server-agent-run-panel textarea{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:9px;padding:10px 11px;background:var(--card,var(--bg));color:var(--text);font:inherit;font-weight:400;min-width:0}
.zev-server-agent-instructions{margin-top:12px}
.zev-server-agent-workspaces{margin:14px 0;padding:12px;border:1px solid var(--line);border-radius:10px}
.zev-server-agent-workspaces legend{font-size:12px;font-weight:600;padding:0 5px}
.zev-server-agent-workspaces>div{display:flex;gap:8px 14px;flex-wrap:wrap}
.zev-server-agent-workspaces label{display:flex;gap:6px;align-items:center;font-size:12px}
.zev-server-agent-form-status{display:inline-block;font-size:12px;color:var(--muted);margin-left:10px}
.zev-server-agent-runtime-head{align-items:center;margin-bottom:12px}
.zev-server-agent-list{display:grid;gap:8px}
.zev-server-agent-card{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;min-width:0}
.zev-server-agent-card.selected{border-color:var(--text)}
.zev-server-agent-card>div{min-width:0}
.zev-server-agent-card p{margin:4px 0;font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.zev-server-agent-card small{font-size:11px;color:var(--muted)}
.zev-server-agent-run-panel{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.zev-server-agent-run-panel form{display:grid;gap:9px}
.zev-server-agent-run-panel textarea{resize:vertical}
.zev-server-agent-output{margin-top:15px;padding:14px;border:1px solid var(--line);border-radius:12px}
.zev-server-agent-output pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px;margin:10px 0 0}
.zev-server-agent-history{margin-top:20px}
.zev-server-agent-run-row{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 0;border-top:1px solid var(--line);font-size:12px}
.zev-server-agent-run-row>div{display:flex;flex-direction:column;gap:4px}
.zev-server-agent-run-row small,.zev-server-agent-run-row>span{color:var(--muted)}
@media(max-width:600px){.zev-server-agent-grid{grid-template-columns:minmax(0,1fr)}.zev-server-agent-card{align-items:flex-start;flex-direction:column}.zev-server-agent-console .btn{max-width:100%}}

.zev-server-agent-card-actions,.zev-server-agent-form-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.zev-server-agent-card-actions{flex-shrink:0}
@media(max-width:600px){.zev-server-agent-card-actions{width:100%}.zev-server-agent-card-actions .btn{flex:1}}
