:root{--navy:#0d2d40;--navy-2:#16384d;--accent:#008ed0;--accent-dark:#0077b0;--paper:#f3efe6;--card:#fffdf8;--ink:#1c2430;--muted:#5c6773;--line:#d8d0c4;--danger:#b42318;--ok:#0a7a3e;color:var(--ink);background:var(--paper);font-family:"Source Sans 3",Segoe UI,sans-serif;line-height:1.45}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:radial-gradient(1200px 600px at 10% -10%, #d9eaf3 0%, var(--paper) 55%)}a{color:var(--accent-dark);text-decoration:none}button,input,select{font:inherit}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--navy);color:#fff;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions""hello hello";align-items:center;gap:.35rem .75rem;padding:.7rem 1rem;display:grid}.brand-text{color:#fff;letter-spacing:.04em;grid-area:brand;font-size:1.05rem;font-weight:800}.brand-text span{opacity:.85;font-weight:500}.topbar-hello{white-space:nowrap;text-overflow:ellipsis;opacity:.92;grid-area:hello;margin:0;font-size:.82rem;overflow:hidden}.topbar-actions{grid-area:actions;align-items:center;gap:.65rem;display:flex}.lang-short{display:inline}.lang-full,.login-card .lang-short{display:none}.login-card .lang-full{display:inline}@media (width>=800px){.topbar{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand hello actions";padding:.85rem 1.5rem}.topbar-hello{text-align:right;padding:0 1rem;font-size:.95rem}.lang-short{display:none}.lang-full{display:inline}}.lang-switch{border:1px solid #ffffff59;border-radius:6px;display:inline-flex;overflow:hidden}.lang-switch button{color:#ffffffc7;background:0 0;border:0;border-radius:0;margin:0;padding:.32rem .55rem;font-size:.78rem;font-weight:600}.lang-switch button.active{color:var(--navy);background:#fff}.login-card .lang-switch{border-color:#d5dbe1;width:100%}.login-card .lang-switch button{color:#5b6570;background:#fff;flex:1;padding:.72rem .9rem}.login-card .lang-switch button.active{color:#fff;background:#1b3f54}.linkish{color:#cfe8f5;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:.3rem;text-decoration:underline}.company-switch select{color:#fff;background:#16384d;border:1px solid #ffffff59;border-radius:6px;max-width:11rem;padding:.35rem .5rem}.admin-body{flex-direction:column;flex:1;display:flex}.admin-nav{background:var(--card);border-bottom:1px solid var(--line);order:2;gap:.2rem;padding:.35rem .75rem;display:flex;position:sticky;bottom:0;overflow-x:auto}.admin-nav a{color:var(--muted);white-space:nowrap;border-radius:6px;padding:.55rem .7rem;font-size:.86rem;font-weight:700}.admin-nav a.active{color:var(--accent-dark);background:#d9eaf3}.admin-main{flex:1;order:1}.main{width:100%;max-width:960px;margin:0 auto;padding:1.4rem 1.1rem 5.5rem}@media (width>=860px){.admin-body{flex-direction:row;align-items:stretch}.admin-nav{border-bottom:0;border-right:1px solid var(--line);flex-direction:column;order:0;width:13.5rem;padding:1.2rem .75rem;position:static}.main{padding:2rem 1.5rem 4rem}}h1{margin:0 0 .4rem;font-size:1.7rem}h2{margin:1.4rem 0 .7rem;font-size:1.15rem}.lede{color:var(--muted);margin-top:0}.meta{color:var(--muted);font-size:.92rem}label{gap:.35rem;margin-bottom:1rem;font-weight:600;display:grid}input,select,textarea{border:1px solid var(--line);background:#fff;border-radius:6px;width:100%;padding:.65rem .75rem}button{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:6px;padding:.7rem 1.2rem}button:disabled{opacity:.5;cursor:not-allowed}.banner{background:var(--card);border:1px solid var(--line);border-radius:6px;margin:0 0 1rem;padding:.75rem 1rem}.banner.success{color:var(--ok);background:#e6f6ec;border-color:#0000}.banner.error{color:var(--danger);background:#fde8e6;border-color:#0000}.actions{align-items:center;gap:.65rem;display:flex}.actions.spread{justify-content:space-between}button.secondary,.cta.secondary{color:var(--navy);border:1px solid var(--line);background:#fff}button.danger{background:var(--danger)}.wizard-steps{gap:.4rem;margin:0 0 1.2rem;padding:0;list-style:none;display:flex;overflow-x:auto}.wizard-steps li{color:var(--muted);white-space:nowrap;align-items:center;gap:.35rem;font-size:.82rem;font-weight:700;display:flex}.wizard-steps li span{width:1.5rem;height:1.5rem;color:var(--navy);background:#d8d0c4;border-radius:50%;place-items:center;display:inline-grid}.wizard-steps li.is-active{color:var(--navy)}.wizard-steps li.is-active span,.wizard-steps li.is-done span{background:var(--accent);color:#fff}.card-form{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:1rem}.inline-add{gap:.5rem;margin-bottom:1rem;display:flex}.inline-add input{flex:1}.test-pick,.people-list,.cost-list,.dup-list{margin:0 0 1rem;padding:0;list-style:none}.test-pick li{border-bottom:1px solid var(--line);padding:.7rem 0}.check-row{align-items:center;gap:.55rem;margin:0 0 .4rem;font-weight:600;display:flex}.check-row input{width:auto}.person-grid{grid-template-columns:1fr;gap:.5rem;margin-bottom:1rem;display:grid}@media (width>=720px){.person-grid{grid-template-columns:1fr 1fr 1fr 1fr auto;align-items:end}}.people-list li,.cost-list li{border-bottom:1px solid var(--line);justify-content:space-between;gap:.75rem;padding:.55rem 0;display:flex}.people-list small{color:var(--muted);font-weight:400;display:block}.linkish.dark{color:var(--accent-dark);padding:0}.cost-list li.is-low{color:var(--danger)}.dup-list li{color:var(--muted);padding:.35rem 0;font-size:.92rem}.list-filters{gap:.65rem;margin-bottom:1rem;display:grid}.list-filters label{margin:0;font-size:.82rem}@media (width>=720px){.list-filters{grid-template-columns:1.4fr 1fr 1fr .8fr auto auto auto;align-items:end}}.schedule-cards{gap:.75rem;margin:0 0 1.2rem;padding:0;list-style:none;display:grid}.schedule-card{background:var(--card);border:1px solid var(--line);border-radius:8px;gap:.25rem;padding:.9rem 1rem;display:grid}.schedule-card header{align-items:center;gap:.45rem;display:flex}.schedule-card strong{color:var(--navy)}.schedule-card p{margin:0}.sigla-chip{letter-spacing:.04em;color:var(--accent-dark);background:#d9eaf3;border-radius:999px;padding:.15rem .45rem;font-size:.72rem;font-weight:800}.status-pill{border-radius:999px;padding:.15rem .5rem;font-size:.72rem;font-weight:700}.estado-p{color:var(--navy);background:#e8f1f8}.estado-i{color:#8a5a00;background:#fff3c4}.estado-f,.estado-r{color:var(--ok);background:#c8ecda}.row-actions{flex-wrap:wrap;gap:.4rem;margin-top:.55rem;display:flex}.row-actions button{padding:.45rem .75rem;font-size:.86rem}.report-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.8rem;display:flex}.pager{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.sheet-backdrop{z-index:20;background:#0d2d4073;align-items:end;display:grid;position:fixed;inset:0}.sheet{background:var(--card);border-radius:12px 12px 0 0;max-height:90vh;padding:1.1rem 1.1rem 1.4rem;overflow:auto}@media (width>=720px){.sheet-backdrop{place-items:center}.sheet{border-radius:10px;width:min(32rem,100% - 2rem)}}.dash-strip{background:var(--card);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:0 0 1rem;padding:.75rem;display:grid}.dash-mini{gap:.2rem;display:grid}.dash-mini strong{color:var(--navy);font-size:1.15rem}.dash-bar{background:#e8efe6;border-radius:99px;height:.35rem;overflow:hidden}.dash-bar span{background:var(--accent);height:100%;display:block}.dash-strip-meta{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.dash-strip-meta p{color:var(--muted);margin:0;font-size:.88rem}.dash-missing{margin-bottom:1rem}.dash-filters{gap:.4rem;margin:0 0 .9rem;display:flex}.dash-filters button{padding:.45rem .8rem;font-size:.86rem}.dash-rank{gap:.5rem;margin:0 0 2rem;padding:0;list-style:none;display:grid}.dash-row{background:var(--card);border:1px solid var(--line);border-radius:8px}.dash-row.is-pending{opacity:.72}.dash-row-main{text-align:left;width:100%;color:inherit;background:0 0;grid-template-columns:2.2rem 4.2rem minmax(0,1fr);align-items:center;gap:.45rem .7rem;padding:.7rem .8rem;display:grid}.dash-place{color:var(--navy);font-weight:800}.dash-score strong{color:var(--navy);font-size:1.35rem;line-height:1;display:block}.dash-score small,.dash-who small{color:var(--muted);display:block}.dash-who{min-width:0}.dash-who strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.dash-chips{flex-wrap:wrap;grid-column:1/-1;gap:.3rem;display:flex}.sigla-chip.is-done{color:var(--ok);background:#c8ecda}.sigla-chip.is-overdue,.is-overdue{color:var(--danger)}@media (width>=720px){.dash-row-main{grid-template-columns:2.4rem 4.5rem minmax(0,1fr) auto}.dash-chips{grid-column:auto}}.saldo-grid{grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:.75rem;display:grid}.saldo-card{background:var(--card);border:1px solid var(--line);border-radius:8px;gap:.2rem;padding:.85rem .8rem;display:grid}.saldo-card.is-empty{opacity:.65}.saldo-sigla{letter-spacing:.06em;color:var(--accent-dark);font-size:.72rem;font-weight:800}.saldo-card strong{color:var(--navy);font-size:1.6rem;line-height:1}.saldo-card small{color:var(--muted)}.home-actions{flex-wrap:wrap;gap:.65rem;margin-top:1.5rem;display:flex}.cta{background:var(--navy);color:#fff;border-radius:6px;align-items:center;padding:.7rem 1.1rem;font-weight:700;display:inline-flex}.cta.secondary{color:var(--navy);border:1px solid var(--line);background:#fff}.login-page{color:#fff;background-color:#1b3f54;background-image:url(/brand/login-pattern.svg);background-position:50%;background-size:cover;grid-template-columns:minmax(0,1fr) minmax(320px,460px);align-items:center;gap:clamp(2rem,6vw,6rem);min-height:100vh;padding:clamp(2rem,8vh,6rem) clamp(1.5rem,8vw,8rem);font-family:Manrope,"Source Sans 3",sans-serif;display:grid}.login-welcome h1{letter-spacing:-.04em;margin:0 0 .9rem;font-size:clamp(2.4rem,5vw,4rem);font-weight:800;line-height:.95}.login-welcome p{max-width:22rem;margin:0 0 2.4rem}.login-brand{color:#fff;align-items:center;gap:.85rem;display:flex}.login-brand-mark{width:52px;height:52px}.login-brand strong{font-size:2.35rem;font-weight:800}.login-brand-rule{background:#ffffffd9;width:1px;height:2.4rem}.login-brand-sub{letter-spacing:.08em;white-space:pre-line;font-size:.78rem;font-weight:600}.login-card{width:100%;color:var(--ink);background:#fff;border-radius:4px;padding:2.15rem 2rem 2rem;box-shadow:0 22px 50px #08182447}.login-card label{color:#5b6570;margin-bottom:1.15rem;font-size:.82rem;font-weight:600}.login-card input{border:1px solid #d5dbe1;border-radius:6px;padding:.78rem .9rem;font-weight:400}.login-card button{background:#1b3f54;width:100%;margin-top:.35rem;padding:.9rem 1.2rem;font-weight:700}.login-error{color:var(--danger);background:#fde8e6;border-radius:6px;margin:0 0 1rem;padding:.65rem .8rem}@media (width<=860px){.login-page{grid-template-columns:1fr;justify-items:center;padding:2.5rem 1.25rem 3rem}.login-welcome{text-align:center}.login-welcome p{margin-left:auto;margin-right:auto}.login-brand{justify-content:center}.login-card{max-width:420px}.admin-nav{order:2}}
