.contest-preview{--contest-accent: #2563eb;--contest-soft: #eff6ff;--contest-line: hsl(var(--border));width:360px;max-width:calc(100vw - 32px);max-height:min(calc(100dvh - 32px),var(--radix-popover-content-available-height, calc(100dvh - 32px) ));overflow-y:auto;overscroll-behavior:contain;border-radius:12px;padding:20px;box-shadow:0 16px 48px #00000024}.dark .contest-preview{--contest-accent: #6ee7b7;--contest-soft: #273e3b;--contest-line: #3e4858}.contest-preview-heading{display:flex;align-items:center;gap:12px;padding-right:28px}.contest-preview-close{position:absolute;top:8px;right:8px;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:6px;color:hsl(var(--muted-foreground))}.contest-preview-close:hover{background:hsl(var(--muted))}.contest-preview-heading h3{margin-top:4px;font-size:16px;line-height:1.4;overflow-wrap:anywhere}.contest-preview-status{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:16px 0;font-size:12px;color:hsl(var(--muted-foreground))}.contest-preview-facts{display:flex;flex-direction:column;gap:14px;padding:16px 0;border-block:1px solid var(--contest-line)}.contest-preview-facts dt{color:hsl(var(--muted-foreground));font-size:11px;margin-bottom:3px}.contest-preview-facts dd{font-size:13px}.contest-preview-facts .contest-preview-reward{font-size:24px;font-weight:600;letter-spacing:-.04em;color:var(--contest-accent)}.contest-preview-languages{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}.contest-preview-actions{display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;font-size:12px;margin:16px 0}.contest-preview-actions a{display:inline-flex;align-items:center;gap:5px;color:var(--contest-accent)}.contest-preview-calendar{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:40px;border:1px solid var(--contest-line);border-radius:6px;font-size:12px;background:var(--contest-soft);color:var(--contest-accent)}.contest-preview-calendar:disabled{opacity:.55;cursor:not-allowed;background:transparent;color:hsl(var(--muted-foreground))}.contest-preview :is(a,button):focus-visible{outline:2px solid var(--contest-accent);outline-offset:3px}@media (max-width: 760px),(pointer: coarse){.contest-preview-close{width:44px;height:44px}.contest-preview-heading{padding-right:36px}.contest-preview-actions a{min-height:44px}.contest-preview-calendar{min-height:44px;padding:8px}}.contest-page{max-width:1480px;width:100%;margin:0 auto;padding:24px 32px 48px;--contest-accent: #2563eb;--contest-soft: #eff6ff;--contest-line: hsl(var(--border))}.dark .contest-page{--contest-accent: #6ee7b7;--contest-soft: #273e3b;--contest-line: #3e4858}.dark .contest-page input[type=date]{color-scheme:dark}.contest-breadcrumb{display:flex;gap:12px;font-size:12px;color:hsl(var(--muted-foreground))}.contest-breadcrumb a:hover{color:var(--contest-accent)}.contest-hero{display:grid;grid-template-columns:1fr 1fr;gap:36px;padding:32px 0;align-items:center}.contest-eyebrow{display:flex;align-items:center;gap:8px;color:var(--contest-accent);font-size:10px;font-weight:750;letter-spacing:.16em;margin-bottom:16px}.contest-eyebrow>span,.contest-live-dot{width:6px;height:6px;border-radius:100%;background:var(--contest-accent);flex-shrink:0}.contest-hero h1{font-size:clamp(32px,3.3vw,48px);letter-spacing:-.05em;line-height:1.14;font-weight:700}.contest-hero h1>span{color:var(--contest-accent)}.contest-hero p{margin-top:15px;font-size:14px;line-height:1.85;color:hsl(var(--muted-foreground))}.contest-hero-links{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:22px;font-size:11px;color:hsl(var(--muted-foreground))}.contest-hero-links>*{display:flex;align-items:center;gap:6px}.contest-hero-links a{color:var(--contest-accent)}.contest-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--contest-line);border-radius:12px;padding:24px 0;background:hsl(var(--card))}.contest-stat{padding:0 23px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}.contest-stat+.contest-stat{border-left:1px solid var(--contest-line)}.contest-stat>svg{color:var(--contest-accent);margin-bottom:9px}.contest-stat.upcoming>svg{color:#818cf8}.contest-stat.closing>svg{color:#d97706}.contest-stat strong{font-size:36px;line-height:1;font-weight:600;letter-spacing:-.05em;font-variant-numeric:tabular-nums}.contest-stat>span{font-size:12px;font-weight:600;margin-top:6px}.contest-stat>small{font-size:10px;color:hsl(var(--muted-foreground))}.contest-workspace{border:1px solid var(--contest-line);border-radius:12px;background:hsl(var(--card));overflow:hidden}.contest-section-heading{padding:22px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.contest-section-heading>div{display:flex;align-items:center;gap:10px}.contest-section-heading h2{font-size:17px;letter-spacing:-.02em}.contest-section-heading>div>svg{color:var(--contest-accent)}.contest-count{padding:2px 7px;border-radius:5px;font-size:11px;color:hsl(var(--muted-foreground));background:hsl(var(--muted))}.contest-export-button,.contest-text-button,.contest-icon-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--contest-line);border-radius:6px;font-size:12px;font-weight:500;padding:8px 12px;transition:background .15s}.contest-export-button{color:var(--contest-accent);background:var(--contest-soft);border-color:transparent}.contest-icon-button{height:34px;width:34px;padding:0;flex-shrink:0}.contest-page button:disabled{cursor:not-allowed;opacity:.4}.contest-page button:not(:disabled):hover,.contest-icon-button:hover{background:hsl(var(--muted))}.contest-page :is(a,button,input,select,[tabindex]):focus-visible{outline:2px solid var(--contest-accent);outline-offset:3px}.contest-filters{display:grid;grid-template-columns:1.9fr 1fr 1fr 1.2fr 1.1fr;gap:12px;padding:0 24px 22px}.contest-filters>label{border:1px solid var(--contest-line);border-radius:7px;padding:8px 10px;min-width:0;display:flex;flex-direction:column;gap:3px}.contest-filters label>span:not(.sr-only){color:hsl(var(--muted-foreground));font-size:11px}.contest-filters select,.contest-filters input{background:transparent;color:inherit;font-size:13px;width:100%;min-width:0;border:none}.contest-page select option{background:hsl(var(--card));color:hsl(var(--foreground))}.contest-filters .contest-search{flex-direction:row;align-items:center;gap:10px}.contest-search>svg{color:hsl(var(--muted-foreground));flex-shrink:0}.contest-search input{height:100%;padding:4px 0}.contest-view-toolbar{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:0 24px 18px;border-bottom:1px solid var(--contest-line)}.contest-status-tabs{display:flex;flex-wrap:wrap;gap:3px}.contest-status-tabs button{display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:5px;font-size:12px;color:hsl(var(--muted-foreground));white-space:nowrap}.contest-status-tabs [aria-pressed=true]{background:var(--contest-soft);color:var(--contest-accent);font-weight:600}.contest-view-switch{display:flex;flex-shrink:0;padding:3px;border:1px solid var(--contest-line);border-radius:7px;background:hsl(var(--background))}.contest-view-switch button{display:flex;gap:6px;align-items:center;padding:5px 9px;border-radius:4px;font-size:11px;color:hsl(var(--muted-foreground))}.contest-view-switch [aria-pressed=true]{background:hsl(var(--card));color:hsl(var(--foreground));box-shadow:0 1px 3px #00000015}.contest-active-filters{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--contest-soft);padding:10px 24px;font-size:11px;color:var(--contest-accent)}.contest-active-filters :is(span,button){display:flex;align-items:center;gap:6px}.contest-timeline-toolbar,.contest-list-toolbar{padding:18px 24px;display:flex;justify-content:space-between;align-items:center;gap:14px}.contest-timeline-toolbar h3{font-size:13px;font-weight:600}.contest-compact-select,.contest-list-toolbar select{background:transparent;border:1px solid var(--contest-line);border-radius:6px;padding:7px 8px;font-size:12px}.contest-timeline-scroll{overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-left:248px;scrollbar-width:thin}.contest-timeline-header,.contest-timeline-row{display:grid;grid-template-columns:248px 1fr}.contest-timeline-header{border-top:1px solid var(--contest-line);border-bottom:1px solid var(--contest-line)}.contest-timeline-label{position:sticky;left:0;z-index:3;padding:14px 20px;background:hsl(var(--card));border-right:1px solid var(--contest-line);font-size:11px;color:hsl(var(--muted-foreground))}.contest-timeline-header>.contest-timeline-label{display:flex;align-items:center}.contest-timeline-days{display:flex}.contest-timeline-days>div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:9px 0;border-right:1px solid var(--contest-line)}.contest-timeline-days span{color:hsl(var(--muted-foreground));font-size:10px}.contest-timeline-days strong{font-size:12px;font-weight:500}.contest-timeline-days .is-today{color:var(--contest-accent);background:var(--contest-soft)}.contest-timeline-days .is-today strong{font-weight:750}.contest-platform-heading{height:34px;border-bottom:1px solid var(--contest-line);background:hsl(var(--muted) / .45);display:flex;align-items:center;gap:8px;padding:0 20px;font-size:12px;font-weight:600}.contest-platform-heading>span:first-child{position:sticky;left:20px}.contest-platform-heading>span:last-child{color:hsl(var(--muted-foreground));font-weight:400}.contest-timeline-row{height:76px}.contest-timeline-row+.contest-timeline-row{border-top:1px solid var(--contest-line)}.contest-timeline-program{display:flex;align-items:center;gap:10px;padding-block:10px}.contest-timeline-identity{min-width:0;display:flex;flex-direction:column;gap:6px}.contest-timeline-identity>span{color:hsl(var(--foreground));font-size:13px;font-weight:550;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.3;overflow-wrap:anywhere}.contest-timeline-program:hover .contest-timeline-identity>span{color:var(--contest-accent)}.contest-timeline-program small{font-size:11px;color:var(--contest-accent)}.contest-timeline-program small>span{color:hsl(var(--muted-foreground))}.contest-timeline-track{position:relative;min-width:0}.contest-timeline-day-grid{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;pointer-events:none}.contest-timeline-day-grid>span{flex:1;border-right:1px solid var(--contest-line)}.contest-page .is-weekend{background:hsl(var(--muted) / .4)}.contest-today-line{position:absolute;top:0;bottom:0;width:1px;background:var(--contest-accent);opacity:.6;z-index:2;pointer-events:none}.contest-timeline-bar{position:absolute;top:19px;height:38px;display:flex;align-items:center;justify-content:space-between;gap:6px;border-radius:5px;border:1px solid #93c5fd;background:#e0f2fe;color:#1e40af;font-size:12px;font-weight:600;z-index:1;overflow:hidden;min-width:3px;scroll-margin-block:100px}.contest-timeline-bar>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:10px}.contest-timeline-bar>svg{margin-right:8px;flex-shrink:0}.contest-timeline-bar.is-upcoming{background:#e8e6fb;border-color:#c6c0ea;color:#5b21b6}.dark .contest-timeline-bar{background:#294c47;border-color:#417c69;color:#a7f3d0}.dark .contest-timeline-bar.is-upcoming{background:#413957;border-color:#776199;color:#ddd6fe}.contest-timeline-bar:is(.is-ended,.is-paused,.is-unknown){background:hsl(var(--muted));color:hsl(var(--muted-foreground));border-color:var(--contest-line)}.contest-timeline-bar:hover{filter:brightness(.95)}.contest-page .contest-timeline-bar:not(:disabled):hover,.contest-page .contest-timeline-bar[data-state=open]{background:#bae6fd;box-shadow:0 2px 10px #1e40af1a}.contest-page .contest-timeline-bar.is-upcoming:not(:disabled):hover,.contest-page .contest-timeline-bar.is-upcoming[data-state=open]{background:#d9d3f6}.dark .contest-page .contest-timeline-bar:not(:disabled):hover,.dark .contest-page .contest-timeline-bar[data-state=open]{background:#345d54;box-shadow:0 2px 10px #065f461a}.dark .contest-page .contest-timeline-bar.is-upcoming:not(:disabled):hover,.dark .contest-page .contest-timeline-bar.is-upcoming[data-state=open]{background:#51466c}.contest-timeline-bar.is-date-only{border-style:dashed}.contest-legend-date{width:14px;height:8px;border:1px dashed currentColor;border-radius:2px;margin-left:10px}.contest-timeline-bar.clipped-start{border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.contest-timeline-bar.clipped-end{border-right:0;border-top-right-radius:0;border-bottom-right-radius:0}.contest-timeline-legend{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 24px;color:hsl(var(--muted-foreground));font-size:10px;border-top:1px solid var(--contest-line)}.contest-timeline-legend>div{display:flex;gap:6px;align-items:center}.contest-legend-dot{width:7px;height:7px;border-radius:2px;margin-left:10px;background:#4f8bf0}.dark .contest-legend-dot.live{background:#34d399}.contest-legend-dot:first-child{margin-left:0}.contest-legend-dot.upcoming{background:#a78bfa}.contest-legend-today{width:1px;height:10px;margin-left:10px;background:var(--contest-accent)}.contest-list-toolbar{font-size:11px;color:hsl(var(--muted-foreground))}.contest-list-toolbar label{display:flex;align-items:center;gap:8px}.contest-list-row{display:grid;grid-template-columns:minmax(210px,1.6fr) minmax(125px,.9fr) minmax(180px,1.2fr) 130px 76px;gap:20px;padding:24px;align-items:center;border-top:1px solid var(--contest-line)}.contest-list-identity{display:flex;align-items:center;gap:14px}.contest-name-link{display:inline-flex;gap:6px;align-items:center;font-size:14px;font-weight:600;overflow-wrap:anywhere}.contest-name-link>svg{flex-shrink:0;color:hsl(var(--muted-foreground))}.contest-name-link:hover{color:var(--contest-accent)}.contest-language{border:1px solid var(--contest-line);border-radius:4px;padding:2px 5px;font-size:11px;color:hsl(var(--muted-foreground))}.contest-list-reward,.contest-list-dates{display:flex;flex-direction:column;gap:5px;font-size:12px}.contest-list-reward strong{font-size:19px;font-weight:600;letter-spacing:-.03em;overflow-wrap:anywhere}.contest-field-label{font-size:11px;color:hsl(var(--muted-foreground));margin-bottom:3px}.contest-list-state{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.contest-status{display:inline-flex;align-items:center;gap:5px;border-radius:4px;padding:3px 6px;font-size:11px;background:hsl(var(--muted));color:hsl(var(--muted-foreground))}.contest-status>span{height:5px;width:5px;border-radius:50%;background:currentColor}.contest-status-live{color:var(--contest-accent);background:var(--contest-soft)}.contest-status-upcoming{color:#6d28d9;background:#ede9fe}.dark .contest-status-upcoming{color:#ddd6fe;background:#413957}.contest-status-paused{color:#92400e;background:#fef3c7}.dark .contest-status-paused{color:#fde68a;background:#493c25}.contest-list-actions{display:flex;gap:6px}.contest-missing-dates{border-top:1px solid var(--contest-line)}.contest-missing-dates h3{font-size:14px}.contest-data-note{font-size:11px;line-height:1.8;color:hsl(var(--muted-foreground));padding:14px 24px;border-top:1px solid var(--contest-line);background:hsl(var(--muted) / .2)}.contest-bottom-note{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:11px;color:hsl(var(--muted-foreground));margin-top:22px}.contest-bottom-note a{display:flex;gap:7px;align-items:center;color:var(--contest-accent)}.contest-guide{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;padding-top:48px;margin-top:40px;border-top:1px solid var(--contest-line)}.contest-guide h2{font-size:25px;font-weight:600;letter-spacing:-.035em;line-height:1.35}.contest-guide p{font-size:14px;line-height:1.85;color:hsl(var(--muted-foreground));margin-top:16px}.contest-guide-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:24px;color:var(--contest-accent);font-size:13px}.contest-guide-links a{display:flex;align-items:center;gap:5px}.contest-guide a:hover{text-decoration:underline;text-underline-offset:4px}.contest-faq h2{font-size:19px;margin-bottom:12px}.contest-faq details{border-bottom:1px solid var(--contest-line)}.contest-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;font-size:14px;font-weight:500;cursor:pointer}.contest-faq summary::-webkit-details-marker{display:none}.contest-faq summary svg{flex-shrink:0;color:var(--contest-accent)}.contest-faq details[open] summary svg{transform:rotate(180deg)}.contest-faq details p{margin:0;padding-bottom:20px}.contest-empty-window,.contest-loading{padding:50px 20px;display:flex;flex-direction:column;gap:12px;align-items:center;text-align:center;color:hsl(var(--muted-foreground));font-size:13px}.contest-empty-window h3{font-size:17px;color:hsl(var(--foreground))}.contest-empty-window>span{font-size:12px}.contest-error{padding:18px 24px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fffbeb;color:#92400e;font-size:13px}.contest-error>button{display:flex;gap:6px;align-items:center;font-weight:600}.dark .contest-error{background:#493c25;color:#fde68a}@media (max-width: 1100px){.contest-hero{gap:24px}.contest-stat{padding:0 16px}.contest-filters{grid-template-columns:repeat(4,minmax(0,1fr))}.contest-filters .contest-search{grid-column:1 / -1;min-height:44px}.contest-list-row{grid-template-columns:1.5fr 1fr 1fr;gap:18px}.contest-list-state{flex-direction:row;grid-column:1 / 3;align-items:center}.contest-list-actions{justify-content:flex-end}}@media (max-width: 760px){.contest-guide{grid-template-columns:1fr;gap:32px;padding-top:32px;margin-top:32px}.contest-page{padding:20px 16px 32px}.contest-hero{grid-template-columns:1fr;padding:28px 0;gap:25px}.contest-hero h1{font-size:38px}.contest-hero-stats{padding:18px 0}.contest-stat strong{font-size:28px}.contest-stat>svg{margin-bottom:3px}.contest-stat>small{display:none}.contest-stat>span{font-size:10px}.contest-section-heading{padding:18px 16px;flex-wrap:wrap}.contest-filters{padding:0 16px 18px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.contest-view-toolbar{padding:0 16px 16px;flex-wrap:wrap;gap:14px}.contest-view-switch{width:100%}.contest-view-switch button{flex:1;justify-content:center}.contest-status-tabs{width:100%;gap:2px}.contest-status-tabs button{font-size:12px;padding:7px}.contest-timeline-toolbar{padding:16px;flex-wrap:wrap}.contest-timeline-toolbar h3{font-size:12px}.contest-timeline-header,.contest-timeline-row{grid-template-columns:180px 1fr}.contest-timeline-scroll{scroll-padding-left:180px}.contest-timeline-label{padding:12px}.contest-timeline-header>.contest-timeline-label{font-size:9px}.contest-list-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:20px 16px;gap:20px 12px}.contest-list-identity{grid-column:1 / -1}.contest-list-dates{font-size:12px}.contest-list-state{grid-column:auto;flex-direction:column;align-items:flex-start}.contest-list-actions{align-self:end}.contest-list-toolbar{padding:16px;gap:8px;flex-wrap:wrap}.contest-active-filters,.contest-data-note,.contest-timeline-legend{padding-left:16px;padding-right:16px}}@media (max-width: 760px),(pointer: coarse){.contest-page :is(input,select){font-size:16px;min-height:44px}.contest-filters>label{padding:6px 10px}.contest-filters .contest-search{min-height:56px}.contest-page :is(.contest-text-button,.contest-export-button,.contest-icon-button,.contest-status-tabs button,.contest-view-switch button,.contest-active-filters button,.contest-error button){min-height:44px}.contest-page .contest-icon-button{width:44px;height:44px}.contest-guide-links a{min-height:44px}}
