@import url('/assets/fonts.css');
:root{--red:#bb2335;--red-dark:#80172a;--ink:#292526;--muted:#81787a;--paper:#fcfaf7;--line:#eee7e2;--soft:#f7e9e8;--serif:Georgia,'Times New Roman',serif;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #df9b56;outline-offset:3px}a{color:inherit}button{border:0}button svg{flex-shrink:0}svg{width:20px;height:20px;vertical-align:middle}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500}h1{font-size:clamp(30px,4vw,46px);letter-spacing:-1.2px}h2{font-size:27px;letter-spacing:-.5px}h3{font-size:16px;line-height:1.4}p{line-height:1.65}small,.muted{color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:2.4px;text-transform:uppercase;font-weight:700}.brand{display:flex;align-items:center;gap:12px;font-size:21px;letter-spacing:3px;font-weight:800}.brand-symbol{background:var(--red);color:white;font:700 32px var(--serif);width:46px;height:46px;display:grid;place-items:center;border-radius:13px;letter-spacing:-5px;padding-right:5px;box-shadow:0 5px 15px #bb23351c}.brand-symbol span{color:#eaa4a9;display:contents}.layout{max-width:1440px;margin:auto;display:grid;grid-template-columns:238px 1fr;min-height:100dvh}.sidebar{padding:36px 27px;border-right:1px solid var(--line);height:100dvh;position:sticky;top:0;display:flex;flex-direction:column;background:#fffdfb}.sidebar .eyebrow{margin:48px 0 16px;color:#ada2a0}.nav-item{display:flex;align-items:center;gap:13px;border-radius:12px;padding:15px 16px;margin-bottom:6px;color:#817879;background:transparent;text-align:left;font-size:13px;font-weight:600;width:100%}.nav-item.active{background:var(--soft);color:var(--red)}.sidebar-note{margin-top:auto;padding:20px 15px;background:#f4f0e9;border-radius:14px}.sidebar-note svg{color:#bb8f55}.sidebar-note p{font:italic 18px/1.5 var(--serif);margin:12px 0}.sidebar-note small{font-size:10px;letter-spacing:1px}.main{min-width:0;padding:0 44px 48px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:29px 0;border-bottom:1px solid var(--line);gap:15px}.topbar .welcome{font-size:13px}.welcome strong{display:block;margin-top:7px;font-size:16px}.top-actions{display:flex;align-items:center;gap:12px}.balance{border-radius:24px;padding:10px 15px;background:#fff;border:1px solid var(--line);color:var(--red);font-size:12px;font-weight:700;display:flex;align-items:center;gap:7px}.avatar{border-radius:50%;background:#eddbcb;color:#875b43;width:40px;height:40px;display:grid;place-items:center;font:600 18px var(--serif)}.content{padding-top:30px}.intro{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:25px}.intro h1{margin:8px 0 0}.date-label{font-size:11px;color:var(--muted);white-space:nowrap}.hero{background:#8e1f32;isolation:isolate;border-radius:23px;position:relative;overflow:hidden;min-height:282px;color:#fff8ed;display:grid;grid-template-columns:1.2fr 1fr;padding:36px 37px}.hero:after{content:'';position:absolute;width:350px;height:350px;border:1px solid #f9ddc324;border-radius:50%;right:-80px;top:-60px;z-index:-1;box-shadow:0 0 0 45px #f9ddc308,0 0 0 90px #f9ddc307}.hero .eyebrow{color:#e6a6aa;letter-spacing:2px}.hero h2{font-size:35px;line-height:1.13;max-width:340px;margin:18px 0 12px}.hero p{font-size:12px;color:#e7b9bd;max-width:285px;margin-bottom:22px}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 21px;border-radius:10px;font-size:12px;font-weight:700;background:var(--red);color:#fff;text-decoration:none;min-height:44px}.button.light{background:#fff5e9;color:#782135}.button.secondary{background:#f2ece6;color:var(--ink)}.button.ghost{background:transparent;color:var(--red);padding:10px 0}.button.danger{background:#fff0f0;color:#b51c2c}.hero-art{position:relative;min-height:210px;align-self:center;perspective:900px}.art-book{width:125px;height:186px;position:absolute;left:48%;top:16px;transform:rotate(13deg) rotateY(-20deg);background:#e6c4a0;box-shadow:15px 18px 25px #31000b70;border-radius:2px 8px 8px 2px;display:flex;flex-direction:column;justify-content:space-between;padding:21px 18px 23px;color:#6b3a2a;font:24px/1.2 var(--serif);border-left:8px solid #d8ad83}.art-book small{font:8px Arial;letter-spacing:2px;color:inherit}.art-book:after{content:'';position:absolute;right:-6px;top:5px;bottom:5px;width:6px;background:repeating-linear-gradient(#f4eadb 0 1px,#d8c7b4 1px 2px);border-radius:0 3px 3px 0}.art-book.front{left:17%;top:30px;transform:rotate(-12deg) rotateY(-17deg);background:#1f4743;color:#f2dfbd;border-color:#173b37;z-index:1}.art-book.front:before{content:'✦';font-size:54px;text-align:center;order:1;color:#b89d6e}.hero-art .orbit{position:absolute;right:7%;top:0;color:#e9c18b;font-size:30px}.search-row{display:flex;gap:12px;margin:29px 0 17px}.search-box{flex:1;display:flex;align-items:center;gap:12px;border:1px solid var(--line);background:white;border-radius:12px;padding:0 17px;color:#a89894}.search-box input{border:0;background:transparent;padding:16px 0;width:100%;min-width:0;outline:none;font-size:12px;color:var(--ink)}select,input,textarea{border:1px solid #e4dcd6;border-radius:9px;background:#fff;padding:12px;max-width:100%;color:var(--ink)}.search-row select{font-size:12px;width:145px}.chips{display:flex;gap:9px;overflow:auto;scrollbar-width:none;padding:2px 0 8px}.chip{padding:10px 17px;border:1px solid var(--line);border-radius:25px;white-space:nowrap;background:transparent;color:#7c7472;font-size:11px}.chip.active{background:var(--ink);border-color:var(--ink);color:white}.section-head{display:flex;align-items:center;justify-content:space-between;margin:28px 0 20px;gap:15px}.section-head h2{margin:0;font-size:25px}.section-head small{font-size:10px}.book-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px}.book-card{min-width:0}.cover-wrap{width:100%;height:228px;border-radius:14px;background:#f1ece5;display:flex;justify-content:center;align-items:center;padding:20px;position:relative;perspective:800px;border:0}.book-cover{height:174px;width:119px;border-radius:2px 6px 6px 2px;box-shadow:7px 9px 12px #3b241c25;border-left:5px solid #0002;transform:rotateY(-13deg) rotate(-3deg);transition:transform .25s;object-fit:cover}.cover-wrap:hover .book-cover{transform:rotateY(0deg) rotate(0deg) translateY(-5px)}.generated-cover{background:#2b4845;color:#eee5cd;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:18px 10px;font:19px/1.3 var(--serif);text-align:center;overflow:hidden}.generated-cover small{color:inherit;font:8px Arial;letter-spacing:1px}.generated-cover .ornament{font-size:33px;line-height:1;color:#c5a777}.tone-1{background:#983d36;color:#f9e5ce}.tone-2{background:#d9b786;color:#413426}.tone-3{background:#343d59;color:#e4dbba}.book-card h3{margin:15px 0 5px;font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.book-card p{margin:0;font-size:11px;color:var(--muted)}.book-meta{display:flex;justify-content:space-between;align-items:center;margin-top:12px;font-size:11px;color:var(--red);font-weight:600}.book-meta span:last-child{color:#9e8e78;font-size:10px}.heart{position:absolute;right:9px;top:9px;border-radius:50%;width:30px;height:30px;background:#ffffffbf;display:grid;place-items:center;color:#826e65}.heart.active{color:var(--red)}.heart svg{width:15px;height:15px}.progress-line{height:3px;background:#eaddd0;border-radius:3px;margin-top:13px}.progress-line i{display:block;height:100%;background:var(--red);border-radius:3px}.empty{background:#fff;border:1px dashed #dfd2c9;border-radius:18px;padding:40px 24px;text-align:center;margin:20px 0}.empty>svg{width:38px;height:38px;color:#bd9c83;margin-bottom:12px}.empty h3{margin:5px 0}.empty p{font-size:13px;color:var(--muted);max-width:400px;margin:10px auto}.bottom-nav{display:none}.panel{background:#fff;border:1px solid var(--line);padding:24px;border-radius:17px;margin:18px 0}.panel h3{margin-bottom:8px}.panel p{font-size:13px;color:var(--muted)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0}.stat{padding:22px;background:#fff;border:1px solid var(--line);border-radius:14px}.stat strong{font:32px var(--serif);display:block;margin:10px 0}.stat small{font-size:11px}.task-card{display:flex;gap:18px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line)}.task-card:last-child{border-bottom:0}.task-card .task-icon{width:44px;height:44px;background:var(--soft);border-radius:12px;display:grid;place-items:center;color:var(--red);flex-shrink:0}.task-card .task-text{flex:1}.task-text h3{font-size:14px;margin:0 0 5px}.task-text p{font-size:12px;margin:0}.task-text small{font-size:11px;color:var(--red)}.packages{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.package{text-align:center;border:1px solid var(--line);padding:25px 15px;border-radius:15px;background:#fff}.package:nth-child(2){border-color:#c66a71;background:#fff6f3}.package strong{display:block;font:35px var(--serif);margin:16px 0 4px}.package p{font-size:12px;color:var(--muted)}.package .button{width:100%}.transaction,.rank-row{display:flex;align-items:center;gap:15px;padding:16px 0;border-bottom:1px solid var(--line);font-size:12px}.transaction>span:nth-child(2),.rank-row>span:nth-child(3){flex:1}.positive{color:#38745c}.negative{color:var(--red)}.rank-number{font:22px var(--serif);width:30px;color:#ab9582}.rank-row:first-child .rank-number{color:#b78c3f}.rank-row strong{color:var(--red)}.inline-field{display:flex;gap:8px}.inline-field input{flex:1;min-width:0;font-size:12px}.spin-area{text-align:center;padding:25px;overflow:hidden}.wheel{width:240px;height:240px;border-radius:50%;margin:20px auto;border:9px solid #fff;box-shadow:0 0 0 2px #e1d1bb,0 16px 35px #6731241f;background:conic-gradient(#9e2133 0 120deg,#ead7bc 120deg 240deg,#344b44 240deg 360deg);position:relative;transition:transform 3s cubic-bezier(.1,.6,.1,1)}.wheel:after{content:'K';position:absolute;inset:83px;border-radius:50%;background:#fff9ef;color:var(--red);font:30px var(--serif);display:grid;place-items:center;box-shadow:0 0 0 5px #ffffff50}.pointer{color:var(--red);font-size:30px;height:0;position:relative;top:14px;z-index:2}.wheel-label{position:absolute;left:50%;top:50%;font-weight:700;font-size:11px;transform-origin:0 0;color:#fff}.prize-list{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin:15px}.boot{text-align:center;max-width:380px;margin:16vh auto;padding:25px}.boot .brand-symbol{margin:auto}.boot h1{font-family:Arial;font-weight:800;letter-spacing:5px;font-size:27px;margin:20px 0}.boot p{font-size:13px;color:var(--muted)}.skeleton{height:15px;background:linear-gradient(90deg,#f2e9e0,#fff,#f2e9e0);background-size:200%;animation:shimmer 1.4s infinite;border-radius:8px}.loading-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.loading-grid .skeleton{height:230px}.login-page{max-width:1000px;margin:0 auto;padding:50px 24px}.login-page header{display:flex;justify-content:space-between;align-items:center;margin-bottom:70px}.login-page .hero{min-height:350px}.login-page .hero h2{font-size:46px}.login-page .hero-art{transform:scale(1.2)}.login-note{padding:30px 0;color:var(--muted);font-size:13px}.login-note .button{margin-left:10px}.footer-note{font-size:10px;color:#a3968c;text-align:center;letter-spacing:1px;margin-top:50px}dialog{padding:0;border:1px solid var(--line);border-radius:22px;background:var(--paper);color:var(--ink);max-width:580px;width:calc(100% - 30px);max-height:90dvh;box-shadow:0 24px 100px #0003}dialog::backdrop{background:#21151680;backdrop-filter:blur(5px)}.modal-content{padding:28px}.modal-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:18px}.modal-head h2{margin:0}.icon-button{background:transparent;border-radius:50%;padding:8px;color:var(--muted);display:grid;place-items:center}.book-detail{display:flex;gap:25px;margin:18px 0}.book-detail .book-cover{flex-shrink:0;width:100px;height:155px}.book-detail h2{font-size:25px;margin:12px 0}.book-detail p{font-size:13px;color:var(--muted)}.detail-description{font-size:14px;line-height:1.8;white-space:pre-line}.detail-actions{display:flex;flex-wrap:wrap;gap:10px}.reader{position:fixed;inset:0;z-index:100;background:#fbf7ed;display:flex;flex-direction:column;overflow:hidden;user-select:none}
.reader.dark{background:#1a1b1d;color:#ded7cb;--page-bg:#222428;--page-text:#ded7cb;--page-border:#33363b;--cover-bg:#251318;--cover-border:#a8864d}
.reader.white{background:#eef0f3;color:#222;--page-bg:#ffffff;--page-text:#1f1f1f;--page-border:#e5e5e5;--cover-bg:#8b1b2a;--cover-border:#f3cf8c}
.reader.sepia{background:#f4ece0;color:#2c241e;--page-bg:#fbf7ee;--page-text:#2c241e;--page-border:#e8dfd1;--cover-bg:#7a1523;--cover-border:#ecc980}
.reader-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px;border-bottom:1px solid rgba(0,0,0,0.07);background:inherit;z-index:10}
.reader-title-wrap{flex:1;min-width:0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px}
.reader-bar .reader-title{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90%}
.reader-bar .reader-author{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reader-bar-actions{display:flex;align-items:center;gap:6px}
.reader-bar button,.reader-footer button{color:inherit;flex-shrink:0;transition:transform .15s,color .15s}
.reader-bar button:active,.reader-footer button:active{transform:scale(.92)}
.icon-button.active{color:#d4af37!important}
.icon-button.heart-active{color:var(--red)!important}
.reader-settings{display:flex;flex-direction:column;gap:10px;padding:14px 20px;border-bottom:1px solid rgba(0,0,0,0.08);background:inherit;font-size:12px;box-shadow:0 6px 18px rgba(0,0,0,0.04);z-index:9}
.reader-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;align-items:center}
.reader-settings-grid label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--muted);font-weight:600}
.reader-settings-grid select{padding:8px 10px;font-size:12px;border-radius:8px;border:1px solid rgba(0,0,0,0.15);background:var(--page-bg);color:var(--page-text);width:100%}
.reader-body{flex:1;position:relative;overflow:auto;display:flex;align-items:center;justify-content:center;padding:15px;scroll-behavior:smooth}
.reader.flat-mode .reader-body{display:block;padding:35px max(22px,calc((100vw - 720px)/2)) 65px;line-height:1.9;font-size:19px;font-family:var(--serif);white-space:pre-wrap;overflow-wrap:break-word;user-select:text}
.reader.flat-mode .reader-body canvas{max-width:100%;display:block;margin:auto;box-shadow:0 6px 25px rgba(0,0,0,0.15);border-radius:6px}
.flipbook-stage{position:relative;margin:auto;box-shadow:0 20px 45px rgba(0,0,0,0.22),0 5px 15px rgba(0,0,0,0.1);border-radius:4px}
.stf__parent{border-radius:4px;overflow:hidden}
.flip-page{width:100%;height:100%;background:var(--page-bg,#fbf7ee);color:var(--page-text,#2c241e);overflow:hidden;box-sizing:border-box;box-shadow:inset 0 0 20px rgba(0,0,0,0.03)}
.flip-page.page-sheet{padding:26px 24px 20px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid var(--page-border,#e8dfd1)}
.sheet-head{display:flex;justify-content:space-between;align-items:center;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);padding-bottom:12px;border-bottom:1px solid rgba(0,0,0,0.06);margin-bottom:14px;white-space:nowrap;overflow:hidden}
.sheet-content{flex:1;overflow:hidden;font-family:var(--serif);line-height:1.8;white-space:pre-wrap;word-break:break-word;text-align:justify;font-size:17px;user-select:text}
.sheet-foot{display:flex;justify-content:center;align-items:center;font-size:11px;color:var(--muted);padding-top:10px;border-top:1px solid rgba(0,0,0,0.06);margin-top:10px}
.flip-page.page-cover{background:var(--cover-bg,#7a1523);color:#fdf4e2;padding:24px;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 50px rgba(0,0,0,0.45);border-radius:3px 6px 6px 3px}
.cover-inner{width:100%;height:100%;border:2px solid var(--cover-border,#ecc980);outline:1px solid var(--cover-border,#ecc980);outline-offset:4px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:28px 18px;text-align:center;box-sizing:border-box}
.cover-badge{font-size:11px;letter-spacing:4px;font-weight:800;color:var(--cover-border,#ecc980);padding:4px 10px;border:1px solid var(--cover-border,#ecc980);border-radius:4px}
.cover-title{font-family:var(--serif);font-size:24px;line-height:1.25;margin:18px 0 8px;font-weight:700;color:#fff;letter-spacing:.5px}
.cover-author{font-family:var(--serif);font-size:14px;font-style:italic;color:var(--cover-border,#ecc980);margin:8px 0}
.cover-ornament{font-size:20px;letter-spacing:6px;color:var(--cover-border,#ecc980);margin:10px 0}
.cover-footer{font-size:10px;letter-spacing:1px;color:#fdf4e2aa}
.cover-note{font-family:var(--serif);font-size:15px;line-height:1.6;color:#fdf4e2ee}
.pdf-canvas-wrap{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff}
.pdf-canvas-wrap canvas{max-width:100%;max-height:100%;object-fit:contain}
.reader-footer{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 20px max(12px,env(safe-area-inset-bottom));border-top:1px solid rgba(0,0,0,0.07);background:inherit;font-size:12px;z-index:10}
.reader-footer button{background:transparent;border:1px solid rgba(0,0,0,0.1);border-radius:8px;padding:8px 15px;font-weight:600;display:inline-flex;align-items:center;gap:6px}
.reader-footer button:disabled{opacity:.35;cursor:not-allowed}
#reader-position{font-weight:700;min-width:70px;text-align:center;letter-spacing:.5px;font-variant-numeric:tabular-nums}
.reader-error{font:14px Arial;padding:25px;text-align:center;color:#a22636}#toast{position:fixed;left:50%;bottom:100px;transform:translate(-50%,15px);background:#302726;color:white;padding:15px 23px;border-radius:13px;font-size:13px;z-index:100;opacity:0;pointer-events:none;transition:.2s;max-width:90%;text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}.admin-nav{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.admin-nav .chip{font-size:11px}.table-wrap{overflow:auto;max-width:100%;background:white;border:1px solid var(--line);border-radius:12px}.admin-table{border-collapse:collapse;width:100%;font-size:11px;white-space:nowrap}.admin-table th{text-align:left;background:#f5f0ea;color:#897466;padding:13px;font-weight:600}.admin-table td{padding:13px;border-top:1px solid var(--line);max-width:280px;overflow:hidden;text-overflow:ellipsis}.admin-table .button{padding:7px 12px;min-height:32px;font-size:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{display:flex;flex-direction:column;gap:7px;font-size:11px;color:var(--muted)}.form-grid label.full{grid-column:1/-1}.form-grid input,.form-grid textarea,.form-grid select{width:100%;font-size:13px}.form-grid textarea{min-height:110px;resize:vertical}.form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.form-hint{font-size:11px;color:var(--muted);margin:14px 0}.json-editor{width:100%;height:320px;font:12px/1.6 monospace}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line)}.error-box{padding:20px;background:#fff0ed;color:#a22636;border-radius:12px;font-size:13px}.status-badge{background:#edf4eb;color:#45734b;padding:5px 9px;border-radius:15px;font-size:10px}.mobile-brand{display:none}.no-motion *, .no-motion *:before, .no-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@keyframes shimmer{to{background-position:-200% 0}}
@media(min-width:1200px){.book-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cover-wrap{height:245px}.book-cover{width:130px;height:190px}}
@media(max-width:1050px){.layout{grid-template-columns:190px 1fr}.sidebar{padding:30px 16px}.main{padding:0 25px 40px}.hero{padding:28px;grid-template-columns:1.2fr 1fr}.hero h2{font-size:30px}.hero-art{transform:scale(.85);transform-origin:center}.book-grid{gap:15px;grid-template-columns:repeat(3,minmax(0,1fr))}.cover-wrap{height:220px;padding:14px}}
@media(max-width:740px){.layout{display:block}.sidebar{display:none}.main{padding:0 20px 110px}.topbar{padding:20px 0 17px}.welcome{display:none}.mobile-brand{display:flex}.mobile-brand .brand-symbol{width:35px;height:35px;font-size:25px;border-radius:10px}.mobile-brand.brand{font-size:18px;letter-spacing:2px;gap:9px}.balance{font-size:11px;padding:9px 11px}.avatar{width:33px;height:33px;font-size:15px}.top-actions{gap:8px}.content{padding-top:26px}.intro{margin-bottom:20px}.intro .eyebrow{font-size:9px}.intro h1{font-size:33px;margin-top:10px}.date-label{display:none}.hero{padding:25px 23px;min-height:250px;grid-template-columns:1.15fr .85fr;border-radius:18px}.hero h2{font-size:27px;max-width:210px;margin-top:15px}.hero p{font-size:10px;line-height:1.6;max-width:190px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}.hero .button{font-size:10px;padding:10px 13px;min-height:40px}.hero-art{transform:scale(.69);transform-origin:30% 50%;width:170px;margin-left:-10px}.hero .art-book{left:38%}.hero .art-book.front{left:0}.hero-art .orbit{right:0}.search-row{margin-top:24px}.search-box{padding:0 12px}.search-box input{font-size:11px;padding:14px 0}.search-row select{width:100px;padding:10px;font-size:10px}.chips{gap:7px}.chip{font-size:10px;padding:9px 14px}.section-head{margin-top:25px}.section-head h2{font-size:24px}.section-head .button{font-size:10px}.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 17px}.cover-wrap{height:225px}.book-cover{width:117px;height:173px}.book-card h3{font-size:13px;margin-top:12px}.book-meta{font-size:11px}.book-card p{font-size:10px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:space-around;z-index:10;border-top:1px solid var(--line);background:#fffdfbf5;backdrop-filter:blur(16px);padding:10px 8px max(11px,env(safe-area-inset-bottom));box-shadow:0 -5px 25px #39221a05}.bottom-nav button{background:transparent;color:#a2948c;display:flex;align-items:center;flex-direction:column;gap:6px;font-size:9px;padding:4px;min-width:53px}.bottom-nav button.active{color:var(--red)}.bottom-nav svg{width:21px;height:21px}.stats{gap:8px}.stat{padding:15px 12px}.stat strong{font-size:27px}.stat small{font-size:10px}.panel{padding:20px}.packages{gap:9px}.package{padding:20px 10px}.package strong{font-size:26px}.package .button{padding:10px 7px;font-size:11px}.package small{font-size:10px}.task-card{gap:10px}.task-card .button{padding:10px 12px;font-size:10px}.task-text h3{font-size:12px}.task-text p{font-size:11px}.task-card .task-icon{width:36px;height:36px}.login-page{padding:25px 20px}.login-page header{margin-bottom:50px}.login-page .hero{min-height:300px}.login-page .hero h2{font-size:33px}.login-page .hero-art{transform:scale(.8)}.login-note .button{margin:15px 0;display:flex}.loading-grid{grid-template-columns:1fr 1fr}.modal-content{padding:22px}.modal-head h2{font-size:24px}.form-grid{grid-template-columns:1fr}.form-grid label.full{grid-column:auto}.book-detail{gap:20px}.reader-body{padding:8px 4px}.flip-page.page-sheet{padding:18px 14px 12px}.sheet-content{font-size:15px;line-height:1.65}.cover-title{font-size:20px}.cover-inner{padding:18px 12px}.reader-bar{padding-top:max(12px,env(safe-area-inset-top));padding-left:12px;padding-right:12px}.reader-footer{gap:10px;padding-left:10px;padding-right:10px}.reader-settings{gap:8px;padding:10px}.reader-settings-grid{grid-template-columns:1fr 1fr;gap:8px}.reader-settings select{max-width:none;font-size:11px}}
@media(max-width:360px){.main{padding-left:14px;padding-right:14px}.cover-wrap{height:195px}.book-cover{height:155px;width:105px}.hero-art{transform:scale(.56);transform-origin:0 50%}.hero{padding:22px 18px}.hero h2{font-size:25px}.packages{grid-template-columns:1fr}.top-actions .avatar{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
