.auth-gate{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 20% 10%,#264d40,#08120f 58%)}
.auth-card{width:min(430px,100%);padding:38px;border:1px solid rgba(255,255,255,.15);background:#101715;color:#fff;box-shadow:0 35px 90px rgba(0,0,0,.45)}
.auth-card .brand-glyph{display:grid;place-items:center;width:52px;height:52px;margin-bottom:24px;border:1px solid #d99966;color:#d99966;font:30px var(--serif)}
.auth-card h1{margin:0;font:48px var(--serif)}.auth-card>p{color:#a8b7b1}.auth-card form{display:grid;gap:15px;margin-top:24px}.auth-card label>span{color:#b9c8c2}.auth-card input{background:#0a0e0d;border-color:#34413d;color:#fff}
.watermark{position:fixed;right:18px;bottom:12px;z-index:90;pointer-events:none;color:rgba(217,153,102,.22);font:900 13px var(--sans);letter-spacing:.25em}
.user-summary{display:grid;gap:3px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.13)}.user-summary strong{color:#fff;font-size:12px}.user-summary small{color:#9bb5aa;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.user-summary button{justify-self:start;margin-top:5px;padding:0;border:0;background:transparent;color:#d9a477;font-size:10px;cursor:pointer}
.session-label{color:#d9a477;font-size:8px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.user-summary button:disabled{opacity:.55;cursor:wait}
.hierarchy-card{overflow:hidden}.concept-intro{max-width:620px;margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.library-toolbar{padding:10px;border:1px solid rgba(32,66,55,.14);border-radius:14px;background:linear-gradient(120deg,rgba(29,66,54,.08),rgba(217,153,102,.08))}.library-toolbar input,.library-toolbar select{min-height:40px;border-radius:10px}.library-toolbar #libraryCount{justify-self:end;padding:7px 10px;border:1px solid rgba(32,66,55,.18);border-radius:999px;background:rgba(255,255,255,.7);color:var(--green);font-size:10px;font-weight:900;letter-spacing:.04em;white-space:nowrap}.hierarchy-tree{height:540px;padding:8px;border:0;border-radius:16px;background:linear-gradient(145deg,#132b24,#0b1512);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);scrollbar-color:#d99966 transparent}.tree-book{margin-bottom:8px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.045)}.tree-book+.tree-book{border-top:1px solid rgba(255,255,255,.09)}.hierarchy-node,.search-result{min-height:58px;border-bottom-color:rgba(255,255,255,.07);color:#f8f4ec}.hierarchy-node:hover,.search-result:hover{background:rgba(217,153,102,.12)}.subject-book{position:sticky;top:0;background:linear-gradient(100deg,#1b4438,#193329);box-shadow:0 5px 14px rgba(0,0,0,.18)}.subject-book .node-copy strong{font-family:var(--serif);font-size:16px;letter-spacing:.01em}.node-toggle{border-color:rgba(255,255,255,.16);border-radius:50%;background:rgba(255,255,255,.08);color:#e9bd99;font-size:16px}.node-toggle:disabled{color:#799187}.node-copy small,.search-result small{color:#aebeb7}.node-count,.approval{min-width:26px;padding:5px 8px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.08);color:#e5eee9;font-size:9px;font-weight:900;letter-spacing:.06em;text-align:center}.approval.approved{border-color:rgba(123,193,147,.28);background:rgba(81,160,113,.18);color:#b7edc9}.approval.rejected,.approval.needs_review{border-color:rgba(255,154,148,.3);background:rgba(175,65,56,.2);color:#ffb6af}.review-topic{border:1px solid rgba(217,153,102,.42);border-radius:999px;background:transparent;color:#edbe99;padding:5px 9px;font-size:9px;font-weight:900;letter-spacing:.04em;text-decoration:none}.review-topic:hover{background:#d99966;color:#18241f}.search-result{margin-bottom:7px;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:rgba(255,255,255,.045)}.search-result strong{font-family:var(--serif);font-size:16px}.library-state{border-color:rgba(217,153,102,.35);background:rgba(19,43,36,.07)}
.progress-insights{display:grid;grid-template-columns:1.4fr .6fr;gap:20px}.progress-insights .table-card{margin-top:0}.progress-chart svg{display:block;width:100%;height:230px}.progress-chart line{stroke:#4a4a4a;stroke-width:1}.progress-chart path{fill:none;stroke:var(--green);stroke-width:4}.progress-chart circle{fill:var(--orange);stroke:#111;stroke-width:2}.chart-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}
.learning-pattern{margin-top:20px}.learning-pattern .pattern-tag{display:inline-block;padding:6px 9px;background:var(--sage);color:var(--green);font-size:10px;font-weight:900;text-transform:uppercase}.learning-pattern p{color:var(--muted);line-height:1.6}.learning-pattern div{display:grid;gap:5px}.learning-pattern small{color:var(--muted)}
.study-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:18px}.study-chart article{display:grid;align-content:start;gap:10px;min-height:160px;padding:13px;border:1px solid var(--line);background:var(--surface2)}.study-chart time{color:var(--orange);font-size:9px;font-weight:900;text-transform:uppercase}.study-chart strong,.study-chart small{display:block}.study-chart strong{font:15px var(--serif)}.study-chart small{margin-top:5px;color:var(--muted);font-size:10px}.study-chart b{align-self:end;color:var(--green);font-size:11px}
.memory-actions{display:flex;gap:6px;align-items:center}.memory-actions button{padding:6px 9px!important}.memory-actions span{color:var(--muted);font-size:9px}.edit-memory{border:1px solid var(--line)!important;background:transparent!important;color:var(--green)!important}
.user-form{display:grid;grid-template-columns:1fr 1.2fr 1fr auto auto auto;gap:9px;align-items:center;margin:18px 0}.user-form label,.user-row label{display:flex;gap:5px;align-items:center;color:var(--muted);font-size:11px}.user-form label input,.user-row label input{width:auto}.user-inventory{display:grid}.user-row{display:grid;grid-template-columns:1.1fr auto auto auto 1fr auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px}.user-row small{display:block;color:var(--muted)}.user-row .secondary{padding:10px 13px}
@media(max-width:1050px){.study-chart{grid-template-columns:repeat(4,1fr)}.user-form{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.progress-insights{grid-template-columns:1fr}.study-chart{grid-template-columns:1fr 1fr}.user-form,.user-row{grid-template-columns:1fr}.watermark{font-size:9px}.auth-card{padding:26px}.auth-card h1{font-size:38px}.library-toolbar #libraryCount{justify-self:start}.hierarchy-tree{height:62vh;padding:6px}.subject-book .node-copy strong,.search-result strong{white-space:normal}.hierarchy-node,.search-result{gap:8px}.review-topic{margin-left:39px}}
