/* An object catalogue, with an editorial grid rather than floating UI cards. */
:root{--ink:#ecebe6;--muted:#a3a39f;--line:#373833;--paper:#1c1d1b;--soft:#252622;--accent:#b8c5ff;background:#151613;color:var(--ink)}
body{background:#151613;color:var(--ink)}
button,input,select,textarea{border-radius:3px}
button:hover{background:#282a24;border-color:#727569}
.primary{background:#c7d2ff;border-color:#c7d2ff;color:#202638;border-radius:3px}
.primary:hover{background:#dde4ff;border-color:#dde4ff}
input,select,textarea,.search input,select option{background:#20211e;border-color:#45463f;color:var(--ink)}
input::placeholder,textarea::placeholder{color:#a0a29a}
main{max-width:1680px;padding:0 28px;min-height:calc(100svh - 156px)}
.top{height:48px;padding:0 28px;background:#151613;border-color:var(--line);gap:24px}
.brand{gap:9px}
.brand>span{font-size:15px;letter-spacing:.04em;font-weight:600}
.brand .store-logo{width:30px;height:30px}
.top nav{margin-left:auto;margin-right:auto;gap:30px}
.top nav button{font-size:12px;color:#c1c1b9;padding:7px 0;border-width:0;border-radius:0;position:relative}
.top nav button.selected{color:#f1f1eb}
.top nav button.selected:after{content:'';width:4px;height:4px;position:absolute;bottom:0;left:calc(50% - 2px);background:#c7d2ff;border-radius:50%}
.top-actions{gap:6px}
.top-actions button,.top-actions a{border-color:transparent;border-radius:2px;padding:7px;height:32px;min-width:32px}
.top-actions button:hover,.top-actions a:hover{background:var(--soft)}
.top-actions span{font-size:11px}
.catalog-layout{display:block}
#categories{display:flex;align-items:center;gap:24px;overflow:auto;scrollbar-width:none;border-bottom:1px solid var(--line);margin:0;min-height:49px;padding:0}
#categories::-webkit-scrollbar{display:none}
#categories button{border:0;border-radius:0;padding:15px 0 13px;white-space:nowrap;flex:none;gap:7px;font-size:12px;color:#a3a39f;background:transparent;position:relative}
#categories button.active{color:#f1f1eb}
#categories button.active:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:#b8c5ff}
#categories button:hover{color:#f1f1eb}
#categories small{font:10px/1 ui-monospace,Consolas,monospace;align-self:start;margin-top:1px;color:#a8b0c9}
.category-branch{color:#7d8075;font-size:13px}
.store-controls{display:flex;align-items:center;gap:18px;border:0;padding:16px 0 18px;margin:0;min-height:64px}
.collection-heading{display:flex;align-items:baseline;gap:11px;margin:0;flex:none}
.collection-heading h1{font-size:18px;font-weight:500;letter-spacing:.02em;line-height:1.4;max-width:35vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#results-count{font:11px/1 ui-monospace,Consolas,monospace;color:#a3a39f;white-space:nowrap}
.catalog-options{margin-left:auto;display:flex;align-items:center;gap:14px}
.sort-label{display:block}
.store-controls select{font-size:12px;width:144px;min-height:32px;height:32px;border:0;border-radius:0;background:transparent;padding:5px 18px 5px 7px;margin:0;color:#cacbc3}
.density-controls{display:flex;align-items:center;border-left:1px solid var(--line);padding-left:10px;gap:3px}
.density-controls button{border:0;border-radius:2px;padding:6px;width:30px;min-height:30px;height:30px;color:#85887e}
.density-controls button[aria-pressed=true]{color:#e5eaff;background:#2e332e}
.density-controls svg{width:17px;height:17px}
.catalog-owner{display:flex;gap:7px;align-items:center;border-left:1px solid var(--line);padding-left:14px}
.catalog-owner button{border-color:#505248;border-radius:2px;font-size:11px;min-height:32px;height:32px;padding:5px 10px}
.catalog-owner [data-create]{border-color:#c7d2ff;color:#202638;background:#c7d2ff}
.catalog-owner [data-create]:hover{background:#dde4ff}
.catalog-owner svg{width:15px;height:15px}
.catalog-owner [data-manage-groups]{width:32px;padding:7px}
.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 20px;align-items:start}
.product-grid[data-density=large]{grid-template-columns:repeat(2,minmax(0,1fr))}
.product-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}
.product-grid[data-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.product-grid[data-count="1"]{grid-template-columns:minmax(0,1fr)}
.product-grid[data-density=large][data-count]{grid-template-columns:repeat(2,minmax(0,1fr))}
.product-grid[data-density=large][data-count="1"]{grid-template-columns:minmax(0,1fr)}
.product-grid[data-count="2"] .art-tile{aspect-ratio:4/3}
.product-grid[data-count="1"] .art-tile{aspect-ratio:3/1;max-height:540px}
.editorial-card{min-width:0;border-top:1px solid #515348;padding-top:9px}
.edition-line{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 10px;color:#a6a99c;font-size:10px;line-height:1.4}
.edition-line>span:first-child{font:11px/1 ui-monospace,Consolas,monospace;letter-spacing:.05em;color:#bcc6eb}
.edition-line>span:last-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.art-tile,.art-tile:hover{aspect-ratio:4/5;position:relative;background:#242621;border:0;border-radius:1px;isolation:isolate;box-shadow:none}
.art-tile img{width:100%;height:100%;object-fit:contain;transition:transform .48s cubic-bezier(.2,.7,.2,1);display:block}
.art-tile:hover img{transform:scale(1.035)}
.tile-open{display:grid;place-items:center;position:absolute;right:12px;bottom:12px;width:32px;height:32px;background:#ecebe6;color:#20211e;border-radius:50%;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .3s}
.tile-open svg{width:18px;height:18px;transform:rotate(-40deg)}
.art-tile:hover .tile-open,.art-tile:focus-visible .tile-open{opacity:1;transform:translateY(0)}
.stock-label{background:#1b1d18ee;color:#e0e3d5;border-radius:2px;top:10px;right:10px;padding:5px 9px}
.art-caption{display:flex;align-items:baseline;gap:14px;justify-content:space-between;margin-top:13px}
.art-title{display:block;border:0;border-radius:0;padding:0;font-size:14px;font-weight:500;text-align:left;line-height:1.5;overflow-wrap:anywhere;min-width:0;color:#edece4}
.art-title:hover{background:none;color:#c7d2ff}
.art-price{font:13px/1.5 ui-monospace,Consolas,monospace;font-weight:400;color:#e3e7f4;white-space:nowrap}
.art-price small{font-size:10px}
.product-card>.art-summary{color:#a9ac9f;font-size:11px;line-height:1.6;margin-top:5px;min-height:0}
.art-foot{display:flex;justify-content:space-between;color:#96998d;font-size:10px;margin-top:11px}
.catalog-empty{grid-column:1/-1;min-height:320px;display:flex;align-items:center;justify-content:center;gap:56px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:linear-gradient(120deg,#1d201a66,transparent);padding:32px}
.empty-folio{width:200px;height:170px;color:#737a62;flex:none}
.catalog-empty h2{font-size:18px;font-weight:500;letter-spacing:.04em}
.catalog-empty p{color:var(--muted);font-size:12px;margin:10px 0 18px}
.catalog-empty button{font-size:12px;padding:8px 15px}
footer{max-width:none;margin:38px 28px 0;padding:18px 0 20px;font-size:10px;border-color:var(--line);gap:18px}
footer button,.source-link{font-size:10px}
footer button{padding:5px 0}
.page-head{padding:22px 0 18px}
.page-head h1{font-size:26px;letter-spacing:0}
.page-head .eyebrow{display:none}
.modal{border-radius:6px;background:#1c1d1b;border-color:#505248}
.modal>header,.editor-save{background:#1c1d1b}
.modal>header h2{font-size:17px;font-weight:500}
.hero-image,.thumbs button,.summary-card,.order-card{border-radius:3px;border-color:#41463b;background:#20221d}
.gallery-navigation{background:#1c1d1bf5;border-color:#505248;border-radius:3px}
.product-detail h1{font-size:28px;letter-spacing:0}
.product-detail .detail-price{background:none;color:#f1f1eb;border-radius:0;padding:0;font:22px/1.5 ui-monospace,Consolas,monospace}
.detail-price del{color:#a3a39f}
.manage-tabs button.active{background:#c7d2ff;color:#202638}
.settings-form,.category-list>div{background:transparent}
.mobile-nav{background:#151613f7;border-color:#43463b}
.mobile-nav button{border-radius:0;color:#9a9e91;position:relative}
.mobile-nav button.selected,.mobile-nav button:hover{background:none;color:#e7ebff}
.mobile-nav button.selected:before{content:'';position:absolute;left:calc(50% - 12px);right:auto;width:24px;height:2px;background:#bccaff;top:0}
.mobile-nav svg{stroke-width:1.4}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
@media(min-width:1800px){.top{padding-inline:calc((100vw - 1624px)/2)}footer{max-width:1624px;margin-inline:auto}}
@media(max-width:1100px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-owner button{font-size:11px}.store-controls{gap:10px}.catalog-options{gap:4px}.catalog-owner{gap:5px;padding-left:8px}}
@media(max-width:800px){.catalog-owner{width:100%;justify-content:flex-end;border-left:0;border-top:1px solid var(--line);padding:10px 0 0;margin-top:0}.store-controls{flex-wrap:wrap}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
 main{padding:0 14px;min-height:calc(100svh - 190px)}
 .top{height:46px;padding:0 14px;gap:8px}
 .brand>span{font-size:14px}
 .brand .store-logo{width:29px;height:29px}
 .top-actions{gap:3px}
 .top-actions button,.top-actions a{width:32px;min-width:32px;height:32px}
 #categories{gap:22px;min-height:43px;margin:0}
 #categories button{padding:12px 0 11px;font-size:11px}
 #categories small{font-size:9px}
 .store-controls{display:flex;gap:8px;padding:12px 0 14px;margin:0}
 .collection-heading{gap:6px}
 .collection-heading h1{font-size:14px;max-width:28vw}
 #results-count{font-size:10px}
 .catalog-options{gap:1px}
 .store-controls select{width:112px;padding:4px 0 4px 4px;font-size:10px;min-height:30px;height:30px}
 .density-controls{gap:0;padding-left:4px}
 .density-controls button{width:26px;height:30px;min-height:30px;padding:5px}
 .density-controls svg{width:15px;height:15px}
 .catalog-owner{padding-top:9px;justify-content:flex-start}
 .catalog-owner button{width:auto;min-height:32px;font-size:11px}
 .catalog-owner [data-manage-groups]{margin-left:auto}
 .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 12px}
 .product-grid[data-count]{grid-template-columns:repeat(2,minmax(0,1fr))}
 .product-grid[data-count="1"]{grid-template-columns:minmax(0,1fr)}
 .product-grid[data-count] .art-tile{aspect-ratio:4/5;max-height:none}
 .product-grid[data-density=large][data-count]{grid-template-columns:minmax(0,1fr)}
 .editorial-card{padding-top:7px}
 .edition-line{font-size:9px;margin-bottom:7px}
 .edition-line>span:first-child{font-size:10px}
 .art-caption{display:block;margin-top:10px}
 .art-title{font-size:12px}
 .art-price{display:block;font-size:12px;margin-top:4px}
 .art-foot,.product-card>.art-summary{font-size:10px}
 .art-foot{margin-top:8px}
 .tile-open{width:26px;height:26px;right:8px;bottom:8px}
 .catalog-empty{min-height:290px;gap:10px;padding:22px 10px;flex-direction:column;text-align:center}
 .empty-folio{width:132px;height:104px}
 .catalog-empty h2{font-size:16px}
 .catalog-empty p{font-size:11px;margin:8px 0 12px}
 footer{margin:30px 14px 0;padding:16px 0 88px;gap:12px;flex-wrap:wrap;font-size:9px}
 footer .source-link{margin-left:auto;font-size:9px}
 footer>span{display:none}
 footer button{font-size:9px}
 .mobile-nav{padding:4px 8px calc(5px + env(safe-area-inset-bottom))}
 .mobile-nav button{padding:8px 5px 4px;font-size:10px;gap:4px}
 .page-head{padding:18px 0}
 .page-head h1{font-size:22px}
 .product-detail h1{font-size:22px}
}
@media(prefers-reduced-motion:reduce){.art-tile img,.tile-open{transition:none}}
