:root{--color-primary:#1565c0;--color-background:#f5f7fa;--color-surface:#fff;--color-text:#1a1a1a;--color-muted:#666;--color-warning:#ef6c00;--color-overdue:#c62828;--color-error:#c62828;--radius:12px;--spacing:16px}*{box-sizing:border-box}body{background:var(--color-background);color:var(--color-text);margin:0;font-family:system-ui,Segoe UI,Tahoma,sans-serif}.app{flex-direction:column;max-width:720px;min-height:100vh;margin:0 auto;display:flex}.app-header{background:var(--color-primary);color:#fff;padding:var(--spacing)}.app-header h1{margin:0;font-size:1.25rem}.app-nav{background:var(--color-surface);border-bottom:1px solid #e0e0e0;gap:4px;padding:8px;display:flex;overflow-x:auto}.app-nav button{border-radius:var(--radius);cursor:pointer;background:0 0;border:1px solid #0000;flex:1 0 auto;padding:8px 10px;font-size:.85rem}.app-nav button.active{background:var(--color-primary);color:#fff}.app-main{padding:var(--spacing);gap:var(--spacing);flex-direction:column;display:flex}.app-main>button{align-self:flex-start}.card{background:var(--color-surface);border-radius:var(--radius);padding:var(--spacing);box-shadow:0 1px 3px #0000001f}.card h2{margin-top:0}.card p{color:var(--color-muted)}.badge{background:var(--color-primary);color:#fff;border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:400;display:inline-block}.form{flex-direction:column;gap:10px;display:flex}.form label{flex-direction:column;gap:4px;font-size:.9rem;display:flex}.form input[type=text],.form input[type=number],.form input[type=date]{border:1px solid #ccc;border-radius:8px;padding:10px;font-size:1rem}.form .checkbox{flex-direction:row;align-items:center;gap:8px}.form-actions{gap:8px;display:flex}button{background:var(--color-surface);cursor:pointer;border:1px solid #ccc;border-radius:8px;padding:10px 16px;font-size:.95rem}button[type=submit]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.form-error{color:var(--color-error);font-weight:700}.field-error{color:var(--color-error);margin:0;font-size:.85rem}.summary-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.summary-grid>div{background:var(--color-background);border-radius:8px;padding:10px}.form-actions button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}@media (width>=640px){.app{max-width:960px}}
