:root{--bg:#0d0e0e;--surface:#181919;--surface2:#202121;--border:#333432;--text:#f4f2ed;--muted:#a6a8a5;--gold:#e7bb50}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:800;color:var(--gold)}.shell{display:flex;min-height:100vh}.sidebar{width:288px;flex-shrink:0;background:#131414;border-right:1px solid #2c2d2b;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:28px 17px;overflow:auto}.brand{display:flex;align-items:center;gap:12px;padding:5px 11px 36px}.brand-icon{height:43px;width:43px;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;font-family:Georgia,serif;font-size:31px;font-weight:bold}.brand strong{display:block;font-size:15px;letter-spacing:1px}.brand span{display:block;font-size:11px;letter-spacing:4px;color:var(--gold);margin-top:3px}.nav-label{color:#767b77;font-size:10px;font-weight:800;letter-spacing:1.8px;padding:0 12px;margin-bottom:12px}.modules-label{margin-top:31px}.nav-item{display:flex;align-items:center;gap:11px;padding:12px;border-radius:9px;color:#b8bab6;font-size:12px;line-height:1.45;margin-bottom:5px}.nav-item:hover,.nav-item.active{background:#262725;color:#fff}.nav-item.active{border-left:2px solid var(--gold)}.nav-num{font-size:11px;color:var(--gold);font-weight:800}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--border);padding:23px 12px 0;display:flex;align-items:flex-end;justify-content:space-between;gap:5px}.sidebar-bottom span{font-size:10px;line-height:1.8;letter-spacing:1px;color:var(--gold)}.sidebar-bottom button{border:0;background:transparent;color:#aaa;display:flex;align-items:center;gap:5px;font-size:12px}.main-area{flex:1;min-width:0}.topbar{height:77px;border-bottom:1px solid #292b28;display:flex;align-items:center;justify-content:space-between;padding:0 6%;font-size:10px;font-weight:700;letter-spacing:2px;color:#b3b4b1}.topbar-right{display:flex;gap:9px;align-items:center;color:var(--gold)}.page{max-width:1340px;margin:auto;padding:65px 6% 95px}.page h1{font-size:clamp(39px,5.5vw,71px);line-height:1.09;letter-spacing:-2px;margin:16px 0 19px;font-weight:750}.page h1 em{font-family:Georgia,serif;color:var(--gold);font-weight:400}.lead{font-size:15px;line-height:1.8;color:var(--muted);margin:0 0 37px}.searchbar{max-width:620px;border:1px solid #393b37;background:#1b1d1b;padding:16px 20px;border-radius:10px;display:flex;align-items:center;gap:13px;color:#9b9d99}.searchbar input,.small-search input{background:transparent;border:0;outline:0;color:#fff;flex:1;min-width:0}.searchbar input::placeholder,.small-search input::placeholder{color:#848782}.section-title{display:flex;justify-content:space-between;align-items:end;margin:70px 0 24px}.section-title h2{font-size:27px;letter-spacing:-.5px;margin:8px 0 0}.subtle{font-size:12px;color:#8f928e}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.module-card{min-height:225px;border:1px solid #333530;background:#1b1c1b;border-radius:13px;padding:27px;display:flex;flex-direction:column;transition:border-color .2s,transform .2s}.module-card:hover{border-color:var(--gold);transform:translateY(-3px)}.card-top{display:flex;justify-content:space-between;color:var(--gold);font-size:11px;font-weight:800;letter-spacing:1.5px}.module-card h3{font-size:22px;line-height:1.3;font-weight:650;margin:30px 0 23px}.card-bottom{margin-top:auto;display:flex;gap:15px;flex-wrap:wrap}.card-bottom span{display:flex;align-items:center;gap:5px;color:#a5a8a2;font-size:10px}.matches{color:var(--gold);font-size:11px}footer{margin-top:90px;font-size:11px;letter-spacing:3px;color:#6e726c}.back-link{display:inline-flex;gap:9px;align-items:center;color:#bbb;font-size:13px;margin-bottom:37px}.module-page h1{font-size:clamp(31px,4vw,49px);max-width:960px}.tabs{display:flex;gap:27px;border-bottom:1px solid var(--border);margin:38px 0 30px}.tabs button{background:transparent;border:0;color:#aaa;padding:0 3px 17px;display:flex;align-items:center;gap:9px;font-size:13px;white-space:nowrap}.tabs button.selected{border-bottom:2px solid var(--gold);color:var(--gold)}.study-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:38px;align-items:start}.document{background:#1a1b1a;border:1px solid #30322f;border-radius:12px;padding:36px 43px;min-width:0;overflow-wrap:anywhere}.document-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:35px}.small-search{display:flex;gap:7px;align-items:center;background:#262826;padding:10px 13px;border-radius:8px;color:#a3a5a0;max-width:260px}.small-search input{font-size:12px}.document p{font-size:14px;line-height:1.85;color:#d2d4cf;margin:0 0 15px;white-space:pre-wrap}.document h2{font-size:26px;line-height:1.3;margin:42px 0 18px;color:var(--gold);letter-spacing:-.3px}.document h3{font-size:21px;line-height:1.35;margin:35px 0 14px;color:#f1f0eb}.document h4{font-size:17px;margin:28px 0 12px;color:#e6e4df}.document .highlighted{background:#5b4b1c55;border-radius:4px}.table-scroll{overflow:auto;margin:20px 0}.doc-table{width:100%;border-collapse:collapse;font-size:12px;color:#d6d7d1}.doc-table td{border:1px solid #454741;padding:10px 12px;vertical-align:top;white-space:pre-wrap}.toc{position:sticky;top:25px;max-height:calc(100vh - 50px);overflow:auto;border-left:1px solid var(--border);padding:12px 0 12px 17px}.toc .eyebrow{margin-bottom:18px}.toc a{display:flex;align-items:start;gap:6px;color:#9ea19c;font-size:11px;line-height:1.5;padding:8px 0}.toc a:hover{color:var(--gold)}.toc svg{flex-shrink:0;margin-top:2px}.empty-panel{background:#1b1c1b;border:1px solid var(--border);border-radius:12px;min-height:350px;padding:40px;max-width:850px}.empty-panel>svg{color:var(--gold)}.empty-panel h2{font-size:27px;margin:18px 0 12px}.empty-panel p{color:#b6b9b2;line-height:1.8;max-width:580px}.placeholder-card{display:flex;gap:12px;align-items:center;background:#252725;border:1px dashed #4a4d46;border-radius:9px;padding:25px;color:#aeb1aa;margin-top:28px;font-size:13px}.resource-link{display:flex;justify-content:space-between;padding:18px;border:1px solid #3b3e37;border-radius:8px;margin-top:12px}.login-page{min-height:100vh;display:grid;place-items:center;padding:25px;background:radial-gradient(circle at 50% 10%,#35301c 0,#111 50%)}.login-card{width:min(100%,440px);background:#191a19;border:1px solid #3c3d37;border-radius:16px;padding:48px 39px;text-align:center}.logo-mark{height:57px;width:57px;border-radius:13px;background:var(--gold);color:#111;display:grid;place-items:center;margin:0 auto 28px}.login-card h1{font-size:34px;line-height:1.2;letter-spacing:1px;margin:16px 0}.login-card h1 span{color:var(--gold);letter-spacing:4px}.login-card p{font-size:13px;color:#b8b9b5;line-height:1.7}.login-card form{text-align:left;margin:38px 0}.login-card label{font-size:12px;color:#e3e2dc;display:block;margin-bottom:10px}.login-card input{width:100%;padding:15px;border-radius:7px;background:#252624;border:1px solid #45463f;color:#fff;outline:none}.login-card input:focus{border-color:var(--gold)}.login-card form button{margin-top:16px;width:100%;border:0;background:var(--gold);border-radius:7px;padding:15px;font-weight:800;display:flex;justify-content:center;gap:10px;align-items:center}.login-card form button:disabled{opacity:.6}.login-card .error{color:#ff9898;text-align:left}.login-card small{font-size:10px;color:#8e918b;letter-spacing:2px}.menu-toggle,.close-menu,.backdrop{display:none}@media(max-width:1100px){.study-layout{grid-template-columns:1fr}.toc{position:static;max-height:260px;border:1px solid var(--border);padding:20px;border-radius:10px;order:-1}.document{padding:25px}}@media(max-width:800px){.sidebar{position:fixed;z-index:30;left:0;top:0;transform:translateX(-110%);transition:transform .2s}.sidebar.is-open{transform:translateX(0)}.close-menu,.menu-toggle{display:block;background:transparent;border:0;color:#eee}.close-menu{margin-left:auto}.backdrop{display:block;position:fixed;inset:0;z-index:20;background:#0009;border:0}.topbar{padding:0 20px;gap:12px}.topbar-right{display:none}.page{padding:45px 20px 80px}.module-grid{grid-template-columns:1fr}.module-card{min-height:185px}.section-title{margin-top:55px}.document-header{flex-direction:column;align-items:start}.small-search{max-width:100%;width:100%}.tabs{gap:15px}.tabs button{font-size:11px}.document{padding:23px 20px}.login-card{padding:35px 25px}}
