:root{--ink:#1f2933;--muted:#6b7280;--cream:#f7f4ef;--paper:#fffdf9;--orange:#b84c2b;--deep:#233d36;--line:#e7e1d8;font-family:"DM Sans",sans-serif;color:var(--ink)}*{box-sizing:border-box}body{margin:0;background:var(--cream)}button,input{font:inherit}button{cursor:pointer}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:#fffdf9ee;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{display:flex;align-items:center;gap:12px;color:var(--deep);font-weight:700;border:0;background:none}.mark{width:38px;height:38px;border-radius:13px;background:linear-gradient(145deg,#efad6d,var(--orange));display:grid;place-items:center;color:#fff;font-size:20px}.brand small{display:block;color:var(--muted);font-size:10px;letter-spacing:.12em}.nav{display:flex;gap:25px}.nav button,.ghost{border:0;background:none;color:var(--muted);font-weight:600}.nav .active,.nav button:hover{color:var(--orange)}.profile{border:1px solid var(--line);background:var(--paper);border-radius:30px;padding:9px 13px;display:flex;gap:9px;align-items:center;color:var(--deep);font-weight:600}.avatar{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#f1d8c5;color:var(--orange)}.content{max-width:1240px;margin:auto;padding:36px 5vw 80px}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:35px;align-items:center;padding:52px 0 60px}.eyebrow{color:var(--orange);text-transform:uppercase;letter-spacing:.15em;font-size:12px;font-weight:700}.hero h1{font:600 clamp(38px,5.5vw,74px)/1.08 "Noto Serif Malayalam",serif;color:var(--deep);margin:0 0 18px}.hero p,.detail .lead{font:17px/1.75 "Noto Serif Malayalam",serif;color:var(--muted)}.hero-art{min-height:330px;border-radius:28px;background:radial-gradient(circle at 50% 20%,#efb56c 0 13%,transparent 14%),linear-gradient(135deg,#2d5347,#172f2a);position:relative;overflow:hidden}.hero-art:before{content:"";position:absolute;width:310px;height:390px;background:linear-gradient(150deg,#f5d4a4,#d47b43);left:50%;top:50%;transform:translate(-50%,-43%) rotate(7deg);border-radius:5px 16px 16px 5px}.hero-art:after{content:"✦";position:absolute;left:50%;top:50%;transform:translate(-50%,-40%);font-size:90px;color:#fff9}.hero-actions{display:flex;gap:10px;margin-top:26px;flex-wrap:wrap}.primary{border:0;border-radius:12px;background:var(--deep);color:#fff;padding:14px 19px;font-weight:700}.secondary{border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--deep);padding:13px 18px;font-weight:700}.section-head{display:flex;justify-content:space-between;align-items:end;margin:18px 0 22px}.section-head h2{font:600 28px "Noto Serif Malayalam",serif;color:var(--deep);margin:0}.section-head span{font-size:13px;color:var(--muted)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.book-card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:14px}.cover{height:215px;border-radius:13px;background:linear-gradient(135deg,#284a3e,#b85835);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;padding:20px;text-align:center}.cover:before{content:"☼";font-size:38px;color:#f4ca83;margin-bottom:18px}.cover-title{font:600 25px "Noto Serif Malayalam",serif}.cover-sub{font-size:10px;letter-spacing:.15em;margin-top:12px}.book-card h3{font:600 22px "Noto Serif Malayalam",serif;margin:15px 4px 3px;color:var(--deep)}.book-card p{font:14px/1.6 "Noto Serif Malayalam",serif;color:var(--muted)}.tags,.meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 4px}.tag,.meta span{font-size:11px;color:var(--orange);background:#fdf0e7;border-radius:20px;padding:6px 9px}.card-actions{display:flex;gap:8px}.card-actions button{flex:1;border-radius:9px;padding:10px 8px;border:1px solid var(--line);background:#fff;color:var(--deep);font-weight:700;font-size:12px}.card-actions .open{background:var(--deep);color:#fff}.stats{display:flex;gap:15px;margin:25px 0}.stat{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:16px 18px;min-width:140px}.stat b{display:block;font-size:23px;color:var(--deep)}.stat span{font-size:12px;color:var(--muted)}.searchbar{display:flex;gap:10px;margin:15px 0 28px}.searchbar input{flex:1;border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:var(--paper)}.detail{display:grid;grid-template-columns:300px 1fr;gap:42px;margin-top:28px}.detail .cover{height:420px}.detail h1,.reader h1{font:600 clamp(32px,4vw,55px)/1.15 "Noto Serif Malayalam",serif;color:var(--deep)}.reader{max-width:880px;margin:auto}.reader-tools{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:10px 14px;margin:25px 0}.reader-tools button{border:0;background:none;font-size:18px;color:var(--deep)}.prose{font:20px/2.15 "Noto Serif Malayalam",serif;background:var(--paper);padding:38px 7%;border-radius:18px;border:1px solid var(--line)}.prose h2{color:var(--orange)}.prose p{white-space:pre-line}.player{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);width:min(680px,90vw);background:#213a34;color:#fff;border-radius:17px;padding:13px 17px;z-index:8}.player-top{display:flex;align-items:center;gap:12px}.player-title{flex:1;font:15px "Noto Serif Malayalam",serif}.player button{border:0;background:none;color:#fff;font-size:18px}.player input{width:100%;accent-color:#f0aa64}.empty{padding:50px;text-align:center;border:1px dashed #d7cdc0;border-radius:18px;color:var(--muted);font-family:"Noto Serif Malayalam",serif}.login{min-height:100vh;display:grid;place-items:center;padding:20px}.login-box{width:min(440px,100%);background:var(--paper);padding:38px;border:1px solid var(--line);border-radius:22px}.login-box h1{font:600 32px "Noto Serif Malayalam",serif;color:var(--deep)}.login-box input{width:100%;border:1px solid var(--line);border-radius:10px;padding:13px}.login-box .primary{width:100%;margin-top:22px}.toast{position:fixed;right:20px;bottom:24px;background:var(--deep);color:#fff;padding:13px 16px;border-radius:10px}@media(max-width:800px){.nav{display:none}.hero,.detail{grid-template-columns:1fr}.hero-art{min-height:260px}.card-grid{grid-template-columns:1fr}.detail .cover{height:330px;width:min(300px,100%)}.prose{padding:28px 20px;font-size:18px}.stats{overflow:auto}}