:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f4f5f7;--surface:#fff;--text:#1a1d21;--text-muted:#6b7280;--border:#e2e4e8;--primary:#1e6f4c;--primary-text:#fff;--present:#1e8e3e;--absent:#d93025;--excused:#e8a51c;--unmarked:#9aa0a6;--danger:#d93025;--radius:12px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#16181b;--surface:#1f2226;--text:#f2f3f5;--text-muted:#9aa0a6;--border:#2e3136}}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;margin:0}button,input,select{font:inherit;color:inherit}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.app-header{z-index:10;background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex;position:sticky;top:0}.app-title{text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;font-weight:700;overflow:hidden}.app-main{flex:1;padding-bottom:5rem;overflow-y:auto}.screen{max-width:720px;margin:0 auto;padding:1rem}.nav-bar{background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom,0);z-index:10;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-tab{color:var(--text-muted);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:2px;min-height:56px;padding:.6rem .25rem;font-size:.72rem;display:flex}.nav-tab--active{color:var(--primary);font-weight:600}.nav-icon{font-size:1.25rem}.sync-badge{border:1px solid var(--border);background:var(--surface);border-radius:999px;align-items:center;gap:.4rem;padding:.35rem .7rem;font-size:.8rem;display:inline-flex}.sync-dot{border-radius:50%;width:8px;height:8px}.sync-badge--ok .sync-dot{background:var(--present)}.sync-badge--pending .sync-dot{background:var(--excused)}.sync-badge--offline .sync-dot{background:var(--absent)}.field{color:var(--text-muted);flex-direction:column;gap:.3rem;font-size:.8rem;display:flex}.text-input{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;min-height:44px;padding:.6rem .7rem}.checkbox-field{align-items:center;gap:.4rem;min-height:44px;font-size:.85rem;display:flex}.checkbox-field input{width:20px;height:20px}.button{cursor:pointer;border:none;border-radius:10px;min-height:44px;padding:.7rem 1.1rem;font-weight:600}.button--primary{background:var(--primary);color:var(--primary-text)}.button--secondary{background:var(--surface);border:1px solid var(--border);color:var(--text)}.button--large{width:100%;padding:.9rem;font-size:1rem}.button:disabled{opacity:.5;cursor:not-allowed}.error-text{color:var(--danger);font-size:.85rem}.hint-text{color:var(--text-muted);font-size:.8rem}.empty-state{text-align:center;color:var(--text-muted);padding:2rem 1rem}.sign-in,.setup-sheet{justify-content:center;align-items:center;min-height:100dvh;display:flex}.sign-in__card,.setup-sheet__card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.75rem;width:100%;max-width:420px;padding:1.5rem;display:flex}.setup-sheet__card section{border-top:1px solid var(--border);flex-direction:column;gap:.5rem;padding-top:.75rem;display:flex}.setup-sheet__card section:first-of-type{border-top:none;padding-top:0}.take-roll__controls{gap:.75rem;margin-bottom:.75rem;display:flex}.take-roll__controls .field{flex:1}.take-roll__counts{flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem;font-size:.8rem;display:flex}.count{background:var(--border);border-radius:999px;padding:.25rem .6rem}.count--present{background:color-mix(in srgb, var(--present) 20%, transparent);color:var(--present)}.count--absent{background:color-mix(in srgb, var(--absent) 20%, transparent);color:var(--absent)}.count--excused{background:color-mix(in srgb, var(--excused) 25%, transparent);color:var(--excused)}.count--unmarked{color:var(--text-muted)}.take-roll__list{flex-direction:column;gap:.5rem;display:flex}.take-roll__add{width:100%;margin-top:1rem}.person-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.5rem;padding:.6rem;display:flex}.person-row--present{border-color:color-mix(in srgb, var(--present) 45%, var(--border))}.person-row--absent{border-color:color-mix(in srgb, var(--absent) 45%, var(--border))}.person-row--excused{border-color:color-mix(in srgb, var(--excused) 45%, var(--border))}.person-row__info{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.person-row__name{margin-right:auto;font-size:1rem;font-weight:600}.person-row__remove{color:var(--text-muted);background:0 0;border:none;min-width:32px;min-height:32px;font-size:1rem}.badge{background:var(--border);color:var(--text-muted);border-radius:999px;padding:.15rem .5rem;font-size:.7rem}.badge--coach{background:color-mix(in srgb, var(--primary) 20%, transparent);color:var(--primary)}.segmented{grid-template-columns:repeat(3,1fr);gap:.4rem;display:grid}.segmented__option{border:1px solid var(--border);background:var(--surface);min-height:44px;color:var(--text-muted);border-radius:8px;font-size:.85rem;font-weight:600}.segmented__option--active.segmented__option--present{background:var(--present);color:#fff;border-color:var(--present)}.segmented__option--active.segmented__option--absent{background:var(--absent);color:#fff;border-color:var(--absent)}.segmented__option--active.segmented__option--excused{background:var(--excused);color:#1a1d21;border-color:var(--excused)}.sheet-overlay{z-index:20;background:#0006;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);border-radius:16px 16px 0 0;flex-direction:column;gap:.75rem;width:100%;max-height:80dvh;padding:1rem;display:flex}.sheet__header{justify-content:space-between;align-items:center;display:flex}.icon-button{background:0 0;border:none;min-width:44px;min-height:44px;font-size:1.1rem}.sheet__list{margin:0;padding:0;list-style:none;overflow-y:auto}.sheet__list-item{border:none;border-bottom:1px solid var(--border);text-align:left;background:0 0;justify-content:space-between;align-items:center;width:100%;min-height:44px;padding:.7rem .4rem;display:flex}.sheet__empty{color:var(--text-muted);text-align:center;padding:1rem}.admin-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:.6rem;margin-bottom:1rem;padding:1rem;display:flex}.admin-section__header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.admin-row{grid-template-columns:2fr 1fr auto;align-items:center;gap:.5rem;display:grid}.admin-row--person{grid-template-columns:2fr 1fr 1fr auto}.admin-row--wrap{flex-wrap:wrap;gap:.5rem;display:flex}.admin-row--wrap .text-input,.admin-row--wrap .field{flex:1;min-width:120px}.admin-row--actions{gap:.5rem;display:flex}.admin-row__sort{width:4.5rem}.admin-footer{justify-content:flex-end;gap:.5rem;padding:1rem 0;display:flex}.team-view__controls{flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem;display:flex}.team-view__actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.table-scroll{border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.team-table{border-collapse:collapse;width:100%;font-size:.85rem}.team-table th,.team-table td{text-align:center;border-bottom:1px solid var(--border);white-space:nowrap;padding:.5rem .6rem}.team-table th:first-child,.team-table td:first-child{text-align:left}.sticky-col{background:var(--surface);z-index:1;position:sticky;left:0}.cell--present{color:var(--present);font-weight:700}.cell--absent{color:var(--absent);font-weight:700}.cell--excused{color:var(--excused);font-weight:700}
