@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');:root{--bg:#080f1d;--side:#0b1425;--panel:#111e32;--line:#263449;--gold:#d7ad65;--muted:#93a2b7;--text:#f0f2f5}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,.btn{cursor:pointer;background:var(--gold);border:0;color:#111827;padding:12px 20px;border-radius:9px;font-weight:700;font:inherit;font-weight:700}button:hover,.btn:hover{filter:brightness(1.1)}.layout{display:flex;min-height:100vh}.sidebar{width:250px;background:var(--side);border-right:1px solid var(--line);padding:35px 23px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;flex-shrink:0}.logo{display:flex;gap:12px;align-items:center;color:var(--gold);font-size:32px}.logo span{font:700 25px/1.05 'Playfair Display',Georgia,serif;color:#fff}.logo em{font-style:normal;color:var(--gold)}.sidecaption,.eyebrow{color:var(--gold);letter-spacing:2px;font-size:10px;font-weight:700;margin-top:35px}.sidebar nav{margin-top:35px;display:grid;gap:8px}.sidebar nav a{padding:14px 13px;color:var(--muted);border-radius:9px}.sidebar nav a:hover,.sidebar nav .active{background:#1b2a40;color:var(--gold)}.sidebarfoot{margin-top:auto;color:#697b92;font-size:10px;letter-spacing:1px}.content{width:100%;min-width:0;max-width:1650px;margin:auto;padding:40px 52px}header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}header .eyebrow{margin:0}h1,h2{font-family:'Playfair Display',Georgia,serif}h1{font-size:42px;margin:12px 0 7px}h1 span{color:var(--gold)}header p,.toolbar p{color:var(--muted);margin:0}.ghost{background:transparent;color:var(--muted);border:1px solid var(--line)}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin:38px 0 45px}.stat{background:linear-gradient(145deg,#142239,#101b2d);border:1px solid var(--line);padding:24px;border-radius:13px;display:flex;flex-direction:column;gap:7px}.stat small{font-size:10px;color:var(--gold);letter-spacing:1.5px}.stat strong{font:600 36px 'Playfair Display',Georgia,serif}.stat span{color:var(--muted);font-size:12px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.toolbar h2{font-size:28px;margin:0 0 5px}.filters{display:flex;gap:10px;margin-bottom:27px;flex-wrap:wrap}input,select,textarea{background:#142238;border:1px solid #304058;color:#eaf0f7;padding:12px 13px;border-radius:9px;font:inherit;min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid #b99559}.filters input{flex:1;min-width:210px}.filters select{max-width:190px}.reset{align-self:center;color:var(--muted);font-size:13px}.bookgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.book{background:#101c2d;border:1px solid #25344a;border-radius:12px;overflow:hidden;min-width:0}.cover{height:225px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 35%,#35435b,#182437 70%);padding:17px}.cover img{height:100%;max-width:100%;object-fit:contain;box-shadow:5px 8px 16px #0007}.coverinner{height:100%;width:73%;background:linear-gradient(120deg,#263d54,#152338);border:1px solid #b68e4c;box-shadow:7px 8px 15px #0008,inset 0 0 0 5px #ffffff08;display:flex;flex-direction:column;align-items:center;justify-content:space-around;text-align:center;padding:14px;overflow:hidden}.ornament{color:var(--gold);font-size:20px}.cover-title{font:600 15px/1.3 'Playfair Display',Georgia,serif;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.cover-author{color:#d0b98f;font-size:10px;overflow:hidden;max-height:35px}.bookbody{padding:17px}.bookmeta{font-size:10px;letter-spacing:.5px;color:var(--gold);margin-bottom:10px}.booktitle{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-weight:700;line-height:1.35;min-height:38px}.bookauthor{font-size:12px;color:var(--muted);margin:8px 0 17px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.bookbottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:12px}.pill{font-size:10px;color:#b9c9da;background:#20314a;padding:6px 8px;border-radius:6px}.heart{background:none;color:var(--gold);font-size:24px;padding:0 5px}.pagination{display:flex;gap:18px;justify-content:center;margin:35px}.pagination a{color:var(--gold)}footer{text-align:center;color:#65758a;letter-spacing:2px;font-size:10px;padding:30px 0}.empty{text-align:center;padding:70px;color:var(--muted)}.auth{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at center,#1d3046,#080f1d 70%)}.panel{background:#101d30;border:1px solid #3a3a3e;border-radius:18px;padding:38px}.authbox{width:min(440px,100%);text-align:center}.brandicon{font-size:44px;color:var(--gold)}.authbox h1{color:var(--gold);font-size:38px}.authbox p{color:var(--muted);font-size:13px;letter-spacing:1px}.authbox form{margin-top:35px;text-align:left;display:grid;gap:20px}label{display:grid;gap:9px;color:#bfcadd;font-size:13px}.authbox button{width:100%}.error{color:#ff9d9d!important}.editor{max-width:900px;margin:50px auto;padding:0 20px}.editor .back{color:var(--gold);display:inline-block;margin-bottom:20px}.editform{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:26px}.editform input,.editform select,.editform textarea{width:100%}.editform .full{grid-column:1/-1}.editform .check{display:flex;align-items:center}.editform .check input{width:auto}.danger{background:#71373a;color:#fff;margin-top:22px}.actions{display:flex;justify-content:flex-end}@media(max-width:1150px){.bookgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.content{padding:35px 25px}}@media(max-width:800px){.sidebar{display:none}.stats{grid-template-columns:repeat(2,1fr)}.bookgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.content{padding:25px 15px}h1{font-size:32px}}@media(max-width:450px){.bookgrid{gap:10px}.cover{height:180px;padding:9px}.coverinner{width:85%;padding:8px}.cover-title{font-size:12px}.bookbody{padding:11px}.stats{gap:9px}.stat{padding:15px}.stat strong{font-size:29px}.filters select{flex:1}.editform{grid-template-columns:1fr}.editform .full{grid-column:1}.panel{padding:22px}}

/* PREMIUM DARK · 2026 visual redesign. Existing application logic unchanged. */
:root{--bg:#08090d;--side:#0c0d11;--panel:#15161c;--line:#302a25;--gold:#dfb974;--muted:#a9a49e;--text:#f7f1e9;--softgold:#f8dfa6}
html{scroll-behavior:smooth}body{background:radial-gradient(ellipse at 88% 0%,#2a2119 0%,transparent 32%),linear-gradient(180deg,#101014 0%,#09090c 56%);color:var(--text);letter-spacing:.01em}::selection{background:#c89a4b;color:#100e0b}a,button,input,select,textarea{transition:background .2s,border-color .2s,color .2s,box-shadow .2s,transform .2s}button,.btn{background:linear-gradient(112deg,#edd59c,#ca9b50);color:#1a130c;border:1px solid #f0d9a522;border-radius:9px;box-shadow:0 4px 18px #0004}button:hover,.btn:hover{filter:none;transform:translateY(-1px);background:linear-gradient(112deg,#ffebbc,#e0b56c)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #e7be73;outline-offset:3px}
.sidebar{width:268px;background:linear-gradient(180deg,#151319,#0a0a0d);border-right:1px solid #b28b4c2e;padding:37px 23px;box-shadow:12px 0 55px #0003;z-index:2}.logo{font-size:38px;gap:14px}.logo span{font-size:26px;letter-spacing:.02em}.logo em{color:var(--softgold)}.sidecaption{margin:28px 0 0;padding:0 5px;color:#bca477;font-size:9px;letter-spacing:2.8px}.sidebar nav{margin-top:30px}.sidebar nav a{font-size:14px;border:1px solid transparent;border-radius:11px;padding:15px 14px}.sidebar nav a:hover,.sidebar nav .active{background:linear-gradient(95deg,#322719,#231c1a);color:#f1cd8c;border-color:#b8934b45}.sidebarfoot{line-height:2;border-top:1px solid #66543c44;padding-top:25px;color:#867b6a}
.content{padding:42px clamp(22px,3.4vw,68px);max-width:1780px}header{min-height:245px;background:linear-gradient(100deg,rgba(15,13,15,.97),rgba(35,28,24,.88) 62%,rgba(53,41,26,.82)),radial-gradient(circle at right,#98703855,transparent 60%);border:1px solid #b8985c3a;border-radius:19px;padding:36px 36px 35px;position:relative;overflow:hidden;align-items:flex-start;box-shadow:0 14px 48px #0005}header::after{content:'✦';position:absolute;right:9%;top:-85px;font-family:Georgia,serif;font-size:370px;color:#d9ad5c0b;pointer-events:none;transform:rotate(-12deg)}header>div,header>form{position:relative;z-index:1}header .eyebrow,.eyebrow{color:var(--gold);letter-spacing:3px;font-size:10px}header h1{font-size:clamp(35px,4vw,58px);line-height:1.15;margin:24px 0 16px;letter-spacing:-.025em}header h1 span{color:#e9c581}header p{font-size:14px;max-width:430px;line-height:1.65;color:#bfb5aa}.ghost{color:#dec69e;border:1px solid #b38c594d;background:#120f0e88;box-shadow:none}.ghost:hover{background:#372b22;color:#fff}
.stats{margin:25px 0 45px;gap:15px}.stat{position:relative;background:linear-gradient(142deg,#1d1b1b,#131317 85%);border:1px solid #7b63453b;padding:24px 25px 22px;border-radius:14px;box-shadow:0 10px 27px #0004;overflow:hidden}.stat::after{content:'✧';font:normal 56px Georgia,serif;color:#d2aa6020;position:absolute;right:19px;top:13px}.stat small{color:#d6ba86;letter-spacing:2px;font-size:10px}.stat strong{font-size:44px;letter-spacing:-.015em;color:#f8f1e8}.stat span{font-size:12px;color:#a69d92}
.toolbar{margin-bottom:23px}.toolbar h2{font-size:32px;letter-spacing:-.025em}.toolbar p{font-size:13px}.toolbar .btn{padding:13px 23px}.filters{gap:11px;padding:18px;border:1px solid #85704f3d;background:#171519d1;border-radius:14px;margin-bottom:28px;box-shadow:0 10px 30px #0003}.filters input{min-height:47px}.filters select{min-height:47px}.filters button{min-height:47px}.filters .reset{padding:0 8px;color:#d5b980}input,select,textarea{background:#0e0e12;border:1px solid #5d51453d;color:#f2eade;padding:13px 14px;border-radius:9px}input::placeholder{color:#8c837d}input:focus,select:focus,textarea:focus{outline:none;border-color:#c6a064;box-shadow:0 0 0 3px #d9aa6030}
.bookgrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.book{background:linear-gradient(160deg,#1b1a1c,#111115);border:1px solid #68543852;border-radius:14px;box-shadow:0 10px 26px #0003;transition:transform .22s,border-color .22s,box-shadow .22s}.book:hover{transform:translateY(-6px);border-color:#b99560a6;box-shadow:0 17px 35px #0008}.cover{height:260px;background:radial-gradient(ellipse at center,#48382d 0,#242025 62%,#141316 100%);padding:20px;position:relative;border-bottom:1px solid #b38e5140}.cover:after{content:'';position:absolute;inset:12px;border:1px solid #ba96532b;pointer-events:none;border-radius:3px}.coverinner{width:74%;background:linear-gradient(140deg,#392d27,#141923 55%,#2a2325);border:1px solid #d6b37185;box-shadow:6px 11px 22px #000b,inset 0 0 0 5px #ad865a14;padding:15px}.book:nth-child(5n+2) .coverinner{background:linear-gradient(135deg,#4c2928,#191921 70%)}.book:nth-child(5n+3) .coverinner{background:linear-gradient(135deg,#213a36,#151a1d 75%)}.book:nth-child(5n+4) .coverinner{background:linear-gradient(135deg,#3d334a,#17161b 75%)}.book:nth-child(5n+5) .coverinner{background:linear-gradient(135deg,#51402a,#161519 75%)}.cover-title{font-size:16px;line-height:1.35;letter-spacing:.015em}.cover-author{color:#dfc69e}.cover img{filter:drop-shadow(5px 9px 10px #0009);max-height:100%;z-index:1}.bookbody{padding:19px}.bookmeta{font-size:10px;letter-spacing:1.15px;color:#d7b478}.booktitle{font-size:15px;line-height:1.43;min-height:43px}.booktitle:hover{color:#eac584}.bookauthor{color:#b0a69b;margin:9px 0 20px}.bookbottom{border-top:1px solid #a17d5033;padding-top:14px}.pill{color:#dfc8a7;background:#3d302639;border:1px solid #a17a4b35;padding:7px 9px;border-radius:20px}.heart{font-size:25px;color:#ddb573;box-shadow:none}.heart:hover{background:transparent;color:#ffdfaa;transform:scale(1.13)}.pagination{align-items:center;margin:38px 0}.pagination a{border:1px solid #92724966;border-radius:9px;padding:10px 15px;color:#e5c58c}.pagination a:hover{background:#2c251d}.pagination span{color:#a99c8d}footer{border-top:1px solid #7560443a;color:#8e8275;letter-spacing:2.5px;margin-top:40px}
.auth{background:radial-gradient(ellipse at 50% 27%,#403024 0%,#171317 38%,#08080b 85%);position:relative}.auth::before{content:'';position:absolute;inset:18px;border:1px solid #c7a46723;border-radius:14px;pointer-events:none}.panel{background:linear-gradient(150deg,#211b1b,#111115 75%);border:1px solid #b8965d55;border-radius:18px;box-shadow:0 24px 75px #0008}.authbox{padding:55px 47px}.brandicon{color:#e5c181;font-size:51px}.authbox h1{color:#f3e6d0;font-size:42px;margin-top:14px}.authbox p{color:#c0ab8a;letter-spacing:2px}.authbox form{margin-top:32px}.authbox label{font-size:12px;letter-spacing:.06em}.authbox input{min-height:50px}.authbox button{min-height:51px}.editor{max-width:960px;margin:38px auto 75px}.editor .back{color:#e3ba77;padding:12px 0}.editor .panel{padding:38px}.editor h1{font-size:clamp(28px,3vw,44px);overflow-wrap:anywhere}.editform{gap:20px 22px}.editform label{color:#d4c5b4}.editform input,.editform select{min-height:47px}.danger{background:#713334;border:1px solid #a65c59;color:#fff}.danger:hover{background:#904042}.mobile-nav{display:none}
@media(min-width:1600px){.bookgrid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1150px){.bookgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.content{padding:30px 22px}.sidebar{width:230px;padding:28px 16px}}@media(max-width:800px){.sidebar{display:none}.mobile-nav{display:flex;flex-wrap:wrap;gap:9px;margin:17px 0 8px}.mobile-nav a{border:1px solid #9a795045;background:#201a1a;border-radius:9px;padding:10px 12px;color:#e6c58c;font-size:12px}.mobile-nav a:hover{background:#3b2c21}.content{padding:17px 14px}.stats{grid-template-columns:repeat(2,1fr);margin:18px 0 30px}.bookgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}header{min-height:210px;padding:25px}header h1{font-size:34px}.toolbar h2{font-size:27px}.filters{padding:12px}}@media(max-width:450px){header{padding:22px 17px;gap:7px}header .eyebrow{letter-spacing:1.6px;font-size:9px}header h1{font-size:29px;margin:23px 0 12px}header p{font-size:12px}header .ghost{padding:9px 10px;font-size:11px}.bookgrid{gap:10px}.cover{height:190px;padding:10px}.coverinner{width:85%;padding:10px}.cover-title{font-size:12px}.bookbody{padding:12px}.booktitle{font-size:13px;min-height:37px}.stat{padding:17px 13px}.stat strong{font-size:34px}.stat small{font-size:9px;letter-spacing:1px}.filters select{max-width:none;flex:1;min-width:120px}.filters button{flex:1}.toolbar .btn{font-size:12px;padding:11px}.editform{grid-template-columns:1fr}.editform .full{grid-column:1}.editor .panel{padding:22px}.authbox{padding:37px 23px}.authbox h1{font-size:34px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}
