:root{--black: #000000;--white: #f7f7f7;--line: #242424;--muted: #8a8a8a;--surface: #0a0a0a;--radius: 0px;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--black);color:var(--white);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--white);text-decoration:none}.app{min-height:100vh;display:flex;flex-direction:column}.site-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--black);z-index:1000}.brand{font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:1.05rem}.nav{display:flex;gap:.25rem;flex-wrap:wrap}.nav a{padding:.4rem .8rem;border:1px solid transparent;border-radius:var(--radius);color:var(--muted);font-size:.92rem}.nav a:hover{color:var(--white);border-color:var(--line)}.nav a.active{color:var(--black);background:var(--white);border-color:var(--white)}main{width:100%;max-width:980px;margin:0 auto;padding:1.5rem 1.25rem 3rem;flex:1}.site-footer{border-top:1px solid var(--line);padding:1rem 1.25rem;color:var(--muted);font-size:.85rem;text-align:center}.card{border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem;margin-bottom:1.25rem;background:var(--surface)}h1{font-size:1.5rem;margin:0 0 .35rem}h2{font-size:1.15rem;margin:0 0 .5rem}.lede{color:var(--muted);margin-top:0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.4rem}label{font-size:.82rem;color:var(--muted)}input,select{width:100%;padding:.6rem .7rem;background:var(--black);color:var(--white);border:1px solid var(--line);border-radius:var(--radius);font-size:.95rem}input:focus,select:focus{outline:2px solid var(--white);outline-offset:1px;border-color:var(--white)}.actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem}button{cursor:pointer;font-size:.95rem;font-weight:700;padding:.6rem 1.1rem;border-radius:var(--radius);border:1px solid var(--white);background:var(--white);color:var(--black);transition:opacity .12s ease}button:hover{opacity:.85}button.secondary{background:transparent;color:var(--white)}button:disabled{border-color:var(--line);background:transparent;color:var(--muted);cursor:not-allowed}.message{border:1px solid var(--line);border-left-width:4px;border-radius:var(--radius);padding:.8rem 1rem;margin:1rem 0;white-space:pre-line}.message.ok{border-left-color:var(--white)}.message.err{border-left-color:var(--muted);color:var(--white)}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius)}table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:720px}th,td{text-align:left;padding:.65rem .75rem;border-bottom:1px solid var(--line)}th{text-transform:uppercase;font-size:.72rem;letter-spacing:.05em;color:var(--muted)}tr:last-child td{border-bottom:none}td select{width:auto;min-width:190px;max-width:260px}td .assign-cell{display:flex;flex-direction:column;gap:.4rem;align-items:flex-start}td .assign-cell button{width:100%}.pill{display:inline-block;padding:.12rem .6rem;border-radius:var(--radius);border:1px solid var(--white);font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.pill.unassigned{border-style:dashed;color:var(--muted);border-color:var(--muted)}.pill.assigned{background:var(--white);color:var(--black)}.map{height:360px;border:1px solid var(--line);border-radius:var(--radius);margin:1rem 0}.admin-panel{width:min(96vw,1400px);position:relative;left:50%;transform:translate(-50%)}.admin-panel table{min-width:0}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}@media(max-width:600px){.site-header{flex-direction:column;align-items:flex-start}h1{font-size:1.3rem}}
