:root{--bg:#f7faf5;--fg:#1f2a1c;--muted:#5b6757;--accent:#2f6b3a;--accent-border:#1f4a27;--danger:#b3261e;--card:#fff;--border:#c9d4c4;--sure:#dff0e2;--note:#fdeee2;--note-border:#b5764a;color:var(--fg);background:var(--bg);font-family:system-ui,sans-serif;font-size:18px}body{margin:0}.page{max-width:720px;margin:0 auto;padding:16px}.narrow{max-width:420px}.stack{flex-direction:column;gap:16px;display:flex}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.card{background:var(--card);border:1px solid var(--border);border-radius:8px;margin-top:16px;padding:16px}label{flex-direction:column;gap:8px;display:flex}label.inline{flex-direction:row;align-items:center}input{border:1px solid var(--border);border-radius:8px;padding:8px;font-size:18px}fieldset{border:1px solid var(--border);border-radius:8px;gap:16px;display:flex}button,.button,.tile{border:1px solid var(--accent-border);background:var(--accent);color:#fff;cursor:pointer;box-sizing:border-box;border-radius:8px;justify-content:center;align-items:center;min-height:48px;padding:8px 16px;font-size:18px;text-decoration:none;display:inline-flex}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:var(--card);color:var(--fg);border-color:var(--border)}button.danger{background:var(--danger);border-color:#7a1a14}.tiles{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;margin-top:24px;display:grid}.list{flex-direction:column;gap:8px;padding:0;list-style:none;display:flex}.list li{background:var(--card);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:8px 16px;display:flex}.tag{color:var(--muted);border:1px solid var(--border);border-radius:8px;padding:0 8px;font-size:14px}.tag.warn{color:var(--danger);border-color:var(--danger)}.error{color:var(--danger)}.muted{color:var(--muted)}.checklist{flex-direction:column;gap:8px}.details{grid-template-columns:max-content 1fr;gap:8px 16px;margin:0;display:grid}.details dt{color:var(--muted)}.details dd{margin:0}.tabs{justify-content:flex-start}.thumb{object-fit:cover;border:1px solid var(--border);border-radius:8px;flex:none;width:56px;height:56px}.thumb.empty{background:var(--bg);display:inline-block}.preview{object-fit:contain;border:1px solid var(--border);border-radius:8px;max-width:100%;max-height:320px}.gallery{grid-template-columns:repeat(auto-fill,minmax(144px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.gallery li{flex-direction:column;gap:8px;display:flex}.gallery img{aspect-ratio:1;object-fit:cover;border:1px solid var(--border);border-radius:8px;width:100%}.gallery button{min-height:40px;padding:4px 8px;font-size:16px}label.button{flex-direction:row}.page>header+.stack{margin-top:16px}.grow{flex:1;min-width:0}.list li button.grow{justify-content:flex-start;gap:8px}.stack.tight{gap:0}.count{text-align:right;min-width:40px;font-size:22px}button.small{min-height:40px;padding:4px 8px;font-size:16px}.stepper{flex-wrap:nowrap;justify-content:flex-start;gap:8px}.stepper input{text-align:center;width:96px}.stepper button{min-width:48px}.alerts{margin-top:16px}.alert{background:#fff4d6;border:1px solid #a07a00;border-radius:8px;flex-wrap:nowrap;padding:8px 16px}.overlay{background:#1f2a1c66;justify-content:center;align-items:flex-start;padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog{background:var(--card);border:1px solid var(--accent-border);border-radius:8px;width:100%;max-width:480px;padding:16px}.dialog h2,.dialog h3{margin:0}.button.secondary{background:var(--card);color:var(--fg);border-color:var(--border)}.crop{border:1px solid var(--border);background:var(--bg);border-radius:8px;flex:none;width:96px;max-height:192px;position:relative;overflow:hidden}.crop img{max-width:none;position:absolute}.small-text{font-size:14px}.limits p{margin:0}.limit-warning{color:#8a5a00;font-weight:600}select{border:1px solid var(--border);background:var(--card);border-radius:8px;padding:8px;font-size:18px}.picker{max-height:320px;overflow-y:auto}.picker li.chosen{border-color:var(--accent-border);box-shadow:inset 0 0 0 2px var(--accent)}.list li .button{flex:none}.resolve-head{flex-wrap:nowrap;justify-content:flex-start;align-items:flex-start}.badge{background:var(--danger);color:#fff;border-radius:16px;margin-left:8px;padding:0 8px;font-size:16px}.snap .line-head{flex-wrap:nowrap}.snap-photo{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--border);background:var(--card);border-radius:8px;width:100%}.stack.tight-8{gap:8px}.match{border:1px solid var(--accent-border);border-radius:8px;flex-direction:column;gap:8px;padding:8px 16px;display:flex}.match.sure{background:var(--sure)}.match-name{justify-content:space-between;gap:8px;font-size:20px;font-weight:600;display:flex}.pct{font-variant-numeric:tabular-nums}.admin-note{background:var(--note);border:1px solid var(--note-border);border-radius:8px;margin:0;padding:8px 16px}.chips{flex-direction:column;gap:8px;display:flex}button.chip{background:var(--card);color:var(--fg);border-color:var(--border);min-height:40px;padding:4px 16px;font-size:16px}button.chip[aria-pressed=true]{background:var(--sure);border-color:var(--accent-border);font-weight:600}button.chip.wide{text-align:left;justify-content:space-between;gap:8px;width:100%}button.link{color:var(--accent);background:0 0;border:none;justify-content:flex-start;min-height:32px;padding:0;font-size:16px;text-decoration:underline}.count-control{flex-direction:column;gap:8px;display:flex}.count-row{grid-template-columns:48px 1fr 48px;align-items:center;gap:8px;display:grid}.count-row button{padding:0;font-size:24px}.count-row input{box-sizing:border-box;text-align:center;font-variant-numeric:tabular-nums;width:100%;min-height:48px;font-size:24px}.count-control input[type=range]{box-sizing:border-box;width:100%;accent-color:var(--accent);border:none;margin:0;padding:0}.presets{flex-wrap:wrap;gap:8px;display:flex}.snap-actions{flex-direction:column;gap:8px;display:flex}button.add-line{color:var(--fg);border:1px dashed var(--accent-border);background:0 0}
