:root{--bg: #f6f7f9;--surface: #ffffff;--surface-2: #eef1f5;--border: #dde2ea;--text: #16202c;--muted: #64748b;--dim: #94a3b8;--accent: #2563eb;--accent-hover: #1d4ed8;--success: #15803d;--success-bg: #dcfce7;--warning: #b45309;--warning-bg: #fef3c7;--danger: #b91c1c;--danger-bg: #fee2e2;--info-bg: #dbeafe;--info-text: #1d4ed8;--radius: 10px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.55}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.app-header{background:var(--surface);border-bottom:1px solid var(--border);padding:0 1.5rem;display:flex;align-items:center;gap:1.25rem;height:56px;position:sticky;top:0;z-index:10}.brand{font-weight:700;display:flex;align-items:center;gap:.7rem;white-space:nowrap}.brand img{height:26px;width:auto;display:block}.brand .divider{width:1px;height:20px;background:var(--border)}.brand .product{font-size:.98rem}.auth-logo{display:flex;justify-content:center;margin-bottom:1.25rem}.auth-logo img{height:34px;width:auto}.nav{display:flex;gap:.25rem;flex:1;flex-wrap:wrap}.nav a{padding:.35rem .7rem;border-radius:7px;color:var(--muted);font-size:.9rem;white-space:nowrap}.nav a.active{background:var(--info-bg);color:var(--info-text);font-weight:600}.nav a{display:inline-flex;align-items:center;gap:.4rem}.nav-badge{background:var(--danger);color:#fff;font-size:.68rem;font-weight:700;line-height:1;min-width:17px;height:17px;padding:0 5px;border-radius:99px;display:inline-flex;align-items:center;justify-content:center;font-variant-numeric:tabular-nums}.who{color:var(--muted);font-size:.85rem;display:flex;align-items:center;gap:.6rem;white-space:nowrap}.page{max-width:1340px;margin:0 auto;padding:1.75rem 1.5rem 4rem}.table-scroll{overflow-x:auto}.table-scroll table{min-width:720px}h1{font-size:1.5rem;margin:0 0 .25rem}h2{font-size:1.05rem;margin:0 0 .75rem}.subtitle{color:var(--muted);margin:0 0 1.5rem;font-size:.92rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.15rem 1.25rem}.card+.card{margin-top:1.25rem}.grid{display:grid;gap:1rem}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.5rem}.tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1.1rem}.tile .value{font-size:1.6rem;font-weight:700;line-height:1.2}.tile .label{color:var(--muted);font-size:.78rem;margin-top:.15rem}label{display:block;font-size:.82rem;color:var(--muted);margin-bottom:.9rem}input,select,textarea{display:block;width:100%;margin-top:.25rem;padding:.45rem .6rem;background:var(--surface);border:1px solid var(--border);border-radius:7px;color:var(--text);font:inherit;font-size:.9rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}textarea{resize:vertical}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--text);font:inherit;font-size:.88rem;cursor:pointer;white-space:nowrap}.btn:hover:not(:disabled){background:var(--surface-2)}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn:disabled{opacity:.45;cursor:not-allowed}table{width:100%;border-collapse:collapse;font-size:.88rem}th{text-align:left;padding:.55rem .7rem;border-bottom:1px solid var(--border);color:var(--muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;white-space:nowrap}td{padding:.55rem .7rem;border-bottom:1px solid var(--border);vertical-align:middle}tr:last-child td{border-bottom:none}.nowrap{white-space:nowrap}.badge{display:inline-block;padding:2px 8px;border-radius:99px;font-size:.72rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;line-height:1.5}.badge-ok{background:var(--success-bg);color:var(--success)}.badge-pending{background:var(--warning-bg);color:var(--warning)}.badge-info{background:var(--info-bg);color:var(--info-text)}.badge-demo{background:#f3e8ff;color:#7e22ce}.banner{border-radius:var(--radius);padding:.75rem 1rem;font-size:.88rem;margin-bottom:1.25rem}.banner-error{background:var(--danger-bg);color:var(--danger)}.banner-ok{background:var(--success-bg);color:var(--success)}.banner-demo{background:#f3e8ff;color:#6b21a8}.daypicker{display:flex;gap:.4rem;flex-wrap:wrap;margin:.5rem 0 0}.day{border:1px solid var(--border);border-radius:8px;padding:.45rem .6rem;background:var(--surface);cursor:pointer;text-align:center;min-width:62px;font-size:.8rem;line-height:1.3;-webkit-user-select:none;user-select:none}.day .dow{color:var(--muted);font-size:.7rem;text-transform:uppercase;letter-spacing:.04em}.day .num{font-weight:600}.day.selected{background:var(--info-bg);border-color:var(--accent);color:var(--info-text)}.day.weekend .dow{color:var(--dim)}.day:disabled{opacity:.4;cursor:not-allowed}.bar-row{display:grid;grid-template-columns:150px 1fr 74px;align-items:center;gap:.6rem;margin-bottom:.4rem;font-size:.85rem}.bar-track{background:var(--surface-2);border-radius:99px;height:9px;overflow:hidden}.bar-fill{background:var(--accent);height:100%;border-radius:99px}.bar-label{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-value{text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.auth-wrap{max-width:380px;margin:4rem auto}.muted{color:var(--muted)}.small{font-size:.82rem}.row{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.spacer{flex:1}.empty{text-align:center;color:var(--dim);padding:2.5rem 1rem}
