:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#13251b;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f4f7f1;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{border:0}.app-shell{background:linear-gradient(135deg,#2271541f,#0000 36%),linear-gradient(315deg,#b92a3a24,#0000 34%),#f4f7f1;place-items:center;min-height:100vh;padding:32px 18px;display:grid}.landing-shell{background:#f4f7f1;min-height:100vh}.landing-header{background:#ffffffd1;border-bottom:1px solid #13251b1a;justify-content:space-between;align-items:center;gap:18px;min-height:92px;padding:18px clamp(18px,5vw,56px);display:flex}.landing-content{gap:22px;width:min(100%,980px);margin:0 auto;padding:44px clamp(18px,5vw,56px);display:grid}.centered{color:#227154}.auth-panel{background:#ffffffeb;border:1px solid #13251b1a;border-radius:8px;width:min(100%,430px);padding:28px;box-shadow:0 24px 70px #141f1b24}.brand-block{align-items:center;gap:16px;margin-bottom:30px;display:flex}.landing-brand{margin-bottom:0}.brand-mark{color:#fff;background:#227154;border-radius:8px;flex:none;place-items:center;width:52px;height:52px;display:grid}.brand-mark svg{width:28px;height:28px}.eyebrow,.summary-label,.field-note,.error-message{margin:0}.eyebrow,.summary-label{color:#b92a3a;letter-spacing:0;text-transform:uppercase;font-size:.78rem;font-weight:800}h1,h2{letter-spacing:0;margin:0;line-height:1.08}h1{margin-top:4px;font-size:clamp(2rem,8vw,3rem)}h2{margin-top:6px;font-size:1.55rem}.login-form,.signed-in{gap:18px;display:grid}label{color:#31433a;gap:8px;font-size:.92rem;font-weight:700;display:grid}.input-frame{background:#fff;border:1px solid #13251b29;border-radius:8px;align-items:center;gap:10px;min-height:52px;padding:0 14px;transition:border-color .16s,box-shadow .16s;display:flex}.input-frame:focus-within{border-color:#227154;box-shadow:0 0 0 4px #22715421}.input-frame svg{color:#227154;flex:none;width:20px;height:20px}input{color:#13251b;background:0 0;border:0;outline:0;width:100%;min-width:0}input::placeholder{color:#8b9891}.field-note{color:#5d6b63;font-size:.86rem;line-height:1.45}.error-message{color:#b92a3a;font-size:.9rem;font-weight:700;line-height:1.45}.primary-action,.secondary-action{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:10px;min-height:52px;font-weight:800;transition:transform .16s,opacity .16s,background .16s;display:inline-flex}.compact-action{min-width:124px}.primary-action{color:#fff;background:#13251b;margin-top:4px}.primary-action:not(:disabled):hover,.secondary-action:hover{transform:translateY(-1px)}.primary-action:disabled{cursor:not-allowed;opacity:.5}.secondary-action{color:#13251b;background:#e8eee9}.primary-action svg,.secondary-action svg{width:20px;height:20px}.status-row{color:#1a6047;background:#2271541a;border-radius:999px;align-items:center;gap:8px;width:fit-content;padding:8px 12px;font-size:.9rem;font-weight:800;display:inline-flex}.status-row svg{width:18px;height:18px}.player-summary{border-block:1px solid #13251b1a;gap:8px;padding:20px 0;display:grid}.landing-summary{border-block:0;width:min(100%,520px);padding:0}.player-summary p:last-child{color:#5d6b63;margin:0}.group-summary{background:#ffffffb8;border:1px solid #13251b1a;border-radius:8px;align-items:center;gap:14px;width:min(100%,520px);padding:16px;display:flex}.group-summary svg{color:#227154;flex:none;width:24px;height:24px}.group-summary strong{color:#13251b;margin-top:4px;font-size:1.08rem;display:block}.group-list{flex-wrap:wrap;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.group-list li{color:#1a6047;background:#2271541a;border-radius:999px;padding:7px 10px;font-size:.92rem;font-weight:800}.empty-landing{color:#5d6b63;text-align:center;background:#fff9;border:1px dashed #13251b33;border-radius:8px;place-items:center;min-height:280px;padding:28px;display:grid}.empty-landing p{margin:0;font-weight:700}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=460px){.app-shell{align-items:stretch;padding:14px}.auth-panel{align-self:center;padding:22px}.brand-block{align-items:flex-start;gap:12px}.landing-header{flex-direction:column;align-items:stretch}.compact-action{width:100%}.landing-content{padding-top:28px}}
