:root{--night:#06080f;--navy:#09152a;--panel:#0d1930;--line:rgba(209,225,255,.15);--ink:#f5f1e9;--muted:#a8b3c6;--gold:#e6bd72;--cyan:#41d2df;--serif:"Cormorant Garamond",Georgia,serif;--sans:Inter,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--night);color:var(--ink);font-family:var(--sans)}a{color:inherit;text-decoration:none}.auth-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(110deg,rgba(2,6,14,.83),rgba(2,7,17,.48)),url('assets/living-library-hero.png') center/cover;color:var(--ink);padding:42px}.auth-page:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 50% 48%,transparent 0,rgba(2,5,11,.35) 70%);pointer-events:none}.auth-brand{position:fixed;top:26px;left:34px;z-index:1;display:flex;align-items:center;gap:10px;font:600 25px/1 var(--serif)}.auth-brand img{width:42px;height:42px;object-fit:contain}.auth-brand b,.portal-logo b{color:var(--gold);font-weight:600}.auth-card{position:relative;z-index:1;width:min(440px,100%);padding:45px;background:rgba(7,15,30,.88);border:1px solid rgba(215,231,255,.2);box-shadow:0 28px 100px #000a;text-align:center}.auth-mark{width:104px;height:104px;object-fit:contain;filter:drop-shadow(0 0 22px rgba(230,189,114,.25))}.auth-card h1,.portal-top h1,.workspace h1{font:600 52px/.94 var(--serif);letter-spacing:-.04em;margin:18px 0 12px}.auth-card>p,.workspace>p{color:var(--muted);font-size:14px;line-height:1.7}.auth-card form,.book-form{margin-top:27px;text-align:left}.auth-card label,.book-form label{display:block;font-size:11px;font-weight:700;letter-spacing:.05em;color:#dce5f4;margin:16px 0 7px}.auth-card input,.book-form input,.search input{width:100%;border:1px solid rgba(218,231,255,.22);background:#0a1325;color:#fff;padding:14px;font:14px var(--sans);outline:none}.auth-card input:focus,.book-form input:focus,.search input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(65,210,223,.12)}button,.add-button{border:0;background:linear-gradient(100deg,#d7ae62,#f0d28e);color:#171208;padding:15px 17px;font:700 12px var(--sans);cursor:pointer;display:inline-flex;justify-content:space-between;align-items:center;gap:24px}.auth-card button,.book-form button{width:100%;margin-top:19px}.auth-switch{font-size:12px!important;margin:25px 0 0}.auth-switch a{color:var(--gold);border-bottom:1px solid currentColor}.notice{position:relative;z-index:3;margin:0 0 14px;background:rgba(65,210,223,.11);border-left:2px solid var(--cyan);padding:11px 13px;color:#d7faff;font-size:12px}.portal-shell{min-height:100vh;display:grid;grid-template-columns:228px 1fr;background:radial-gradient(circle at 50% 40%,#101f47 0,transparent 45%),var(--night)}.portal-nav{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,#081426,#071120);border-right:1px solid var(--line);padding:25px 0;display:flex;flex-direction:column}.portal-logo{display:flex;align-items:center;gap:10px;padding:0 25px 30px;font:600 23px/.87 var(--serif)}.portal-logo img{width:51px;height:51px;object-fit:contain}.portal-nav nav{display:grid;gap:6px}.portal-nav nav a{padding:15px 25px;color:#c4cedd;font-size:13px;display:flex;align-items:center;gap:13px;border-left:2px solid transparent}.portal-nav nav a.active,.portal-nav nav a:hover{background:rgba(255,255,255,.06);border-left-color:var(--gold);color:#fff}.sync-status{margin:auto 25px 0;color:#b2c1da;font-size:10px;line-height:1.8}.sync-status i{display:inline-block;width:7px;height:7px;background:var(--cyan);border-radius:50%;box-shadow:0 0 10px var(--cyan);margin-right:5px}.sync-status small{margin-left:12px;color:#8090aa}.portal-main{min-width:0;padding:42px 5vw 60px}.portal-top{display:flex;justify-content:space-between;gap:30px;align-items:flex-end}.portal-top h1{margin:0}.portal-top p{color:var(--muted);font-size:12px;margin:10px 0 0}.portal-stats{display:flex;border-left:1px solid var(--line)}.portal-stats b{min-width:75px;padding:4px 18px;border-right:1px solid var(--line);color:var(--gold);font-size:23px}.portal-stats small{display:block;font-size:9px;color:#aab7cb;font-weight:500;margin-top:5px}.library-controls{display:flex;gap:14px;margin:35px 0 30px}.search{display:flex;align-items:center;gap:8px;flex:1;max-width:520px;border:1px solid var(--line);padding:0 13px;color:#93a9c7}.search input{border:0;background:transparent;padding:14px 0}.add-button{align-self:stretch}.library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(152px,1fr));gap:25px 20px}.book-card{min-width:0}.book-card[hidden]{display:none}.book-cover{aspect-ratio:2/3;background:linear-gradient(145deg,#1d355a,#80663e);box-shadow:7px 12px 22px #0008;overflow:hidden;display:grid;place-items:center;padding:13px;transition:transform .2s,box-shadow .2s}.book-card:hover .book-cover{transform:translateY(-5px);box-shadow:9px 17px 25px #000b}.book-cover img{width:100%;height:100%;object-fit:cover}.book-cover span{font:600 22px/.9 var(--serif);text-align:center;color:#eadfbf}.book-card>b{display:block;margin-top:12px;font-size:12px;line-height:1.35}.book-card small{display:block;color:#95a5be;font-size:10px;margin-top:5px}.workspace{max-width:760px;margin:5vh auto}.workspace h1{font-size:60px;margin-top:0}.eyebrow{color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.18em}.book-form{max-width:490px;background:#0a1428;border:1px solid var(--line);padding:27px}.book-form small{color:#8392a9}.check{display:flex!important;align-items:center;gap:9px}.check input{width:auto}.wishlist-list{margin-top:35px;border-top:1px solid var(--line)}.wishlist-list>div{display:grid;grid-template-columns:28px 1fr;gap:5px 12px;padding:17px 4px;border-bottom:1px solid var(--line)}.wishlist-list span{grid-row:span 2;color:var(--gold);font-size:21px}.wishlist-list b{font-size:13px}.wishlist-list small{color:var(--muted);font-size:11px}.insights{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:33px}.insights article{padding:29px;background:linear-gradient(145deg,#142652,#0b152b);border:1px solid rgba(145,185,255,.25)}.insights b{display:block;color:var(--gold);font:600 56px/.9 var(--serif)}.insights span{display:block;font-size:11px;color:#b4c0d4;margin-top:12px}.logout-form{margin-top:22px}.text-button{background:none;color:#e3b76c;border-bottom:1px solid currentColor;padding:4px 0;font-size:11px}.empty-library{grid-column:1/-1;max-width:520px;margin:50px auto;text-align:center}.empty-library img{width:130px;height:130px;object-fit:contain}.empty-library h2{font:600 43px var(--serif);margin:10px}.empty-library p{color:var(--muted);font-size:13px;line-height:1.65}.empty-library .add-button{display:inline-flex;margin-top:13px}@media(max-width:760px){.portal-shell{grid-template-columns:1fr}.portal-nav{height:auto;position:relative;padding:15px;border-right:0;border-bottom:1px solid var(--line)}.portal-logo{padding:0}.portal-nav nav{display:flex;overflow:auto;margin-top:13px}.portal-nav nav a{white-space:nowrap;padding:10px 12px;border-left:0;border-bottom:2px solid transparent}.portal-nav nav a.active{border-bottom-color:var(--gold)}.sync-status{display:none}.portal-main{padding:28px 19px}.portal-top{align-items:flex-start;flex-direction:column}.portal-top h1,.workspace h1{font-size:48px}.portal-stats{width:100%;justify-content:space-between}.portal-stats b{flex:1;padding:4px 10px}.library-controls{flex-direction:column}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}.auth-brand{position:absolute;top:18px;left:20px;font-size:20px}.auth-page{padding:100px 18px 28px}.auth-card{padding:32px 24px}.insights{grid-template-columns:1fr}.workspace{margin-top:30px}}
