:root { color-scheme: dark; font-family: Inter, ui-sans-serif, system-ui, sans-serif; background:#07111f; color:#eef4ff; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; background:#07111f; }
button,input,select,textarea { font:inherit; }
button,input,select,textarea { border:1px solid #45617f; border-radius:8px; background:#111b29; color:#eef4ff; min-height:48px; padding:10px 12px; }
button { cursor:pointer; font-weight:700; }
button.primary { background:#216e4b; border-color:#42b983; }
button.secondary { background:#162438; }
main { display:grid; gap:14px; margin:0 auto; max-width:1000px; padding:max(14px,env(safe-area-inset-top)) 14px max(24px,env(safe-area-inset-bottom)); }
.loading,.empty,.error,.panel,.identity { background:#111b29; border:1px solid #2b3a4e; border-radius:10px; padding:16px; }
.identity { display:grid; gap:14px; margin:10vh auto 0; max-width:440px; width:100%; }
label { display:grid; gap:6px; }
h1,h2,h3,p { margin:0; }
.muted,small { color:#a9bad0; }
.header { align-items:flex-start; display:flex; gap:12px; justify-content:space-between; }
.summary { display:grid; gap:8px; grid-template-columns:repeat(3,1fr); }
.summary div { background:#0c1522; border:1px solid #2b3a4e; border-radius:8px; padding:10px; text-align:center; }
.summary strong { display:block; font-size:22px; }
.map { line-height:0; overflow:hidden; position:relative; border-radius:8px; background:#07111f; }
.map.producer { cursor:crosshair; }
.map img { display:block; height:auto; width:100%; }
.marker { align-items:center; border:2px solid white; border-radius:50%; color:white; display:flex; font-size:12px; height:30px; justify-content:center; padding:0; position:absolute; transform:translate(-50%,-50%); width:30px; }
.todo { background:#c62828; }.blocked { background:#ef8f00; }.done { background:#16834b; }
.task-list,.producer-form { display:grid; gap:10px; }
.task { background:#0c1522; border:1px solid #2b3a4e; border-left:5px solid #c62828; border-radius:8px; display:grid; gap:9px; padding:12px; }
.task.status-blocked { border-left-color:#ef8f00; }.task.status-done { border-left-color:#16834b; }
.meta,.actions { display:flex; flex-wrap:wrap; gap:7px; }
.meta span { background:#162438; border-radius:99px; color:#d7e7ff; font-size:12px; padding:4px 8px; }
.actions button { flex:1 1 150px; }
.attention { background:#3b2b0b; border-radius:6px; padding:9px; }
details > summary { cursor:pointer; font-weight:700; padding:8px 0; }
.producer-form { margin-top:10px; }
.form-grid { display:grid; gap:10px; grid-template-columns:1fr 1fr; }
.status { min-height:20px; }
@media(max-width:620px){ main{padding-left:10px;padding-right:10px}.header{display:grid}.summary{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:1fr}.actions{display:grid}.actions button{width:100%} }
