:root{--bg: #f5efe6;--surface: #fffdf9;--ink: #2a2018;--ink2: #5c5043;--muted: #8a7d6e;--border: #e7ddcc;--accent: #c0492a;--green: #2f6b4a;--warn: #b8743a;--bad: #a23b34}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Plus Jakarta Sans,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}h2,h3{margin:0}.muted{color:var(--muted);font-weight:500}.small{font-size:12px}.spacer{flex:1}.pad{padding:24px}.btn{border:1px solid var(--border);background:var(--surface);color:var(--ink);padding:8px 14px;border-radius:10px;font-weight:600;cursor:pointer;font-size:14px}.btn:hover{border-color:#d8cab4}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.ghost{background:transparent}.btn.small{padding:5px 10px;font-size:13px}.btn.danger{color:var(--bad)}.btn:disabled{opacity:.6;cursor:default}.brand{font-weight:800;font-size:18px;letter-spacing:-.3px;display:flex;align-items:center;gap:8px}.brand .dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #c0492a2e}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:20px}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 12px 40px #281e1414}.login{width:360px;max-width:100%;padding:26px;display:flex;flex-direction:column;gap:8px}.login label,.field span{font-size:12px;font-weight:700;color:var(--ink2);margin-top:8px}input,select,textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#fff;font:inherit;color:var(--ink)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}.login .btn{margin-top:14px}.app{max-width:980px;margin:0 auto;padding:18px 18px 60px}header{display:flex;align-items:center;gap:10px;padding:6px 0 16px}.toolbar{display:flex;align-items:center;gap:14px;margin-bottom:14px}.search{max-width:360px}section{margin-bottom:22px}section h3{font-size:14px;text-transform:uppercase;letter-spacing:.5px;color:var(--ink2);margin-bottom:8px}.rows{display:flex;flex-direction:column;gap:8px}.row{display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:10px 12px}.swatch{width:30px;height:30px;border-radius:8px;flex:none}.row-main{flex:1;min-width:0}.row-name{font-weight:700;font-size:14px}.row-url{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag{font-size:11px;font-weight:700;color:var(--ink2);background:#f1ebe0;border:1px solid var(--border);padding:3px 8px;border-radius:999px}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#16100680;display:grid;place-items:center;padding:18px;z-index:10}.modal{width:560px;max-width:100%;max-height:92vh;overflow:auto;padding:22px}.modal h2{margin-bottom:14px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:5px;margin-top:10px}.verify-row{display:flex;gap:8px}.verify-row input{flex:1}.colors{display:flex;gap:6px;flex-wrap:wrap}.sw{width:26px;height:26px;border-radius:7px;border:2px solid transparent;cursor:pointer}.sw.on{border-color:var(--ink)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.badge{margin-top:6px;font-size:12px;font-weight:700;padding:6px 10px;border-radius:8px;display:inline-block}.badge.ok{background:#e3f0e8;color:var(--green)}.badge.warn{background:#f6ecdc;color:var(--warn)}.badge.bad{background:#f6e2de;color:var(--bad)}.err{color:var(--bad);font-size:13px;font-weight:600;margin-top:8px}.err.banner{background:#f6e2de;padding:10px 14px;border-radius:10px;margin-bottom:12px}
