*{box-sizing:border-box}:root{color-scheme:dark;font-family:Geist,Geist Sans,system-ui,sans-serif;background-color:#000;color:#ededed;--ink: #ededed;--muted: #a1a1a1;--accent: #ededed;--accent-2: #444;--surface: #0a0a0a;--line: #333;--shadow: 0px 6px 12px rgba(0, 0, 0, .4);--glow: rgba(255, 255, 255, .15);--glow-2: rgba(0, 112, 243, .3);--heading-72: 4.5rem;--heading-56: 3.5rem;--heading-40: 2.5rem;--copy-18: 1.125rem;--copy-16: 1rem;--copy-14: .875rem;--radius-lg: 12px;--radius-md: 8px;--radius-sm: 6px}body{margin:0;min-height:100vh;background:#000;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.page{max-width:1200px;margin:0 auto;padding:32px 24px 88px}@media (max-width: 720px){.page{padding:20px 16px 80px}}.nav{position:sticky;top:18px;z-index:20;margin-bottom:32px}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:#0a0a0ab8;box-shadow:0 18px 40px #0000008c,0 0 0 1px #ffffff0a inset;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.nav a{color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.nav a:hover{color:#f7f7f7}.nav-links{display:flex;align-items:center;gap:18px}.nav-actions{display:flex;align-items:center;gap:12px}.auth-nav{display:inline-flex;align-items:center;gap:8px}.course-switcher{position:relative}.course-switcher summary{list-style:none;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:#0a0a0aa6;font-size:12px;font-weight:600;color:#f0f0f0;cursor:pointer}.course-switcher summary::-webkit-details-marker{display:none}.course-switcher-label{color:var(--muted);font-weight:500}.course-switcher-title{white-space:nowrap}.course-switcher-caret{font-size:10px;color:var(--muted)}.course-switcher[open] summary{border-color:#ffffff40;box-shadow:0 8px 18px #0006}.course-switcher-menu{position:absolute;top:calc(100% + 10px);left:0;min-width:240px;max-height:320px;overflow-y:auto;padding:6px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#080808f5;box-shadow:0 24px 50px #0009;backdrop-filter:blur(14px);z-index:50}.course-switcher-item{display:grid;gap:4px;padding:10px 12px;border-radius:10px;color:#f0f0f0;font-size:13px;transition:background .15s ease,color .15s ease}.course-switcher-item-title{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.course-switcher-item-sub{color:var(--muted);font-size:11px;text-transform:none}.course-switcher-item:hover{background:#ffffff14}.course-switcher-item.is-active{background:#4a7cff2e;border:1px solid rgba(74,124,255,.35)}.hero{position:relative;overflow:hidden;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,#141414e6,#050505e6);box-shadow:0 28px 60px #000000a6,0 0 0 1px #ffffff0a inset;padding:24px;margin-bottom:28px;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;align-items:center}.hero:after{content:"";position:absolute;inset:-40% -20% auto auto;width:360px;height:360px;background:radial-gradient(circle,var(--glow-2),transparent 65%);pointer-events:none}.hero:before{content:"";position:absolute;inset:auto auto -120px -120px;width:280px;height:280px;background:radial-gradient(circle,var(--glow),transparent 70%);opacity:.85;pointer-events:none}.hero-stack{position:absolute;inset:16px 16px auto auto;width:180px;height:120px;border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 60%);border:1px solid rgba(255,255,255,.08);transform:rotate(-6deg);pointer-events:none}.hero-stack:after{content:"";position:absolute;inset:12px;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.12),transparent)}.hero-visual{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.1);background:linear-gradient(135deg,rgba(255,255,255,.06),transparent 60%),#0b0b0b;padding:18px;min-height:220px;display:grid;gap:12px;box-shadow:0 20px 40px #00000080}.hero-visual .mini-card{border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.08);background:#121212e6;padding:12px;display:grid;gap:8px}.mini-row{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted)}.mini-bar{height:6px;border-radius:999px;background:#ffffff14;overflow:hidden}.mini-bar span{display:block;height:100%;width:55%;background:linear-gradient(90deg,#fff9,#4a7cff99)}.brand{background:transparent;padding:6px 0;border-radius:14px;border:0;box-shadow:none}.brand h1{margin:0 0 8px;font-size:clamp(2.25rem,5vw,var(--heading-72));letter-spacing:-.03em;line-height:1.1}.brand p{margin:0;color:var(--muted);font-size:var(--copy-18);line-height:1.5}.card{background:#000;border-radius:var(--radius-md);padding:24px;border:1px solid #333;transition:border-color .15s ease}.card:hover{border-color:#555}.card,.link-card,.auth-panel,.hero-visual,.brand{backdrop-filter:blur(6px)}.stack{display:grid;gap:20px}.stack>*+*{margin-top:4px}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.data-list{display:grid;gap:12px}.data-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;position:relative;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,#101010f2,#060606e6);box-shadow:0 16px 34px #00000080;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.data-row:hover{transform:translateY(-2px);border-color:#fff3;box-shadow:0 20px 40px #0000008c}.data-row:after{content:"";position:absolute;inset:0 auto 0 0;width:4px;opacity:0;border-radius:14px 0 0 14px;transition:opacity .2s ease}.data-row[data-status=in_progress]{border-color:#ffc17066;background:linear-gradient(120deg,#1a120af2,#060606eb);box-shadow:0 20px 40px #ffb55c2e,0 20px 40px #0000008c}.data-row[data-status=in_progress]:after{opacity:1;background:linear-gradient(180deg,#ffd180f2,#ff8e5466)}.data-row[data-status=read]{border-color:#78f0aa66;background:linear-gradient(120deg,#0c1812f2,#060606eb);box-shadow:0 20px 40px #78f0aa2e,0 20px 40px #0000008c}.data-row[data-status=read]:after{opacity:1;background:linear-gradient(180deg,#94ffc2f2,#48db8c66)}.data-body{display:flex;align-items:center;gap:16px;min-width:0}.data-cover{position:relative;width:56px;height:78px;border-radius:10px;border:1px solid rgba(255,255,255,.12);overflow:hidden;flex-shrink:0;background:linear-gradient(155deg,#ffffff14,#ffffff05);box-shadow:0 10px 20px #00000073}.data-cover img{width:100%;height:100%;object-fit:cover;display:block}.data-cover.is-empty:after{content:"";position:absolute;inset:10px;border-radius:8px;border:1px dashed rgba(255,255,255,.16)}.data-cover.is-stack{background:transparent;border:none;overflow:visible;box-shadow:none}.cover-stack-item{position:absolute;inset:0;border-radius:6px;background:#222;border:1px solid rgba(255,255,255,.15);box-shadow:0 4px 8px #0006;transform-origin:bottom center;transition:transform .3s ease}.cover-stack-item img{width:100%;height:100%;object-fit:cover;border-radius:5px}.cover-stack-item:nth-child(1){z-index:1;transform:rotate(-12deg) translate(-4px);filter:brightness(.6)}.cover-stack-item:nth-child(2){z-index:2;transform:rotate(-6deg) translate(-2px);filter:brightness(.8)}.cover-stack-item:nth-child(3){z-index:3;transform:rotate(0)}.data-row:hover .cover-stack-item:nth-child(1){transform:rotate(-18deg) translate(-8px)}.data-row:hover .cover-stack-item:nth-child(2){transform:rotate(-10deg) translate(-4px)}.data-main{display:grid;gap:6px;min-width:0}.data-title{font-size:16px;font-weight:600;letter-spacing:-.01em}.data-sub{font-size:12px;color:var(--muted)}.data-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);white-space:nowrap}.data-chip{padding:4px 8px;border-radius:999px;border:1px solid rgba(255,255,255,.14);font-size:11px;color:#f0f0f0}.data-link{color:#f0f0f0;font-weight:600;letter-spacing:.02em}.status-pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.16);font-size:11px;font-weight:600;letter-spacing:.02em;background:#0c0c0ccc;color:#f0f0f0}.status-dot{width:8px;height:8px;border-radius:999px;background:#555}.status-pill[data-status=not_started]{border-color:#ffffff1f;color:var(--muted);background:#0c0c0c99}.status-pill[data-status=not_started] .status-dot{background:#555}.status-pill[data-status=signed_out]{border-color:#ffffff1a;color:var(--muted);background:#08080880}.status-pill[data-status=signed_out] .status-dot{background:#444}.status-pill[data-status=error]{border-color:#ff787866;color:#ff9a9a;background:#200a0a99}.status-pill[data-status=error] .status-dot{background:#ff9a9a}.status-pill[data-status=in_progress]{border-color:#ffc6788c;color:#ffd6a6;background:#1e140ab3;box-shadow:0 0 16px #ffaa5033}.status-pill[data-status=in_progress] .status-dot{background:#ffbf70;box-shadow:0 0 #ffbf7099;animation:statusPulse 1.8s ease-out infinite}.status-pill[data-status=read]{border-color:#78f0aa99;color:#bfffe0;background:#0c1c12b3;box-shadow:0 0 16px #64f0aa33}.status-pill[data-status=read] .status-dot{background:#6bffb8}@keyframes statusPulse{0%{box-shadow:0 0 #ffbf7099}70%{box-shadow:0 0 0 8px #ffbf7000}to{box-shadow:0 0 #ffbf7000}}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;border:1px solid #333;background:transparent;color:#888;font-size:12px;font-weight:500}.pill-link{background:transparent;border:1px solid rgba(255,255,255,.16);color:#f7f7f7}.section-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.section-cta{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--muted)}.section-cta span{transition:transform .2s ease}.section-cta:hover span{transform:translate(3px)}.auth-panel{background:#0b0b0b;border:1px solid rgba(255,255,255,.08);padding:16px;border-radius:var(--radius-md);min-width:220px;box-shadow:0 14px 30px #00000080;display:grid;gap:12px}.auth-title{font-weight:600;font-size:14px;letter-spacing:-.01em}.auth-field{display:grid;gap:6px;font-size:12px;color:var(--muted)}.auth-field input{padding:8px 10px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.12);font-family:inherit;background:#ffffff0a;color:#f7f7f7}.auth-field input:focus{outline:none;border-color:#ffffff4d;box-shadow:0 0 0 2px #ffffff1a}.auth-actions{display:flex;gap:8px;flex-wrap:wrap}.auth-panel button{flex:1;min-width:120px}.auth-divider{height:1px;background:#ffffff14;margin:4px 0}button{font-family:inherit;background:#f7f7f7;color:#111;border:1px solid #f7f7f7;border-radius:var(--radius-sm);padding:8px 12px;cursor:pointer;font-weight:600;transition:transform .2s ease,box-shadow .2s ease}button:hover{transform:translateY(-1px);box-shadow:0 10px 24px #00000059}button:focus-visible{outline:2px solid rgba(255,255,255,.6);outline-offset:2px}button[data-auth-action=signup]{background:transparent;color:#f7f7f7;border:1px solid rgba(255,255,255,.2)}button[data-auth-action=signout]{background:#f7f7f7;color:#111;border:1px solid #f7f7f7}.auth-error{color:#ff6b6b;font-size:12px;min-height:16px;margin-bottom:6px}.auth-user{font-size:12px;color:var(--muted);margin-bottom:10px;word-break:break-all}.section-title{font-size:22px;margin-bottom:6px;letter-spacing:-.01em}.section-subtitle{color:var(--muted);margin:0 0 16px;font-size:var(--copy-16)}.section-divider{height:1px;width:100%;background:#ffffff14;margin:8px 0 16px}.link-card{display:grid;gap:8px;border:1px solid #333;border-radius:var(--radius-md);padding:16px;background:#000;transition:transform .2s ease,box-shadow .2s ease}.course-card{position:relative;padding:24px;gap:16px;background:linear-gradient(135deg,#1a1a1ae6,#000000eb);border-color:#ffffff14;box-shadow:0 14px 30px #00000073,0 1px #ffffff0f inset;isolation:isolate}.course-card:after{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at top right,rgba(255,255,255,.12),transparent 55%);opacity:0;transition:opacity .2s ease;z-index:-1}.course-card .course-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.course-card .course-tag{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.course-card .course-meta{display:grid;gap:6px}.course-card .course-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted);border-top:1px solid rgba(255,255,255,.08);padding-top:12px;margin-top:6px}.book-card{padding:20px;gap:12px}.book-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.book-id{font-size:11px;color:var(--muted);letter-spacing:.05em}.course-card .course-link{color:#f7f7f7;font-weight:600}.course-card .course-link span{transition:transform .2s ease;display:inline-block}.course-card:hover .course-link span{transform:translate(4px)}.link-card:hover{transform:translateY(-2px);border-color:#fff}.course-card:hover{transform:translateY(-4px);border-color:#ffffff47;box-shadow:0 18px 36px #00000080,0 1px #ffffff14 inset}.course-card:hover:after{opacity:1}.link-card h3{font-size:18px;margin:0;letter-spacing:-.01em}.link-card p{margin:0;color:var(--muted);font-size:var(--copy-14)}.guide-content{line-height:1.6}.guide-content :global(h1),.guide-content :global(h2),.guide-content :global(h3){letter-spacing:-.02em}.link-card:hover h3{color:#fff}.link-card h3{margin:0;font-size:18px}.link-card p{margin:0;color:var(--muted);font-size:13px}.guide-content :global(h2){margin-top:24px}.guide-content :global(h3){margin-top:18px}@media (max-width: 720px){.nav{top:12px;margin-bottom:24px}.nav-inner{padding:8px 12px;gap:12px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.nav-inner::-webkit-scrollbar{display:none}.nav-links{gap:12px}.nav a{font-size:11px}.nav-actions{gap:8px}.course-switcher summary{padding:6px 10px;max-width:140px}.course-switcher-title{overflow:hidden;text-overflow:ellipsis}.course-switcher-menu{position:fixed;top:auto;left:16px;right:16px;margin-top:8px;transform:none;min-width:0;max-height:50vh}.hero{margin-left:-16px;margin-right:-16px;border-radius:0;border-left:0;border-right:0;padding:24px 16px}}footer{margin-top:56px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);color:var(--muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12px}
