:root{--color-primary: #0369a1;--color-primary-dark: #0c4a6e;--color-primary-light: #e0f2fe;--color-accent: #0891b2;--color-success: #15803d;--color-success-light: #dcfce7;--color-danger: #b91c1c;--color-danger-light: #fee2e2;--color-warning: #b45309;--color-warning-light: #fef3c7;--color-info: #1d4ed8;--color-info-light: #dbeafe;--color-bg: #f0f7fc;--color-surface: #ffffff;--color-surface-alt: #eaf4fb;--color-border: #d3e3ef;--color-text: #102a43;--color-text-muted: #587088;--radius-md: 12px;--radius-lg: 18px;--shadow-sm: 0 1px 3px rgba(16, 42, 67, .08);--shadow-md: 0 4px 14px rgba(16, 42, 67, .12);--touch-min: 52px;font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:16px;color:var(--color-text)}*{box-sizing:border-box}body{margin:0;background:var(--color-bg)}.app{max-width:640px;margin:0 auto}main{padding:14px}.top{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:#fff;box-shadow:var(--shadow-md)}.top .muted{color:#ffffffd9}.top button.ghost{color:#fff;border:1px solid rgba(255,255,255,.5);background:#ffffff24;min-height:44px;padding:0 12px}.agency{font-weight:800;font-size:18px}.center{min-height:70vh;display:flex;flex-direction:column;gap:14px;align-items:center;justify-content:center;padding:24px;text-align:center}.card{display:block;width:100%;text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-left:6px solid var(--color-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:14px;margin-bottom:12px;color:inherit;font:inherit}.signin{max-width:420px;margin:32px auto;border-left:1px solid var(--color-border);box-shadow:var(--shadow-md)}h1{font-size:24px;font-weight:800;margin:0 0 12px}h2{font-size:20px;font-weight:700;margin:0 0 8px}.row{display:flex;gap:8px;align-items:center}.row-between{display:flex;justify-content:space-between;align-items:center;gap:8px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.small{font-size:14px}.muted{color:var(--color-text-muted)}.warn{color:var(--color-warning);font-weight:700}.error{background:var(--color-danger-light);color:var(--color-danger);border-left:5px solid currentColor;border-radius:var(--radius-md);padding:12px 14px;margin-bottom:12px;font-weight:500}.info{background:var(--color-info-light);color:var(--color-info);border-left:5px solid currentColor;border-radius:var(--radius-md);padding:10px 12px;margin-top:8px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field-label{font-weight:700;font-size:14px}.check{display:flex;gap:12px;align-items:center;min-height:44px}input,select,textarea{width:100%;font:inherit;min-height:var(--touch-min);padding:10px 12px;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text)}input:focus,select:focus,textarea:focus{outline:3px solid var(--color-primary-light);border-color:var(--color-primary)}input[type=checkbox],input[type=radio]{width:24px;height:24px;min-height:0;accent-color:var(--color-primary)}input[type=number]{text-align:right}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-weight:700;min-height:var(--touch-min);padding:0 18px;border-radius:var(--radius-md);border:2px solid var(--color-primary);background:var(--color-primary);color:#fff;text-decoration:none;cursor:pointer}button:active{filter:brightness(.92)}button.secondary,.button.secondary{background:var(--color-surface);color:var(--color-primary);border-color:var(--color-border)}button.ghost{background:none;border:none;color:var(--color-primary);min-height:40px;padding:0 8px}button.big{width:100%;min-height:60px;font-size:18px;margin-top:10px}button:disabled{opacity:.5}.button.disabled{opacity:.6;pointer-events:none}.back{margin-bottom:6px}.tabs{display:flex;gap:8px;overflow-x:auto;margin-bottom:12px}.tabs button{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border);border-radius:999px;white-space:nowrap;min-height:44px;padding:0 16px}.tabs button.on{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.tag{font-size:12px;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--color-surface-alt);color:var(--color-text-muted);white-space:nowrap}.tag-warn{background:var(--color-warning-light);color:var(--color-warning)}.job{cursor:pointer}.app-footer{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:var(--color-text-muted);padding:8px}.field:has(:required:not(:disabled))>.field-label:after{content:" *";color:var(--color-danger);font-weight:700}form:has(.field :required:not(:disabled)):before{content:"* = required";display:block;text-align:right;font-size:11px;color:var(--color-text-muted);margin-bottom:4px}form.form-incomplete button[type=submit],form.form-incomplete button:not([type]){opacity:.5;pointer-events:none;cursor:default}form[data-missing]:after{content:attr(data-missing);display:block;color:var(--color-danger);font-size:12px;margin-top:6px}form.touched :is(input,select,textarea):invalid{border-color:var(--color-danger)}.field[data-error]:after{content:attr(data-error);color:var(--color-danger);font-size:12px}:root[data-theme=ORANGE]{--color-primary: #c2410c;--color-primary-dark: #7c2d12;--color-primary-light: #ffedd5;--color-accent: #ea580c;--color-bg: #fff8f1}:root[data-theme=RED]{--color-primary: #b91c1c;--color-primary-dark: #7f1d1d;--color-primary-light: #fee2e2;--color-accent: #dc2626;--color-bg: #fff5f5}:root[data-theme=GREEN]{--color-primary: #15803d;--color-primary-dark: #14532d;--color-primary-light: #dcfce7;--color-accent: #16a34a;--color-bg: #f2fcf5}:root[data-theme=PURPLE]{--color-primary: #6d28d9;--color-primary-dark: #4c1d95;--color-primary-light: #ede9fe;--color-accent: #7c3aed;--color-bg: #f7f5ff}.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:8px}.tile{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px}.tile-warn{border-color:var(--color-warning);background:var(--color-warning-light)}.tile-value{font-size:22px;font-weight:800}.tile-label{font-size:13px;color:var(--color-text-muted)}.table-scroll{overflow-x:auto;margin-top:10px;-webkit-overflow-scrolling:touch}.table-scroll table{border-collapse:collapse;min-width:100%;font-size:13px}.table-scroll th,.table-scroll td{border-bottom:1px solid var(--color-border);padding:6px 8px;text-align:left;white-space:nowrap}.table-scroll .num{text-align:right}.table-scroll tr.total td{font-weight:700}
