:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--green-50:#f0fdf4;--green-100:#dcfce7;--green-200:#bbf7d0;--green-500:#22c55e;--green-600:#16a34a;--green-700:#15803d;--green-800:#166534;--green-900:#14532d;--bg:#f1f5f9;--surface:#fff;--surface-2:#f8fafc;--border:#e2e8f0;--border-md:#cbd5e1;--text:#0f172a;--text-2:#475569;--text-muted:#94a3b8;--red-600:#dc2626;--red-100:#fee2e2;--blue-600:#2563eb;--blue-100:#dbeafe;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:18px;--shadow-xs:0 1px 2px #0000000f;--shadow-sm:0 1px 3px #00000014,0 1px 2px #0000000d;--shadow-md:0 4px 12px #00000014,0 1px 3px #0000000d;--shadow-lg:0 10px 28px #0000001a,0 2px 6px #0000000f;--t:.15s ease}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;padding:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.5}h1{letter-spacing:-.025em;color:var(--text);margin:0;font-size:1.875rem;font-weight:700;line-height:1.2}h2{color:var(--text);margin:0;font-size:1.125rem;font-weight:650}p{color:var(--text-2);margin:0}label{color:var(--text);font-size:.875rem;font-weight:600}.content-width{width:min(860px,92vw);margin:auto;padding:1rem 0}.page{place-content:flex-start center;gap:1.25rem;padding:0 2rem 2rem;display:grid}.page.login-page{place-content:center}.full-page.full-page{place-content:center;height:100dvh}.header{z-index:50;width:100%;margin:8px 0 auto;padding:0 2vw;position:sticky;top:8px}.header-container{-webkit-backdrop-filter:blur(12px)saturate(180%);border-radius:var(--r-xl);box-shadow:var(--shadow-sm),0 0 0 1px #00000008;background-color:#ffffffb8;border:1px solid #ffffff8c;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:4px 8px;display:flex}.logo{color:var(--green-800);letter-spacing:-.03em;height:43px;font-weight:700}.profile-svg{width:26px;height:26px;color:var(--green-800);border:1.5px solid var(--green-800);transition:opacity var(--t);border-radius:100%;padding:3px}.profile-svg:hover{opacity:.6}.profile-btn{color:var(--green-800);align-items:center;gap:.3rem;font-weight:500;display:flex}.auth-card{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);width:min(420px,92vw);box-shadow:var(--shadow-sm);gap:.85rem;padding:1.25rem;display:grid}.schedule-card{width:min(860px,92vw)}button{border-radius:var(--r-md);background:var(--green-900);color:#fff;cursor:pointer;width:fit-content;transition:background var(--t),opacity var(--t),box-shadow var(--t);border:0;padding:.5rem .9rem;font-size:.875rem;font-weight:500}button:active:not(:disabled){opacity:.9}button:focus-visible{outline:2px solid var(--green-600);outline-offset:2px}button:disabled{opacity:.5;cursor:not-allowed}.primary{color:#fff;background:var(--green-700)}.primary:hover:not(:disabled){background:var(--green-800)}.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border-md)}.secondary:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-md)}.danger{color:var(--red-600)}input{box-sizing:border-box;border:1px solid var(--border-md);border-radius:var(--r-md);width:100%;max-width:100%;color:var(--text);background:var(--surface);transition:border-color var(--t),box-shadow var(--t);outline:none;padding:.55rem .75rem;font-family:inherit;font-size:.9rem}input:focus{border-color:var(--green-600);box-shadow:0 0 0 3px #16a34a1f}select{border:1px solid var(--border-md);border-radius:var(--r-md);background:var(--surface);width:100%;color:var(--text);transition:border-color var(--t),box-shadow var(--t);outline:none;padding:.55rem .75rem;font-family:inherit;font-size:.9rem}select:focus{border-color:var(--green-600);box-shadow:0 0 0 3px #16a34a1f}textarea{border:1px solid var(--border-md);border-radius:var(--r-md);resize:none;width:100%;color:var(--text);background:var(--surface);transition:border-color var(--t),box-shadow var(--t);outline:none;padding:.55rem .75rem;font-family:inherit;font-size:.9rem}textarea:focus{border-color:var(--green-600);box-shadow:0 0 0 3px #16a34a1f}.checkbox-row{align-items:center;gap:.6rem;display:flex}.checkbox-row input[type=checkbox]{width:auto;accent-color:var(--green-700);cursor:pointer;width:16px;height:16px}.bold{color:var(--text);font-weight:700}.error{color:var(--red-600);font-size:.875rem}.muted{color:var(--text-muted);font-size:.875rem}.capitalize{text-transform:capitalize}.right-aligned{text-align:right}.left-aligned{text-align:left}.stack-sm{gap:.6rem;display:grid}.stack-fill{flex:1}.row-gap{align-items:stretch;gap:.5rem;display:flex}li div.row-gap{flex-direction:row;justify-content:flex-end}.tab-content{flex-direction:column;gap:1rem;display:flex}.styled-link{z-index:0;background-color:var(--green-50);border:1px solid var(--green-200);border-radius:var(--r-sm);padding:1px 5px;position:relative}.styled-link *{color:var(--green-700);z-index:2;font-family:monospace;text-decoration:underline;position:relative}a.text-link:link,a.text-link:visited,a.text-link:hover{color:var(--green-700)}a.event-item{background:var(--surface-2);width:100%;color:var(--text);transition:background var(--t);justify-content:flex-start;align-items:flex-start;text-decoration:none;display:flex}a.event-item:hover{background:var(--green-50);opacity:1}.group-list{gap:.6rem;margin:0;padding-left:1rem;display:grid}.group-list li{flex-direction:row;align-items:center;gap:.25rem;display:flex}.group-list li div{word-break:break-word;flex-direction:column;gap:.2rem;width:230px;display:flex}.group-list.role-selection li div{width:100%}.group-list.role-selection li select{width:min-content;min-width:90px}.schedule-head{justify-content:space-between;align-items:center;gap:1rem;display:flex}.group-header-row{justify-content:space-between;align-items:center;gap:.75rem;width:min(860px,92vw);display:flex}.game-header-row{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem;display:grid}.day-cell{border:1px solid var(--border);background:var(--surface);border-radius:var(--r-md);text-align:left;min-height:72px;transition:border-color var(--t);align-content:start;gap:.2rem;padding:.4rem;display:grid}.day-muted{opacity:.45}.day-selected{outline:2px solid var(--text)}.day-number{color:var(--text);font-size:.85rem;font-weight:700}.day-events{color:var(--text-2);flex-direction:column;gap:.35rem;font-size:.75rem;display:flex}.game-title{font-size:1rem}.event-item{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);transition:border-color var(--t),box-shadow var(--t);flex-direction:column;gap:.4rem;padding:.6rem .7rem;display:flex}.event-item:hover{border-color:var(--border-md);box-shadow:var(--shadow-xs)}.participants-list{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);gap:.3rem;max-height:320px;padding:.5rem;display:grid;overflow:auto}.participant-row{border-radius:var(--r-sm);transition:background var(--t);grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;padding:.35rem .45rem;display:grid}.participant-row:hover{background:var(--surface-2)}.profile-sign{justify-content:space-between;align-items:center;width:100%;display:flex}.team-columns,.scoring-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}@media (max-width:700px){.team-columns{grid-template-columns:1fr}}.scoreline{letter-spacing:-.03em;color:var(--text);justify-content:center;align-items:center;margin-bottom:1rem;font-size:clamp(2.4rem,8vw,5rem);font-weight:800;display:flex}.scoreline-controls{gap:.85rem}.score-plus{width:2.5rem;height:2.5rem;box-shadow:var(--shadow-xs);border-radius:999px;padding:0;font-size:1.35rem;line-height:1}.goal-log-item{font-size:.875rem}.goal-player,.goal-assist-name{font-weight:600}.goal-minute{margin-left:.25rem}.player-tile{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);height:38px;transition:border-color var(--t),box-shadow var(--t);margin-bottom:.4rem;padding:.35rem .7rem;overflow:hidden}.player-tile-actions{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.player-tile-main{justify-content:space-between;align-items:center;gap:.4rem;width:100%;min-width:0;display:flex}.player-name{flex-direction:row;align-items:center;gap:.4rem;font-size:.9rem;display:flex}.goalie-tile{background:var(--blue-100);border-color:#93c5fd}.goalie-placeholder{align-items:center;display:flex}.goalie-select-button{border:1.5px dashed var(--border-md);width:100%;color:var(--text-muted);text-align:left;background:0 0}.goalie-select-button:hover:not(:disabled){background:var(--surface-2);border-color:var(--green-600)}.team-subtitle{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.75rem;font-weight:600}.team-heading-row{align-items:center;gap:.45rem;display:flex}.team-vest-square{border:1px solid var(--border-md);border-radius:3px;flex-shrink:0;width:16px;height:16px}.no-vest-square{border-color:var(--border-md);background:#fff;background-image:linear-gradient(to top right,transparent 45%,var(--red-600)45%,var(--red-600)55%,transparent 55%)}.add-players-button{border:1.5px dashed var(--border-md);width:100%;color:var(--text-2);background:0 0;font-weight:500}.add-players-button:hover:not(:disabled){background:var(--surface-2);border-color:var(--green-600);color:var(--green-700)}.end-game-button{background:var(--red-600);color:#fff}.end-game-button:hover:not(:disabled){background:#b91c1c}.end-and-copy-button{color:#fff;background:#16a34a}.end-and-copy-button:hover:not(:disabled){background:var(--green-800)}.breadcrumbs{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.4rem;margin:.25rem 0 .75rem;font-size:.875rem;display:flex}.breadcrumb-item{align-items:center;gap:.4rem;display:inline-flex}.breadcrumb-item a{color:inherit;transition:color var(--t)}.breadcrumb-item a:hover,.breadcrumb-current{color:var(--text-2)}.breadcrumb-sep{opacity:.45}.modal-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;background:#0f172a66;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);width:min(560px,100%);max-height:min(85vh,760px);box-shadow:var(--shadow-lg);gap:.8rem;padding:1.25rem;display:grid;overflow:auto}.settings-modal-card{width:min(520px,100%)}.scoring-modal.scoring-modal{flex-direction:column;display:flex}.settings-cog-button{border-radius:var(--r-md);background:var(--surface);width:36px;height:36px;color:var(--text-2);border:1px solid var(--border-md);box-shadow:var(--shadow-xs);padding:0;font-size:1rem;line-height:1}.settings-cog-button:hover:not(:disabled){background:var(--surface-2)}.modal-actions{justify-content:flex-end}.modal-button{width:100%}.modal-confirm{width:min(420px,100%)}.settings-color-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.settings-color-row label{gap:.35rem;display:grid}.settings-color-row input[type=color]{border-radius:var(--r-md);cursor:pointer;width:100%;height:42px;padding:.2rem}.kebab-menu{position:relative}.kebab-trigger{border-radius:var(--r-md);border:1px solid var(--border-md);background:var(--surface);width:34px;height:34px;color:var(--text-2);box-shadow:var(--shadow-xs);padding:0;font-size:1.1rem;line-height:1}.kebab-trigger:hover:not(:disabled){background:var(--surface-2)}.kebab-dropdown{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);width:200px;box-shadow:var(--shadow-lg);z-index:30;color:var(--text);gap:.2rem;padding:.35rem;display:grid;position:absolute;top:calc(100% + .4rem);right:0}.kebab-item{text-align:left;width:100%;color:var(--text);border-radius:var(--r-sm);background:0 0;border:1px solid #0000;font-size:.875rem}.kebab-item:hover:not(:disabled){background:var(--surface-2);border-color:var(--border)}.goal-selection-card{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);gap:.5rem;padding:.65rem;display:grid}.goal-selection-row{grid-template-columns:52px 1fr;align-items:center;gap:.5rem;display:grid}.goal-selection-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.goal-selection-value{border:1px solid var(--border);border-radius:var(--r-md);color:var(--text-muted);background:var(--surface-2);justify-content:space-between;align-items:center;min-height:34px;padding:.35rem .5rem;font-size:.875rem;display:flex}.selector-button{text-align:left;background:var(--surface);width:100%}.selector-button.active{box-shadow:inset 0 0 0 1.5px var(--text)}.selection-clear{color:var(--text-muted);cursor:pointer;transition:color var(--t);margin-left:.5rem;font-size:1rem;line-height:1}.selection-clear:hover{color:var(--text-2)}.goal-selection-value.scorer{border-color:var(--green-600);color:var(--green-800);background:var(--green-50)}.goal-selection-value.assist{border-color:var(--blue-600);color:#1d4ed8;background:var(--blue-100)}.selection-phase{border-radius:var(--r-sm);padding:.4rem .65rem;font-size:.875rem;font-weight:600}.selection-phase-scorer{background:var(--green-100);color:var(--green-800)}.selection-phase-assist{background:var(--blue-100);color:#1d4ed8}.goal-player-button{text-align:left;background:var(--surface);width:100%;color:var(--text);border:1px solid var(--border);transition:background var(--t),border-color var(--t);font-size:.875rem}.goal-player-button:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-md)}.goal-player-button.disabled{opacity:.4}.goal-divider{border-top:1px solid var(--border);margin:.2rem 0}.invite-wrapper.invite-wrapper{max-width:80vw;width:unset}.invite-url{border-radius:var(--r-sm);overflow-wrap:break-word;width:100%}.landing-page{place-items:center;min-height:100dvh;padding:2rem;display:grid}.landing-shell{gap:1rem;width:min(1080px,100%);display:grid}.landing-hero{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-sm);gap:.85rem;padding:1.75rem;display:grid}.landing-eyebrow{color:var(--green-700);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:700}.landing-lead{max-width:72ch;color:var(--text-2)}.landing-cta-row{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.landing-cta{border-radius:var(--r-md);transition:all var(--t);justify-content:center;align-items:center;padding:.6rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.landing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.landing-card{border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow-xs);transition:box-shadow var(--t),border-color var(--t);gap:.5rem;padding:1.1rem 1.25rem;display:grid}.landing-card:hover{box-shadow:var(--shadow-sm);border-color:var(--border-md)}.landing-card h2{font-size:.95rem}.home-page{align-content:start;justify-items:center;gap:1rem;padding:2rem;display:grid}.profile-page{align-content:start;justify-items:start;gap:1rem;min-width:min(860px,92vw);padding:2rem;display:grid}.home-head{justify-content:space-between;align-items:flex-start;gap:.9rem;width:min(860px,92vw);display:flex}.home-switcher{gap:.3rem;min-width:220px;display:grid}.header-right{justify-content:flex-end;align-items:flex-end}@media (max-width:820px){.landing-page{padding:1rem}.landing-grid{grid-template-columns:1fr}.home-page{padding:1rem}.home-head{flex-direction:column;align-items:stretch;width:min(860px,92vw)}}@media (max-width:768px){input,select,textarea,.sb-input{font-size:16px}}.position-picker{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.position-card{border-radius:var(--r-md);border:1px solid var(--border);cursor:pointer;background:var(--surface-2);color:var(--text-muted);text-align:center;width:100%;transition:all var(--t);padding:.85rem 1rem}.position-card:hover{border-color:var(--border-md)}.position-card-tertiary{color:#fff;background:#4e63a0;border-color:#3d5180}.position-card-secondary{color:#fff;background:#3f72c9;border-color:#3260b0}.position-card-primary{color:#fff;background:#2563eb;border-color:#1d4ed8;box-shadow:0 2px 8px #2563eb4d}.position-card-name{font-size:.9rem;font-weight:600}.position-card-label{opacity:.85;margin-top:3px;font-size:.8rem}.position-chips.position-chips{flex-direction:row;gap:4px;margin-top:6px;display:flex}.role-deletion.role-deletion{flex-direction:row;place-self:flex-end;display:flex}.position-chip{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;width:auto;transition:all var(--t);padding:2px 7px;font-size:.7rem;font-weight:600;line-height:1.4}.position-chip.position-chip-selected{color:#fff;background:#2563eb;border-color:#1d4ed8;box-shadow:0 1px 4px #2563eb40}.position-chip sup{margin-left:1px;font-size:.6rem}.sb-wrap{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-xs);font-family:inherit;overflow:hidden}.sb-header{border-bottom:1px solid var(--border);background:var(--surface-2);justify-content:space-between;align-items:flex-end;gap:16px;padding:14px 16px 12px;display:flex}.sb-title{color:var(--text);font-size:1rem;font-weight:650;line-height:1.2}.sb-subtitle{color:var(--text-muted);margin-top:2px;font-size:.8rem}.sb-controls{align-items:flex-end;gap:10px;display:flex}.sb-search{flex-direction:column;gap:6px;display:flex}.sb-searchLabel{color:var(--text-muted);font-size:.75rem}.sb-input{border:1px solid var(--border-md);border-radius:var(--r-md);background:var(--surface);width:220px;transition:border-color var(--t),box-shadow var(--t);outline:none;padding:7px 10px;font-family:inherit;font-size:.875rem}.sb-input:focus{border-color:var(--green-600);box-shadow:0 0 0 3px #16a34a1f}.sb-button{border:1px solid var(--border-md);border-radius:var(--r-md);background:var(--surface);cursor:pointer;color:var(--text-2);transition:background var(--t);padding:7px 12px;font-family:inherit;font-size:.875rem}.sb-button:hover{background:var(--surface-2)}.sb-alert{border-bottom:1px solid var(--border);background:var(--red-100);color:#7f1d1d;padding:10px 16px;font-size:.875rem}.sb-tableWrap{width:100%;overflow:auto}.sb-table{border-collapse:separate;border-spacing:0;width:100%}.sb-th,.sb-td{border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 14px;font-size:.875rem}.sb-th{background:var(--surface-2);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;-webkit-user-select:none;user-select:none;text-align:left;font-size:.72rem;font-weight:600;position:sticky;top:0}.sb-thInner{align-items:center;gap:6px;display:inline-flex}.sb-th--sortable{cursor:pointer}.sb-th--sortable:hover{background:var(--border)}.sb-sort{color:var(--text-2);font-size:.75rem}.sb-sort--off{color:var(--text-muted)}.sb-tr:hover .sb-td{background:var(--surface-2)}.sb-cell--right{text-align:right;font-variant-numeric:tabular-nums}.sb-rank{min-width:20px;color:var(--text-muted);display:inline-block}.sb-name{color:var(--text);font-weight:600}.sb-points{color:var(--text);font-weight:700}.sb-loading,.sb-empty{text-align:center;color:var(--text-muted);padding:20px 14px;font-size:.875rem}.sb-tr--me .sb-td{background:var(--green-50);font-weight:600}.sb-tr--me .sb-td:first-child{box-shadow:inset 3px 0 0 var(--green-500)}.sb-tr--me:hover .sb-td{background:var(--green-100)}.sb-tr--me .sb-points{color:var(--green-800)}.markdown-editor{border:1px solid var(--border-md);border-radius:var(--r-md);transition:border-color var(--t),box-shadow var(--t);gap:0;display:grid;overflow:hidden}.markdown-editor:focus-within{border-color:var(--green-600);box-shadow:0 0 0 3px #16a34a1f}.markdown-editor-tabs{border-bottom:1px solid var(--border);background:var(--surface-2);gap:0;display:flex}.markdown-editor-tabs button{width:auto;color:var(--text-muted);box-shadow:none;background:0 0;border:none;border-radius:0;padding:.35rem .8rem;font-size:.825rem;font-weight:500}.markdown-editor-tabs button:hover:not(:disabled){background:var(--border)}.markdown-editor-tabs button.tab-active{color:var(--text);border-bottom:2px solid var(--green-700);font-weight:600}.markdown-editor textarea{resize:vertical;min-height:100px;box-shadow:none;border:none;border-radius:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.875rem;line-height:1.6}.markdown-editor textarea:focus{box-shadow:none}.markdown-preview{min-height:100px;color:var(--text-2);background:var(--surface);padding:.6rem .75rem;font-size:.9rem;line-height:1.65}.markdown-preview p,.event-description p{color:var(--text-2);margin:0 0 .5em}.markdown-preview p:last-child,.event-description p:last-child{margin-bottom:0}.markdown-preview h1,.markdown-preview h2,.markdown-preview h3,.markdown-preview h4,.event-description h1,.event-description h2,.event-description h3,.event-description h4{color:var(--text);margin:.75em 0 .3em;font-weight:700;line-height:1.25}.markdown-preview h1:first-child,.markdown-preview h2:first-child,.event-description h1:first-child,.event-description h2:first-child{margin-top:0}.markdown-preview ul,.markdown-preview ol,.event-description ul,.event-description ol{color:var(--text-2);margin:.4em 0;padding-left:1.4em}.markdown-preview li,.event-description li{margin:.2em 0}.markdown-preview strong,.event-description strong{font-weight:700}.markdown-preview em,.event-description em{font-style:italic}.markdown-preview code,.event-description code{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85em}.markdown-preview blockquote,.event-description blockquote{border-left:3px solid var(--border-md);color:var(--text-muted);margin:.5em 0;padding:.2em .75em}.event-description{color:var(--text-2);font-size:.925rem;line-height:1.65}
