:root{color-scheme:light;--ink: #1b1410;--paper: #f4efe4;--gold: #b8892d;--gold-deep: #8c6818;--gold-ink: #1b1410;--wine: #6b2c2c;--slate: #3d4a52;--line: #d8cbb3;--card: #fffdf8;--surface: #fff;--surface-muted: #faf6ee;--chip: #f4efe4;--badge: #efe3c6;--badge-ok: #d9ead3;--badge-bad: #f3d0d0;--badge-warn: #f6e4b5;--badge-price: #f3c07a;--ok: #2f5d32;--shadow: 0 18px 40px rgba(27, 20, 16, .08);--page-glow: rgba(184, 137, 45, .12);--page-top: #f7f1e6;--page-bottom: #efe6d4;--sidebar-bg: #1b1410;--sidebar-text: #f4efe4;--sidebar-muted: #cbbfa6;--sidebar-link: #eadfcb;--sidebar-brand: #f3d48a;--sidebar-active: rgba(184, 137, 45, .22);--select-on: rgba(184, 137, 45, .16);--select-hover: #f4efe4;--backdrop: rgba(27, 20, 16, .45);--field-ink: var(--ink);--placeholder: var(--slate)}[data-theme=dark]{color-scheme:dark;--ink: #e5e5e5;--paper: #000000;--gold: #d4a84a;--gold-deep: #e4c078;--gold-ink: #000000;--wine: #d46a6a;--slate: #aeaeae;--line: #818181;--card: #484848;--surface: #aeaeae;--surface-muted: #aeaeae;--chip: #484848;--badge: #818181;--badge-ok: #3d5344;--badge-bad: #5a3c3c;--badge-warn: #5a4d34;--badge-price: #8a5a28;--ok: #8fcaa0;--shadow: 0 14px 32px rgba(0, 0, 0, .35);--page-glow: transparent;--page-top: #484848;--page-bottom: #484848;--sidebar-bg: #000000;--sidebar-text: #e5e5e5;--sidebar-muted: #aeaeae;--sidebar-link: #e5e5e5;--sidebar-brand: #e5e5e5;--sidebar-active: #484848;--select-on: #818181;--select-hover: #818181;--backdrop: rgba(0, 0, 0, .62);--field-ink: #000000;--placeholder: #484848}*{box-sizing:border-box}html,body,#app{margin:0;height:100%}body{font-family:"Source Sans 3",sans-serif;color:var(--ink);background:radial-gradient(circle at top left,var(--page-glow),transparent 28%),linear-gradient(180deg,var(--page-top) 0%,var(--page-bottom) 100%)}h1,h2,h3,.brand{font-family:Cormorant Garamond,serif;font-weight:600;letter-spacing:.02em}a{color:var(--gold-deep)}code{background:var(--chip);padding:.08rem .38rem;border-radius:6px;font-size:.92em}button,.btn{font:inherit;border:0;cursor:pointer;border-radius:999px;padding:.65rem 1.1rem;background:var(--ink);color:var(--paper)}.btn.secondary{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.gold{background:var(--gold);color:var(--gold-ink)}.btn.danger{background:var(--wine);color:#fff}.btn.compact{padding:.35rem .75rem;font-size:.85rem}.shopify-status{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap}input:disabled,select:disabled,textarea:disabled{background:var(--chip);color:var(--slate)}input,select,textarea{font:inherit;width:100%;color:var(--field-ink);border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:.65rem .75rem}input::placeholder,textarea::placeholder{color:var(--placeholder)}input[type=checkbox]{width:auto}textarea{min-height:120px;resize:vertical}textarea.short-description{min-height:4.2rem;height:4.2rem}.rich-editor{border:1px solid var(--line);border-radius:10px;background:var(--surface);overflow:hidden}.rich-toolbar{display:flex;flex-wrap:wrap;gap:.35rem;padding:.45rem .55rem;border-bottom:1px solid var(--line);background:var(--surface-muted)}.rich-toolbar button{border-radius:8px;padding:.3rem .55rem;background:transparent;color:var(--field-ink);border:1px solid transparent}.rich-toolbar button.on,.rich-toolbar button:hover{border-color:var(--line);background:var(--surface)}.rich-editor-content{min-height:180px;padding:.75rem .9rem;outline:none;color:var(--field-ink)}.rich-editor-content p{margin:0 0 .6rem}.rich-editor-content ul,.rich-editor-content ol{margin:0 0 .6rem 1.2rem}.shell{display:grid;grid-template-columns:260px 1fr;height:100%;overflow:hidden}.sidebar{padding:2rem 1.4rem;background:var(--sidebar-bg);color:var(--sidebar-text);overflow-y:auto}.sidebar nav{display:flex;flex-direction:column;gap:1.35rem;margin-top:2rem}.nav-group{display:flex;flex-direction:column;gap:.4rem}.nav-label{margin:0 0 .15rem;padding:0 .75rem;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sidebar-muted)}.sidebar a{color:var(--sidebar-link);text-decoration:none;padding:.55rem .75rem;border-radius:10px}.sidebar a.router-link-active{background:var(--sidebar-active);color:#fff}.brand-mark{font-size:1.7rem;color:var(--sidebar-brand);margin:0}.brand-sub{margin:.2rem 0 0;color:var(--sidebar-muted);font-size:.85rem}.login-card .brand-mark{color:var(--sidebar-brand)}.main{min-height:0;overflow-y:auto;padding:2rem 2.4rem 4rem}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:1.3rem}.grid{display:grid;gap:1rem}.grid.two{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:repeat(3,1fr)}.grid.four{grid-template-columns:repeat(4,1fr)}.grid.five{grid-template-columns:repeat(5,1fr)}.stat{display:flex;flex-direction:column;gap:.2rem}.stat-value{font-family:"Source Sans 3",sans-serif;font-size:1.85rem;font-weight:700;line-height:1.15}.stat-value.hero{font-size:2.75rem}.stat-label{color:var(--slate);font-size:.78rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.platform-stats{display:grid;gap:1.15rem;padding-top:.35rem;border-top:1px solid var(--line)}.platform-stats h4{margin:0;font-family:"Source Sans 3",sans-serif;font-size:.95rem;font-weight:700}.platform-stats h4 .muted{font-weight:400}.muted{color:var(--slate)}.error{color:var(--wine)}.save-row{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.save-note{color:var(--gold-deep);font-weight:600;animation:save-pop .35s ease}.btn.saved{animation:save-pop .35s ease}.save-fields.flash .card{animation:save-flash .9s ease}@keyframes save-pop{0%{opacity:0;transform:translateY(6px) scale(.96)}to{opacity:1;transform:none}}@keyframes save-flash{0%{border-color:var(--gold);box-shadow:0 0 #b8892d6b}45%{border-color:var(--gold);box-shadow:0 0 0 7px #b8892d2e}to{border-color:var(--line);box-shadow:var(--shadow)}}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.7rem .4rem;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--slate)}.table-scroll{overflow-x:auto}.sort-btn{background:transparent;color:inherit;border:0;border-radius:0;padding:0;font:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left}.sort-btn:hover{color:var(--ink)}th .sort-btn{width:100%}.column-filter{margin-top:.4rem;padding:.32rem .45rem;font-size:.8rem;text-transform:none;letter-spacing:0;font-weight:400}.pager{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-top:.85rem;flex-wrap:wrap}.tabs{display:flex;gap:.4rem;margin-bottom:1rem}.tab{background:transparent;color:var(--ink);border:1px solid var(--line);padding:.5rem 1.05rem}.tab.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.loading-bar{height:6px;overflow:hidden;border-radius:999px;background:var(--badge)}.loading-bar span{display:block;height:100%;width:40%;border-radius:999px;background:var(--gold);animation:loading-slide 1.1s ease-in-out infinite}@keyframes loading-slide{0%{transform:translate(-120%)}to{transform:translate(280%)}}.listing-thumb{width:56px;height:56px;object-fit:cover;border-radius:8px;background:var(--chip);display:block}.listing-title{min-width:220px;max-width:360px}.badge{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem;background:var(--badge)}.badge.ok{background:var(--badge-ok)}.badge.bad{background:var(--badge-bad)}.badge.warn{background:var(--badge-warn)}.badge.price{background:var(--badge-price)}.multi-select{position:relative}.multi-select-control{min-height:2.7rem;display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;border:1px solid var(--line);background:var(--surface);color:var(--field-ink);border-radius:10px;padding:.4rem .75rem;cursor:pointer}.multi-select-chip{display:inline-flex;align-items:center;gap:.2rem;background:var(--chip);color:var(--ink);border-radius:999px;padding:.15rem .45rem .15rem .65rem;font-size:.9rem}.multi-select-chip button{width:1.1rem;height:1.1rem;padding:0;display:grid;place-items:center;background:transparent;color:var(--ink);font-size:1rem;line-height:1}.multi-select-menu{position:absolute;z-index:30;left:0;right:0;margin-top:.3rem;max-height:260px;overflow:auto;background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.multi-select-search{border:0;border-bottom:1px solid var(--line);border-radius:10px 10px 0 0}.multi-select-option{display:block;width:100%;text-align:left;background:transparent;color:var(--field-ink);border-radius:0;padding:.5rem .75rem}.multi-select-option.on{background:var(--select-on)}.multi-select-option:hover{background:var(--select-hover)}.photos{display:flex;gap:.75rem;flex-wrap:wrap}.photo-tile{position:relative;width:120px;height:120px}.photos img{width:120px;height:120px;object-fit:cover;border-radius:12px;border:2px solid transparent;display:block;cursor:pointer}.photos img.primary{border-color:var(--gold)}.photo-delete{position:absolute;top:6px;right:6px;width:28px;height:28px;padding:0;display:grid;place-items:center;background:var(--wine);color:#fff;font-size:1.15rem;line-height:1}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:1.5rem;background:var(--backdrop)}.confirm-backdrop{z-index:50}.confirm-modal{width:min(460px,100%)}.confirm-modal h3{margin:0}.confirm-modal p{margin:0;line-height:1.45}.confirm-actions{display:flex;gap:.6rem;justify-content:flex-end;flex-wrap:wrap;margin-top:.35rem}.modal{width:min(640px,100%);max-height:min(80vh,720px);overflow:auto}.modal.catalog-preview{width:min(760px,100%)}.form-modal{width:min(1180px,98vw);max-height:min(92vh,980px);display:flex;flex-direction:column;overflow:hidden;padding:0}.form-modal-head,.form-modal-foot{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-shrink:0;padding:1rem 1.3rem}.form-modal-head{border-bottom:1px solid var(--line)}.form-modal-head h2{margin:0;font-size:1.55rem}.form-modal-body{min-height:0;overflow:auto;padding:1.15rem 1.3rem 1.3rem}.form-modal-foot{justify-content:flex-end;border-top:1px solid var(--line)}.form-modal-lookup{display:flex;gap:.6rem}.catalog-aspects{width:100%}.catalog-aspects th{width:34%;text-align:left;vertical-align:top;color:var(--slate);font-weight:600}.catalog-aspects td{vertical-align:top}.publish-log{max-height:320px;overflow:auto;padding:.75rem .9rem;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted);color:var(--field-ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.publish-log p{margin:0 0 .45rem}.publish-log p:last-child{margin-bottom:0}.publish-log .ok{color:var(--ok)}.publish-log .bad{color:var(--wine)}.login{min-height:100vh;display:grid;place-items:center}.login-card{width:min(480px,92vw);text-align:center}.appearance-row{display:flex;justify-content:space-between;align-items:center;gap:1.25rem;flex-wrap:wrap}.appearance-row h3{margin:0}.appearance-copy{min-width:12rem;flex:1}.appearance-copy p{margin:.35rem 0 0}.settings-list{list-style:none;margin:0;padding:0;display:grid;gap:.45rem}.settings-list li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.45rem .65rem;border:1px solid var(--line);border-radius:8px}.settings-add-row{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap}.settings-add-row label{flex:1;min-width:12rem}.switch{position:relative;display:inline-flex;align-items:center;gap:.7rem;cursor:pointer;-webkit-user-select:none;user-select:none}.switch input{position:absolute;opacity:0;width:1px;height:1px}.switch-track{position:relative;width:2.85rem;height:1.55rem;border-radius:999px;background:var(--chip);border:1px solid var(--line);flex-shrink:0;transition:background .18s ease,border-color .18s ease}.switch-track:after{content:"";position:absolute;top:2px;left:2px;width:1.2rem;height:1.2rem;border-radius:50%;background:var(--ink);transition:transform .18s ease,background .18s ease}.switch input:checked+.switch-track{background:var(--gold);border-color:var(--gold)}.switch input:checked+.switch-track:after{transform:translate(1.28rem);background:var(--gold-ink)}.switch input:focus-visible+.switch-track{outline:2px solid var(--gold);outline-offset:2px}.switch-label{font-weight:600}@media(max-width:900px){.shell{grid-template-columns:1fr;height:auto;min-height:100%;overflow:visible}.main{overflow:visible}.grid.two,.grid.three,.grid.four,.grid.five{grid-template-columns:1fr}.grid.four.stats{grid-template-columns:1fr 1fr}}
