:root{color:#17201d;background:#edf3ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:#edf3ef}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin:0}h1{color:#10211b;font-size:2rem;line-height:1;letter-spacing:0}h2{color:#17201d;font-size:1.25rem;line-height:1.12;letter-spacing:0}h3{color:#17201d;font-size:1rem;letter-spacing:0}input,select,textarea{width:100%;min-width:0;border:1px solid #cbd8d1;border-radius:8px;background:#fff;color:#17201d;outline:none}input,select{height:46px;padding:0 12px}textarea{min-height:92px;padding:10px 12px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#1d6b58;box-shadow:0 0 0 3px #1d6b5826}label span{display:block;margin-bottom:6px;color:#56665f;font-size:.78rem;font-weight:850}.app-shell{width:min(100%,560px);min-height:100dvh;margin:0 auto;padding:max(18px,env(safe-area-inset-top)) 12px calc(92px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px}.loading-screen,.login-shell{align-items:center;justify-content:center}.login-shell{min-height:100dvh;padding:18px;display:grid;place-items:center}.login-card{width:min(100%,390px);border:1px solid #d4ded8;border-radius:12px;background:#fbfcf8;padding:18px;display:flex;flex-direction:column;gap:14px}.login-copy,.muted-note{color:#5c6b64;line-height:1.4}.muted-note{font-size:.86rem;font-weight:700}.google-slot{min-height:42px;display:grid;place-items:center}.login-form,.form-panel,.page-stack,.list-stack{display:flex;flex-direction:column;gap:10px}.app-header{position:sticky;top:0;z-index:10;margin:-18px -12px 0;padding:max(18px,env(safe-area-inset-top)) 12px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#edf3efeb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.eyebrow{margin-bottom:4px;color:#5d6d67;font-size:.74rem;font-weight:850;letter-spacing:0;text-transform:uppercase}.logout-button,.mini-button{border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#dceae3;color:#173c32;font-weight:850;cursor:pointer}.logout-button{max-width:136px;min-height:40px;padding:0 10px}.logout-button span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel,.round-panel,.home-hero,.event-list-item{border:1px solid #d4ded8;border-radius:12px;background:#fbfcf8}.panel,.round-panel,.home-hero{padding:12px}.home-hero{min-height:210px;display:flex;flex-direction:column;justify-content:center;gap:14px}.quick-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.quick-stats div{min-height:78px;border:1px solid #d4ded8;border-radius:12px;background:#fff;padding:10px;display:grid;align-content:center;gap:4px}.quick-stats strong{font-size:1.55rem;font-variant:tabular-nums;line-height:1}.quick-stats span{color:#607069;font-size:.8rem;font-weight:800}.primary-button,.secondary-button,.big-start-button,.delete-button{border:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:880;cursor:pointer}.primary-button,.secondary-button{min-height:46px;padding:0 13px}.primary-button{background:#1d6b58;color:#fff}.primary-button.ghost{background:#e0ece6;color:#174538}.secondary-button{background:#253048;color:#fff}.big-start-button{width:100%;min-height:78px;padding:0 16px;background:#1d6b58;color:#fff;font-size:1.05rem}.primary-button:disabled,.secondary-button:disabled,.big-start-button:disabled,.mini-button:disabled{cursor:not-allowed;opacity:.52}.message,.floating-message{padding:10px 12px;border-radius:8px;font-weight:780;line-height:1.35}.floating-message{position:fixed;top:14px;left:14px;right:14px;z-index:40}.error{background:#ffe7df;color:#8f331c}.status{background:#dfefe8;color:#1d5d4f}.warning-list,.round-warnings{display:flex;flex-wrap:wrap;gap:7px}.warning-list p,.round-warnings span{padding:8px 10px;border-radius:8px;background:#fff3d3;color:#6f4b00;font-size:.82rem;font-weight:800}.inline-form{display:grid;grid-template-columns:1fr auto;gap:8px}.edit-row{display:grid;grid-template-columns:minmax(0,1.35fr) 72px minmax(0,1fr) 42px;gap:6px;align-items:center;border:1px solid #d4ded8;border-radius:12px;background:#fff;padding:8px}.edit-row.two-columns{grid-template-columns:1fr 42px}.delete-button{width:42px;height:42px;background:#ffe7df;color:#93351d}.event-list-item{width:100%;min-height:74px;padding:12px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;color:#17201d;text-align:left;cursor:pointer}.event-list-item span{font-weight:900}.event-list-item small{color:#607069;font-weight:760}.segmented{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:4px;border-radius:10px;background:#e2ebe6}.segmented button{min-height:40px;border:0;border-radius:8px;background:transparent;color:#53645e;font-size:.84rem;font-weight:850;cursor:pointer}.segmented button.selected{background:#fff;color:#18241f;box-shadow:0 1px 4px #16221d17}.check-grid,.check-list{display:grid;gap:8px}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.check-card{min-height:48px;border:1px solid #d4ded8;border-radius:10px;background:#fff;padding:8px 10px;display:grid;grid-template-columns:24px 1fr;align-items:center;gap:7px}.check-list .check-card{grid-template-columns:24px 1fr auto}.check-card input{width:19px;height:19px}.check-card span{margin:0;color:#17201d;font-weight:850;overflow-wrap:anywhere}.check-card small{color:#62716b;font-size:.74rem;font-weight:760}.check-list.compact{margin-top:10px}summary{cursor:pointer;color:#17201d;font-weight:880}.event-hero{display:flex;flex-direction:column;gap:12px}.event-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.event-meta span{min-height:42px;border-radius:8px;background:#eef4ef;display:flex;align-items:center;justify-content:center;gap:5px;color:#43534c;font-size:.8rem;font-weight:850}.round-list{display:flex;flex-direction:column;gap:12px}.round-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.round-header span{display:block;margin-top:2px;color:#63726c;font-size:.84rem;font-weight:800}.mini-button{min-height:36px;padding:0 10px}.round-panel.is-collapsed{padding-bottom:10px}.round-compact{border:1px solid #d8e4dd;border-radius:9px;background:#fff;padding:9px 10px;display:grid;gap:3px}.round-compact span{color:#24362f;font-weight:880;line-height:1.2}.round-compact small{color:#66736e;font-weight:780}.closed-round{border:1px dashed #bdcbc4;border-radius:10px;background:#f4f8f5;padding:10px}.closed-round .primary-button,.round-tools .primary-button{width:100%;margin-top:10px}.round-tools{border:1px solid #d8e4dd;border-radius:10px;background:#fff;padding:9px 10px;margin-bottom:9px}.round-setup{display:grid;gap:9px;margin-top:10px}.field-label{margin:2px 0 -3px;color:#42534c;font-size:.82rem;font-weight:900}.compact-segmented{margin-bottom:2px}.court-grid{display:grid;grid-template-columns:1fr;gap:8px}.court-card{border:1px solid #d7e1db;border-radius:10px;background:#f7faf7;padding:8px}.court-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.court-header strong{color:#1d332c}.court-header span{color:#63726c;font-size:.78rem;font-weight:850;text-align:right}.court-header span.has-warning{color:#9a4b19}.teams-grid{display:grid;grid-template-columns:1fr;gap:7px}.team-box{min-width:0;border:1px solid #cbd8d1;border-radius:10px;padding:7px;display:flex;flex-direction:column;gap:7px}.team-a{background:#eef8f4;border-color:#9dc9bb}.team-b{background:#f0f3fb;border-color:#adb9d6}.team-header{min-height:36px;display:flex;flex-direction:column;justify-content:center;gap:2px}.team-header strong{color:#13261f;font-size:.86rem;line-height:1}.team-header span{color:#56655f;font-size:.72rem;font-weight:850;line-height:1.15;overflow-wrap:anywhere}.team-slots,.pause-list{display:grid;gap:7px}.versus-badge{min-height:28px;border-radius:999px;background:#263247;color:#fff;display:grid;place-items:center;font-size:.7rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.player-slot{min-height:58px;border:1px dashed #c4d0ca;border-radius:9px;background:#fff;display:grid;place-items:stretch;padding:4px}.empty-slot{min-height:46px;display:grid;place-items:center;color:#82908a;font-size:.84rem;font-weight:760}.player-chip{width:100%;min-height:48px;border:1px solid #bfd1c9;border-radius:8px;background:#fff;color:#17201d;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;padding:7px 8px;cursor:grab;touch-action:none;text-align:left}.player-chip:active{cursor:grabbing}.player-chip.is-dragging{opacity:.35}.player-chip span{max-width:100%;overflow-wrap:anywhere;font-weight:880;line-height:1.12}.player-chip small{color:#5f6e68;font-size:.74rem;font-weight:780}.pause-bin{margin-top:8px;min-height:70px;border:1px dashed #b8c7c0;border-radius:10px;background:#f1f6f2;padding:8px}.pause-bin>strong{display:block;margin-bottom:7px;color:#30463e}.drag-floating{position:fixed;left:0;top:0;z-index:30;pointer-events:none;width:178px;border:1px solid #24745f;border-radius:8px;background:#fff;box-shadow:0 12px 26px #111f192e;padding:8px 9px}.drag-floating span{display:block;font-weight:880;overflow-wrap:anywhere}.drag-floating small{color:#5f6e68;font-weight:760}.bottom-nav{position:fixed;left:50%;bottom:0;z-index:20;width:min(100%,560px);transform:translate(-50%);padding:8px 8px max(8px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;border-top:1px solid #d4ded8;background:#fbfcf8f0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.bottom-nav button{min-width:0;min-height:54px;border:0;border-radius:10px;background:transparent;color:#68766f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.68rem;font-weight:850;cursor:pointer}.bottom-nav button.active{background:#dceae3;color:#173c32}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:520px){.teams-grid{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch}.versus-badge{align-self:center;width:42px;min-height:42px;writing-mode:vertical-rl}}@media(max-width:430px){.edit-row,.edit-row.two-columns,.inline-form,.check-grid{grid-template-columns:1fr}.delete-button{width:100%}}
