:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#152443;background:#edf4fc;font-synthesis:none;--navy: #101d36;--muted: #536780;--line: #d8e4f1;--blue: #2058d4;--shadow: 0 16px 44px #213d6610}*,*:before,*:after{box-sizing:border-box}body{min-width:260px;margin:0}button,input,textarea{font:inherit}button,summary{cursor:pointer}button:disabled{cursor:default;opacity:.6}a{color:var(--blue)}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #4d80ee;outline-offset:3px}svg{flex:none;vertical-align:middle}h1,h2,p{margin:0}h1,h2,strong,p{overflow-wrap:anywhere}h1{font-size:clamp(2rem,4.5vw,3rem);letter-spacing:-.055em;line-height:1.06}h2{font-size:1.25rem;letter-spacing:-.025em;line-height:1.2}code{overflow-wrap:anywhere}.frame{width:min(1120px,calc(100% - 64px));margin-inline:auto}.page{padding-block:50px 76px}.muted{color:var(--muted);line-height:1.55}.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:absolute;z-index:10;top:8px;left:8px;background:#fff;padding:12px}.topbar{color:#fff;background:var(--navy);border-bottom:1px solid #263754}.nav-inner{min-height:70px;display:flex;gap:18px;align-items:center;justify-content:space-between;padding-block:10px}.brand{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:760;letter-spacing:-.025em;font-size:1.08rem;line-height:1.2}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#2c65e6;box-shadow:inset 0 0 0 1px #ffffff32;flex:none}.nav-links{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.nav-link,.nav-register{min-height:40px;display:inline-flex;align-items:center;gap:7px;color:#fff;text-decoration:none;border-radius:9px;padding:8px 13px;font-size:.9rem;font-weight:630}.nav-link:hover{background:#243653}.boards-nav{background:#1e3050}.nav-register{background:#2c65e6}.nav-register:hover{background:#3871f1}.topbar :focus-visible{outline-color:#a2c6ff}.topbar .menu-button{color:#fff;background:transparent;border:1px solid #52617a}.topbar .menu-button:hover{background:#243653}.shell-message{padding-top:16px}.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:43px;padding:9px 14px;border-radius:9px;border:1px solid transparent;font-weight:670;font-size:.9rem;line-height:1.25;text-decoration:none;color:#203653;background:transparent;text-align:center}.primary{background:var(--blue);color:#fff;box-shadow:0 2px 3px #143ca827}.primary:hover:not(:disabled){background:#194aba}.secondary,.menu-button{background:#fff;border-color:#cedcec}.secondary:hover:not(:disabled),.menu-button:hover{background:#f3f7fc;border-color:#b9cde5}.danger{background:#b7253d;color:#fff}.danger:hover:not(:disabled){background:#991a30}.icon-button{min-width:42px;min-height:42px;padding:8px}.icon-button:hover:not(:disabled){background:#dce9fb}.link-button{border:0;background:transparent;padding:0;color:inherit;font:inherit;font-weight:680;text-decoration:underline}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap;margin-bottom:28px}.page-heading p:not(.eyebrow){margin-top:10px;color:var(--muted);line-height:1.55}.eyebrow{display:flex;align-items:center;gap:7px;color:#325eaa;font-size:.72rem;font-weight:780;letter-spacing:.13em;margin-bottom:12px}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #d0e0f4;background:#e5eefb;color:#385579;border-radius:99px;padding:7px 11px;font-size:.78rem;font-weight:670}.dashboard-toolbar,.leaderboard-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.search-field{flex:1 1 230px;max-width:370px;min-width:0;display:flex;align-items:center;gap:10px;padding:0 13px;min-height:45px;background:#fff;border:1px solid #cddbeb;border-radius:9px;color:var(--muted)}.search-field:focus-within{outline:3px solid #4d80ee;outline-offset:2px}.search-field input{width:100%;min-width:0;border:0;outline:0;color:#172948;background:transparent;padding:10px 0}.search-field input::placeholder,.field :is(input,textarea)::placeholder{color:#61738b;opacity:1}.collection-label{color:var(--muted);font-size:.83rem;font-weight:670;margin:27px 0 11px}.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,278px),1fr));gap:17px}.board-card{min-width:0;position:relative;display:grid;gap:12px;padding:19px;background:linear-gradient(145deg,#e7f1ff,#dfeeff);border:1px solid #cadff6;border-radius:15px;box-shadow:0 3px 12px #1e457409}.board-card:hover,.board-card:focus-within{border-color:#9cbff1}.card-top,.card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.card-bottom{border-top:1px solid #cbdff6;padding-top:12px}.board-icon{flex:none;display:grid;place-items:center;width:45px;height:45px;border-radius:12px;background:#d1e4ff;color:#2458b7;border:1px solid #bdd7f9}.card-link{color:inherit;text-decoration:none}.card-link:after{content:"";position:absolute;inset:0;border-radius:15px}.card-link:focus-visible{outline:0}.card-link:focus-visible:after{outline:3px solid #4d80ee;outline-offset:3px}.card-arrow{color:#315fa8}.updated{display:inline-flex;gap:5px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.8rem;line-height:1.45}.updated svg{margin-right:2px}.action-menu{position:relative;flex:none}.board-card .action-menu{z-index:1}.action-menu[open]{z-index:3}.action-menu summary{list-style:none}.action-menu summary::-webkit-details-marker{display:none}.menu-popover{position:absolute;inset-inline-end:0;top:calc(100% + 7px);z-index:4;min-width:165px;width:max-content;max-width:min(240px,calc(100vw - 32px));background:#fff;color:#172948;border:1px solid var(--line);border-radius:11px;box-shadow:0 12px 25px #16274529;padding:5px}.menu-popover button{width:100%;min-height:41px;border:0;background:transparent;padding:8px 10px;border-radius:6px;display:flex;align-items:center;gap:9px;text-align:left;color:inherit;font-size:.88rem}.menu-popover button:hover:not(:disabled){background:#edf4fd}.menu-popover .menu-danger{color:#a51e38}.account-summary{display:grid;gap:3px;padding:8px 10px 10px;border-bottom:1px solid var(--line)}.account-summary small{color:var(--muted)}.empty-state{display:grid;justify-items:center;gap:11px;text-align:center;padding:39px 20px;border:1px dashed #b9cde6;background:#f8fbff;border-radius:15px}.empty-state p{color:var(--muted);max-width:44ch;line-height:1.5}.empty-state .button{margin-top:6px}.empty-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;color:#2458b7;background:#e2eeff}.loading{display:flex;align-items:center;gap:9px;color:var(--muted);padding-block:24px}.loading svg{animation:spin 1.1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.notice{display:flex;align-items:flex-start;gap:9px;border:1px solid #efbcc5;background:#fff1f3;color:#8c2136;padding:12px 13px;border-radius:9px;margin-block:13px;font-size:.88rem;line-height:1.5}.notice svg{margin-top:1px}.notice>div{min-width:0;overflow-wrap:anywhere}.notice-success{background:#e9f8ef;border-color:#b4e0c2;color:#205e3b}.notice-info{background:#e5efff;border-color:#b9d1f5;color:#274a7b}.leaderboard-page{padding-top:33px}.back-link{display:inline-flex;gap:7px;align-items:center;color:#2b5aa8;text-decoration:none;font-size:.9rem;font-weight:670;margin-bottom:20px}.back-link:hover{text-decoration:underline}.leaderboard-heading{align-items:center}.board-title-block{display:flex;gap:15px;align-items:center;min-width:0}.board-title-block .eyebrow{margin-bottom:6px}.board-title-block .updated{margin-top:9px}.board-icon.large{width:65px;height:65px;border-radius:16px}.leaderboard-toolbar{justify-content:flex-start;padding:12px;border:1px solid #d5e3f4;border-radius:13px;background:#e5effc}.toolbar-spacer{flex:1}.participants-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:26px 0 13px}.participants-heading h2{display:flex;align-items:center;gap:8px}.participants-heading p{margin-top:5px;color:var(--muted);font-size:.83rem}.count{display:inline-grid;place-items:center;min-width:25px;padding:3px 7px;border-radius:30px;font-size:.76rem;letter-spacing:0;color:#2f5591;background:#dce9fb}.save-tools{display:flex;align-items:center;gap:8px}.save-status{display:flex;align-items:center;gap:5px;color:#42617f;font-size:.8rem}.refresh-button{border-color:#ccdaec;background:#f8fbff}.participant-list{display:grid;gap:8px;list-style:none;padding:0;margin:0}.participant-columns,.participant-row{display:grid;grid-template-columns:53px minmax(0,1fr) minmax(85px,max-content) 238px;align-items:center;gap:14px;padding-inline:15px}.participant-columns{margin-bottom:8px;color:var(--muted);font-size:.73rem;font-weight:740;text-transform:uppercase;letter-spacing:.075em}.participant-columns span:nth-child(3){text-align:right}.participant-columns span:last-child{text-align:center}.participant-row{min-height:67px;padding-block:8px;background:#fff;border:1px solid #dbe7f4;border-radius:12px;box-shadow:0 2px 4px #253e6610}.rank{display:grid;justify-items:center;align-items:center;grid-auto-flow:column;min-height:35px;justify-self:start;min-width:35px;max-width:100%;padding:4px 6px;border-radius:10px;border:1px solid #dbe6f2;background:#f1f5fb;color:#455a76;font-weight:800;font-size:.88rem;overflow-wrap:anywhere}.rank-1{background:#ffe8a0;border-color:#e8bd57;color:#664606}.rank-2{background:#e5eaf1;border-color:#c5d0e0;color:#44546b}.rank-3{background:#f7dcc8;border-color:#e9b78f;color:#774321}.participant-name{min-width:0;overflow-wrap:anywhere;font-weight:700}.score-value{text-align:right;font-variant-numeric:tabular-nums;font-size:1.1rem;font-weight:800}.row-actions,.score-controls{display:flex;justify-content:flex-end;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.score-button{min-width:40px;min-height:41px;padding:5px;border:1px solid #d6e2f0;background:#f5f8fc;color:#304865;border-radius:8px;font-size:.85rem;font-weight:750}.score-button.increase{background:#eaf2ff;color:#2054ac;border-color:#c9dcfa}.score-button:hover{background:#dfe9f6}.score-button.increase:hover{background:#d4e5ff}.score-button:active{transform:translateY(1px)}.auth-main{padding-block:clamp(22px,6vw,70px)}.auth-main>.notice{max-width:880px;margin:0 auto 17px}.auth-layout{max-width:880px;margin-inline:auto;display:grid;grid-template-columns:.9fr 1.1fr;border-radius:20px;background:#fff;box-shadow:var(--shadow)}.auth-feature{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:25px;padding:clamp(25px,4vw,42px);border-radius:20px 0 0 20px;background:linear-gradient(145deg,#e7f1ff,#d6e7ff);border:1px solid #cbdff9}.feature-kicker{display:inline-flex;align-items:center;gap:7px;color:#2554a0;font-size:.7rem;font-weight:780;letter-spacing:.12em}.auth-feature h2{font-size:clamp(2rem,4.1vw,3.2rem);line-height:1.03;letter-spacing:-.055em;margin-block:15px 11px}.auth-feature p{color:#425d80;line-height:1.6}.podium{display:flex;gap:8px;align-items:end;padding:8px 0 0;border-bottom:1px solid #9bb7e1}.podium span{flex:1;min-height:64px;display:grid;place-items:center;border-radius:10px 10px 0 0;border:1px solid #a7c1e8;border-bottom:0;background:#c2d8f8;color:#34568c;font-weight:800}.podium span:nth-child(2){min-height:95px;color:#684b0f;background:#ffe7a5;border-color:#e8c572}.podium span:last-child{min-height:47px;background:#f8dbc4;border-color:#e8b893;color:#7d4a24}.feature-foot{display:flex;gap:7px;align-items:center;color:#425d80;font-size:.8rem;font-weight:640}.auth-card{min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:clamp(23px,4vw,47px);border:1px solid var(--line);border-left:0;border-radius:0 20px 20px 0}.auth-card h1{font-size:clamp(1.85rem,3.6vw,2.45rem)}.auth-card .empty-icon{margin-bottom:15px}.auth-card .back-link{align-self:start}.auth-intro{margin-block:9px 18px}.auth-form{display:grid;gap:13px}.field{display:grid;min-width:0;gap:6px;color:#253c5c;font-weight:680;font-size:.88rem}.field input,.field textarea{width:100%;min-width:0;min-height:44px;padding:9px 11px;border:1px solid #c7d6ea;border-radius:8px;background:#fbfdff;color:#172948;font-size:1rem;font-weight:480}.field textarea{resize:vertical}.field small{color:var(--muted);font-size:.77rem;font-weight:450}.forgot-link{justify-self:end;font-size:.84rem;font-weight:650}.auth-submit{justify-content:space-between;margin-top:4px}.auth-switch{margin-top:18px;color:var(--muted);font-size:.88rem}.auth-switch a{font-weight:680}.auth-form .notice{margin:0}dialog{max-width:min(460px,calc(100% - 28px));width:100%;max-height:calc(100% - 30px);color:#152443;background:#fff;border:1px solid var(--line);border-radius:17px;padding:0;box-shadow:0 20px 65px #0c17384a}dialog::backdrop{background:#0a173a88}.dialog-content{display:grid;gap:14px;padding:21px}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog-heading h2{font-size:1.35rem}.dialog-content p{color:var(--muted);line-height:1.5}.dialog-content .notice{margin:0}.dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:4px}@media(max-width:730px){.frame{width:calc(100% - 36px)}.page{padding-top:31px}.participant-columns,.participant-row{grid-template-columns:39px minmax(0,1fr) minmax(65px,max-content);gap:10px}.participant-columns span:last-child{display:none}.participant-row{padding-block:11px}.row-actions{grid-column:2 / -1}.toolbar-spacer{display:none}.auth-layout{display:flex;flex-direction:column-reverse}.auth-feature{border-radius:0 0 20px 20px;padding:23px}.auth-feature h2{font-size:1.65rem;margin-top:9px}.auth-feature h2 br,.podium,.feature-foot{display:none}.auth-feature h2 br:after{content:" "}.auth-card{border-radius:20px 20px 0 0;border-left:1px solid var(--line);border-bottom:0}}@media(max-width:430px){.frame{width:calc(100% - 28px)}.nav-inner{gap:8px;flex-wrap:wrap}.nav-links{gap:5px}.nav-links .button,.nav-link,.nav-register{font-size:.8rem;padding-inline:8px}.boards-nav svg{display:none}.brand{font-size:.96rem}.brand-mark{width:32px;height:32px}.page-heading{margin-bottom:19px}.dashboard-toolbar .search-field{max-width:none;flex-basis:100%}.leaderboard-toolbar{gap:7px;padding:8px}.leaderboard-toolbar .button{padding-inline:9px;font-size:.81rem}.leaderboard-toolbar .action-menu{position:static}.leaderboard-toolbar{position:relative}.leaderboard-toolbar .menu-popover{right:8px;top:calc(100% - 3px)}.board-icon.large{width:45px;height:45px}.board-icon.large svg{width:23px;height:23px}.participant-row,.participant-columns{padding-inline:9px}.row-actions{grid-column:1 / -1}.score-controls,.row-actions{gap:5px}.score-button{min-height:44px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
