:root{--bg:#f1f2f4;--surface:#fff;--surface-sub:#f6f6f7;--border:#e1e3e5;--border-strong:#c9cccf;--text:#1f2225;--text-sub:#6b7177;--text-mut:#8c9196;--brand:#1a1a1a;--accent:#005bd3;--accent-weak:#eaf1fd;--green:#0f7a4d;--green-weak:#e6f4ec;--amber:#8a6116;--amber-weak:#fbf3e0;--red:#b42318;--red-weak:#fdecea;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px #0000000f, 0 0 1px #00000014}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Pretendard,Helvetica Neue,Arial,sans-serif;font-size:13.5px;line-height:1.5}a{color:inherit;text-decoration:none}h1,h2,h3{letter-spacing:-.01em;margin:0;font-weight:650}.shell{grid-template-columns:232px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:4px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.03em;padding:8px 10px 16px;font-size:20px;font-weight:800}.brand small{color:var(--text-mut);letter-spacing:.04em;margin-top:2px;font-size:10.5px;font-weight:600;display:block}.nav-item{border-radius:var(--radius-sm);color:var(--text-sub);align-items:center;gap:10px;padding:8px 10px;font-weight:550;display:flex}.nav-item:hover{background:var(--surface-sub);color:var(--text)}.nav-item.active{color:#fff;background:#1f2225}.nav-item .ico{text-align:center;opacity:.9;width:16px}.nav-sep{background:var(--border);height:1px;margin:10px 6px}.nav-foot{color:var(--text-mut);margin-top:auto;padding:8px 10px;font-size:11px}.main{max-width:1180px;padding:22px 28px 60px}.page-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.page-head h1{font-size:20px}.page-head .sub{color:var(--text-sub);margin-top:2px;font-size:12.5px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-pad{padding:16px 18px}.card-title{margin-bottom:12px;font-size:13px;font-weight:650}.grid{gap:14px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}@media (max-width:900px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}.stat{padding:15px 16px}.stat .label{color:var(--text-sub);font-size:12px;font-weight:550}.stat .value{letter-spacing:-.02em;margin-top:6px;font-size:25px;font-weight:720}.stat .unit{color:var(--text-mut);margin-left:3px;font-size:13px;font-weight:600}.table-wrap{overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:12.5px}table.data th{text-align:left;color:var(--text-sub);background:var(--surface-sub);border-bottom:1px solid var(--border);white-space:nowrap;padding:9px 12px;font-weight:600}table.data td{border-bottom:1px solid var(--border);vertical-align:middle;padding:10px 12px}table.data tr:last-child td{border-bottom:none}table.data tbody tr:hover{background:#fafbfb}.num{text-align:right;font-variant-numeric:tabular-nums}.mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.muted{color:var(--text-mut)}.strong{font-weight:650}.badge{border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.badge.green{background:var(--green-weak);color:var(--green)}.badge.amber{background:var(--amber-weak);color:var(--amber)}.badge.red{background:var(--red-weak);color:var(--red)}.badge.gray{background:var(--surface-sub);color:var(--text-sub)}.badge.blue{background:var(--accent-weak);color:var(--accent)}.dot{background:currentColor;border-radius:50%;width:6px;height:6px}.form-grid{grid-template-columns:repeat(2,1fr);gap:14px 18px;display:grid}@media (max-width:760px){.form-grid{grid-template-columns:1fr}}.field{flex-direction:column;gap:5px;display:flex}.field.full{grid-column:1/-1}.field label{color:var(--text-sub);font-size:12px;font-weight:600}.field label .req{color:var(--red);margin-left:2px}.field .hint{color:var(--text-mut);font-size:11px}input,select,textarea{font:inherit;border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);background:#fff;width:100%;padding:8px 10px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-weak);border-color:var(--accent)}.field.highlight input{border-color:#1f2225;box-shadow:0 0 0 3px #1f22250d}.btn{border-radius:var(--radius-sm);border:1px solid var(--border-strong);cursor:pointer;background:#fff;align-items:center;gap:7px;padding:8px 15px;font-size:13px;font-weight:600;display:inline-flex}.btn:hover{background:var(--surface-sub)}.btn.primary{color:#fff;background:#1f2225;border-color:#1f2225}.btn.primary:hover{background:#000}.btn.sm{padding:5px 10px;font-size:12px}.searchbar{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.searchbar .field{flex:140px;gap:4px;min-width:140px}.searchbar .field.wide{flex:2 220px}.filters-row{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.chip{border:1px solid var(--border-strong);color:var(--text-sub);border-radius:999px;padding:5px 11px;font-size:12px}.chip.on{color:#fff;background:#1f2225;border-color:#1f2225}.banner{border-radius:var(--radius-sm);margin-bottom:14px;padding:11px 14px;font-size:12.5px;font-weight:550}.banner.ok{background:var(--green-weak);color:var(--green)}.banner.err{background:var(--red-weak);color:var(--red)}.empty{text-align:center;color:var(--text-mut);padding:40px 0}.toolbar{align-items:center;gap:10px;display:flex}.spacer{flex:1}.section-gap{margin-top:22px}.shop{max-width:1080px;margin:0 auto;padding:0 24px 80px}.shop-nav{border-bottom:1px solid var(--border);align-items:center;gap:16px;max-width:1080px;margin:0 auto;padding:18px 24px;display:flex}.shop-nav .wm{letter-spacing:-.03em;font-size:22px;font-weight:800}.shop-nav .demo{color:var(--text-mut);border:1px solid var(--border);border-radius:999px;padding:2px 8px;font-size:11px}.shop-nav a.cart{margin-left:auto;font-weight:600}.shop-nav a.back{color:var(--text-mut);font-size:12px}.shop-hero{padding:40px 0 24px}.shop-hero h1{letter-spacing:-.02em;font-size:26px}.shop-hero p{color:var(--text-sub);margin:6px 0 0}.prod-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}@media (max-width:820px){.prod-grid{grid-template-columns:repeat(2,1fr)}}.prod-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.prod-cover{aspect-ratio:1;color:var(--text-mut);text-align:center;background:linear-gradient(135deg,#f3f3f4,#e7e7e9);justify-content:center;align-items:center;padding:16px;font-size:12px;display:flex}.prod-body{flex-direction:column;flex:1;gap:3px;padding:13px 14px 15px;display:flex}.prod-body .pub{color:var(--text-mut);font-size:11px}.prod-body .ttl{font-weight:650;line-height:1.35}.prod-body .auth{color:var(--text-sub);font-size:12px}.prod-body .price{margin-top:6px;font-weight:700}.prod-body .soldout{color:var(--red);font-size:12px;font-weight:600}.prod-actions{align-items:center;gap:8px;margin-top:10px;display:flex}.cartitem{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 0;display:flex}.cartitem .grow{flex:1}
