@font-face{font-family:Space Mono;font-weight:400;font-style:normal;font-display:swap;src:url(../../../fonts/SpaceMono-400.woff2)format("woff2")}@font-face{font-family:Space Mono;font-weight:400;font-style:italic;font-display:swap;src:url(../../../fonts/SpaceMono-400-italic.woff2)format("woff2")}@font-face{font-family:Space Mono;font-weight:700;font-style:normal;font-display:swap;src:url(../../../fonts/SpaceMono-700.woff2)format("woff2")}:root{--bg:#fff;--fg:#000;--muted:#707070;--line:#e6e6e6;--rule:#000;--pad:#dcdcdc;--tile:#ebebeb;--select:#e2d2ac99;--accent:#000;--danger:#d72c0d;--radius:0;--font:"Space Mono", ui-monospace, Menlo, monospace;--mono:var(--font);--header-h:50px;--sidebar-w:280px;--tracking:.08em}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--fg);font:13px/1.5 var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}a{color:inherit}img{max-width:100%;display:block}button,input,select{font:inherit;color:inherit}button,.btn{background:var(--bg);border:1px solid var(--fg);border-radius:var(--radius);cursor:pointer;letter-spacing:var(--tracking);text-transform:uppercase;padding:.5em 1em;font-size:11px;line-height:1.3;text-decoration:none;display:inline-block}button.primary,.btn.primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}button.quiet{border-color:var(--fg)}button.danger{color:var(--danger);border-color:var(--danger)}button:disabled{opacity:.45;cursor:default}button:not(:disabled):hover,.btn:hover{background:var(--fg);color:var(--bg)}button.primary:not(:disabled):hover,.btn.primary:hover{background:var(--bg);color:var(--fg)}input[type=text],input[type=search],select{border:1px solid var(--fg);border-radius:var(--radius);background:var(--bg);padding:.45em .6em}select{letter-spacing:var(--tracking);text-transform:uppercase;font-size:11px}.label,h1,h2,h3{letter-spacing:var(--tracking);text-transform:uppercase;margin:0;font-size:12px;font-weight:400}h1{font-size:14px}.muted{color:var(--muted)}.mono{font-family:var(--mono);font-size:.85em}.row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.breadcrumb{color:var(--muted);letter-spacing:var(--tracking);text-transform:uppercase;margin:0 0 .35rem;font-size:11px}.breadcrumb a{color:var(--muted);text-decoration:none}.breadcrumb a:hover{color:var(--fg)}.site-header{z-index:20;height:var(--header-h);color:#fff;letter-spacing:var(--tracking);text-transform:uppercase;background:#000;align-items:center;gap:1.25rem;padding:0 20px;font-size:14px;display:flex;position:sticky;top:0}.site-header .brand{text-decoration:none}.site-header .layout-slider{cursor:pointer;align-items:center;gap:10px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.site-header .layout-slider .site-name{text-align:right;white-space:nowrap;width:70px}.site-header .layout-slider input{accent-color:#fff;width:160px;margin:0}.site-header .site-name{color:#9a9a9a;font-size:11px}.site-header nav{gap:1.25rem;margin-left:auto;font-size:11px;display:flex}.site-header nav a{color:#9a9a9a;text-decoration:none}.site-header nav a[aria-current=page],.site-header nav a:hover{color:#fff}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:calc(100vh - var(--header-h));display:grid}.sidebar{top:var(--header-h);height:calc(100vh - var(--header-h));border-right:1px solid var(--rule);position:sticky;overflow-y:auto}.catalog h2{color:var(--muted);padding:14px 16px 6px;font-size:10px}.catalog-search{z-index:1;background:var(--bg);border-bottom:1px solid var(--rule);position:sticky;top:0}.catalog-search input{width:100%;letter-spacing:var(--tracking);text-transform:uppercase;background:0 0;border:0;padding:12px 16px;font-size:11px}.catalog-search input:focus{background:var(--tile);outline:none}.catalog-search input::placeholder{color:var(--muted)}.catalog h2+ul{border-top:1px solid var(--line)}.catalog ul{margin:0;padding:0;list-style:none}.catalog li{border-bottom:1px solid var(--line);align-items:stretch;display:flex}.catalog li>a,.catalog li>.empty{min-width:0;letter-spacing:var(--tracking);text-transform:uppercase;text-align:left;flex:1;justify-content:space-between;gap:.75rem;padding:7px 16px;font-size:11px;text-decoration:none;display:flex}.catalog li>a:hover{background:var(--tile)}.catalog li>a[aria-current=page]{color:#fff;background:#000}.catalog li:has(>a[aria-current=page]){background:#000;border-color:#000}.catalog li:has(>a[aria-current=page]) .vis{color:#bdbdbd;border-color:#000}.catalog .empty{color:var(--muted)}.catalog button.empty{background:0 0;border:0;border-radius:0}.catalog button.empty:not(:disabled):hover{background:var(--tile);color:var(--fg)}.catalog button.empty .count{color:var(--fg);font-size:13px;line-height:1}.catalog .count{color:var(--muted);flex:none}.catalog a[aria-current=page] .count{color:#bdbdbd}.catalog .vis,.catalog .star{border:0;border-left:1px solid var(--line);width:32px;color:var(--muted);opacity:0;background:0 0;border-radius:0;flex:none;place-items:center;padding:0;transition:opacity .1s;display:grid}.catalog li:hover .vis,.catalog .vis:focus-visible,.catalog .vis.off,.catalog li:hover .star,.catalog .star:focus-visible,.catalog .star.on{opacity:1}.catalog .vis:hover,.catalog .star:hover{color:#fff;background:#000}.catalog .star.on{color:var(--fg)}.catalog li:has(>a[aria-current=page]) .star{color:#bdbdbd;border-color:#000}.catalog li.pinned{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:#ff0}.catalog li.pinned>a:not([aria-current=page]):hover{background:#00000014}.catalog li.starred+li:not(.starred){border-top:1px solid var(--rule);margin-top:-1px}.catalog li[draggable=true]>a{cursor:grab}.catalog li.dragging{opacity:.35}.catalog li.drop-before{box-shadow:inset 0 2px #000}.catalog li.drop-after{box-shadow:inset 0 -2px #000}.catalog li.is-hidden>a{color:var(--muted)}.catalog li.is-hidden>a[aria-current=page]{color:#bdbdbd}.catalog .vis.off{color:var(--fg)}main{min-width:0}main.admin{max-width:1400px;margin:0 auto;padding:1.5rem 20px}main.admin h1,main.admin h2{margin-bottom:.75rem}.page-head,.section-head{border-bottom:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:14px 20px;display:flex}.section-head{border-top:1px solid var(--rule);margin-top:-1px}.section-head.collapsible{top:var(--header-h);z-index:5;background:var(--bg);cursor:pointer;-webkit-user-select:none;user-select:none;position:sticky}.section-head.collapsible h2{flex:1}.section-head.collapsible .dl-bar,.section-head.collapsible .inline-edit{cursor:auto}.section-head .toggle{background:0 0;border:0;padding:6px;line-height:0}.section-head .toggle:hover{background:var(--fg);color:var(--bg)}.section-head .toggle svg{transition:transform .15s}.section-head .toggle[aria-expanded=true] svg{transform:rotate(90deg)}.page-head h1 .muted{display:inline}.page-head .muted{letter-spacing:var(--tracking);text-transform:uppercase;font-size:11px;display:block}.tiles{background:var(--bg);border-bottom:1px solid var(--rule);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1px;display:grid}.tile{aspect-ratio:1;background:var(--pad);outline:1px solid var(--bg);text-decoration:none;position:relative;overflow:hidden}.tile img{object-fit:cover;width:100%;height:100%}.tile-empty{background:var(--tile)}.tile.is-hidden img{opacity:.35}.tag{color:#000;max-width:calc(100% - 24px);letter-spacing:var(--tracking);text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;background:#fff;padding:6px 10px;font-size:10px;line-height:1.3;text-decoration:none;position:absolute;top:12px;left:12px;overflow:hidden}.tag.tag-2{top:44px}.tag.muted{color:var(--muted)}.ratio-meta .tag{border:1px solid var(--fg);display:inline-block;position:static}.variant{scroll-margin-top:var(--header-h)}.ratios{background:var(--rule);border-bottom:1px solid var(--rule);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.ratio-panel{background:var(--bg);flex-direction:column;display:flex}.ratio-frame{background:var(--tile);flex:1;place-items:center;padding:20px;display:grid}.ratio-frame .ratio-box{width:min(100%, calc(70vh * var(--r,1)));margin:0 auto}.ratio-meta{flex-wrap:wrap;align-items:center;gap:6px;padding:12px 20px;display:flex}.ratio-meta .tag{margin-right:8px}.image-grid{background:var(--bg);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.image-cell{position:relative}.pic>.img{cursor:pointer;background:0 0;border:0;border-radius:0;padding:0}.pic .tag .views{color:var(--muted);margin-left:6px;text-decoration:none}.pic .tag .views:hover{color:var(--fg);text-decoration:underline}.pic.note textarea{color:#000;width:100%;height:100%;font:inherit;resize:none;background:0 0;border:0;border-radius:0;outline:none;padding:40px 14px 14px;font-size:13px;line-height:1.4;position:absolute;inset:0}.pic.note textarea:focus{box-shadow:inset 0 0 0 2px #000}.pic.note .row-actions select{padding:.35em .5em;font-size:10px}.variant.drop-into{outline-offset:-2px;outline:2px solid #000}.image-cell[draggable=true],.image-row[draggable=true]{cursor:grab}.image-cell.dragging,.image-row.dragging{opacity:.35}.image-cell.drop-before{box-shadow:inset 3px 0 #000}.image-cell.drop-after{box-shadow:inset -3px 0 #000}.image-row.drop-before{box-shadow:inset 0 3px #000}.image-row.drop-after{box-shadow:inset 0 -3px #000}.pic{aspect-ratio:16/9;position:relative;overflow:hidden}.image-cell .pic{overflow:visible}.pic>a,.pic>.img{width:100%;height:100%;display:block}.pic>a img,.pic>.img img{object-fit:cover;width:100%;height:100%;display:block}@media (hover:hover){.image-cell .row-actions{opacity:0;transition:opacity .1s}.image-cell:hover .row-actions,.image-cell:focus-within .row-actions{opacity:1}}body.file-drag .variant{outline-offset:-2px;outline:2px dashed #000;min-height:60px}body.file-drag .variant.file-over{background:#ffd9e5}.drop-banner{z-index:30;color:#fff;letter-spacing:var(--tracking);text-transform:uppercase;pointer-events:none;background:#000;padding:10px 16px;font-size:10px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.bulk-bar{top:var(--header-h);z-index:6;border-bottom:1px solid var(--rule);letter-spacing:var(--tracking);text-transform:uppercase;background:#ff0;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 20px;font-size:11px;display:flex;position:sticky}.bulk-bar label{align-items:center;gap:4px;display:inline-flex}.bulk-bar select{padding:.45em .6em}.image-row{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) 140px;gap:1px;display:grid}.pic.pending:after{content:"rendering…";color:var(--muted);letter-spacing:var(--tracking);text-transform:uppercase;place-items:center;font-size:11px;display:grid;position:absolute;inset:0}.pic .tag{white-space:normal;overflow:visible}.pic>.img{position:relative}.pic>.img .sel{background:var(--select);pointer-events:none;position:absolute;inset:0}.pic>.img:focus-visible{outline:2px solid var(--fg);outline-offset:-2px}.drag-badge{color:#fff;font:inherit;letter-spacing:var(--tracking);text-transform:uppercase;white-space:nowrap;background:#000;padding:8px 12px;font-size:11px;position:fixed;top:-100px;left:-100px}.select-bar{align-items:center;gap:4px;display:inline-flex}.select-bar .label,.dl-bar .label{color:var(--fg);margin-right:4px;font-size:9px}.select-bar .muted:not(.label){margin:0 6px}.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex;position:absolute;bottom:12px;right:12px}.row-actions .btn,.row-actions button{color:#000;background:#fff}.row-actions .btn:hover,.row-actions button:not(:disabled):hover{color:#fff;background:#000}.is-hidden .pic>a,.is-hidden .pic>.img,.is-hidden .crops{opacity:.35}.image-row .crops{background:var(--bg);position:relative}.crops-scroll{scrollbar-width:thin;flex-direction:column;gap:1px;display:flex;position:absolute;inset:0;overflow-y:auto}.image-row .crops:after{content:"↓";background:linear-gradient(to bottom, transparent, var(--bg));pointer-events:none;opacity:0;place-items:end center;height:48px;padding-bottom:6px;font-size:12px;line-height:1;transition:opacity .15s;display:grid;position:absolute;bottom:0;left:0;right:0}.image-row .crops.more-below:after{opacity:1}.crop-thumb{flex:none;width:100%;position:relative;overflow:hidden}.crop-thumb img{object-fit:cover;width:100%;height:100%}.crop-thumb.pending{opacity:.5}.tag.mini{padding:3px 6px;font-size:9px;top:6px;left:6px}.place-panel{z-index:2;border:1px solid var(--fg);background:#fff;flex-wrap:wrap;align-items:center;gap:6px;padding:10px 12px;font-size:11px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.place-panel .label{color:var(--muted);font-size:10px}.place-panel .tag-line{border:1px solid var(--line);text-transform:uppercase;letter-spacing:var(--tracking);align-items:center;gap:4px;padding:3px 8px;font-size:10px;display:inline-flex}.place-panel .x{border:0;padding:0 2px;font-size:12px;line-height:1}.section-head .vis{color:var(--muted);background:0 0;border:0;padding:6px;line-height:0}.section-head .vis:hover{background:var(--fg);color:var(--bg)}.section-head .vis.off{color:var(--fg)}.variant.is-hidden .section-head h2{color:var(--muted)}.file-bar{gap:4px;display:inline-flex}.own-bar{border-bottom:1px solid var(--line);align-items:center;gap:1rem;padding:8px 20px;display:flex}.dropzone{border:0;border-bottom:1px solid var(--rule);color:#000;letter-spacing:var(--tracking);text-transform:uppercase;text-align:center;cursor:pointer;background:#ffd9e5;border-radius:0;padding:14px;font-size:10px}.dropzone.over{color:#fff;background:#000}.upload-line{border-bottom:1px solid var(--line);grid-template-columns:1fr 120px 1fr;align-items:center;gap:1rem;padding:6px 20px;font-size:11px;display:grid}.inline-edit{cursor:text;border-bottom:1px dashed #0000;outline:none}.inline-edit:hover{border-bottom-color:var(--muted)}.inline-edit:focus{border-bottom-color:var(--fg)}.inline-edit.saving{opacity:.5}.inline-edit.error{color:var(--danger)}.dl-bar{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.dl-bar .label{margin-right:4px}.dl-bar select{padding:.45em .6em}.sidebar .add-product{text-align:left;border:0;border-bottom:1px solid var(--line);width:100%;padding:7px 16px;display:block}@media (width<=820px){.shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--rule);height:auto;max-height:40vh;position:static}.ratios{grid-template-columns:1fr}.image-row{grid-template-columns:minmax(0,1fr) 96px}.page-head .row,.section-head .select-bar,.section-head .dl-bar{flex-basis:100%;order:1}.image-grid{grid-template-columns:1fr}.pic{aspect-ratio:auto}.pic>a,.pic>.img{aspect-ratio:16/9;height:auto}.pic.pending{aspect-ratio:16/9}.row-actions{background:var(--bg);justify-content:flex-start;padding:8px;position:static}.tiles{grid-template-columns:repeat(2,1fr)}}.download-all{justify-items:end;gap:.5rem;display:grid}.badge{letter-spacing:var(--tracking);text-transform:uppercase;border:1px solid var(--fg);vertical-align:middle;margin-left:.4em;padding:.2em .5em;font-size:9px;display:inline-block}.variants-panel{border:1px solid var(--line);border-radius:var(--radius);margin-top:1rem;padding:.75rem}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:.6rem;padding:.75rem;text-decoration:none;display:flex}.card .title{letter-spacing:var(--tracking);text-transform:uppercase;font-size:11px}.ratio-box{background:var(--pad);border-radius:2px;position:relative;overflow:hidden}.ratio-box img{object-fit:cover;width:100%;height:100%}.ratio-box.pending:after{content:"rendering…";color:var(--muted);place-items:center;font-size:.8em;display:grid;position:absolute;inset:0}.ratio-strip{grid-template-columns:repeat(4,1fr);align-items:end;gap:.4rem;display:grid}table.downloads{border-collapse:collapse;width:100%}table.downloads th,table.downloads td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.4em .6em}table.downloads th{color:var(--muted);letter-spacing:var(--tracking);text-transform:uppercase;font-size:11px;font-weight:400}.queue{gap:.35rem;margin:1rem 0;padding:0;list-style:none;display:grid}.queue li{grid-template-columns:1fr 120px 1fr;align-items:center;gap:1rem;font-size:.9em;display:grid}.bar{background:var(--line);border-radius:3px;height:6px;overflow:hidden}.bar>i{background:var(--fg);height:100%;transition:width .15s;display:block}.status-error{color:var(--danger)}.dots{gap:.3rem;display:flex}.dot{background:var(--line);border-radius:50%;width:.6em;height:.6em}.dot.ok{background:var(--fg)}.editor{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:1.5rem;display:grid}.tabs{gap:.25rem;margin-bottom:.75rem;display:flex}.tabs button[aria-selected=true]{background:var(--fg);color:var(--bg)}.stage{background:var(--tile);-webkit-user-select:none;user-select:none;touch-action:none;position:relative;overflow:hidden}.stage img{pointer-events:none;position:absolute}.stage .mask{pointer-events:none;cursor:grab;border:1px solid #fff;position:absolute;box-shadow:0 0 0 9999px #00000073}.stage .mask.padded{background:color-mix(in srgb, var(--pad) 55%, transparent)}.stage .focal{pointer-events:none;border:2px solid #fff;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;box-shadow:0 0 0 1px #000}.panel{gap:.9rem;display:grid}.panel label{color:var(--muted);gap:.25rem;font-size:.9em;display:grid}.panel input[type=range]{width:100%}.previews{grid-template-columns:repeat(4,1fr);gap:.4rem;margin-top:.75rem;display:grid}.previews .ratio-box{cursor:pointer;outline:2px solid #0000}.previews .ratio-box.active{outline-color:var(--fg)}.previews .ratio-box img{object-fit:fill;max-width:none;position:absolute}
