:root{--bg:#f2eee9;--ink:#1a1a1a;--muted:#6b6b6b;--line:#e3ddd4;--primary:#1a1a1a;--accent:#c9a96e;--card-bg:#fff;--radius:14px;--shadow:0 1px 3px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);--shadow-lg:0 4px 16px rgba(0,0,0,.08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.5}.admin-shell{max-width:960px;margin:0 auto;padding:48px 24px}.admin-shell h1{font-size:2rem;font-weight:800;margin:0 0 4px;letter-spacing:-.02em}.admin-shell h2{font-size:1.25rem;font-weight:700;margin:0 0 12px}.admin-shell>p{color:var(--muted);margin:0 0 28px;font-size:14px}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.admin-header h1{margin:0}.admin-header p{margin:4px 0 0}.card{border:1px solid var(--line);border-radius:var(--radius);padding:20px;background:var(--card-bg);margin-bottom:16px;box-shadow:var(--shadow)}.card h3{margin:0 0 14px;font-size:16px;font-weight:700}.field{margin-bottom:16px}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:4px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.input{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font-size:14px;background:#fff;color:var(--ink);transition:border-color .15s}.input:focus{outline:none;border-color:var(--accent)}textarea.input{resize:vertical;font-family:inherit}.btn{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:14px;font-weight:600;cursor:pointer;color:var(--ink);transition:all .15s}.btn:hover{background:#f6f2ec}.btn--primary{background:var(--primary);color:#fff;border-color:var(--primary)}.btn--primary:hover{background:#333}.btn--primary:disabled{opacity:.4;cursor:not-allowed}.btn--danger{background:#b3261e;color:#fff;border-color:#b3261e}.btn--danger:hover{background:#d32f2f}.btn--ghost{background:transparent;border-color:transparent;padding:6px 10px}.btn--ghost:hover{background:#f6f2ec}.btn--sm{padding:6px 12px;font-size:12px}.error{color:#b3261e;font-size:13px;margin-top:8px}.muted{font-size:12px}.hint,.muted{color:var(--muted)}.hint{font-size:11px;margin-top:4px}.import-bar{display:flex;gap:8px;margin-bottom:20px}.import-bar .input{flex:1 1}.row{display:flex;gap:16px;flex-wrap:wrap}.preview-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}@media (max-width:640px){.preview-grid{grid-template-columns:1fr}}.badge{font-size:10px;font-weight:700;padding:3px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.badge--green{background:#e6f4ea;color:#1e6e34}.badge--yellow{background:#fdf2d6;color:#8a6a00}.badge--coral{background:#fbe4e2;color:#b3261e}.badge--dark{background:#ece7e0;color:#555}.preview-images{display:flex;gap:8px;flex-wrap:wrap}.image-thumb{position:relative;width:72px;height:72px}.image-thumb img{width:100%;height:100%;object-fit:cover;border-radius:8px;border:1px solid var(--line)}.image-thumb--primary{width:120px;height:120px}.image-thumb--primary img{border:2px solid var(--accent)}.image-thumb--removed img{opacity:.3;filter:grayscale(1)}.image-remove{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;background:#b3261e;color:#fff;border:none;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.image-primary-tag{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.6);color:#fff;font-size:9px;text-align:center;padding:2px;border-radius:0 0 8px 8px}.variant-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px}.variant-row:last-child{border-bottom:none}.variant-row label{display:flex;align-items:center;gap:6px;flex:1 1}.variant-stock-input{width:60px;padding:4px 6px;border:1px solid var(--line);border-radius:6px;font-size:12px;text-align:center}.color-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.color-row:last-of-type{border-bottom:none}.color-row .input{flex:1 1;min-width:0}.color-row__hex{width:40px;height:32px;padding:2px;border:1px solid var(--line);border-radius:6px;background:none;cursor:pointer}.stepper{display:flex;gap:4px;margin:12px 0}.step{flex:1 1;padding:8px 10px;border-radius:8px;background:#f6f2ec;font-size:11px;font-weight:600;color:var(--muted);text-align:center;transition:all .2s}.step--active{background:var(--accent);color:#fff}.step--done{background:#e6f4ea;color:#1e6e34}.history{width:100%}.history-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.history-item:last-child{border-bottom:none}.history-item a{color:var(--ink);text-decoration:underline}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin-bottom:20px}@media (max-width:640px){.stats-grid{grid-template-columns:1fr}}.stat-card{border:1px solid var(--line);border-radius:var(--radius);padding:16px;background:var(--card-bg);box-shadow:var(--shadow)}.stat-card .stat-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--muted);letter-spacing:.03em}.stat-card .stat-value{font-size:28px;font-weight:800;margin-top:4px}.auth-card{max-width:380px}.login-brand{text-align:center;margin-bottom:24px}.login-brand h1{font-size:1.75rem;font-weight:800;letter-spacing:-.02em}.login-brand p{color:var(--muted);font-size:13px;margin:4px 0 0}.admin-nav-wrap{max-width:960px;margin:0 auto;padding:24px 24px 0}.admin-nav{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--line);padding-bottom:12px}.admin-nav__link{padding:8px 14px;border-radius:8px;font-size:13px;font-weight:600;color:var(--muted);text-decoration:none;transition:all .15s}.admin-nav__link:hover{background:#f6f2ec;color:var(--ink)}.admin-nav__link--active{background:var(--ink);color:#fff}.admin-nav__signout{margin-left:auto;padding:6px 12px;border:none;background:transparent;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;border-radius:6px;transition:all .15s}.admin-nav__signout:hover{background:#f6f2ec;color:#b3261e}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table thead th{text-align:left;padding:10px 12px;font-size:11px;font-weight:700;text-transform:uppercase;color:var(--muted);letter-spacing:.03em;border-bottom:2px solid var(--line)}.table tbody td{padding:12px;border-bottom:1px solid var(--line)}.table tbody tr:hover{background:#faf7f2}.table tbody tr:last-child td{border-bottom:none}.search-bar{display:flex;gap:8px;margin-bottom:16px}.search-bar .input{flex:1 1}.filter-tabs{display:flex;gap:6px;margin-bottom:16px}.filter-tab{padding:6px 14px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:12px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .15s}.filter-tab:hover{border-color:var(--accent)}.filter-tab--active{background:var(--ink);color:#fff;border-color:var(--ink)}.empty-state{text-align:center;padding:40px 20px;color:var(--muted);font-size:14px}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:16px}.pagination button{padding:6px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px;font-weight:600;cursor:pointer;color:var(--ink);transition:all .15s}.pagination button:hover:not(:disabled){background:#f6f2ec}.pagination button:disabled{opacity:.3;cursor:not-allowed}.action-btn{padding:4px 10px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:11px;font-weight:600;cursor:pointer;color:var(--ink);transition:all .15s;margin-right:4px}.action-btn:hover{background:#f6f2ec}.action-btn--danger{color:#b3261e;border-color:#f0c8c5}.action-btn--danger:hover{background:#fbe4e2}.action-btn--danger:disabled{opacity:.5;cursor:not-allowed}