:root{color-scheme:light;--bg: #faf7ef;--surface: #ffffff;--ink: #1a2419;--muted: #6f7266;--accent: #2d4a2b;--accent-soft: #e4eadb;--accent-contrast: #faf7ef;--danger: #b8542e;--danger-soft: #f5d9c9;--warn: #c88b2c;--warn-soft: #f5e5c4;--success: #3f7a46;--success-soft: #dae7c9;--border: #e3decc;--border-soft: #f0ecde;--shadow-sm: 0 1px 2px rgba(26, 36, 25, .04);--shadow-md: 0 4px 16px rgba(26, 36, 25, .06);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-feature-settings:"ss01","cv11"}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;background:var(--bg);color:var(--ink)}h1{font-size:1.4rem;margin:0}h2{font-size:1.1rem;margin:1.2rem 0 .5rem}a{color:var(--accent)}.app{display:flex;flex-direction:column;min-height:100%}.app-header{display:flex;align-items:center;gap:1.5rem;padding:.9rem 1.5rem;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.brand{font-weight:600;letter-spacing:.02em}.nav{display:flex;gap:1rem;margin-right:auto}.nav a{text-decoration:none;color:var(--muted);padding:.3rem .5rem;border-radius:6px}.nav a.active,.nav a:hover{color:var(--ink);background:var(--bg)}.user{display:flex;gap:.75rem;align-items:center}.app-main{padding:1.5rem;max-width:1100px;margin:0 auto;width:100%}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.toolbar-right{display:flex;gap:.5rem;align-items:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem}.grid{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm)}.grid th,.grid td{text-align:left;padding:.65rem .85rem;border-bottom:1px solid var(--border-soft);vertical-align:middle}.grid tbody tr:last-child td{border-bottom:none}.grid tbody tr:hover{background:var(--bg)}.grid th{font-weight:500;color:var(--muted);background:var(--bg);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}.grid th.sortable{cursor:pointer;user-select:none}.grid th.sortable:hover{color:var(--ink)}.grid th.sortable.active{color:var(--accent)}.sort-ind{display:inline-block;min-width:.8em;color:var(--accent)}.grid td.num,.grid th[style*=right]{text-align:right;font-variant-numeric:tabular-nums}.row-title{text-decoration:none;font-weight:500}.row-title:hover{text-decoration:underline}.thumb{width:40px;height:40px;object-fit:cover;border-radius:6px;border:1px solid var(--border);display:block;background:var(--bg)}.thumb-empty{display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.9rem}.filters{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1rem;align-items:center}.filters .search{flex:1;min-width:220px;max-width:360px}.filters select{width:auto;min-width:160px}.table-wrap{position:relative}.table-loading{position:absolute;top:0;right:0;padding:.5rem .9rem;color:var(--muted);font-size:.85rem}.empty{text-align:center!important;color:var(--muted);padding:2rem!important}.pager{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.pager-nav{display:flex;gap:.5rem}.btn-sm{padding:.35rem .7rem;font-size:.85rem}.btn-ghost:disabled{opacity:.4;cursor:not-allowed}.btn-ghost:disabled:hover{background:transparent}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.5rem .6rem;width:100%}textarea.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.btn-primary,.btn-ghost{cursor:pointer;border-radius:8px;padding:.5rem .9rem;border:1px solid transparent;font-weight:500}.btn-primary{background:var(--accent);color:var(--accent-contrast)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{background:transparent;border-color:var(--border);color:var(--ink)}.btn-ghost:hover{background:var(--bg)}.form{display:flex;flex-direction:column;gap:1rem}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem}.grid2 label{display:flex;flex-direction:column;gap:.25rem}.grid2 label>span{font-size:.85rem;color:var(--muted)}.grid2 .span2{grid-column:span 2}.check{flex-direction:row!important;align-items:center;gap:.5rem}.check input{width:auto}fieldset{border:1px solid var(--border);border-radius:10px;padding:1rem}legend{padding:0 .3rem;color:var(--muted);font-size:.9rem}.image-row{display:grid;grid-template-columns:2fr 1fr auto auto;gap:.5rem;align-items:center;margin-bottom:.5rem}.edit-form{display:flex;flex-direction:column;gap:1rem}.card-title{font-size:1rem;font-weight:600;color:var(--ink);margin:0 0 1rem;text-transform:none;letter-spacing:0}.save-bar{position:sticky;bottom:0;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.75rem 1.1rem;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-md);z-index:5}.save-bar-actions{display:flex;gap:.5rem}.attrs-flags{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;padding:.75rem 1rem}.attrs-flags legend{color:var(--muted);font-size:.85rem;padding:0 .3rem}.attrs-extra{margin-top:1rem;border-top:1px dashed var(--border);padding-top:1rem}.attrs-extra>summary{cursor:pointer;color:var(--muted);font-size:.9rem;padding:.25rem 0;user-select:none}.attrs-extra>summary:hover{color:var(--ink)}.attrs-extra textarea{margin-top:.5rem}.color-input{display:flex;gap:.4rem;align-items:center}.color-input input[type=color]{width:2.2rem;height:2.2rem;padding:0;border-radius:6px;cursor:pointer;flex-shrink:0}.color-input input[type=text],.color-input input:not([type=color]){flex:1}.dropzone{border:2px dashed var(--border);border-radius:10px;padding:1.5rem;text-align:center;cursor:pointer;background:var(--bg);transition:border-color .15s,background .15s}.dropzone:hover,.dropzone-hover{border-color:var(--accent);background:var(--accent-soft)}.dropzone-busy{cursor:progress}.dropzone-title{margin:0 0 .25rem;font-weight:500}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;margin-top:1rem}.image-tile{border:1px solid var(--border);border-radius:10px;background:var(--surface);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-sm);cursor:grab}.image-tile:active{cursor:grabbing}.image-tile-dragging{opacity:.5}.image-tile-primary{border-color:var(--accent)}.image-tile-preview{position:relative;aspect-ratio:1;background:var(--bg);display:flex;align-items:center;justify-content:center}.image-tile-preview img{width:100%;height:100%;object-fit:cover;display:block}.image-tile-empty{color:var(--muted);font-size:.85rem}.image-tile-badge{position:absolute;top:.4rem;left:.4rem;background:var(--accent);color:var(--accent-contrast);font-size:.7rem;padding:.15rem .5rem;border-radius:999px;font-weight:500}.image-tile-meta{padding:.5rem;display:flex;flex-direction:column;gap:.35rem}.image-tile-meta input{font-size:.8rem;padding:.35rem .5rem}.image-tile-actions{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.images-actions{margin-top:.75rem}.form-actions{display:flex;justify-content:flex-end;gap:.5rem}.error{color:var(--danger);margin:0}.success{color:var(--success);margin:0}.muted{color:var(--muted)}.small{font-size:.85rem}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.pill{display:inline-block;padding:.1rem .55rem;border-radius:999px;background:var(--border);color:var(--ink);font-size:.8rem;font-weight:500;vertical-align:middle}.pill-new,.pill-awaiting_payment{background:#e8e1ce}.pill-paid,.pill-shipped,.pill-completed{background:#d5e4cd;color:var(--accent)}.pill-canceled,.pill-refunded{background:#f0d4c4;color:var(--danger)}.pill-ok{background:var(--success-soft);color:var(--accent)}.pill-warn{background:var(--warn-soft);color:var(--warn)}.pill-danger{background:var(--danger-soft);color:var(--danger)}.pill-muted{background:var(--border);color:var(--muted)}.dl{display:grid;grid-template-columns:160px 1fr;gap:.35rem 1rem;margin:0}.dl dt{color:var(--muted);font-size:.85rem;padding-top:.1rem}.dl dd{margin:0}.login{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1.5rem}.login-card{width:100%;max-width:360px;display:flex;flex-direction:column;gap:1rem}.login-card label{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}
