@charset "UTF-8";
.admin-save-bar{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:15px;background:var(--paper);border:2px solid var(--ink);padding:12px;margin:14px 0;font-size:12px}.admin-save-status{display:block;font-size:11px;line-height:1.6;min-height:18px;margin-top:4px;overflow-wrap:anywhere}.admin-book.has-draft{border-left:4px solid var(--red,#ed002c);padding-left:10px}.admin-price-label{min-width:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.toolbar .search-shell{z-index:8}
#owner-stage{z-index:auto}.top-board{z-index:4;pointer-events:none}#owner-stage .dog-bubble{z-index:7}#owner-stage .owner-caption{z-index:7}.dog-paws{position:absolute;bottom:-5px;left:7px;width:195px;height:185px;z-index:6;pointer-events:none}.dog-paws svg{width:100%;height:100%;overflow:visible}.owner-stage:has(.dog-button.greeting) .dog-paws .dog-paw-right{animation:paw-wave .7s var(--ease)}
@media(max-width:950px){.owner-stage .dog-paws{width:175px;height:167px;bottom:-4px;left:0}}
@media(max-width:700px){.owner-stage .dog-paws{width:125px;height:123px;bottom:-6px;left:-6px}}
#receipt-dialog{padding-top:0}#receipt-dialog .receipt-head{display:block;position:relative;margin:0 -32px;padding:25px 30px 27px;background:var(--red);border-bottom:6px solid var(--ink);min-height:225px;isolation:isolate}#receipt-dialog .receipt-head:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:20px;background:var(--paper);clip-path:polygon(0 100%,100% 0,100% 100%);z-index:-1}#receipt-dialog .receipt-head h2{color:white;font-size:21px;margin:0 0 13px}.receipt-number-panel{position:relative;width:68%;background:white;padding:12px 17px 8px;box-shadow:5px 5px 0 var(--ink);z-index:1}.receipt-number-panel>span{font-size:10px;color:var(--gray)}#receipt-code{display:block;font:900 72px/1.1 Consolas,"Cascadia Mono",monospace;letter-spacing:2px;color:var(--ink)}.copy-order-code{font-size:10px;padding:7px 0 0;text-decoration:underline;text-underline-offset:3px}.receipt-dog{position:absolute;right:25px;top:31px;width:115px;height:125px;object-fit:contain}#receipt-dialog .receipt-stamp{position:absolute;right:25px;top:150px;margin:0;color:white;border:2px solid white;background:var(--ink);font-size:14px;padding:6px 11px}#receipt-dialog .summary-total{background:var(--ink);color:white;padding:19px 18px;margin:22px -9px 15px;border-left:6px solid var(--red)}#receipt-dialog .summary-total strong{font-size:36px}#receipt-dialog .cart-item{border-bottom:1px solid #c5beb0}#receipt-dialog .receipt-meta{border-bottom:3px solid var(--ink);padding-bottom:15px;margin-top:22px}#receipt-dialog .cart-disclaimer{line-height:1.8}
@media(max-width:700px){#receipt-dialog .receipt-head{margin:0 -20px;padding:22px 20px 27px;min-height:211px}.receipt-number-panel{width:70%;padding:12px 12px 8px}#receipt-code{font-size:clamp(42px,12vw,65px);letter-spacing:1px}.receipt-dog{width:85px;right:10px;top:39px}#receipt-dialog .receipt-stamp{right:13px;top:142px;font-size:11px;padding:6px 8px}#receipt-dialog .receipt-head h2{font-size:18px}#receipt-dialog .summary-total strong{font-size:29px}}
.admin-order strong.order-short-code{font:900 30px Consolas,"Cascadia Mono",monospace;letter-spacing:2px}
.search-shell{position:relative;flex:1;min-width:80px;z-index:5}.search-suggestions{position:absolute;left:0;right:-3px;top:calc(100% + 8px);background:var(--paper);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);max-height:350px;overflow:auto}.search-option{display:flex;align-items:center;gap:12px;padding:13px 15px;cursor:pointer;border-bottom:1px solid var(--line);font-size:12px}.search-option:hover,.search-option[aria-selected="true"]{background:var(--ink);color:white}.suggestion-kind{font-size:9px;background:var(--red);color:white;padding:3px 5px;min-width:28px;text-align:center}.suggestion-name{min-width:0;flex:1;overflow-wrap:anywhere}.suggestion-name small{display:inline-block;color:#a58e7a;font-size:9px;margin-left:8px}.suggestion-count{font-size:10px;color:#8d877c;white-space:nowrap}.suggestion-arrow{color:var(--red);font-weight:900;font-size:17px}.suggestion-help{font-size:9px;color:var(--gray);padding:10px 15px;background:#eeece4}.owner-admin-entry{justify-self:end;color:var(--gray)}
@media(max-width:700px){.search-shell{min-width:40px}.search-suggestions{min-width:min(300px,calc(100vw - 50px));max-height:320px}.search-option{padding:12px 10px;gap:8px;font-size:11px}.suggestion-help{font-size:8px;padding:9px 10px}}
#detail-dialog[open]{animation:none}#detail-dialog[open] .detail-copy{animation:panel-enter .22s var(--ease)}
#owner-dialog{position:fixed;inset:190px max(35px,calc((100vw - 1650px)/2)) auto auto;margin:0}
@media(max-width:700px){#owner-dialog{inset:148px 5vw auto auto;max-height:calc(100dvh - 165px)}}
@media(max-width:700px){#bookcase.bookcase{isolation:auto}#bookcase.bookcase:before{display:none}}
.dog-blink-overlay{opacity:0;animation:raster-blink 7.3s infinite}@keyframes raster-blink{0%,41%,44%,72%,75%,100%{opacity:0}42%,43%,73%,74%{opacity:1}}
.motion-paused .dog-blink-overlay{animation:none!important;opacity:0!important}.tab-hidden .dog-blink-overlay{animation-play-state:paused!important}
body.has-dialog{overflow:hidden}.tab-hidden .dog-head,.tab-hidden .dog-eye,.tab-hidden .dog-ear{animation-play-state:paused!important}
.session-note{max-width:calc(100% - 250px)}#session-note{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#sound-toggle{font-size:10px;padding:3px 8px;border-left:1px solid #bdb8ae;white-space:nowrap;color:var(--ink)}#sound-toggle[aria-pressed="true"]{color:var(--red)}.volume-control{display:flex;gap:5px;align-items:center;white-space:nowrap;font-size:9px}.volume-control input{width:55px;height:12px;accent-color:var(--red)}#shelves{scroll-margin-top:184px}
@media(max-width:700px){.session-note{max-width:calc(100% - 125px)}#sound-toggle{font-size:8px;padding:2px 4px}.volume-control span{display:none}.volume-control input{width:36px}#shelves{scroll-margin-top:139px}}
:root{--paper:#f7f6f0;--ink:#111;--red:#e60020;--gray:#77736f;--line:#d8d5cc;--side:225px;--board:14px;--ease:cubic-bezier(.2,.85,.25,1);font-family:"Microsoft YaHei","Yu Gothic",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--paper);overflow-x:hidden}button,input{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed}a{color:inherit}button,input{border-radius:0}button{border:0;background:none}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:4px}button:hover{--hover:1}input:focus{outline-color:var(--red)}[hidden]{display:none!important}.icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon svg{height:100%;width:100%;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.muted{color:var(--gray)}.red-dot{color:var(--red)}.text-button{padding:5px 0;font-size:12px;text-underline-offset:4px}.text-button:hover{text-decoration:underline}.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:white;padding:15px}.skip-link:focus{top:10px}.corner-ink{position:absolute;inset:0 0 auto;height:330px;overflow:hidden;pointer-events:none}.corner-ink:before{content:"";position:absolute;right:-65px;top:-150px;width:310px;height:330px;background:var(--red);transform:rotate(24deg)}.corner-ink:after{content:"";position:absolute;left:-80px;top:-130px;width:180px;height:280px;background:var(--ink);transform:rotate(32deg);border-right:15px solid var(--red)}
.shop-shell{max-width:1720px;margin:auto;padding:0 35px;position:relative}.masthead{height:184px;position:sticky;top:0;z-index:20;background:var(--paper)}.session-note{position:absolute;top:19px;left:4px;font-size:10px;letter-spacing:.8px;color:#6b6660;display:flex;align-items:center;gap:8px}.live-dot{width:5px;height:5px;border-radius:50%;background:var(--red)}.toolbar{height:100%;padding:65px 240px 36px 14px;display:flex;align-items:center;gap:30px}.search-box{height:53px;display:flex;align-items:center;gap:15px;border:3px solid var(--ink);background:white;padding:0 16px;flex:1;min-width:80px;box-shadow:3px 3px 0 var(--ink)}.search-box .icon{width:26px;height:26px}.search-box input{width:100%;min-width:20px;border:0;background:none;padding:10px 0;font-size:16px;outline:0}.search-box:focus-within{border-color:var(--red);box-shadow:3px 3px 0 var(--red)}.search-box input::placeholder{color:#8e8981}.search-box kbd{font:12px monospace;color:#a39d94;border:1px solid #d7d1c8;padding:1px 6px}.cart-launch{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700;white-space:nowrap;padding:10px 4px}.cart-launch .icon{width:33px;height:33px}.cart-count{display:grid;place-items:center;color:white;background:var(--red);min-width:26px;height:26px;padding:0 6px;transform:rotate(-7deg);font-variant-numeric:tabular-nums}.cart-launch:hover .icon{transform:rotate(-8deg)}.filter-launch{display:none}.top-board{position:absolute;bottom:0;left:0;right:0;height:18px;background:var(--ink);border:3px solid var(--ink);box-shadow:inset 0 3px 0 #fff,inset 0 6px 0 #9c9991}.owner-stage{position:absolute;right:16px;bottom:0;width:210px;height:183px;z-index:2}.dog-button{position:absolute;bottom:-5px;left:7px;width:195px;height:185px;padding:0;z-index:3;transform-origin:bottom center}.dog-button svg{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(2px 2px 0 var(--paper))}.dog-button:focus-visible{outline:2px dashed var(--red);outline-offset:0}.owner-caption{position:absolute;right:0;bottom:38px;font-size:10px;font-weight:700;transform:rotate(-9deg);background:var(--paper);padding:3px 6px;z-index:4;pointer-events:none;opacity:0;transition:opacity .15s}.dog-button:hover~.owner-caption,.dog-button:focus-visible~.owner-caption{opacity:1}.owner-caption span{color:var(--red)}.dog-bubble{position:absolute;right:178px;top:8px;min-width:125px;max-width:230px;padding:12px 15px;background:var(--ink);color:white;font-size:12px;line-height:1.6;box-shadow:4px 4px 0 var(--red);z-index:4;opacity:0;transform:translateY(5px);pointer-events:none;transition:opacity .15s,transform .15s}.dog-bubble.visible{opacity:1;transform:translateY(0)}.dog-bubble:after{content:"";position:absolute;right:-10px;bottom:10px;border-left:12px solid var(--ink);border-top:9px solid transparent;border-bottom:3px solid transparent}
.dog-head{transform-origin:120px 180px;animation:breathe 5.6s ease-in-out infinite}.dog-eye{transform-box:fill-box;transform-origin:center 45%;animation:blink 7.3s infinite}.dog-eye-right{animation-delay:.04s}.dog-pupil{transform:translate(var(--gaze-x,0px),var(--gaze-y,0px));transition:transform .18s ease-out}.dog-ear-left{transform-origin:65px 30px;animation:ear-rest 13s ease-in-out infinite}.dog-ear-right{transform-origin:184px 34px;animation:ear-rest 17s ease-in-out infinite reverse}.dog-paw-right{transform-origin:183px 190px}.dog-paw-left{transform-origin:58px 190px}.dog-button.attentive .dog-head{animation:none;transform:rotate(-3deg) translateY(-2px)}.dog-button.greeting .dog-paw-right{animation:paw-wave .7s var(--ease)}.dog-button.nod .dog-head{animation:nod .7s var(--ease)}.dog-button.checking .dog-head{animation:checking 1s var(--ease)}.dog-button.greeting .dog-head{animation:nod .7s var(--ease)}
@keyframes breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(1.5px) rotate(.4deg)}}@keyframes blink{0%,41%,44%,72%,75%,100%{transform:scaleY(1)}42%,43%,73%,74%{transform:scaleY(.07)}}@keyframes ear-rest{0%,68%,80%,100%{transform:rotate(0)}72%{transform:rotate(3deg)}76%{transform:rotate(-1deg)}}@keyframes paw-wave{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-19px) rotate(-17deg)}65%{transform:translateY(-18px) rotate(9deg)}}@keyframes nod{0%,100%{transform:translateY(0) rotate(0)}40%{transform:translateY(5px) rotate(3deg)}65%{transform:translateY(-2px)}}@keyframes checking{0%,100%{transform:rotate(0)}35%,65%{transform:rotate(-6deg) translateY(4px)}}
.bookcase{display:grid;grid-template-columns:var(--side) minmax(0,1fr);border:var(--board) solid var(--ink);border-top:0;min-height:620px;background:var(--paper);transition:grid-template-columns .25s var(--ease);position:relative;isolation:isolate}.bookcase:before{content:"";position:absolute;top:0;left:-14px;bottom:0;width:4px;background:#55514c;z-index:-1}.directory{border-right:10px solid var(--ink);position:relative;padding-bottom:50px;background:#eeece4;min-width:0;overflow:hidden}.directory-toggle{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:white;width:100%;min-height:44px;font-size:12px;font-weight:700;white-space:nowrap;border-bottom:3px solid var(--red)}.directory-toggle .icon{width:17px;height:17px}.directory-toggle:hover{background:var(--red)}.facets{padding:20px 19px}.facet{margin:0 0 26px}.facet summary{font-size:15px;display:flex;align-items:center;justify-content:space-between;font-weight:900;cursor:pointer;list-style:none;border-bottom:2px solid var(--ink);padding:0 0 9px;margin-bottom:12px}.facet summary::-webkit-details-marker{display:none}.facet summary:after{content:"−";font-size:18px;font-weight:400}.facet:not([open]) summary:after{content:"+"}.facet-options{display:grid;gap:3px}.facet-option{position:relative;display:flex;align-items:flex-start;gap:8px;font-size:12px;padding:7px 4px;line-height:1.4;cursor:pointer;overflow-wrap:anywhere}.facet-option input,.stock-switch input{accent-color:var(--red);width:14px;height:14px;margin:1px 0 0;flex-shrink:0}.facet-option:has(input:checked){color:white;background:var(--red);box-shadow:-7px 0 0 var(--red),5px 0 0 var(--red);transform:skewY(-2deg)}.facet-option:has(input:checked) span{transform:skewY(2deg)}.facet-option:hover:not(:has(input:checked)){background:#dfdcd2}.facet-option .facet-name{flex:1}.facet-option .facet-count{color:#918b80;font-size:10px;margin-left:auto}.facet-option:has(input:checked) .facet-count{color:white}.facet-more{font-size:11px;text-align:left;padding:10px 4px;color:var(--gray)}.facet-more:hover{color:var(--red)}.directory-foot{padding:0 20px;display:grid;gap:8px;font-size:10px;color:var(--gray)}.directory-foot .text-button{text-align:left;color:var(--ink)}.collection{min-width:0;outline:none}.collection-bar{display:flex;align-items:center;gap:15px;min-height:65px;padding:13px 25px;border-bottom:1px solid var(--line)}.result-caption{display:flex;gap:6px;align-items:baseline;font-size:11px;white-space:nowrap}.result-caption #result-count{font-size:24px;font-weight:900;letter-spacing:-1px;font-variant-numeric:tabular-nums}.divider{color:var(--red);font-size:18px}.active-filters{display:flex;gap:7px;align-items:center;flex-wrap:wrap;flex:1}.filter-chip{padding:5px 8px;font-size:10px;background:var(--ink);color:white}.filter-chip:hover{background:var(--red)}.filter-chip span{margin-left:8px;color:#c5c0b7}.stock-switch{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:11px;white-space:nowrap;color:var(--gray)}.book-grid{min-height:400px;position:relative}.shelf-row{display:grid;grid-template-columns:repeat(var(--columns,5),minmax(0,1fr));gap:0;border-bottom:17px solid var(--red);box-shadow:0 6px 0 var(--ink);padding:25px 17px 0;margin-bottom:6px;position:relative}.shelf-row:after{content:"";position:absolute;bottom:-17px;left:0;right:0;height:3px;background:#980216}.book{padding:0 12px;min-width:0;position:relative;display:flex;flex-direction:column;align-items:stretch}.cover-button{width:100%;padding:0;display:block;position:relative;height:clamp(180px,18.5vw,290px);z-index:1;outline-offset:7px!important;isolation:isolate}.cover-stack{position:absolute;inset:0 5px 0 0;transform:translateY(0);transition:transform .22s var(--ease),filter .22s;transform-origin:bottom center;box-shadow:3px 0 0 #fff,4px 0 0 var(--ink),6px 0 0 #d3cfc3,7px 0 0 var(--ink);border:2px solid var(--ink);background:#ebe7dc}.cover-stack img{width:100%;height:100%;object-fit:contain;display:block;background:#ece8de;user-select:none}.cover-button:hover .cover-stack,.cover-button:focus-visible .cover-stack{transform:translateY(-9px) rotate(-1.5deg);filter:drop-shadow(3px 7px 0 #1113)}.cover-button:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:4px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .15s}.cover-button:hover:after,.cover-button:focus-visible:after{transform:scaleX(1)}.book-status-ribbon{position:absolute;right:3px;top:12px;background:var(--ink);color:white;font-size:10px;font-weight:700;padding:6px 12px;transform:rotate(5deg);z-index:2;box-shadow:3px 3px 0 #fff}.book[data-status="mine"] .book-status-ribbon{background:var(--red)}.book[data-status="sold"] .cover-stack{filter:grayscale(.8);opacity:.65}.book[data-status="held"] .cover-stack{filter:saturate(.5)}.book-info{padding:14px 0 12px;min-height:112px;display:flex;flex-direction:column;border-top:3px solid var(--ink);position:relative;margin:0 -4px}.book-title{font-size:13px;line-height:1.65;font-weight:700;text-align:left;padding:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:43px}.book-title:hover{color:var(--red)}.book-author{font-size:10px;color:var(--gray);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 0 8px}.book-bottom{display:flex;align-items:center;gap:6px;margin-top:auto;min-height:31px}.book-price{font-size:19px;font-weight:900;letter-spacing:-.7px;font-variant-numeric:tabular-nums;white-space:nowrap}.book-price small{font-size:12px;margin-right:1px}.price-demo{font-size:8px;color:var(--gray);margin-top:1px}.price-wrap{display:grid}.stock-label{font-size:10px;color:var(--gray);margin-left:auto;white-space:nowrap}.add-button{height:30px;min-width:30px;display:grid;place-items:center;border:1.5px solid var(--ink);margin-left:3px;background:var(--paper);transition:background .12s,color .12s,transform .12s}.add-button .icon{width:18px;height:18px}.add-button:hover:not(:disabled){background:var(--red);color:white;border-color:var(--red);transform:translateY(-2px)}.add-button.in-cart{background:var(--red);color:white;border-color:var(--red)}.add-button:disabled{border-color:#bbb6ab;color:#aaa499;background:#e7e3d9}.add-button.busy{opacity:.55}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;min-height:80px;font-size:12px}.pagination button{border:1px solid var(--ink);width:30px;height:30px}.pagination button:disabled{opacity:.2}.pagination button:not(:disabled):hover{background:var(--ink);color:white}.pagination .page-index{color:var(--gray);font-size:11px}.loading-state,.empty-state{display:flex;min-height:400px;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:14px;color:var(--gray);padding:30px}.empty-state strong{font-size:24px;color:var(--ink)}.empty-state p{font-size:13px;margin:0;line-height:1.8}.empty-state .action-button{margin-top:12px}.loading-lines{display:block;width:35px;height:35px;border:4px solid var(--line);border-top-color:var(--red);animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.shop-footer{display:flex;justify-content:space-between;align-items:center;padding:23px 5px 32px;font-size:11px;color:var(--gray);gap:15px}.shop-footer strong{font-weight:900;color:var(--ink);font-size:14px}.footer-slash{color:var(--red);padding:0 10px}.footer-actions{display:flex;gap:20px}.footer-actions .text-button{font-size:10px}.bookcase.collapsed{grid-template-columns:42px minmax(0,1fr)}.collapsed .directory{border-right-width:6px}.collapsed .facets,.collapsed .directory-foot{display:none}.collapsed .directory-toggle{height:100%;min-height:160px;justify-content:flex-start;flex-direction:column;padding:18px 0;background:var(--ink);border:0;gap:14px}.collapsed .directory-toggle>span:last-child{writing-mode:vertical-rl;letter-spacing:4px}.collapsed .directory-toggle .icon{transform:rotate(180deg)}.toast{position:fixed;left:50%;bottom:26px;z-index:100;transform:translate(-50%,15px);background:var(--ink);border-left:5px solid var(--red);color:white;padding:14px 24px;font-size:12px;opacity:0;pointer-events:none;transition:opacity .15s,transform .15s;max-width:90vw;box-shadow:3px 3px 0 #fff}.toast.visible{opacity:1;transform:translate(-50%,0)}.mobile-scrim{display:none}
dialog{border:3px solid var(--ink);background:var(--paper);padding:0;color:var(--ink);max-height:90dvh;max-width:94vw;box-shadow:8px 8px 0 var(--ink);overflow:auto}dialog::backdrop{background:#1119;backdrop-filter:grayscale(.4)}dialog[open]{animation:panel-enter .28s var(--ease)}@keyframes panel-enter{from{opacity:0;transform:translate(20px,5px)}to{opacity:1;transform:translate(0,0)}}.close-button{width:37px;height:37px;padding:8px;background:var(--ink);color:white;display:flex;align-items:center;justify-content:center;flex-shrink:0}.close-button:hover{background:var(--red)}dialog>.close-button{position:absolute;right:0;top:0;z-index:4}.detail-dialog{width:860px;overflow:visible}.detail-layout{display:grid;grid-template-columns:42% 1fr;min-height:470px}.detail-cover{padding:30px;background:#e4e0d5;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.detail-cover:before{content:"";position:absolute;left:-30px;bottom:-65px;width:120%;height:150px;background:var(--red);transform:rotate(-15deg)}.detail-cover img{position:relative;width:100%;height:375px;object-fit:contain;filter:drop-shadow(8px 8px 0 #1113)}.detail-copy{padding:45px 36px 30px;display:flex;flex-direction:column;align-items:flex-start}.detail-ip{font-size:11px;color:var(--red);font-weight:700;margin-bottom:12px}.detail-copy h2{font-size:25px;line-height:1.6;margin:0 0 13px;overflow-wrap:anywhere}.detail-author{font-size:13px;color:var(--gray);padding:0;border-bottom:1px solid #b7b0a4}.detail-tags{display:flex;gap:6px;margin-top:22px}.detail-tags button{padding:4px 8px;border:1px solid var(--ink);font-size:10px}.detail-price{font-weight:900;font-size:37px;margin:30px 0 5px;font-variant-numeric:tabular-nums}.detail-price small{font-size:22px}.detail-stock{font-size:11px;color:var(--gray);margin-bottom:22px}.detail-copy .action-button{width:100%;margin-top:auto}.detail-footnote{font-size:10px;color:var(--gray);line-height:1.8;margin:14px 0 0}.action-button{display:flex;justify-content:center;align-items:center;gap:16px;background:var(--red);color:white;font-weight:700;font-size:13px;min-height:45px;padding:12px 22px;box-shadow:3px 3px 0 var(--ink);transition:transform .12s,box-shadow .12s}.action-button:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}.action-button:active:not(:disabled){transform:translate(2px,2px);box-shadow:0 0 0}.action-button:disabled{background:#b2ada2;color:#f7f6f0;box-shadow:3px 3px 0 #827c72}.action-button.secondary{color:var(--ink);background:white;border:1px solid var(--ink)}.action-button.dark{background:var(--ink)}.side-dialog{position:fixed;inset:0 0 0 auto;margin:0;width:510px;max-height:100dvh;height:100dvh;border-width:0 0 0 6px;box-shadow:none;max-width:100vw}.panel-header{display:flex;justify-content:space-between;align-items:center;border-bottom:4px solid var(--ink);padding:29px 30px 22px;gap:20px}.panel-header h2{font-size:29px;margin:6px 0 0;font-weight:900}.panel-eyebrow{font-size:10px;color:var(--gray)}.panel-content{padding:22px 28px}.cart-item{display:grid;grid-template-columns:61px 1fr auto;gap:14px;padding:18px 0;border-bottom:1px solid var(--line);align-items:center}.cart-item img{width:61px;height:86px;object-fit:contain;background:#e7e3d9;border:1px solid var(--ink)}.cart-item h3{font-size:12px;line-height:1.6;margin:0 0 6px}.cart-item .item-sub{font-size:10px;color:var(--gray);margin:5px 0}.cart-item .item-price{font-size:16px;font-weight:900}.remove-button{font-size:10px;text-decoration:underline;text-underline-offset:3px;color:var(--gray);padding:8px 0}.cart-summary{margin-top:26px}.summary-line{display:flex;justify-content:space-between;gap:15px;font-size:12px;margin:13px 0}.summary-total{font-size:16px;font-weight:700;border-top:2px solid var(--ink);padding-top:18px;margin-top:18px;align-items:baseline}.summary-total strong{font-size:31px;letter-spacing:-1px}.shipping-qualify{font-size:11px;padding:12px 15px;background:#e9e5da;border-left:3px solid var(--red);line-height:1.7;margin:20px 0}.cart-summary>.action-button{width:100%;margin-top:25px}.cart-disclaimer{font-size:10px;color:var(--gray);line-height:1.9;margin-top:17px}.empty-bag{min-height:45dvh}.empty-bag .icon{width:56px;height:56px;stroke-width:1}.empty-bag strong{font-size:22px}.owner-dialog{width:480px;padding:40px 35px 32px;overflow:visible}.owner-dialog:before{content:"";position:absolute;top:-19px;right:28px;width:26px;height:26px;background:var(--paper);border-top:3px solid var(--ink);border-left:3px solid var(--ink);transform:rotate(45deg)}.speech-kicker{display:inline-block;padding:5px 10px;color:white;background:var(--ink);font-size:10px;transform:rotate(-3deg)}.owner-dialog h2{font-size:25px;margin:24px 0 13px}.owner-dialog>p{font-size:12px;color:var(--gray);line-height:1.9}.owner-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.contact-block{border-top:2px solid var(--ink);padding-top:19px;margin-top:25px;display:grid;gap:15px}.contact-line{display:flex;justify-content:space-between;align-items:center;font-size:12px;gap:15px;overflow-wrap:anywhere}.contact-line .contact-label{font-size:10px;color:var(--gray);width:40px;flex-shrink:0}.contact-line .contact-value{flex:1}.contact-line button{font-size:10px;border-bottom:1px solid var(--ink);white-space:nowrap}.contact-empty{font-size:11px;color:var(--gray);line-height:1.9}.receipt-dialog{width:630px;padding:32px}.receipt-head{display:flex;justify-content:space-between;align-items:flex-start;padding:0 26px 20px 0;border-bottom:4px solid var(--ink)}.receipt-head h2{font-size:28px;margin:0 0 7px}.receipt-id{font-size:11px;letter-spacing:1px;color:var(--gray);overflow-wrap:anywhere}.receipt-stamp{color:var(--red);border:3px solid var(--red);padding:7px 10px;font-size:15px;font-weight:900;transform:rotate(-8deg);white-space:nowrap;margin-top:20px}.receipt-meta{font-size:10px;line-height:1.9;color:var(--gray);margin:14px 0}.receipt-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0 4px}.receipt-demo-note{font-size:11px;color:var(--red);line-height:1.8;margin:12px 0}.login-dialog{width:430px;padding:38px 34px}.login-dialog h2{font-size:26px;margin-top:26px}.login-dialog p{font-size:12px;line-height:1.8}.field-label{display:grid;gap:9px;font-size:12px;margin:23px 0 12px}.field-label input{border:2px solid var(--ink);background:white;min-width:0;width:100%;padding:12px;font-size:14px}.form-error{color:var(--red);min-height:20px}.login-dialog .action-button{width:100%;margin-top:15px}.login-note{color:var(--gray);font-size:10px!important;margin-top:25px}.admin-dialog{width:1100px;max-height:92dvh;min-height:70dvh}.admin-header-actions{display:flex;gap:20px;align-items:center}.admin-tabs{display:flex;border-bottom:1px solid var(--line);padding:0 28px;gap:25px}.admin-tabs button{font-size:12px;padding:18px 3px;border-bottom:3px solid transparent}.admin-tabs button.active{border-bottom-color:var(--red);font-weight:700}.admin-body{padding:22px 29px}.admin-intro{font-size:11px;line-height:1.9;color:var(--gray);margin:0 0 17px}.admin-tools{display:flex;gap:12px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.admin-tools input,.admin-tools select{font:inherit;font-size:12px;padding:10px;border:1px solid var(--ink);background:white}.admin-tools input{flex:1;min-width:130px}.admin-tools .admin-count{font-size:11px;color:var(--gray)}.admin-books{display:grid;gap:0}.admin-book{display:grid;grid-template-columns:47px minmax(140px,1fr) 100px 70px 70px 72px;gap:15px;align-items:center;border-top:1px solid var(--line);padding:14px 0;font-size:11px}.admin-book img{width:47px;height:64px;object-fit:contain}.no-cover{width:47px;height:64px;background:#e7e3d9;display:grid;place-items:center;font-size:9px;color:var(--gray);text-align:center}.admin-book-title{font-size:12px;font-weight:700;line-height:1.6;margin-bottom:5px}.admin-book-sub{font-size:10px;color:var(--gray);line-height:1.6}.admin-price-label{display:grid;gap:4px;color:var(--gray);font-size:9px}.admin-price-label input{border:1px solid var(--ink);padding:8px 5px;width:100%;font-size:12px;background:white;color:var(--ink)}.admin-check{display:flex;align-items:center;gap:4px;font-size:10px;white-space:nowrap}.admin-check input{accent-color:var(--red)}.admin-save{background:var(--ink);color:white;padding:10px 12px;font-size:11px}.admin-save:hover{background:var(--red)}.settings-form{max-width:520px}.settings-form p{font-size:11px;color:var(--gray);line-height:1.8}.admin-order{border-bottom:1px solid var(--line);padding:18px 0;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center}.admin-order strong{font-size:13px}.admin-order p{font-size:11px;line-height:1.8;color:var(--gray);max-width:600px}.admin-order .action-button{font-size:11px;min-height:35px}.admin-order-status{font-size:11px;color:var(--red)}.admin-sync{font-size:10px;border-top:1px solid var(--line);padding-top:18px;line-height:1.8;margin-top:20px;color:var(--gray)}
.motion-paused .dog-head,.motion-paused .dog-eye,.motion-paused .dog-ear,.motion-paused .dog-paw{animation:none!important;transform:none!important}.motion-paused .cover-stack,.motion-paused .bookcase,.motion-paused .dog-pupil{transition:none!important}.motion-paused dialog[open]{animation:none}.motion-paused .dog-pupil{transform:none!important}
@media(min-width:1600px){.toolbar{padding-right:270px}.owner-stage{right:25px}.book-title{font-size:14px}.book-author{font-size:11px}.book-info{min-height:120px}}
@media(max-width:1250px){:root{--side:200px}.shop-shell{padding:0 24px}.toolbar{gap:20px;padding-left:8px;padding-right:230px}.cover-button{height:clamp(210px,24vw,290px)}.book{padding:0 11px}.shelf-row{padding-left:13px;padding-right:13px}.facets{padding:19px 15px}.collection-bar{padding:13px 20px}.book-info{min-height:116px}}
@media(max-width:950px){:root{--side:175px}.shop-shell{padding:0 18px}.toolbar{padding-right:190px;gap:14px}.owner-stage{width:175px;right:3px}.dog-button{width:175px;height:167px;bottom:-4px;left:0}.search-box{padding:0 12px;gap:10px}.search-box input{font-size:13px}.cart-word{display:none}.cart-launch{gap:6px}.facets{padding:18px 12px}.facet-option{font-size:11px}.cover-button{height:clamp(200px,29vw,270px)}.collection-bar{gap:8px;padding:12px 14px}.stock-switch{font-size:10px}.book{padding:0 10px}.shelf-row{padding:24px 11px 0}.book-title{font-size:12px}.book-price{font-size:18px}.book-bottom{gap:4px}.stock-label{font-size:9px}.book-info{min-height:115px}.add-button{min-width:27px;height:27px}.active-filters{gap:4px}.filter-chip{font-size:9px}}
@media(max-width:700px){:root{--side:0px;--board:8px}.shop-shell{padding:0 10px}.masthead{height:139px}.session-note{font-size:8px;top:12px;letter-spacing:0;left:3px}.toolbar{padding:43px 115px 27px 0;gap:8px;align-items:center}.search-box{height:42px;border-width:2px;box-shadow:2px 2px 0 var(--ink);gap:7px;padding:0 9px}.search-box .icon{width:17px;height:17px}.search-box input{font-size:11px;padding:8px 0}.search-box kbd{display:none}.filter-launch{display:flex;padding:5px 1px;flex-shrink:0}.filter-launch .icon{width:21px;height:21px}.cart-launch{position:absolute;top:17px;right:120px;padding:0;gap:4px;font-size:10px}.cart-launch .icon{width:21px;height:21px}.cart-count{min-width:18px;height:18px;font-size:10px;padding:0 4px}.owner-stage{height:129px;width:118px;right:0}.dog-button{width:125px;height:123px;bottom:-6px;left:-6px}.top-board{height:13px;border-width:2px;box-shadow:inset 0 2px 0 #fff,inset 0 4px 0 #9c9991}.owner-caption{display:none}.dog-bubble{right:104px;top:16px;font-size:10px;padding:8px 11px;min-width:110px;max-width:180px}.bookcase,.bookcase.collapsed{display:block;min-height:500px}.directory{position:fixed;top:0;bottom:0;left:0;width:270px;background:var(--paper);z-index:51;border:0;border-right:6px solid var(--ink);overflow-y:auto;transform:translateX(-102%);transition:transform .25s var(--ease);padding-bottom:30px}.directory-toggle{height:60px;justify-content:space-between;padding:0 20px}.facets,.collapsed .facets{display:block;padding:26px 25px}.directory-foot,.collapsed .directory-foot{display:grid;padding:0 25px}.collapsed .directory-toggle{height:60px;min-height:60px;flex-direction:row;padding:0 20px}.collapsed .directory-toggle>span:last-child{writing-mode:horizontal-tb;letter-spacing:0}.collapsed .directory-toggle .icon{transform:none}.bookcase.mobile-directory .directory{transform:translateX(0)}.mobile-scrim.active{display:block;position:fixed;inset:0;background:#1119;z-index:50}.facet{margin-bottom:28px}.facet-option{font-size:13px;padding:9px 4px}.facet-option input{width:16px;height:16px}.collection-bar{min-height:58px;gap:8px;padding:10px 12px;flex-wrap:wrap}.result-caption{font-size:9px;gap:4px}.result-caption #result-count{font-size:20px}.stock-switch{font-size:9px}.active-filters:not(:empty){order:3;width:100%;flex-basis:100%}.shelf-row{padding:22px 7px 0;border-bottom-width:13px;box-shadow:0 4px 0 var(--ink);margin-bottom:4px}.shelf-row:after{bottom:-13px}.book{padding:0 9px}.cover-button{height:clamp(185px,53vw,300px)}.book-title{font-size:11px;min-height:37px;line-height:1.7}.book-info{padding-top:11px;min-height:111px;margin:0 -2px}.book-author{font-size:9px;padding:4px 0 8px}.book-price{font-size:18px}.price-demo{font-size:7px}.stock-label{font-size:8px}.add-button{min-width:28px;height:28px;margin-left:1px}.book-status-ribbon{font-size:8px;top:9px;padding:5px 9px}.shop-footer{font-size:8px;padding:18px 2px 25px;align-items:flex-start}.shop-footer strong{font-size:11px}.footer-slash{padding:0 4px}.footer-actions{gap:8px;flex-direction:column;align-items:flex-end}.footer-actions .text-button{font-size:9px;padding:0 0 4px}.pagination{min-height:65px}.detail-dialog{width:94vw;overflow:auto;max-height:92dvh}.detail-layout{grid-template-columns:1fr;min-height:0}.detail-cover{padding:18px 35px;min-height:200px}.detail-cover img{height:230px}.detail-copy{padding:25px 25px 23px}.detail-copy h2{font-size:20px}.detail-price{font-size:29px;margin-top:20px}.detail-stock{margin-bottom:20px}.detail-tags{margin-top:15px}.detail-copy .action-button{margin-top:7px}.side-dialog{width:100vw;max-width:100vw}.panel-header{padding:25px 22px 20px}.panel-header h2{font-size:26px}.panel-content{padding:12px 21px}.owner-dialog{width:90vw;padding:35px 25px 26px}.owner-dialog h2{font-size:22px}.owner-dialog:before{display:none}.owner-actions{gap:10px}.owner-actions .action-button{font-size:11px;padding:10px}.receipt-dialog{width:94vw;padding:25px 20px}.receipt-head h2{font-size:24px}.receipt-id{font-size:9px;letter-spacing:0}.receipt-stamp{font-size:12px;padding:6px 8px}.receipt-actions .action-button{font-size:11px;padding:10px}.login-dialog{width:91vw;padding:35px 25px}.admin-dialog{max-width:100vw;width:100vw;height:100dvh;max-height:100dvh;border:0;margin:0}.admin-body{padding:18px 17px}.admin-tabs{padding:0 20px;gap:20px}.admin-book{grid-template-columns:38px minmax(100px,1fr) 80px;gap:10px}.admin-book img,.no-cover{width:38px;height:54px}.admin-book>.admin-check{grid-row:2}.admin-book>.admin-check:nth-of-type(2){grid-column:2}.admin-book>.admin-save{grid-column:3;grid-row:2}.admin-book>.admin-check:nth-of-type(3){grid-column:1;grid-row:2}.admin-check{font-size:9px}.admin-book-title{font-size:11px}.admin-book-sub{font-size:8px}.admin-order{grid-template-columns:1fr}.admin-order .action-button{justify-self:start}.admin-header-actions{gap:12px}.toast{bottom:20px;padding:12px 17px;font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.dog-pupil{transform:none!important}}
