:root{--purple:#6930a3;--purple2:#8d4dc5;--ink:#17131d;--muted:#6f6876;--line:#ddd5e4;--bg:#f5f3f7;--card:#fff;--warn:#9b5700;--bad:#a12020;--good:#26713d}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}body{margin:0}.topbar{background:#111;color:#fff;padding:16px 20px;border-bottom:4px solid var(--purple)}.brand{max-width:1120px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand b{font-size:19px}.brand span{font-size:12px;color:#ccc}.wrap{max-width:1120px;margin:0 auto;padding:22px 16px 60px}.intro{margin-bottom:18px}.intro h1{font-size:30px;margin:0 0 8px}.intro p{color:var(--muted);max-width:800px;margin:0;line-height:1.5}.notice{background:#f1e9f8;border-left:5px solid var(--purple);padding:12px 14px;border-radius:7px;margin:16px 0;font-size:14px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:18px;min-width:0}.card.full{grid-column:1/-1}.card h2{font-size:15px;text-transform:uppercase;letter-spacing:.07em;margin:0 0 14px;color:var(--purple)}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{min-width:0}.field.full{grid-column:1/-1}label{display:block;font-size:12px;font-weight:750;margin-bottom:5px;color:#403847}input,select,textarea,button{font:inherit}input[type=text],input[type=email],input[type=tel],input[type=date],input[type=time],input[type=number],select,textarea{width:100%;min-height:44px;padding:10px 11px;border:1px solid #cfc6d7;border-radius:8px;background:#fff;color:var(--ink);font-size:16px}textarea{min-height:90px;resize:vertical}.check{display:flex;gap:9px;align-items:flex-start;padding:8px 0}.check input{width:18px;height:18px;margin-top:1px}.check label{font-size:14px;font-weight:650;margin:0}.hint{font-size:12px;color:var(--muted);line-height:1.4;margin-top:5px}.warning{color:var(--warn);font-weight:800;font-size:13px;margin-top:8px}.bad{color:var(--bad)}.good{color:var(--good)}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:18px}.btn{border:0;border-radius:8px;min-height:44px;padding:10px 15px;font-weight:800;cursor:pointer}.btn.primary{background:var(--purple);color:#fff}.btn.secondary{background:#ece7f0;color:#2b2431}.btn.danger{background:#fbe7e7;color:#8f1d1d}.btn:disabled{opacity:.55;cursor:not-allowed}.status{font-size:13px;color:var(--muted)}.input-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px}.input-table{border-collapse:collapse;width:100%;min-width:930px}.input-table th,.input-table td{border-bottom:1px solid var(--line);padding:6px;vertical-align:top}.input-table th{text-align:left;font-size:11px;text-transform:uppercase;color:var(--muted);background:#f7f4f9}.input-table input,.input-table select{min-height:38px;font-size:14px;padding:7px}.input-table input[type=checkbox]{width:18px;height:18px;margin:9px}.row-actions{display:flex;gap:5px}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:7px;min-height:38px;padding:6px 10px;cursor:pointer}.saved-box{display:none;margin-top:14px;background:#eaf6ee;border:1px solid #b7ddc1;padding:12px;border-radius:9px}.saved-box.show{display:block}.saved-box a{color:#165b2a;font-weight:800;word-break:break-all}.admin-login{max-width:430px;margin:30px auto}.toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0}.toolbar input{max-width:400px}.spec-list{display:grid;gap:10px}.spec-row{background:#fff;border:1px solid var(--line);border-radius:10px;padding:13px;display:grid;grid-template-columns:minmax(180px,1.5fr) 1fr auto;gap:12px;align-items:center}.spec-row h3{margin:0 0 4px}.spec-row p{margin:0;color:var(--muted);font-size:13px}.badges{display:flex;gap:6px;flex-wrap:wrap}.badge{font-size:11px;padding:4px 7px;border-radius:999px;background:#eee8f3;color:#4c2c65;font-weight:800}.badge.warn{background:#fff0dc;color:#8d5200}.badge.good{background:#e8f5ec;color:#286039}.row-buttons{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.empty-state{padding:30px;text-align:center;color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:10px}@media(max-width:760px){.grid,.fields{grid-template-columns:1fr}.card.full,.field.full{grid-column:auto}.spec-row{grid-template-columns:1fr}.row-buttons{justify-content:flex-start}.intro h1{font-size:25px}}
