:root{color-scheme:dark;--cc-text:#e9faff;--cc-accent:#19ff88;--cc-muted:#8bbbd2;--cc-font:system-ui,sans-serif;--cc-size:14px;--cc-heading:56px;--cc-logo:240px;--cc-border:#103446;--cc-bg:#050d12}
*{box-sizing:border-box}body.cc-body{margin:0;padding:0;background:radial-gradient(ellipse at 48% 0,rgba(0,94,111,.09),transparent 65%),var(--cc-bg);color:var(--cc-text);font-family:var(--cc-font);font-size:var(--cc-size);min-height:100vh;display:flex;flex-direction:column}body.cc-body main{flex:1}a{color:var(--cc-muted)}a:hover{color:var(--cc-accent)}[hidden]{display:none!important}.cc-body h1,.cc-body h2{color:var(--cc-text);font-family:var(--cc-font)}.cc-body button,.cc-button{background:var(--cc-button-bg);border:1px solid var(--cc-border);color:var(--cc-text);padding:7px 12px;border-radius:4px;font-size:12px;text-decoration:none}.cc-body button:hover,.cc-button:hover{color:var(--cc-accent);border-color:var(--cc-accent)}.cc-body input,.cc-body textarea,.cc-body select{background:var(--cc-input-bg);color:var(--cc-text);border:1px solid var(--cc-border);border-radius:4px}.cc-body :focus-visible{outline:2px solid var(--cc-accent);outline-offset:3px}
.cc-nav{display:flex;align-items:center;gap:20px;min-height:46px;padding:8px 18px;border-bottom:1px solid var(--cc-border);background:var(--cc-nav-bg);flex-wrap:wrap}.cc-nav a{text-decoration:none;font-size:12px}.cc-brand{display:flex;align-items:center;gap:8px;font-weight:900;color:var(--cc-text)!important;white-space:nowrap;font-size:14px!important}.cc-brand img{width:26px;height:26px;border-radius:50%;box-shadow:0 0 15px #00cfff30}.cc-nav-right{display:flex;gap:14px;align-items:center;margin-left:auto}.cc-global-flag{display:flex;gap:8px;margin:0 auto;align-items:center}.cc-global-flag input{width:280px;padding:6px 10px;font-family:ui-monospace,Consolas,monospace}.cc-header-note{text-align:center;padding:10px;border-bottom:1px solid var(--cc-border);white-space:pre-wrap}.cc-status{position:sticky;top:0;z-index:5;margin:0;padding:12px 24px;background:var(--cc-notice-bg);border-bottom:1px solid var(--cc-accent);color:var(--cc-text)}.cc-footer{display:flex;justify-content:space-between;gap:24px;padding:35px max(24px,calc((100% - 1080px)/2));border-top:1px solid var(--cc-border);font-size:10px;color:var(--cc-muted);margin-top:65px}.cc-footer a{text-decoration:none;color:var(--cc-blue)}
.cc-home{width:min(1080px,calc(100% - 48px));margin:75px auto 0}.cc-hero{display:grid;grid-template-columns:var(--cc-logo) 1fr;align-items:center;gap:52px}.cc-hero-logo{width:var(--cc-logo);height:var(--cc-logo);border-radius:50%;box-shadow:0 0 35px #00cfff24}.cc-eyebrow{font:700 10px ui-monospace,Consolas,monospace;letter-spacing:2px;color:var(--cc-blue);margin:0 0 18px}.cc-hero .cc-eyebrow{color:var(--cc-accent)}.cc-hero h1{font-size:var(--cc-heading);font-weight:900;letter-spacing:-2px;margin:0 0 12px;line-height:1.12}.cc-hero h1 em{font-style:normal;color:var(--cc-accent)}.cc-welcome{line-height:1.8;max-width:600px;color:var(--cc-muted);white-space:pre-wrap}.cc-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.cc-terminal{margin-top:34px;border:1px solid #115167;border-radius:7px;overflow:hidden;box-shadow:0 20px 60px #0006}.cc-terminal-bar{background:var(--cc-terminal-bar);padding:10px 12px;border-bottom:1px solid var(--cc-border);font:9px ui-monospace,Consolas,monospace;letter-spacing:1px;color:var(--cc-muted)}.cc-terminal-bar span{color:#234351;margin-right:10px}.cc-terminal pre{background:var(--cc-terminal-bg);margin:0;padding:18px 16px;min-height:220px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7;font:12px/1.7 ui-monospace,Consolas,monospace;color:var(--cc-muted)}.cc-terminal .cc-command{color:var(--cc-accent)}.cc-terminal-footer{background:var(--cc-terminal-footer);padding:8px 12px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--cc-border);color:var(--cc-muted)}.cc-terminal-footer small{font:9px ui-monospace,Consolas,monospace}.cc-terminal-footer button{font-size:10px;padding:4px 8px}.cc-start{margin-top:60px}.cc-start h2{font-size:20px;font-weight:800;margin-bottom:18px}.cc-start p{line-height:1.7}
.cc-board-layout{max-width:1540px;margin:60px auto 0;padding:0 24px;display:flex;gap:40px;align-items:flex-start}.cc-filters{width:190px;flex:none;position:sticky;top:20px}.cc-filters label{display:flex;gap:8px;align-items:center;font-size:12px}.cc-filters input{accent-color:var(--cc-accent)}.cc-filters h2{font-size:13px;margin-top:30px;color:var(--cc-muted)}#cc-categories{display:flex;flex-direction:column;gap:8px;margin-top:15px}#cc-categories button{text-align:left;background:transparent;border-color:transparent}#cc-categories button[aria-pressed=true]{border-color:var(--cc-border);color:var(--cc-accent);background:var(--cc-filter-bg)}.cc-board{flex:1;min-width:0}.cc-board h1{font-size:28px;font-weight:800;margin-bottom:25px}.cc-category{margin:30px 0 0}.cc-category>h2{font:700 14px ui-monospace,Consolas,monospace;letter-spacing:3px;color:var(--cc-accent);display:flex;align-items:center;gap:16px;margin-bottom:16px}.cc-category>h2:after{content:"";height:1px;flex:1;background:var(--cc-border)}.cc-task{border:1px solid var(--cc-border);border-radius:5px;margin:10px 0;background:var(--cc-task-bg)}.cc-task summary{list-style:none;display:flex;align-items:center;gap:14px;padding:12px 14px;cursor:pointer;min-height:44px;font-size:13px;font-weight:700}.cc-task summary::-webkit-details-marker{display:none}.cc-task summary:after{content:"⌄";color:var(--cc-blue)}.cc-task[open] summary:after{content:"⌃"}.cc-task .cc-points{margin-left:auto;white-space:nowrap;font:700 11px ui-monospace,Consolas,monospace;color:var(--cc-accent)}.cc-task.cc-solved{border-color:#176345;background:var(--cc-solved-bg)}.cc-task.cc-solved summary:before{content:"✓";color:var(--cc-accent)}.cc-task-content{border-top:1px solid var(--cc-border);padding:20px;font-size:var(--cc-size);line-height:1.7;overflow-wrap:anywhere}.cc-task-content img{max-width:100%;height:auto}.cc-task-content pre{white-space:pre-wrap}.cc-task-files{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.cc-author{font-size:12px;color:var(--cc-muted)}.cc-local-flag{display:flex;gap:8px;margin-top:18px}.cc-local-flag input{padding:7px;flex:1;min-width:0}.cc-board-clock{width:270px;flex:none}
.cc-score-page{width:min(1280px,calc(100% - 48px));margin:80px auto 0}.cc-score-header{display:flex;gap:14px;align-items:center;padding-bottom:22px;border-bottom:1px solid var(--cc-border);margin-bottom:16px}.cc-score-header img{width:68px;height:68px;border-radius:50%;box-shadow:0 0 20px #00cfff1a}.cc-score-header .cc-eyebrow{margin-bottom:6px}.cc-score-header h1{font-size:22px;margin:0}#cc-live-label{margin-left:auto;color:var(--cc-accent);font:10px ui-monospace,Consolas,monospace}.cc-score-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:16px}.cc-leaderboard{border:1px solid var(--cc-border);background:var(--cc-leader-bg);min-height:460px}.cc-table-heading{display:flex;align-items:center;justify-content:space-between;padding:14px;border-bottom:1px solid var(--cc-border);gap:16px}.cc-table-heading .cc-eyebrow{margin:0}.cc-tabs{display:flex;gap:8px}.cc-tabs button[aria-pressed=true]{color:var(--cc-accent);border-color:#19634c}.cc-table-scroll{overflow-x:auto}.cc-table{width:100%;border-collapse:collapse}.cc-table th{color:var(--cc-muted);font:700 13px ui-monospace,Consolas,monospace;letter-spacing:1px;padding:22px 20px;border-bottom:1px solid var(--cc-border)}.cc-table td{padding:22px 20px;font:700 28px ui-monospace,Consolas,monospace;border-bottom:1px solid var(--cc-border)}.cc-table td:first-child{width:80px;color:var(--cc-muted)}.cc-table tr:first-child td:first-child{color:var(--cc-gold)}.cc-table td:last-child,.cc-table th:last-child{text-align:right}.cc-table td.cc-team-cell{font-size:15px;color:var(--cc-muted)}#cc-score-message{padding:18px;color:var(--cc-muted)}.cc-clock{border:1px solid var(--cc-border);background:var(--cc-clock-bg);padding:32px 19px 24px}.cc-clock-digits{display:flex;gap:10px}.cc-clock-digits>div{border:1px solid #14485b;flex:1;min-width:0;background:linear-gradient(var(--cc-digit-top),var(--cc-digit-bottom));text-align:center;padding:16px 0}.cc-clock strong{font:700 52px ui-monospace,Consolas,monospace;color:var(--cc-accent);letter-spacing:-2px;text-shadow:0 0 22px #19ff8826}.cc-clock small{display:block;color:var(--cc-muted);font:9px ui-monospace,Consolas,monospace;letter-spacing:1px;margin-top:4px}.cc-clock-note{font-size:11px;color:var(--cc-muted);margin:14px 0 0;min-height:16px}.cc-last-solves{margin-top:14px;padding:20px;border:1px solid var(--cc-border);background:var(--cc-clock-bg)}.cc-last-solve{display:grid;grid-template-columns:40px 1fr;gap:10px;margin-top:16px;font:11px ui-monospace,Consolas,monospace}.cc-last-solve strong{color:var(--cc-accent)}.cc-last-solve small{display:block;color:var(--cc-muted);line-height:1.7;margin-top:4px}.cc-generic{margin-top:50px}.cc-body .jumbotron{background:transparent;padding:40px 0 10px}.cc-body .form-control{background:var(--cc-input-bg);color:var(--cc-text);border-color:var(--cc-border)}
@media(min-width:1300px){.cc-global-flag{position:absolute;left:50%;transform:translateX(-50%)}}@media(max-width:1000px){.cc-board-layout{gap:24px}.cc-board-clock{display:none}.cc-global-flag{order:3;width:100%;justify-content:center}.cc-global-flag input{width:min(420px,70%)}.cc-score-layout{grid-template-columns:minmax(0,1fr) 270px}.cc-clock strong{font-size:42px}.cc-hero{gap:30px}.cc-hero h1{font-size:42px}}@media(max-width:700px){.cc-nav{gap:12px}.cc-nav-right{flex-wrap:wrap;gap:10px}.cc-home{margin-top:40px}.cc-hero{display:flex;flex-direction:column;align-items:flex-start;gap:28px}.cc-hero-logo{width:180px;height:180px;align-self:center}.cc-hero h1{font-size:38px}.cc-footer{padding:24px;flex-wrap:wrap;gap:14px}.cc-board-layout{display:block;margin-top:30px}.cc-filters{position:static;width:100%;margin-bottom:25px}#cc-categories{flex-direction:row;flex-wrap:wrap}.cc-filters h2{margin-top:16px}.cc-score-page{margin-top:35px}.cc-score-layout{display:flex;flex-direction:column}.cc-score-layout>aside{display:grid;grid-template-columns:1fr;gap:12px}.cc-last-solves{margin:0}.cc-table td{font-size:20px;padding:16px 12px}.cc-table th{padding:18px 12px}.cc-table-heading{flex-wrap:wrap}.cc-terminal pre{font-size:11px}.cc-local-flag{flex-wrap:wrap}.cc-table td.cc-team-cell{font-size:12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.cc-body main{padding-top:0;min-height:0;margin-bottom:0}.cc-body{letter-spacing:normal}

.cc-category>h2{text-transform:uppercase}.cc-board h1,.cc-score-header h1,.cc-start h2{letter-spacing:normal}

/* 0.2.1: compact notices and a fixed terminal viewport. */
.cc-status{position:fixed;top:auto;bottom:20px;right:20px;width:max-content;max-width:min(380px,calc(100vw - 32px));display:flex;gap:12px;align-items:center;padding:10px 12px;border:1px solid #23516a;border-radius:6px;box-shadow:0 5px 22px #0006;font-size:12px;z-index:1100}
.cc-status[data-state=success]{border-color:#1c8356}.cc-status[data-state=warning]{border-color:#93513e}.cc-status button{background:transparent;border:0;padding:0 3px;font-size:19px;line-height:1;flex:none;color:var(--cc-muted)}
.cc-terminal pre{height:calc(var(--cc-terminal-rows,10)*1.7em);padding:0;min-height:0;overflow:hidden;scrollbar-width:none;overflow-anchor:none}
@media(max-width:700px){.cc-status{right:16px;bottom:16px}}

.cc-terminal-screen{padding:18px 16px;background:var(--cc-terminal-bg)}

:root{--cc-font:system-ui,sans-serif;--cc-size:14px;--cc-heading:56px}
.cc-status{top:60px;bottom:auto;left:50%;right:auto;transform:translateX(-50%)}
.cc-global-flag input{border:1px solid #1a9aa3;box-shadow:0 0 10px #00cfff22}.cc-global-flag button{border:1px solid #28d99a;box-shadow:0 0 10px #19ff8822}
.cc-global-flag input.cc-flag-good{border-color:#19ff88;box-shadow:0 0 15px #19ff8866}.cc-global-flag input.cc-flag-bad{border-color:#ff5575;box-shadow:0 0 15px #ff557566}

:root{--cc-button-bg:#071722;--cc-input-bg:#07131b;--cc-nav-bg:#040c12;--cc-notice-bg:#092131;--cc-terminal-bar:#071720;--cc-terminal-bg:#030b0f;--cc-terminal-footer:#06131c;--cc-filter-bg:#0a1b22;--cc-task-bg:#06121a;--cc-solved-bg:#072018;--cc-leader-bg:#06131d;--cc-clock-bg:#05111a;--cc-digit-top:#08212c;--cc-digit-bottom:#05101a;--cc-blue:#37deff;--cc-gold:#ffdc49;}

:root[data-bs-theme=light]{color-scheme:light;--cc-text:#142e3d;--cc-accent:#087344;--cc-muted:#3e6376;--cc-border:#b8d0dc;--cc-bg:#f4f8fa;--cc-button-bg:#fff;--cc-input-bg:#fff;--cc-nav-bg:#e8f1f5;--cc-notice-bg:#fff;--cc-terminal-bar:#e3eef3;--cc-terminal-bg:#f8fcfe;--cc-terminal-footer:#e8f2f6;--cc-filter-bg:#e0f1e9;--cc-task-bg:#fff;--cc-solved-bg:#e4f4eb;--cc-leader-bg:#fff;--cc-clock-bg:#fff;--cc-digit-top:#e3f0f5;--cc-digit-bottom:#f7fbfd;--cc-blue:#086b89;--cc-gold:#8e6500}
.cc-flag-label{font-size:12px;white-space:nowrap;margin:0;color:var(--cc-muted)}
#cc-theme-toggle{white-space:nowrap;font-size:11px;padding:5px 7px}
.cc-body .modal-content,.cc-body .dropdown-menu,.cc-body .card,.cc-body .list-group-item{background:var(--cc-task-bg);color:var(--cc-text);border-color:var(--cc-border)}
.cc-body .text-muted{color:var(--cc-muted)!important}.cc-body .table{--bs-table-color:var(--cc-text);--bs-table-bg:var(--cc-task-bg);--bs-table-border-color:var(--cc-border)}
:root[data-bs-theme=light] .cc-body .bg-dark{background-color:var(--cc-task-bg)!important}
:root[data-bs-theme=light] .cc-body .text-white{color:var(--cc-text)!important}
:root[data-bs-theme=light] .cc-global-flag input{border-color:var(--cc-accent)}
@media(min-width:1300px){.cc-global-flag{position:static;left:auto;transform:none;flex:1;justify-content:center}.cc-global-flag input{width:clamp(150px,17vw,280px)}}
@media(max-width:1350px){.cc-global-flag{position:static;transform:none;order:3;width:100%;justify-content:center}.cc-global-flag input{width:min(420px,55vw)}}
@media(max-width:500px){.cc-global-flag{flex-wrap:wrap}.cc-flag-label{flex-basis:100%;text-align:center}.cc-global-flag input{width:calc(100% - 105px);min-width:0}}

.cc-organization{display:block;font:400 12px/1.5 system-ui,sans-serif;color:var(--cc-muted);margin-top:5px}

#cc-theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:46px;height:40px;padding:3px;flex-shrink:0;--cc-cat:#152126;--cc-screen:#ddf4f5;--cc-frame:#74bec7;--cc-deck:#c6e8ec;--cc-detail:#b6d1d4}.cc-theme-cat{width:36px;height:32px;fill:none}.cc-laptop-frame{fill:var(--cc-frame)}.cc-laptop-screen{fill:var(--cc-screen)}.cc-laptop-deck{fill:var(--cc-deck)}.cc-laptop-edge{fill:var(--cc-frame)}.cc-laptop-pad{fill:var(--cc-screen)}.cc-sleeping-cat{fill:var(--cc-cat)}.cc-cat-detail{fill:none;stroke:var(--cc-detail);stroke-width:1.1;stroke-linecap:round}html[data-bs-theme="light"] #cc-theme-toggle{--cc-cat:#f6fbff;--cc-screen:#163546;--cc-frame:#315f74;--cc-deck:#102b3b;--cc-detail:#668596}

#cc-flag-form{flex-wrap:wrap}#cc-flag-timeout{flex-basis:100%;text-align:center;color:var(--cc-text);font-size:12px;line-height:1.5}#cc-flag-form:has(#cc-flag-timeout:not([hidden])){padding-bottom:4px}

/* Leave room for the role guide and flag form on medium desktop widths. */
@media(min-width:1001px) and (max-width:1599px){.cc-global-flag{position:static;transform:none;order:3;width:100%;justify-content:center}}

#cc-results-downloads{padding:18px 20px 0;display:flex;flex-wrap:wrap;gap:8px}#cc-results-downloads[hidden]{display:none}#cc-results-downloads a{color:var(--cc-text);border:1px solid var(--cc-border);border-radius:5px;background:var(--cc-button-bg);font-size:12px;padding:8px 12px;text-decoration:none}#cc-results-downloads a:hover{border-color:var(--cc-accent)}.cc-score-rule{padding:0 20px;margin:12px 0 20px;color:var(--cc-muted);font-size:12px;line-height:1.5}
