:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--swiper-navigation-size: 44px}.swiper-button-prev,.swiper-button-next{position:absolute;width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}.swiper-button-prev.swiper-button-disabled,.swiper-button-next.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-prev.swiper-button-hidden,.swiper-button-next.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-prev,.swiper-navigation-disabled .swiper-button-next{display:none!important}.swiper-button-prev ::slotted(svg),.swiper-button-prev svg,.swiper-button-next ::slotted(svg),.swiper-button-next svg{width:100%;height:100%;object-fit:contain;transform-origin:center;fill:currentColor;pointer-events:none}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset, 4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset, 4px);left:auto}.swiper-horizontal .swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-horizontal .swiper-button-prev .swiper-navigation-icon,.swiper-horizontal~.swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-horizontal~.swiper-button-prev .swiper-navigation-icon,.swiper-horizontal.swiper-rtl .swiper-button-next ::slotted(.swiper-navigation-icon),.swiper-horizontal.swiper-rtl .swiper-button-next .swiper-navigation-icon,.swiper-horizontal.swiper-rtl~.swiper-button-next ::slotted(.swiper-navigation-icon),.swiper-horizontal.swiper-rtl~.swiper-button-next .swiper-navigation-icon{transform:rotate(180deg)}.swiper-horizontal.swiper-rtl .swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-horizontal.swiper-rtl .swiper-button-prev .swiper-navigation-icon,.swiper-horizontal.swiper-rtl~.swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-horizontal.swiper-rtl~.swiper-button-prev .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset, 50%);right:auto;margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset, 4px);bottom:auto}.swiper-vertical .swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-vertical .swiper-button-prev .swiper-navigation-icon,.swiper-vertical~.swiper-button-prev ::slotted(.swiper-navigation-icon),.swiper-vertical~.swiper-button-prev .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset, 4px);top:auto}.swiper-vertical .swiper-button-next ::slotted(.swiper-navigation-icon),.swiper-vertical .swiper-button-next .swiper-navigation-icon,.swiper-vertical~.swiper-button-next ::slotted(.swiper-navigation-icon),.swiper-vertical~.swiper-button-next .swiper-navigation-icon{transform:rotate(90deg)}.swiper-pagination{position:absolute;text-align:center;transition:.3s opacity;transform:translateZ(0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;transform:translate3d(0,-50%,0)}.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s top}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;transform:translate(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, .25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;transform:scale(0);transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}:root{--bg: #f6f7f9;--surface: #ffffff;--text: #1F2937;--muted: #6b7a8c;--line: #e8eef5;--accent: #2b8fe8;--accent-soft: #e8f4ff;--accent-polygon: rgba(165, 127, 3, .18);--danger: #c0392b;--radius: 10px;--shadow: 0 1px 3px rgba(31, 39, 51, .08);--vote-area-left: #e34980;--vote-area-right: #dd8cf1;--vote-area-left-soft: #ffbbd4;--vote-area-right-soft: #e2a9f1}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Segoe UI,Microsoft YaHei,PingFang SC,system-ui,sans-serif;line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.container{margin:0 auto;padding:0 10vw}.banner-placeholder{height:160px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eef4fb,#f8fafc);border-bottom:1px dashed #c9d6e5;color:var(--muted);font-size:14px;overflow:hidden}.banner-img{height:100%;object-fit:contain;width:auto;display:block}.nav-bar{background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:56px}.logo{font-size:19px;font-weight:700;color:var(--text);display:flex;align-items:center}.logo .logo-icon{color:var(--accent);margin-right:0;margin-top:-60px;width:150px;object-fit:contain;display:block}.nav-inner nav{display:flex;gap:4px;align-items:center}.nav-inner nav{margin-right:auto;margin-left:50px}.nav-inner nav .nav-link{display:flex;align-items:center;gap:3px;white-space:nowrap}.nav-inner nav .nav-link .nav-favicon{color:var(--accent);margin-right:-1px;width:30px;object-fit:contain;display:block}.nav-inner nav a{padding:7px 13px;border-radius:8px;color:var(--text);font-size:15px}.nav-inner nav a:hover{background:var(--accent-soft);text-decoration:none;color:var(--accent);transition:background .2s,color .2s,border-color .2s}.nav-inner nav a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}main.container{padding-top:22px;padding-bottom:40px;min-height:calc(100vh - 260px)}.site-footer{border-top:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:13px;padding:18px 0}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:18px;flex-wrap:wrap}.toolbar input[type=search],.toolbar input[type=text]{flex:1;min-width:220px;padding:9px 14px;border:1px solid var(--line);border-radius:var(--radius);font-size:15px;background:var(--surface)}.toolbar select{padding:9px 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:14px}.btn{display:inline-block;padding:9px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:14px;cursor:pointer}.btn:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover{background:#177bec;color:#fff}.btn-danger{color:var(--danger)}.btn-danger:hover{border-color:var(--danger);color:var(--danger)}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(158px,1fr));grid-auto-rows:auto;gap:20px 16px}.book-card{display:block;color:var(--text);cursor:pointer}.book-card:hover{text-decoration:none;position:relative;z-index:3}.book-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius)}.book-card:focus-within{position:relative;z-index:3}.book-cover-wrap{position:relative;aspect-ratio:3 / 4;border-radius:var(--radius);overflow:hidden;background:#eceff3;box-shadow:var(--shadow)}.book-cover-wrap img{width:100%;height:100%;object-fit:cover;display:block}.book-cover-missing{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px;background:linear-gradient(135deg,#eef1f5,#e4e8ee)}.badge{position:absolute;top:8px;left:8px;background:#2f6fb3eb;color:#fff;font-size:11px;padding:2px 8px;border-radius:999px}.book-card-title{margin-top:8px;font-size:14px;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.author-block{display:flex;flex-direction:column;gap:5px;margin-top:6px}.author-block.many{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 18px}.author-line{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:7px;font-size:12px;color:var(--muted);line-height:1.4;min-width:0}.author-zh{color:var(--text);font-weight:500}.author-orig{font-size:.8em;color:#98a2ae}.author-row{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:3px;font-size:12px;color:var(--muted);margin-top:3px;line-height:1.4}.author-field{position:relative;display:flex;gap:8px;margin-bottom:8px}.author-field input{flex:1;min-width:150px}.author-suggest{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:130;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 28px #1f27332e;max-height:260px;overflow-y:auto;padding:6px}.author-suggest-item{display:flex;align-items:baseline;gap:8px;width:100%;text-align:left;border:none;background:transparent;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:14px}.author-suggest-item:hover{background:var(--accent-soft)}.as-zh{color:var(--text);font-weight:500}.as-orig{color:#98a2ae;font-size:12px}.as-count{margin-left:auto;color:var(--muted);font-size:12px;white-space:nowrap}.author-row-text{overflow:hidden;white-space:nowrap;max-width:100%}.author-row-text.single{text-overflow:ellipsis}.author-more-btn{flex:0 0 auto;border:none;background:transparent;color:var(--accent);font-size:14px;line-height:1;padding:0 3px;border-radius:50%;cursor:pointer;opacity:.45;transition:opacity .2s ease,background .2s ease}.author-more-btn:hover,.author-more-btn.active{opacity:1;background:var(--accent-soft)}.author-pop{position:absolute;left:0;top:calc(100% + 4px);z-index:120;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 28px #1f27332e;padding:10px 14px;min-width:190px;max-width:280px;max-height:240px;overflow-y:auto;opacity:1;transform:none;animation:popIn .18s ease;transition:opacity .15s ease,transform .15s ease}.author-pop.closing{opacity:0;transform:translateY(-4px);pointer-events:none}@keyframes popIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.pop-title{font-size:12px;color:var(--muted);margin-bottom:6px}.pop-author{font-size:13px;color:var(--text);line-height:1.6}.pagination{display:flex;justify-content:center;gap:6px;margin-top:26px}.pagination button{min-width:36px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);cursor:pointer}.pagination button.active{background:var(--accent);border-color:var(--accent);color:#fff}.pagination button:disabled{opacity:.5;cursor:default}.empty-state{text-align:center;color:var(--muted);padding:60px 0}.detail-top{display:grid;grid-template-columns:300px 1fr;gap:28px;align-items:start}.detail-cover{aspect-ratio:3 / 4;border-radius:var(--radius);overflow:hidden;background:#eceff3;box-shadow:var(--shadow)}.detail-cover img{width:100%;height:100%;object-fit:cover}.detail-title{font-size:26px;font-weight:700;margin:0 0 2px}.detail-title-orig{color:var(--muted);font-size:15px;margin-bottom:0}.detail-authors{margin-bottom:14px}.detail-authors .author-line{font-size:15px}.detail-authors .author-block{margin-top:0}.detail-meta{display:flex;flex-wrap:wrap;gap:6px 18px;color:var(--muted);font-size:14px;margin-bottom:14px}.page-actions{display:flex;justify-content:flex-end;margin-bottom:12px}.book-rating{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;background:#fffdf7;border-radius:10px;padding:8px 14px}.stars{display:inline-flex;gap:2px;align-items:center;line-height:1}.star{color:#c9d2dc}.star.filled{color:#e8a33d}.rating-hint{color:var(--muted);font-size:13px}.detail-desc{white-space:pre-wrap;color:#333c48;font-size:15px}.current-version{background:linear-gradient(135deg,#e8f1fb,#f5f9ff);border-radius:10px;padding:12px 16px;font-size:14px;color:var(--text);margin-bottom:16px;line-height:1.8}.current-version .cv-label{font-weight:700;color:var(--accent)}.current-version .cv-line{display:block}.section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;margin-top:22px}.section h2{font-size:17px;margin:0 0 12px}@keyframes coverFade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.cover-fade{animation:coverFade .4s ease}.carousel-shell{position:relative}.carousel-scroll{display:flex;align-items:center;gap:14px;overflow-x:auto;padding:14px 8px 18px;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:transparent transparent}.carousel-shell:hover .carousel-scroll,.carousel-scroll:focus-visible{scrollbar-color:rgba(47,111,179,.35) transparent}.carousel-scroll::-webkit-scrollbar{height:6px}.carousel-scroll::-webkit-scrollbar-track{background:transparent}.carousel-scroll::-webkit-scrollbar-thumb{background:transparent;border-radius:3px}.carousel-shell:hover .carousel-scroll::-webkit-scrollbar-thumb{background:#2f6fb359}.carousel-item{flex:0 0 122px;border:2px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:8px;cursor:pointer;text-align:center;transform:scale(.88);opacity:.5;transition:transform .35s ease,opacity .35s ease,border-color .25s ease,background .25s ease}.carousel-item:hover{opacity:.85}.carousel-item.selected{transform:scale(1.12);opacity:1;border-color:var(--accent);background:var(--accent-soft);box-shadow:var(--shadow)}.carousel-item img{width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:6px;background:#eceff3;display:block}.carousel-item .carousel-label{font-size:12px;color:var(--text);margin-top:6px;line-height:1.3}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:#ffffffd9;color:var(--accent);font-size:20px;line-height:1;cursor:pointer;opacity:.4;transition:opacity .2s ease;box-shadow:var(--shadow)}.carousel-arrow:hover{opacity:1}.carousel-arrow.left{left:2px}.carousel-arrow.right{right:2px}.edition-detail{margin-top:6px;color:var(--muted);font-size:13px;padding-top:10px;border-top:1px dashed var(--line)}.story-list{display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.story-item{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:14px;display:flex;flex-direction:column;gap:6px;min-width:0}.story-item .story-title{display:block;width:100%;line-height:1.55;font-weight:600;color:var(--text)}.story-rater-count{color:var(--muted);font-size:12px;font-weight:400;margin-left:3px}.placeholder-section{border:1px dashed #c9d6e5;border-radius:var(--radius);background:#fbfcfe;padding:26px;text-align:center;color:var(--muted)}.discussion-box{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px}.discussion-box textarea{width:100%;min-height:90px;border:1px solid var(--line);border-radius:8px;padding:10px;font-size:14px;font-family:inherit;resize:vertical;background:var(--surface)}.discussion-actions{display:flex;justify-content:flex-end;margin-top:10px}.review-section{scroll-margin-top:76px}.review-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:4px}.review-section-head h2{margin:0}.spoiler-toggle{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.spoiler-toggle input{position:absolute;opacity:0;width:0;height:0}.switch-track{position:relative;width:42px;height:22px;border-radius:999px;background:#cbd3dd;transition:background .2s ease;flex:0 0 auto}.switch-track.on{background:var(--accent)}.switch-knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #1f27334d;transition:left .2s ease}.switch-track.on .switch-knob{left:22px}.review-summary{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fffdf7;border:1px solid #f0e4c8;border-radius:10px;margin-bottom:14px;font-size:14px}.review-summary.muted{background:transparent;border:1px dashed var(--line);color:var(--muted)}.score-num{font-weight:700}.review-context-title{color:var(--accent);font-weight:600;font-size:14px;margin-bottom:10px}.review-filter{display:flex;gap:8px;flex-wrap:wrap;margin:2px 0 16px}.review-filter .chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 13px;font-size:13px;color:var(--text);cursor:pointer;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-filter .chip.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.review-filter .chip:hover{border-color:var(--accent)}.review-editor{border:1px solid var(--line);border-radius:var(--radius);background:#fbfcfe;padding:16px 18px;margin-bottom:22px}.review-editor h3{margin:0 0 12px;font-size:16px}.identity-row{display:flex;align-items:center;gap:12px;margin-bottom:12px}.nickname-field{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.nickname-field input{width:180px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;font-size:14px;font-family:inherit}.rate-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.rate-row.small{margin-bottom:8px}.rate-label{font-size:14px;color:var(--text);font-weight:500}.review-body-editor textarea,.story-draft-fields textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:14px;font-family:inherit;line-height:1.7;resize:vertical;background:var(--surface)}.editor-toolbar{display:flex;align-items:center;gap:10px;margin-top:8px;flex-wrap:wrap}.tool-hint{color:var(--muted);font-size:12px}.btn-small{padding:5px 11px;font-size:13px}.btn-mini{padding:2px 4px;font-size:6px}.review-preview{margin-top:10px;border:1px dashed #d8c9a0;background:#fffdf7;border-radius:8px;padding:8px 12px}.preview-label{font-size:12px;color:var(--muted);margin-bottom:4px}.story-drafts{margin-top:14px;border-top:1px dashed var(--line);padding-top:12px}.story-drafts .sub-title{font-size:14px;font-weight:600;margin-bottom:10px}.story-draft{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:10px 12px;margin-bottom:10px}.story-draft-check{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.story-draft-check input{width:auto}.story-draft-fields{margin-top:10px;padding:10px 12px;background:#fbfcfe;border-radius:8px;border:1px dashed var(--line)}.auth-page{max-width:440px;margin:16px auto 0}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:26px 30px}.auth-card h1{font-size:22px;margin:0 0 4px}.auth-sub{color:var(--muted);font-size:13px;margin:0 0 18px}.auth-actions{margin-top:18px}.auth-actions .btn{width:100%;text-align:center}.auth-foot{text-align:center;font-size:14px;margin:16px 0 0}.auth-foot-sep{margin:0 8px;color:var(--muted)}.field-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:4px}.field-label-row label{margin-bottom:0}.field-label-row .field-link{font-size:13px}.success-box{background:#eef8f0;border:1px solid #b9dfc3;color:#2e8b57;border-radius:8px;padding:10px 14px;margin-bottom:12px;font-size:14px}.captcha-row{display:flex;gap:10px;align-items:center}.captcha-row input{flex:1;min-width:0}.captcha-btn{flex:0 0 auto;padding:0;border:1px solid var(--line);border-radius:8px;background:var(--surface);cursor:pointer;overflow:hidden;line-height:0}.captcha-btn:hover{border-color:var(--accent)}.captcha-img{display:block;height:38px;width:112px;object-fit:cover}.captcha-fallback{display:flex;height:38px;width:112px;align-items:center;justify-content:center;font-size:12px;color:var(--muted);line-height:1.3;padding:4px}.captcha-tip{font-size:12px;color:var(--muted);margin-top:4px}.code-row{display:flex;gap:8px}.code-row input{flex:1;min-width:0}.code-send{flex:0 0 auto;white-space:nowrap}.nav-user{display:flex;align-items:center;gap:4px;flex-shrink:0}.nav-user .nav-user-name{font-size:13px;color:var(--muted);max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-user a{padding:7px 9px;border-radius:8px;color:var(--text);font-size:14px}.nav-user a:hover{background:var(--accent-soft);text-decoration:none}.nav-user .btn-small{padding:5px 10px;margin-left:2px}@media (max-width: 1300px){.nav-inner{flex-wrap:nowrap;overflow:visible}.nav-inner *{white-space:nowrap!important;flex-shrink:0!important;word-break:keep-all!important;overflow:visible!important}.container{flex-wrap:nowrap!important;flex-shrink:0!important;overflow:visible!important}.book-grid{grid-template-columns:repeat(5,1fr)!important;grid-template-rows:auto!important;gap:20px!important;overflow:visible!important}.book-grid .book-card{min-width:155px!important;max-width:none!important}.toolbar{flex-wrap:nowrap!important;overflow:visible!important}.toolbar{flex-wrap:nowrap!important;overflow:visible;flex-shrink:0;min-width:155px!important}.toolbar>*{flex-shrink:0!important;overflow:visible!important}.toolbar input[type=search]{flex-shrink:0!important;min-width:875px!important}}.editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.user-reviews-card{padding:11px 14px 7px}.user-reviews-card .review-card-head{margin-bottom:4px}.user-review-item{margin-top:5px;padding-top:0}.user-row-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.user-row-book-label{font-size:14px;font-weight:600;color:var(--accent)}.my-review-panel{border:1px solid #d7e4f2;background:#f7fafd;border-radius:var(--radius);padding:10px 16px;margin-bottom:12px}.my-review-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.my-review-head h3{margin:0;font-size:16px}.my-review-actions{display:flex;gap:2px}.my-story-block{margin-top:6px;padding-top:0}.my-story-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.my-story-head h4{margin:0;font-size:14px;color:var(--accent);display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.my-story-title-text{color:var(--accent)}.my-story-title-rating{display:inline-flex;align-items:center;gap:5px;color:var(--text);font-size:14px;white-space:nowrap}.my-story-block .review-text,.my-story-block .review-empty{margin-top:2px}.my-review-panel .review-card{border:none;background:transparent;padding:7px 0 2px;margin:0}.my-review-panel .review-card-rating{margin-top:6px}.my-review-panel .review-card .review-text{margin-top:5px;line-height:1.7}.user-review-item .review-text{margin-top:3px;line-height:1.7}.review-card{border:1px solid var(--line);border-radius:var(--radius);padding:13px 16px;margin-bottom:12px;background:var(--surface)}.review-card-story{font-size:13px;font-weight:600;color:var(--accent);margin-bottom:8px}.review-card-head{display:flex;align-items:center;gap:10px}.avatar-placeholder{border-radius:50%;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:600;flex:0 0 auto;box-shadow:inset 0 0 0 1px #ffffff73}.review-card-who{min-width:0}.review-author-name{display:flex;align-items:center;gap:6px;font-weight:600;font-size:14px}.guest-badge{font-size:11px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:0 7px;font-weight:400;background:var(--bg)}.review-date{font-size:12px;color:var(--muted)}.review-card-rating{display:flex;align-items:center;gap:8px;margin-top:8px}.review-text{white-space:pre-wrap;margin:10px 0 0;font-size:14px;line-height:1.8;color:#333c48}.review-text .spoiler{background:#262d36;color:transparent;-webkit-text-fill-color:transparent;border-radius:4px;padding:1px 5px;cursor:help;transition:color .15s ease,background .15s ease;box-decoration-break:clone;-webkit-box-decoration-break:clone}.review-text .spoiler:hover{color:#1f2733;-webkit-text-fill-color:#1f2733;background:#f2e6c8}.review-empty{color:var(--muted);font-size:13px;margin:8px 0 0}.review-empty-state{text-align:center;color:var(--muted);padding:26px 0;font-size:14px}.others-reviews{border-top:1px dashed var(--line);padding-top:4px}.others-reviews h3{font-size:15px;margin:10px 0 12px}.review-group{margin-bottom:4px}.review-group h4{font-size:14px;color:var(--accent);margin:14px 0 8px}.stars{display:inline-flex;align-items:center;gap:0;line-height:1}.stars.interactive{cursor:pointer}.stars.interactive .star-cell:hover{filter:brightness(.96)}.star-cell{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:default}.star-cell .star-glyph{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;line-height:1;pointer-events:none}.star-cell .star-dim{color:#c9d2dc}.star-cell .star-gold{color:#e8a33d}.book-rating .btn-small{margin-left:auto}.my-rating-chip{font-size:13px;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:3px 11px;white-space:nowrap}.my-rating-block{display:inline-flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:13px;color:var(--text)}.rate-mini-label{font-size:12px;color:var(--muted);white-space:nowrap}.my-rating-block .icon-btn{padding:2px 8px;font-size:12px}.story-rate-cell{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;width:100%;margin-top:2px;padding-top:8px;border-top:1px dashed var(--line)}.story-avg{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--muted);white-space:nowrap}.my-story-rating{display:inline-flex;align-items:center;gap:5px;font-size:12px;color:var(--text);white-space:nowrap}.my-story-rating .icon-btn{padding:0 6px;font-size:12px}.entity-head{margin-bottom:10px}.entity-head h1{font-size:26px;margin:0 0 4px}.author-line.author-link{color:var(--text);cursor:pointer;border-radius:6px;padding:1px 4px;margin:-1px -4px}.author-line.author-link:hover{color:var(--accent);background:var(--accent-soft);text-decoration:none}.author-link .author-zh{color:inherit}.series-link{font-weight:600}.card-author-link{color:var(--text)}.author-row .card-author-link{color:var(--muted)}.card-author-link:hover{color:var(--accent);text-decoration:none}.page-title{font-size:24px;margin:0 0 14px}.entity-list{display:flex;flex-direction:column;gap:8px}.entity-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--text)}.entity-row:hover{border-color:var(--accent);text-decoration:none}.entity-name{font-weight:600;min-width:0}.entity-orig{color:var(--muted);font-size:12px;margin-left:8px;font-weight:400}.entity-count{color:var(--muted);font-size:13px;white-space:nowrap}.detail-cover+.book-rating{margin-top:14px;margin-bottom:0}.btn:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.search-hero{text-align:center;margin:0 0 26px}.search-hero h1{font-size:26px}.search-hero .toolbar{justify-content:center}.search-hero input{max-width:560px}.search-tabs{display:flex;justify-content:center;gap:4px;border-bottom:1px solid var(--line);margin:0 0 16px}.search-tab{padding:8px 20px;border:none;border-bottom:2px solid transparent;background:none;color:var(--muted);font-size:15px;cursor:pointer;transition:color .2s,border-color .2s}.search-tab:hover{color:var(--text)}.search-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.sort-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:0 0 18px}.sort-tab{padding:6px 16px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:13px;cursor:pointer;transition:color .2s,border-color .2s,background .2s}.sort-tab:hover{color:var(--accent);border-color:var(--accent)}.sort-tab.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.scroll-sentinel{height:1px}.list-end{padding:18px 0 6px;text-align:center;color:var(--muted);font-size:13px}.result-section-title{font-size:16px;font-weight:600;margin:0 0 12px}.author-result-row{display:flex;justify-content:space-between;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px 14px;margin-bottom:8px}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.admin-table{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.admin-table th,.admin-table td{padding:10px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:14px}.admin-table th{background:#fafbfc;font-weight:600}.admin-table tr:last-child td{border-bottom:none}.form-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 24px;max-width:860px;margin:0 auto}.form-card h1{font-size:20px;margin:0 0 16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{margin-bottom:12px}.field label{display:block;font-size:13px;color:var(--muted);margin-bottom:4px}.field input,.field textarea,.field select{width:100%;padding:8px 11px;border:1px solid var(--line);border-radius:8px;font-size:14px;font-family:inherit;background:var(--surface)}.field textarea{min-height:90px;resize:vertical}.field.checkbox{display:flex;align-items:center;gap:8px}.field.checkbox input{width:auto}.field.checkbox label{margin:0;color:var(--text)}.sub-block{border:1px solid var(--line);border-radius:8px;padding:12px;margin-bottom:10px;background:#fafbfc}.sub-block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.sub-block-title{font-size:13px;font-weight:600}.icon-btn{border:none;background:transparent;color:var(--muted);opacity:.6;cursor:pointer;font-size:14px;line-height:1;padding:4px 8px;border-radius:6px;transition:opacity .15s ease,background .15s ease}.icon-btn:hover{opacity:1;background:var(--accent-soft)}.icon-btn.danger{color:var(--danger)}.icon-btn.danger:hover{background:#fdf0ef}.icon-btn:disabled{opacity:.2;cursor:default;background:transparent}.author-entry{display:flex;gap:8px;align-items:flex-start}.author-entry .author-field{flex:1}.author-entry .icon-btn{margin-top:2px}.edition-card{border:1px solid var(--line);border-radius:8px;padding:12px 14px;margin-bottom:10px;background:#fff}.edition-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.edition-head-actions{display:flex;gap:4px}.story-entry{display:flex;gap:8px;align-items:flex-start;margin-bottom:8px}.story-entry .icon-btn{margin-top:6px}.error-box{background:#fdf0ef;border:1px solid #f0c4bf;color:var(--danger);border-radius:8px;padding:10px 14px;margin-bottom:12px;font-size:14px}.status-msg{font-size:13px;margin-left:2px}.status-msg.loading{color:var(--accent)}.status-msg.success{color:#2e8b57}.status-msg.error{color:var(--danger)}.loading{text-align:center;color:var(--muted);padding:50px 0}@media (max-width: 760px){.detail-top,.form-row{grid-template-columns:1fr}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0f172a73;display:flex;align-items:flex-start;justify-content:center;padding:36px 16px;overflow-y:auto}.review-modal{background:var(--surface);border-radius:12px;width:min(780px,100%);max-height:calc(100vh - 72px);display:flex;flex-direction:column;box-shadow:0 18px 50px #0f172a40}.review-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;border-bottom:1px solid var(--line);flex:0 0 auto}.review-modal-head h3{margin:0;font-size:17px}.review-modal-body{overflow-y:auto;padding:16px 18px 20px}.review-modal-body .review-editor{border:none;background:transparent;padding:0;margin:0}.book-detail-shell{display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px}.dim-chart-side{position:sticky;top:76px;align-self:start;min-width:0}.dim-chart-sticky{position:static}.dim-chart-sticky .five-dim-chart{width:100%;height:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.five-dim-chart .chart-title{font-size:16px;font-weight:700;fill:var(--text)}.five-dim-chart .dim-label{font-size:18px;fill:var(--muted)}.five-dim-chart .dim-value{font-size:18px;font-weight:700;fill:var(--accent-polygon)}.five-dim-chart .center-score{font-size:60px;font-weight:800;fill:#f89cba;mix-blend-mode:multiply}.five-dim-chart .center-caption{font-size:18px;font-weight:600;fill:var(--muted)}.five-dim-chart .center-sub{font-size:16px;fill:#98a2ae}.chart-base-anim{transform-box:view-box;transform-origin:170px 145px;animation:fiveDimBase .55s cubic-bezier(.2,.75,.25,1) both}.data-poly-anim{transform-box:view-box;transform-origin:170px 145px;animation:fiveDimExpand .65s cubic-bezier(.2,.75,.25,1) .5s both}@keyframes fiveDimBase{0%{transform:scale(.05);opacity:0}55%{opacity:1}to{transform:scale(1);opacity:1}}@keyframes fiveDimExpand{0%{transform:scale(.05);opacity:0}55%{opacity:1}to{transform:scale(1);opacity:1}}@media (prefers-reduced-motion: reduce){.chart-base-anim,.data-poly-anim{animation:none}}.dim-picker{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-bottom:12px;background:#fbfcfe}.dim-picker-title{font-size:13px;color:var(--muted);margin-bottom:8px}.dim-picker-row{display:flex;align-items:center;gap:10px;margin-bottom:6px}.dim-picker-row:last-child{margin-bottom:0}.dim-picker-label{width:52px;flex:0 0 auto;font-size:13px;font-weight:600}.dim-nums{display:flex;gap:4px;flex-wrap:wrap}.dim-num{width:27px;height:27px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--text);font-size:12px;cursor:pointer}.dim-num:hover{border-color:var(--accent)}.dim-num.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.review-dims{display:inline-flex;flex-wrap:wrap;gap:4px 12px;margin-left:4px;font-size:13px;color:var(--muted)}@media (max-width: 1080px){.book-detail-shell{grid-template-columns:1fr;gap:16px}.dim-chart-sticky,.dim-chart-side{position:static}.dim-chart-sticky .five-dim-chart{max-width:380px;margin:0 auto;display:block}}:root{--surface-2: #f4f7fb;--shadow-lift: 0 8px 20px rgba(31, 39, 51, .12)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.account-page{display:flex;flex-direction:column;gap:18px}.account-hero{display:flex;align-items:center;gap:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px;box-shadow:var(--shadow)}.account-hero-avatar{flex:0 0 auto}.account-avatar-img,.account-avatar-fallback{display:block;border-radius:50%;border:1px solid var(--line);box-shadow:var(--shadow)}.account-avatar-img{object-fit:cover;background:var(--surface-2)}.account-avatar-fallback{display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;font-weight:700}.account-hero-info{min-width:0}.account-hero-edit{margin-left:auto;align-self:flex-start;flex:0 0 auto}.account-hero-info h1{margin:0 0 2px;font-size:26px;letter-spacing:.01em}.account-hero-sub{margin:0 0 6px;color:var(--muted);font-size:13px}.account-hero-bio{margin:0;color:var(--text);font-size:14px;line-height:1.7;white-space:pre-wrap}.account-tabs{display:flex;flex-wrap:wrap;gap:6px}.account-tabs button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:6px;padding:7px 16px;font-size:14px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.account-tabs button:hover{border-color:var(--accent)}.account-tabs button.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.account-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;box-shadow:var(--shadow)}.account-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.account-panel-head h2,.account-edit h2{margin:0;font-size:20px}.account-count{color:var(--muted);font-size:13px}.reserved-tag{font-size:12px;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:1px 9px}.account-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:22px}.account-stat{display:flex;flex-direction:column;gap:2px;padding:14px 16px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius)}.account-stat strong{font-size:28px;line-height:1.1;color:var(--accent)}.account-stat span{color:var(--muted);font-size:13px}.account-stat-reserved strong{color:var(--muted)}.account-edit{max-width:640px;border-top:1px solid var(--line);padding-top:18px}.account-edit h2,.account-edit .field{margin-bottom:14px}.account-edit .field>span{display:block;margin-bottom:4px;font-size:13px;color:var(--muted)}.account-avatar-edit{display:flex;align-items:center;gap:14px;margin-bottom:14px}.account-avatar-edit .btn{margin-bottom:4px}.account-hint{display:block;color:var(--muted);font-size:12px}.my-review-list{display:flex;flex-direction:column;gap:12px}.my-review-card{display:flex;gap:14px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius)}.my-review-cover{flex:0 0 auto;width:58px;aspect-ratio:3 / 4;overflow:hidden;border-radius:4px;border:1px solid var(--line)}.my-review-cover img,.my-review-cover .book-cover-missing{width:100%;height:100%;object-fit:cover}.my-review-main{min-width:0;flex:1}.my-review-title-row{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.my-review-title{font-size:17px;font-weight:600;color:var(--text)}.my-review-title:hover{color:var(--accent)}.my-review-story{color:var(--muted);font-size:13px}.my-review-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:6px;color:var(--muted);font-size:12px}.my-review-score{display:inline-flex;align-items:center;gap:6px;color:var(--text)}.my-review-excerpt{margin:8px 0 0;font-size:14px;line-height:1.7;color:var(--text);white-space:pre-wrap}.booklist-create{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.booklist-create input{flex:1 1 180px;padding:8px 12px;border:1px solid var(--line);border-radius:6px;background:var(--surface);font-size:14px}.booklist-list{display:flex;flex-direction:column;gap:14px}.booklist-card{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px}.booklist-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.booklist-head h3{margin:0 0 2px;font-size:19px}.booklist-desc{margin:0;color:var(--muted);font-size:13px}.booklist-actions{display:flex;align-items:center;gap:10px}.booklist-empty{color:var(--muted);font-size:13px;margin:0}.booklist-books{display:grid;grid-template-columns:repeat(auto-fill,minmax(74px,1fr));gap:12px}.booklist-book{position:relative}.booklist-book a{display:block;aspect-ratio:3 / 4;overflow:hidden;border-radius:4px;border:1px solid var(--line)}.booklist-book img{width:100%;height:100%;object-fit:cover;display:block}.booklist-book .book-cover-missing{font-size:11px;padding:0 4px;text-align:center}.booklist-remove{position:absolute;top:-7px;right:-7px;width:22px;height:22px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--danger);cursor:pointer;font-size:12px;line-height:1;box-shadow:var(--shadow)}.reserved-tabs{display:inline-flex;border-bottom:1px solid var(--line);margin-bottom:14px}.reserved-tabs span{padding:6px 14px;font-size:14px;color:var(--muted);border-bottom:2px solid transparent}.reserved-tabs span.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.favorite-modal{width:min(460px,100%)}.favorite-lists{display:flex;flex-direction:column;gap:8px}.favorite-list-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:6px;background:var(--surface);cursor:pointer;font-size:14px}.favorite-list-row:hover{border-color:var(--accent)}.favorite-list-row.saved{background:var(--accent-soft);border-color:var(--accent)}.favorite-list-name{font-weight:600;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.favorite-list-count{color:var(--muted);font-size:12px}.favorite-list-state{margin-left:auto;color:var(--accent);font-size:13px;white-space:nowrap}.favorite-empty{color:var(--muted);font-size:14px;margin:4px 0}.favorite-create{display:flex;gap:8px;margin-top:10px;border-top:1px dashed var(--line);padding-top:12px}.favorite-create input{flex:1;min-width:0;padding:7px 10px;border:1px solid var(--line);border-radius:6px;font-size:14px;background:var(--surface)}.page-actions{gap:8px}.book-faved{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}@media (max-width: 620px){.account-hero{align-items:flex-start}.booklist-create input{flex-basis:100%}}.my-review-tile{display:flex;flex-direction:column;min-width:0}.my-review-tile .book-card{flex:1}.my-review-date{display:block;margin-top:8px;text-align:center;color:var(--muted);font-size:12px}.account-danger{max-width:640px;margin-top:26px;border-top:1px solid var(--line);padding-top:16px}.account-danger h2{margin:0 0 6px;font-size:18px;color:var(--danger)}.account-danger p{margin:0 0 12px;color:var(--muted);font-size:13px;line-height:1.7}.btn.btn-danger{border-color:var(--danger);background:transparent;color:var(--danger)}.btn.btn-danger:hover{background:#fae9e4;border-color:var(--danger);color:var(--danger)}.delete-account-modal{width:min(440px,100%)}.delete-account-modal .field>span{display:block;margin-bottom:4px;font-size:13px;color:var(--muted)}.delete-account-tip{margin:0 0 14px;color:var(--muted);font-size:13px;line-height:1.7}.home-banner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-rows:minmax(430px,auto);gap:20px;margin-bottom:24px}.carousel{border-radius:12px;overflow:hidden;min-height:0;background:#f0f0f0}.carousel-container{width:100%;height:100%;overflow:hidden;background:#f0f0f0}.my-swiper{width:100%;height:100%}.slide-content{width:100%;height:100%;position:relative}.slide-content.clickable{cursor:pointer}.slide-content.clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.slide-image{width:100%;height:100%;object-fit:cover;background:#f0f0f0}.my-swiper .swiper-button-prev,.my-swiper .swiper-button-next{width:44px;height:44px;top:93%!important;opacity:.3;transition:opacity .3s ease;background:#00000080;border-radius:40%;color:#fff;overflow:hidden}.my-swiper .swiper-button-prev:hover,.my-swiper .swiper-button-next:hover{background:#000000b3}.my-swiper:hover .swiper-button-prev,.my-swiper:hover .swiper-button-next{opacity:1}.my-swiper .swiper-button-prev:active,.my-swiper .swiper-button-next:active{transform:scale(.85);opacity:.7;transition:transform .1s,opacity .1s}.my-swiper .swiper-button-prev:active:after,.my-swiper .swiper-button-next:active:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#ffffff80;border-radius:50%;transform:translate(-50%,-50%);animation:ripple .5s ease-out forwards;pointer-events:none}@keyframes ripple{0%{width:0;height:0;opacity:1}to{width:200px;height:200px;opacity:0}}.vote-box{border-radius:12px;overflow:hidden;background-color:transparent;min-width:0}.vote-box-inner{display:flex;flex-direction:column;height:100%;padding:16px 20px 14px}.vote-loading{height:100%;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:14px}.vote-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:6px}.vote-title{max-height:60px;width:auto;margin:0 0 0 60px}.vote-sub{font-size:12px;color:var(--muted)}.vote-books{flex:1;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;min-height:0}.vote-left{--side-color: var(--vote-area-left);--side-soft: var(--vote-area-left-soft)}.vote-right{--side-color: var(--vote-area-right);--side-soft: var(--vote-area-right-soft)}.vote-side{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;padding:14px 10px 12px;border:1px solid transparent;border-radius:var(--radius);transition:border-color .2s,background .2s}.vote-side.is-voted{border-color:var(--side-color);background:var(--side-soft)}.vote-cover{display:block;width:240px;max-width:100%;aspect-ratio:3 / 4;object-fit:cover;border-radius:var(--radius);box-shadow:var(--shadow);background:#eceff3;transition:box-shadow .2s ease}.vote-cover-link{display:block;line-height:0;border-radius:var(--radius);transition:transform .2s ease}.vote-cover-link:hover{text-decoration:none;transform:translateY(-2px)}.vote-cover-link:hover .vote-cover{box-shadow:0 6px 16px #1f27332e}.vote-cover-missing{display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px}.vote-book-meta{display:flex;flex-direction:column;margin:10px 0 12px;text-align:center;line-height:1.45;min-height:0}.vote-book-title{font-size:13px;font-weight:600}.vote-book-author{font-size:12px;color:var(--muted)}.vote-btn{padding:7px 14px;border:1px solid var(--side-color, var(--vote-area-right));border-radius:999px;background:transparent;color:var(--side-color, var(--vote-area-right));font-size:13px;cursor:pointer;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}.vote-btn:hover:not(:disabled){background:var(--side-color, var(--vote-area-right));color:#fff}.vote-btn:disabled{border-color:var(--line);color:var(--muted);cursor:default}.vote-btn.is-voted{border-color:var(--side-color, var(--vote-area-right));background:var(--side-color, var(--vote-area-right));color:#fff}.vote-btn-wrap{position:relative;display:inline-flex}.vote-bubble{position:absolute;left:50%;bottom:calc(100% + 6px);width:22px;height:22px;color:var(--side-color, var(--vote-area-right));pointer-events:none;animation:vote-bubble-float 1.1s ease-out forwards}.vote-btn-wrap.vote-left .vote-bubble{--bubble-drift: -8px}.vote-btn-wrap.vote-right .vote-bubble{--bubble-drift: 8px}@keyframes vote-bubble-float{0%{opacity:0;transform:translate(-50%,10px) scale(.5)}20%{opacity:1;transform:translate(-50%) scale(1)}70%{opacity:.85}to{opacity:0;transform:translate(calc(-50% + var(--bubble-drift, 0px)),-60px) scale(1.1)}}@media (prefers-reduced-motion: reduce){.vote-bubble{display:none}}.vote-pk{display:flex;align-items:center;gap:10px;margin-top:14px}.pk-wrap{flex:1;display:flex;align-items:center;gap:10px;min-width:0}.pk-count{font-size:13px;font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}.pk-count-left{color:var(--vote-area-left)}.pk-count-right{color:var(--vote-area-right)}.pk-count small{margin-left:2px;font-size:11px;font-weight:400;color:var(--muted)}.pk-track{flex:1;min-width:60px;height:14px;display:flex;border-radius:999px;overflow:hidden;background:var(--line)}.pk-fill{height:100%;transition:width .4s ease}.pk-fill-left{background:linear-gradient(90deg,var(--vote-area-left),var(--vote-area-left-soft))}.pk-fill-right{background:linear-gradient(90deg,var(--vote-area-right-soft),var(--vote-area-right))}.vote-vs{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:48px}.vote-vs-mark{display:flex;align-items:center;justify-content:center;width:120px;height:90px;background:none}.vote-tip-slot{display:flex;align-items:center;justify-content:center;height:22px;margin-top:8px}.vote-tip{margin:0;font-size:13px;line-height:1.4;text-align:center}.vote-tip.ok{color:#1e7f4f}.vote-tip.error{color:var(--danger)}@media (max-width: 1000px){.home-banner{grid-template-columns:1fr;grid-auto-rows:auto}.carousel{height:320px}}@media (max-width: 520px){.vote-pk{flex-wrap:wrap;gap:10px 8px}.vote-pk .vote-btn-wrap{flex:1 1 0}.vote-pk .vote-btn{width:100%;padding:7px 10px}.pk-wrap{order:3;flex:1 1 100%;gap:8px}}.tag-wall{margin-top:18px;padding-top:14px;border-top:1px dashed var(--line)}.tag-wall-title{font-size:14px;font-weight:600;margin-bottom:8px}.tag-wall-empty{font-size:12px;color:var(--muted)}.tag-wall-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;max-height:46vh;overflow-y:auto}.modal-backdrop-top{z-index:300}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-size:12px;line-height:1.6;animation:tag-pop-in .42s ease-out both}.tag-chip.is-chosen{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.tag-chip-count{font-size:11px;color:var(--muted)}.tag-chip.is-chosen .tag-chip-count{color:var(--accent)}.tag-add{display:inline-flex;align-items:center}.tag-add-btn{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px dashed var(--line);border-radius:50%;background:transparent;color:var(--muted);font-size:14px;line-height:1;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.tag-add-btn:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}@keyframes tag-pop-in{0%{opacity:0;transform:translateY(6px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion: reduce){.tag-chip{animation:none}}.tag-picker{width:min(620px,100%)}.tag-picker-bar{display:flex;align-items:center;gap:12px;margin-bottom:12px}.tag-picker-bar input{flex:1}.tag-picker-counter{font-size:12px;color:var(--muted);white-space:nowrap}.tag-picker-group{margin-bottom:14px}.tag-picker-group-title{display:flex;align-items:center;gap:8px;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--muted)}.tag-picker-note{padding:1px 6px;border:1px solid var(--line);border-radius:999px;font-size:11px;font-weight:400}.tag-picker-chips{display:flex;flex-wrap:wrap;gap:6px}.tag-picker-chip{display:inline-flex;align-items:center;gap:4px;padding:5px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-size:12px;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.tag-picker-chip:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.tag-picker-chip.is-chosen{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.tag-picker-chip.is-locked{opacity:.55;cursor:not-allowed}.tag-picker-chip:disabled{cursor:default}.tag-picker-check{font-size:11px}.tag-picker-foot{margin:14px 0 0;font-size:12px;color:var(--muted)}.tag-search-group{margin-bottom:18px}.tag-search-group-title{margin-bottom:8px;font-size:13px;font-weight:600;color:var(--muted)}.tag-search-chips{display:flex;flex-wrap:wrap;gap:8px}.tag-search-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:13px}.tag-search-count{font-size:11px;color:var(--muted)}.user-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.user-avatar .account-avatar-img,.user-avatar .account-avatar-fallback{font-size:14px}.nav-user-avatar{display:inline-flex;align-items:center;margin-right:6px}.invite-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--danger);color:#fff;font-size:12px;font-weight:700;line-height:1}.invite-badge:hover{text-decoration:none;opacity:.9}.badge-club{background:var(--accent);color:#fff}.club-author-name{color:var(--accent)}.club-publish-line{display:flex;align-items:center;gap:8px;margin:4px 0 6px;font-size:13px}.club-publish-school{color:var(--muted)}.story-author-name{margin-left:8px;font-size:13px;color:var(--accent)}.story-author-external{margin-left:8px;font-size:13px;color:var(--muted)}.story-item .user-avatar{margin-right:6px;vertical-align:middle}.image-crop-modal{max-width:420px}.image-crop-body{padding:18px 20px 20px}.image-crop-stage{position:relative;margin:0 auto 14px;overflow:hidden;border-radius:8px;background:var(--surface-2);cursor:grab;touch-action:none}.image-crop-stage.dragging{cursor:grabbing}.image-crop-stage img{position:absolute;max-width:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.image-crop-mask{position:absolute;box-shadow:0 0 0 9999px #141d2b80;border:1px solid rgba(255,255,255,.9);pointer-events:none}.image-crop-mask.circle{border-radius:50%}.image-crop-zoom{display:flex;align-items:center;gap:12px;font-size:13px;color:var(--muted)}.image-crop-zoom input{flex:1}.image-crop-hint{margin:10px 0 0;font-size:12px;color:var(--muted)}.image-crop-body .editor-actions{margin-top:16px}.club-board-hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px;margin-bottom:18px}.club-board-hero h1{margin:0 0 6px;font-size:24px}.club-board-hero p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}.club-board-actions{margin-top:12px}.club-hero{display:flex;align-items:flex-start;gap:18px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px;margin-bottom:18px}.club-hero-info{min-width:0;flex:1}.club-hero-info h1{margin:0 0 4px;font-size:24px}.club-hero-sub{margin:0 0 8px;color:var(--muted);font-size:13px}.club-hero-pending{margin:0 0 8px;font-size:13px;color:var(--danger)}.club-hero-desc{margin:0 0 10px;font-size:14px;line-height:1.8;white-space:pre-wrap}.club-hero-owner{display:flex;align-items:center;gap:6px;margin:0;font-size:13px;color:var(--muted)}.member-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.member-chip{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);color:var(--text)}.member-chip:hover{border-color:var(--accent);text-decoration:none}.member-chip-info{display:flex;flex-direction:column;min-width:0}.member-chip-info span{font-size:12px;color:var(--muted)}.clubs-panel{display:flex;flex-direction:column;gap:22px}.clubs-section{border-top:1px solid var(--line);padding-top:16px}.clubs-section:first-child{border-top:none;padding-top:0}.clubs-empty{margin:8px 0 0;color:var(--muted);font-size:13px}.invite-list,.member-list,.search-result-list,.publication-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.invite-item,.member-item,.search-result-list li{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius)}.invite-info{display:flex;flex-direction:column;min-width:0;flex:1}.invite-sub{font-size:12px;color:var(--muted)}.invite-actions{display:flex;gap:8px}.club-manage-list{display:flex;flex-direction:column;gap:16px;margin-top:10px}.club-manage-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px 16px}.club-manage-head{display:flex;align-items:center;gap:12px}.club-manage-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.club-manage-title{display:flex;align-items:center;gap:8px;font-size:16px}.club-status{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;background:var(--accent-soft);color:var(--accent)}.club-status-pending,.pub-status-pending{background:#fff4e5;color:#b26a00}.club-status-approved,.pub-status-published{background:#e8f7ee;color:#1e7b45}.club-status-rejected,.pub-status-rejected,.pub-status-removed{background:#fdecea;color:var(--danger)}.pub-status-draft{background:var(--surface-2);color:var(--muted)}.club-review-note{font-size:12px;color:var(--danger)}.club-pending-note{font-size:12px;color:#b26a00}.club-manage-head-actions{display:flex;gap:8px;flex-wrap:wrap}.club-card-sub{font-size:12px;color:var(--muted)}.club-verified{display:inline-flex;align-items:center;margin-left:6px;padding:1px 8px;border-radius:999px;background:#e8f7ee;color:#1e7b45;font-size:12px;font-weight:600;vertical-align:middle}.club-proof-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.club-proof-name{font-size:13px;color:var(--muted)}.club-create-modal{max-width:560px}.club-create-modal .club-create-form{max-height:72vh;overflow-y:auto}.profile-editor-modal{max-width:480px}.club-manage-tabs,.review-center-tabs{display:flex;gap:6px;margin:12px 0 10px;flex-wrap:wrap}.club-manage-tabs button,.review-center-tabs button{padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-size:13px;cursor:pointer}.club-manage-tabs button.active,.review-center-tabs button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.member-name{font-size:14px;color:var(--text)}.member-role{font-size:12px;color:var(--muted)}.member-date{font-size:12px;color:var(--muted);margin-left:auto}.member-item .btn,.search-result-list li .btn{margin-left:8px}.invite-search{display:flex;gap:8px;margin-bottom:8px}.invite-search input{flex:1;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:14px}.publication-manage{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.publication-list{width:100%}.publication-item{border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;background:var(--surface-2)}.publication-item-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.publication-item-actions{display:flex;gap:8px;margin-top:8px}.club-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-top:10px}.club-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text)}.club-card:hover{border-color:var(--accent);text-decoration:none}.club-card div{display:flex;flex-direction:column;min-width:0}.club-create-form{display:flex;flex-direction:column;gap:12px;max-width:560px}.club-logo-row{display:flex;align-items:center;gap:12px}.publication-editor{max-width:720px}.publication-editor-body{display:flex;flex-direction:column;gap:12px;max-height:74vh;overflow-y:auto}.publication-hint{margin:0;font-size:12px;color:var(--muted);line-height:1.7}.publication-cover-row{display:flex;align-items:flex-start;gap:14px}.publication-cover-preview{width:90px;aspect-ratio:3 / 4;object-fit:cover;border:1px solid var(--line);border-radius:6px;background:var(--surface-2)}.publication-cover-empty{display:flex;align-items:center;justify-content:center;width:90px;aspect-ratio:3 / 4;border:1px dashed var(--line);border-radius:6px;color:var(--muted);font-size:12px}.publication-cover-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.publication-stories-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.publication-stories-head h4{margin:0;font-size:15px}.publication-story-row{display:flex;align-items:center;gap:8px;margin-top:8px}.publication-story-index{width:20px;color:var(--muted);font-size:13px;text-align:center}.publication-story-row input,.publication-story-row select{padding:7px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);font-size:14px}.publication-story-row input:first-of-type{flex:1;min-width:120px}.publication-story-row .publication-story-author{width:150px;flex:0 0 auto}.publication-story-actions{display:flex;gap:4px}.review-reason-box{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:12px 14px;margin-bottom:14px}.review-reason-box p{margin:0 0 8px;font-size:13px;color:var(--muted)}.review-reason-box textarea{width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);font-size:14px;resize:vertical}.review-user-cell{display:inline-flex;align-items:center;gap:8px}.review-desc-cell{max-width:280px;font-size:13px;color:var(--muted)}.review-cover{display:inline-block;width:34px;height:48px;object-fit:cover;border-radius:4px;border:1px solid var(--line);margin-right:8px;vertical-align:middle}.review-cover-empty{display:inline-flex;align-items:center;justify-content:center;font-size:10px;color:var(--muted);background:var(--surface-2)}.proof-modal{max-width:720px}.club-review-modal{max-width:760px}.club-review-body{padding:16px 20px 20px}.review-diff-table{width:100%;border-collapse:collapse;margin-bottom:14px;font-size:14px}.review-diff-table th,.review-diff-table td{border-bottom:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}.review-diff-table th{background:var(--surface-2);font-size:13px;color:var(--muted)}.review-diff-table tr.changed td{background:#fff8e6}.review-apply-info p{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:14px}.review-apply-info p>span:first-child{flex:0 0 88px;color:var(--muted);font-size:13px}.proof-modal-body{padding:16px 20px 20px;text-align:center}.proof-modal-body img{max-width:100%;max-height:66vh;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface-2)}@media (max-width: 760px){.club-hero,.club-manage-head,.invite-item,.member-item{flex-direction:column;align-items:flex-start}.member-date{margin-left:0}.publication-story-row{flex-wrap:wrap}}.md-body{font-size:15px;line-height:1.85;color:var(--text);word-break:break-word}.md-body p{margin:0 0 10px}.md-body p:last-child{margin-bottom:0}.md-heading{margin:14px 0 8px;font-size:17px;line-height:1.5}.md-body h3.md-heading,.md-body h4.md-heading{font-size:16px}.md-quote{margin:10px 0;padding:6px 14px;border-left:3px solid var(--accent);background:var(--surface-2);border-radius:0 6px 6px 0;color:var(--muted)}.md-list{margin:8px 0 10px;padding-left:22px}.md-code{margin:10px 0;padding:10px 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius);font-size:13px;overflow-x:auto;white-space:pre-wrap}.md-body code{padding:1px 5px;background:var(--surface-2);border-radius:4px;font-size:13px}.md-body hr{border:none;border-top:1px solid var(--line);margin:14px 0}.md-image{display:block;max-width:100%;max-height:520px;margin:10px 0;border-radius:var(--radius);border:1px solid var(--line)}.md-spoiler{display:block;margin:8px 0}.rich-editor{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.rich-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:8px 10px;background:var(--surface-2);border-bottom:1px solid var(--line)}.tool-btn{min-width:30px;padding:4px 8px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text);font-size:13px;cursor:pointer}.tool-btn:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent-soft)}.tool-btn.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.tool-btn:disabled{opacity:.5;cursor:not-allowed}.tool-sep{width:1px;height:18px;margin:0 4px;background:var(--line)}.tool-hint{margin-left:auto;font-size:12px;color:var(--muted)}.rich-textarea{display:block;width:100%;padding:12px 14px;border:none;outline:none;resize:vertical;font-size:15px;line-height:1.8;font-family:inherit;background:var(--surface);color:var(--text)}.rich-preview{border-top:1px dashed var(--line);padding:10px 14px 12px;background:#fbfcfe}.rich-count{padding:4px 14px 8px;text-align:right;font-size:12px;color:var(--muted);background:var(--surface)}.post-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.post-sort{display:flex;gap:6px}.post-sort button{padding:5px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);font-size:13px;cursor:pointer}.post-sort button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.post-cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.post-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:12px 14px;box-shadow:var(--shadow)}.post-card-top{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.post-card-title{font-size:16px;font-weight:600;color:var(--text)}.post-card-title:hover{color:var(--accent)}.post-scope,.post-book-chip{padding:1px 8px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:12px}.post-book-chip:hover{text-decoration:none;opacity:.85}.post-card-excerpt{display:block;margin:6px 0 0;font-size:14px;color:var(--muted);line-height:1.7}.post-card-excerpt:hover{color:var(--text)}.post-card-foot{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:10px;font-size:13px;color:var(--muted)}.post-author{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-size:13px}.post-time,.post-edited{font-size:12px;color:var(--muted)}.ip-tag{display:inline-block;margin-left:8px;padding:1px 7px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:12px;line-height:1.5;white-space:nowrap;vertical-align:middle}.post-stat{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);font-size:13px;cursor:pointer}button.post-stat:hover:not(:disabled){background:var(--surface-2)}.post-stat.liked{color:var(--accent);font-weight:600}.post-card-actions{display:inline-flex;gap:6px;margin-left:auto}.post-breadcrumb{margin-bottom:12px;font-size:13px;color:var(--muted)}.post-main{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px}.post-title{margin:0 0 8px;font-size:23px}.post-main-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid var(--line)}.post-content{margin-bottom:16px}.post-actions{display:flex;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.post-comments{margin-top:22px}.post-comments h2{font-size:18px;margin:0 0 12px}.post-login-hint{color:var(--muted);font-size:14px}.comment-editor{margin-bottom:16px}.comment-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.comment-card{display:flex;gap:12px;padding:12px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.comment-body{min-width:0;flex:1}.comment-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.comment-content{font-size:14px}.comment-actions{display:flex;align-items:center;gap:8px;margin-top:8px}.post-editor-modal{max-width:780px}.post-editor-body{display:flex;flex-direction:column;gap:12px}.post-book-locked{font-size:13px;color:var(--muted)}.post-book-search{display:flex;gap:8px}.post-book-search input{flex:1;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);font-size:14px}.post-book-selected{display:flex;align-items:center;gap:10px}.post-book-results{list-style:none;margin:8px 0 0;padding:0;max-height:220px;overflow-y:auto;border:1px solid var(--line);border-radius:var(--radius)}.post-book-results li+li{border-top:1px solid var(--line)}.post-book-result{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;background:transparent;text-align:left;font-size:14px;color:var(--text);cursor:pointer}.post-book-result:hover{background:var(--accent-soft)}.post-book-result img{width:30px;height:42px;object-fit:cover;border-radius:4px}@media (max-width: 760px){.post-card-actions{margin-left:0}.tool-hint{margin-left:0;width:100%}}.book-card{border-radius:var(--radius);transition:transform .18s ease}.book-card .book-cover-wrap{transition:box-shadow .18s ease}.book-card .book-cover-wrap img{transition:transform .35s ease}.book-card .book-card-title{transition:color .18s ease}.book-card:hover{transform:translateY(-4px)}.book-card:hover .book-cover-wrap{box-shadow:0 10px 24px #1f27332e}.book-card:hover .book-cover-wrap img{transform:scale(1.045)}.book-card:hover .book-card-title{color:var(--accent)}.review-author-link{color:inherit;display:inline-flex}.review-author-link:hover{color:var(--accent);text-decoration:none}.user-review-actions{display:flex;justify-content:flex-end;margin-top:6px}.reviews-more{display:flex;align-items:center;gap:12px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--line)}.reviews-more-hint{font-size:12px;color:var(--muted)}.all-reviews-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:6px}.all-reviews-head h1{margin:0;font-size:22px}.like-btn-wrap{position:relative;display:inline-flex}.like-btn{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);font-size:13px;line-height:1.5;cursor:pointer}.like-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.like-btn.liked{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.like-btn.static,.like-btn:disabled{border-color:transparent;background:transparent;color:var(--muted);cursor:default}.like-btn.static.liked{color:var(--accent)}.like-count{font-variant-numeric:tabular-nums}.like-bubble{position:absolute;left:50%;bottom:calc(100% + 6px);color:var(--accent);pointer-events:none;animation:like-bubble-float 1.1s ease-out forwards}@keyframes like-bubble-float{0%{opacity:0;transform:translate(-50%,10px) scale(.5)}20%{opacity:1;transform:translate(-50%) scale(1)}70%{opacity:.85}to{opacity:0;transform:translate(-50%,-60px) scale(1.1)}}.side-rail{position:fixed;left:18px;top:186px;z-index:150;display:flex;flex-direction:column;gap:10px}.side-rail-btn{position:relative;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--text);box-shadow:var(--shadow);cursor:pointer;transition:transform .16s ease,color .16s ease,border-color .16s ease}.side-rail-btn:hover{transform:translateY(-2px);color:var(--accent);border-color:var(--accent)}.side-rail-dot{position:absolute;top:7px;right:7px;width:9px;height:9px;border-radius:50%;background:#e5484d;border:2px solid var(--surface)}@media (max-width: 900px){.side-rail{display:none}}.notifications-head-actions{display:flex;align-items:center;gap:10px}.notification-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.notification-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.notification-item.unread{border-color:var(--accent);background:var(--accent-soft)}.notification-main{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:none;background:transparent;text-align:left;cursor:pointer;color:var(--text)}.notification-body{display:flex;flex-direction:column;min-width:0;flex:1}.notification-text{font-size:14px;line-height:1.6}.notification-time{font-size:12px;color:var(--muted)}.notification-dot{width:8px;height:8px;border-radius:50%;background:#e5484d;flex:0 0 auto}.notification-system-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--surface-2);color:var(--muted)}.feedback-modal{max-width:560px}.import-modal{max-width:680px}.import-body{display:flex;flex-direction:column;gap:12px}.import-sample{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:10px 12px}.import-sample summary{cursor:pointer;font-size:13px;color:var(--accent)}.import-sample-body{margin-top:10px}.import-sample-title{margin:10px 0 6px;font-size:13px;font-weight:600;color:var(--muted)}.import-sample pre{margin:0;padding:10px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);font-size:12px;line-height:1.6;overflow-x:auto;white-space:pre}.import-sample-table{width:100%;border-collapse:collapse;font-size:12px;background:var(--surface)}.import-sample-table th,.import-sample-table td{border:1px solid var(--line);padding:4px 6px;text-align:left}.import-sample-note{margin:8px 0 0;font-size:12px;color:var(--muted)}.import-result{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:12px 14px}.import-result-title{font-weight:600;margin-bottom:6px}.import-result ul{margin:0;padding-left:18px;font-size:14px;line-height:1.9}.import-skipped-titles{margin:8px 0 0;font-size:12px;color:var(--muted);line-height:1.7}.footer-inner{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(180px,1fr) minmax(260px,1.4fr);gap:24px;padding-top:24px;padding-bottom:24px;align-items:start}.footer-logo{display:inline-flex;align-items:center;gap:8px;color:var(--text)}.footer-logo:hover{text-decoration:none}.footer-logo-img{height:60px;width:auto;display:block}.footer-name{font-size:17px;font-weight:700}.footer-name-en{font-size:12px;color:var(--muted)}.footer-slogan{margin:8px 0 0;font-size:12px;color:var(--muted);line-height:1.8}.footer-nav{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:13px}.footer-nav a{color:var(--text)}.footer-legal{font-size:12px;color:var(--muted)}.footer-legal-links{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 8px;font-size:13px}.footer-contact,.footer-copyright{margin:0 0 6px}.footer-contact-todo{color:var(--muted)}.footer-contact-hint{margin-left:8px}.footer-source{margin:0}@media (max-width: 900px){.footer-inner{grid-template-columns:1fr;gap:16px}.about-layout{grid-template-columns:1fr}.about-side{position:static}.about-side-nav{flex-direction:row;flex-wrap:wrap}}.about-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:20px;align-items:start}.about-side{position:sticky;top:76px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 12px}.about-side-title{font-size:12px;color:var(--muted);padding:0 8px 8px;border-bottom:1px solid var(--line);margin-bottom:8px}.about-side-nav{display:flex;flex-direction:column;gap:2px}.about-side-nav a{padding:7px 10px;border-radius:8px;color:var(--text);font-size:14px}.about-side-nav a:hover{background:var(--accent-soft);color:var(--accent);text-decoration:none}.about-side-nav a.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.about-content>.about-section:last-child,.about-content>.about-hero:last-child{margin-bottom:0}.about-hero,.about-section{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px;margin-bottom:18px}.about-hero h1{margin:0 0 8px;font-size:24px}.about-hero p{margin:0;font-size:14px;line-height:1.9;color:var(--text)}.about-index{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 8px}.about-index a{padding:5px 12px;border:1px solid var(--line);border-radius:999px;font-size:13px;background:var(--surface-2)}.about-updated{margin:6px 0 0;font-size:12px;color:var(--muted)}.about-section{scroll-margin-top:80px}.about-section h2{margin:0 0 12px;font-size:20px;padding-bottom:8px;border-bottom:1px solid var(--line)}.about-section h3{margin:18px 0 8px;font-size:15px}.about-section p,.about-section li{font-size:14px;line-height:1.9}.about-section ul{margin:0;padding-left:20px}.about-section li+li{margin-top:4px}.about-section code{padding:1px 5px;background:var(--surface-2);border-radius:4px;font-size:13px}.about-note{color:var(--muted);font-size:13px!important;background:var(--surface-2);border-left:3px solid var(--line);border-radius:0 8px 8px 0;padding:8px 12px;margin:10px 0 0}.about-quote{margin:14px 0;padding:10px 16px;border-left:3px solid var(--accent);background:var(--surface-2);border-radius:0 8px 8px 0;font-size:14px;line-height:1.9}.about-quote footer{margin-top:6px;font-size:13px;color:var(--muted);text-align:right}.about-index a{text-decoration:none}.feedback-body{display:flex;flex-direction:column;gap:12px}.feedback-thanks{margin:0;font-size:15px}.feedback-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.feedback-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:12px 14px}.feedback-meta{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted)}.feedback-contact{font-size:12px}.feedback-content{margin:8px 0 10px;font-size:14px;line-height:1.8;white-space:pre-wrap}.user-book-modal{max-width:760px}.user-book-body{display:flex;flex-direction:column;gap:12px}.series-field{position:relative}.my-submissions{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-2);padding:10px 12px}.my-submissions-title,.sub-block-title{font-size:13px;font-weight:600;color:var(--muted)}.my-submissions ul{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.my-submissions li{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px}.submission-title{font-weight:600}.submission-link{font-size:12px}.submission-edition{border-top:1px dashed var(--line);padding-top:10px;margin-top:10px}.submission-cover-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.submission-stories{margin:6px 0 0;padding-left:20px;font-size:14px}.submission-editions-view{margin-bottom:14px}.submission-edition-view{display:flex;gap:12px;margin-top:10px;font-size:14px}.submission-edition-view img{width:72px;height:96px;object-fit:cover;border-radius:6px;border:1px solid var(--line)}.submission-line{font-size:13px;color:var(--muted)}.section-sub{margin:-6px 0 14px;color:var(--muted);font-size:13px}.published-story-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.published-story-card{display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.published-story-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.published-story-badge{background:var(--accent);color:#fff;font-size:11px;padding:2px 8px;border-radius:999px;white-space:nowrap}.published-story-title{display:inline-flex;align-items:center;gap:4px;font-weight:600;font-size:15px;color:var(--text)}.published-story-title:hover{color:var(--accent)}.published-story-author{display:flex;align-items:center;gap:6px;font-size:13px}.published-story-author-link{display:inline-flex;align-items:center;gap:6px;color:var(--text)}.published-story-author-name{color:var(--muted)}.published-story-from{margin:0;font-size:12px;color:var(--muted);display:flex;align-items:center;flex-wrap:wrap;gap:4px}.published-story-club{color:var(--accent)}.my-story-tile{display:flex;flex-direction:column;gap:10px}.my-story-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.my-story-hint{color:var(--muted);font-size:12px;margin-right:auto}.published-story-excerpt{margin:0;color:var(--text);font-size:13px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.story-editor-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:12px;font-size:13px;color:var(--muted)}.story-editor-meta strong{color:var(--text);font-size:15px}.story-editor-state{border:1px solid var(--line);border-radius:999px;padding:1px 10px;font-size:12px}.story-editor-state.on{border-color:transparent;background:var(--accent);color:#fff}.story-hero-actions{margin-top:12px;display:flex;gap:8px}.story-body{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 24px;line-height:1.85;font-size:15px}.account-panel-tip{margin:0 0 14px;color:var(--muted);font-size:13px;line-height:1.6}.story-published-link{display:inline-flex;vertical-align:middle;margin-left:6px;color:var(--accent)}.story-owner-actions{display:inline-flex;align-items:center;gap:8px;font-size:12px}.story-owner-actions .btn{font-size:13px;line-height:1.4;padding:5px 12px}.story-editor-import{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px dashed var(--line)}.story-editor-import .btn{display:inline-flex;align-items:center;gap:6px;font-size:13px}.story-editor-import-hint{color:var(--muted);font-size:12px}.story-published-hint{color:#2e8b57}.story-page{display:flex;flex-direction:column;gap:10px}.story-hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px 22px}.story-hero-badge{display:inline-block;background:var(--accent);color:#fff;font-size:11px;padding:2px 10px;border-radius:999px;margin-bottom:8px}.story-hero h1{display:flex;align-items:center;gap:8px;margin:4px 0;font-size:24px}.story-hero h1 svg{color:var(--accent)}.story-hero-original{margin:0 0 8px;color:var(--muted);font-size:14px}.story-hero-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px;color:var(--muted)}.story-hero-author{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-weight:600}.story-hero-author-name{font-weight:600;color:var(--text)}.story-hero-date{margin:10px 0 0;font-size:12px;color:var(--muted)}
