*{box-sizing:border-box;margin:0;padding:0}.touch-tooltip{position:fixed;z-index:10000;max-width:min(280px,calc(100vw - 32px));background:var(--surface,#171430);color:var(--text,#E8E4F2);padding:8px 12px;border-radius:6px;border:1px solid var(--border,rgba(255,255,255,0.12));box-shadow:var(--shadow-2);font-size:.85rem;line-height:1.4;pointer-events:none;animation:tt-in 120ms ease-out}@keyframes tt-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}:root{--bg:#0C0A17;--surface:#171430;--surface2:#1E1A3A;--accent:#7C3AED;--accent2:#A78BFA;--green:#10B981;--red:#F43F5E;--yellow:#F59E0B;--text:#E8E4F2;--muted:#8B87A8;--easy:#10B981;--medium:#F59E0B;--hard:#F43F5E;--border:rgba(255,255,255,0.08);--overlay:rgba(12,10,23,0.70);--radius:12px;--code-bg:#1a1730;--code-fg:#abb2bf;--ease-spring:cubic-bezier(0.34,1.56,0.64,1);--ease-out:cubic-bezier(0.16,1,0.3,1);--duration-fast:150ms;--duration-normal:250ms;--duration-slow:400ms;--shadow-1:0 1px 3px rgba(0,0,0,0.12);--shadow-2:0 4px 12px rgba(0,0,0,0.24),0 1px 2px rgba(0,0,0,0.18);--shadow-3:0 12px 32px rgba(0,0,0,0.40),0 2px 6px rgba(0,0,0,0.22);--shadow:var(--shadow-1);--radius-sm:4px;--radius-md:8px;--radius-xl:20px;--pill-radius:999px;--linkedin-brand:#0A66C2;--role-superadmin:#FF6B00;--role-admin:#7B2FFF;--role-on-color:#fff;--green-soft:rgba(16,185,129,0.10);--yellow-soft:rgba(245,158,11,0.10);--red-soft:rgba(244,63,94,0.10)}.role-badge{display:inline-block;padding:2px 6px;border-radius:var(--radius-sm);font-size:.65rem;font-weight:600;color:var(--role-on-color)}.role-badge.superadmin{background:var(--role-superadmin)}.role-badge.admin{background:var(--role-admin)}@supports (color:oklch(0 0 0)){:root{--border:oklch(1 0 0 / 0.08);--overlay:oklch(0.08 0.02 280 / 0.70);--shadow:0 1px 3px oklch(0 0 0 / 0.12)}}body{background:var(--bg);color:var(--text);font-family:'Inter',system-ui,sans-serif;font-size:clamp(0.875rem,0.8rem + 0.25vw,1rem);min-height:100vh;min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}button,.nav-btn,.btn,.avatar-option{-webkit-user-select:none;user-select:none}a{color:var(--accent2);text-decoration:underline;text-underline-offset:2px}a.no-underline,.help-page-home,.help-page-nav a,.nav-btn,.help-icon-btn,.help-trigger,header h1 a{text-decoration:none}button{cursor:pointer;border:none;outline:none;font-family:inherit}button:focus,a:focus{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}:disabled,[aria-disabled="true"],.is-disabled{opacity:.5;cursor:not-allowed}.modal-title{margin:0 0 16px;font-size:1.1rem;font-weight:700;color:var(--text)}.num-cell,td.num-cell{text-align:right;font-variant-numeric:tabular-nums}input,select,textarea{font-family:inherit;background:var(--surface2);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:10px 14px;width:100%;outline:none;transition:all var(--duration-normal) var(--ease-out)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media(max-width:600px){input,select,textarea{font-size:16px}}input[type="date"],input[type="time"]{color-scheme:dark}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(124,58,237,0.15)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-radius:6px}h1{font-size:clamp(1.25rem,1rem + 0.75vw,1.75rem);font-weight:750}h2{font-size:clamp(1.1rem,0.95rem + 0.5vw,1.35rem);font-weight:700}h3{font-size:clamp(0.95rem,0.9rem + 0.25vw,1.1rem);font-weight:650}#app{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}header{background:#131028;border-bottom:1px solid var(--border);padding:12px 24px;min-height:56px;display:flex;align-items:center;gap:16px;position:sticky;top:0;z-index:100}header h1{display:flex;align-items:center;gap:10px;flex:1}header h1 img.logo-dark{height:36px;width:auto;display:inline}header h1 img.logo-light{height:36px;width:auto;display:none}.cx-logo-card.logo-dark{display:block}.cx-logo-card.logo-light{display:none}header h1 span{font-size:1rem;font-weight:700;color:var(--muted);letter-spacing:.03em}#main-nav{display:flex;gap:4px;background:var(--surface2);border-radius:var(--pill-radius);padding:4px;min-height:52px;box-sizing:border-box}#user-info{min-width:280px;min-height:44px;box-sizing:border-box}#main-nav:empty{background:transparent}.nav-btn{background:transparent;color:var(--muted);padding:8px 18px;border-radius:var(--pill-radius);font-size:.85rem;font-weight:500;min-height:44px;transition:all var(--duration-normal) var(--ease-out)}@media(hover:hover){.nav-btn:hover{background:var(--surface);color:var(--text)}}.nav-btn.active{background:var(--accent);color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 22px;border-radius:8px;font-size:.95rem;font-weight:600;min-height:44px;transition:all var(--duration-normal) var(--ease-spring);background:var(--accent);color:#fff}@media(hover:hover){.btn:hover{opacity:0.9;transform:scale(1.02)}}.btn.secondary{background:var(--surface2);color:var(--text)}.btn.danger{background:var(--red)}.btn.warning{background:var(--yellow);color:#fff}.btn.success{background:var(--green);color:#fff}.btn.sm{padding:6px 14px;font-size:.82rem}main{flex:1;padding:32px;max-width:1200px;margin:0 auto;width:100%;display:flex;flex-direction:column}main:has(#admin-page.active),main.admin-active{max-width:100%;padding:32px 40px}#admin-page .table-card{overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;max-height:calc(100dvh - 180px);scrollbar-width:thin;scrollbar-color:var(--accent) transparent}@media (pointer:fine){#admin-page .table-card{cursor:grab}#admin-page .table-card.dragging{cursor:grabbing;user-select:none}}#admin-page .table-card::-webkit-scrollbar{width:8px;height:8px}#admin-page .table-card::-webkit-scrollbar-track{background:transparent;border-radius:4px}#admin-page .table-card::-webkit-scrollbar-thumb{background:var(--accent);border-radius:4px}#admin-page .table-card::-webkit-scrollbar-thumb:hover{background:var(--accent2)}#admin-page .table-card thead th{position:sticky;top:0;background:var(--surface);z-index:2}#admin-page table th,#admin-page table td{padding:8px 10px;white-space:nowrap}#admin-page table td.cell-truncate{max-width:180px;overflow:hidden;text-overflow:ellipsis}#admin-page table td.cell-stack{white-space:normal;line-height:1.5}#admin-page table td.cell-stack .sub{display:block;font-size:.7rem;color:var(--muted)}#admin-page table td.cell-ts{font-size:.72rem;color:var(--muted);min-width:100px;max-width:140px;white-space:normal;line-height:1.5;overflow-wrap:break-word}#logs-body td.log-level,#logs-body td.log-status-code{font-weight:600}#logs-body td.log-level-error{color:var(--red)}#logs-body td.log-level-warn{color:var(--yellow)}#logs-body td.log-level-debug{color:var(--muted)}#logs-body td.log-level-info{color:var(--text)}#logs-body td.log-status-code-5xx{color:var(--red)}#logs-body td.log-status-code-4xx{color:var(--yellow)}#logs-body td.log-status-code-3xx{color:var(--accent2)}#logs-body td.log-status-code-2xx{color:var(--green)}#logs-body td.log-cell-ts{font-size:.78rem;color:var(--muted)}#logs-body td.log-cell-text{font-size:.82rem}#logs-body td.log-cell-empty{color:var(--muted)}#logs-body td.log-cell-empty-center{color:var(--muted);text-align:center;padding:24px}#logs-body td.log-cell-msg-tip{font-size:.82rem;cursor:help}.page{display:none}.page.active{display:flex;flex-direction:column;flex:1}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;border-top:2px solid var(--accent2)}.card+.card{margin-top:24px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:.85rem;color:var(--muted);margin-bottom:6px}.form-group label .req{color:var(--red);font-weight:700}.form-group.field-error input,.form-group.field-error select{border-color:var(--red);box-shadow:0 0 0 2px rgba(244,63,94,0.15)}.form-group.field-error label{color:var(--red)}#login-page .login-viewport{display:flex;align-items:center;justify-content:center;padding:24px;flex:1;min-height:0}#login-page .login-card{width:100%;max-width:420px;box-shadow:var(--shadow)}#login-page .login-header{text-align:center;margin-bottom:24px}#login-page .login-alt{text-align:center;margin-top:16px;font-size:.85rem;color:var(--muted)}.login-error{color:var(--red);font-size:.85rem;margin-bottom:12px;padding:10px 12px;border-radius:8px;background:var(--red-soft);border:1px solid var(--border)}#register-page .register-viewport{display:flex;align-items:center;justify-content:center;padding:24px;flex:1;min-height:0}#register-page .register-card{width:100%;max-width:540px;box-shadow:var(--shadow)}#register-page .register-header{text-align:center;margin-bottom:20px}#register-page .register-header h2{margin-bottom:4px}#register-page .join-subtitle{color:var(--muted);font-size:.9rem}#register-page .register-linkedin-row{margin-bottom:20px}#register-page .linkedin-btn{width:100%;background:var(--linkedin-brand)}#register-page .linkedin-icon{fill:#fff;vertical-align:middle;margin-right:8px}#register-page .register-divider{display:flex;align-items:center;gap:12px;margin-top:16px}#register-page .register-divider hr{flex:1;border:none;border-top:1px solid var(--border);margin:0}#register-page .register-divider span{color:var(--muted);font-size:.8rem}#register-page .label-hint{color:var(--muted);font-weight:400}#register-page .register-invitation-banner{font-size:.85rem;color:var(--muted);margin-bottom:12px;text-align:center}#register-page .register-avatar-group .register-avatar-upload{margin-top:10px}#register-page .register-avatar-upload label{display:block;font-size:.8rem;color:var(--muted);margin-bottom:4px}#register-page .register-error{color:var(--red);font-size:.85rem;margin-bottom:12px;padding:10px 12px;border-radius:8px;background:var(--red-soft);border:1px solid var(--border)}#register-page .register-countdown-text{color:var(--muted);font-size:.85rem;text-align:center;margin-top:16px}#register-page .register-submit-btn{width:100%}#register-page .register-alt{text-align:center;margin-top:12px;font-size:.85rem;color:var(--muted)}#forgot-page .forgot-viewport{display:flex;align-items:center;justify-content:center;padding:24px;flex:1;min-height:0}#forgot-page .forgot-card{width:100%;max-width:420px;box-shadow:var(--shadow)}#forgot-page .forgot-header{text-align:center;margin-bottom:24px}#forgot-page .forgot-header h2{font-size:1.4rem}#forgot-page .forgot-header p{color:var(--muted);font-size:.9rem;margin-top:4px}#forgot-page .forgot-alt{text-align:center;margin-top:16px;font-size:.85rem;color:var(--muted)}#forgot-page .forgot-error{color:var(--red);font-size:.85rem;margin-bottom:12px;padding:10px 12px;border-radius:8px;background:var(--red-soft);border:1px solid var(--border)}#profile-overlay,#admin-profile-overlay,#password-overlay{position:fixed;inset:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto;animation:modal-in var(--duration-normal) var(--ease-out)}#profile-overlay,#admin-profile-overlay{z-index:3000}#password-overlay{z-index:3100}#profile-overlay .profile-card,#admin-profile-overlay .admin-profile-card{max-width:min(540px,calc(100vw - 32px));width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-3)}#password-overlay .password-card{max-width:min(400px,calc(100vw - 32px));width:100%;box-shadow:var(--shadow-3)}#profile-overlay .profile-linkedin-note,#admin-profile-overlay .admin-profile-note{font-size:.78rem;color:var(--muted);margin-bottom:16px}#profile-overlay .profile-label-hint,#admin-profile-overlay .admin-profile-hint,#password-overlay .password-label-hint{color:var(--muted);font-weight:400;font-size:.78rem}#profile-overlay .profile-error,#admin-profile-overlay .admin-profile-error,#password-overlay .password-error{color:var(--red);font-size:.85rem;margin-bottom:12px;padding:10px 12px;border-radius:8px;background:var(--red-soft);border:1px solid var(--border);display:none}#admin-profile-overlay .admin-profile-warning{font-size:.85rem;color:var(--red);margin-bottom:12px;padding:10px 12px;border-radius:8px;background:var(--red-soft);border:1px solid var(--border)}#profile-overlay .profile-actions,#admin-profile-overlay .admin-profile-actions,#password-overlay .password-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}html[data-theme="light"] #profile-overlay .profile-card,html[data-theme="light"] #admin-profile-overlay .admin-profile-card,html[data-theme="light"] #password-overlay .password-card{box-shadow:var(--shadow-3)}#reset-link-overlay{position:fixed;inset:0;background:var(--overlay);z-index:9500;display:flex;align-items:center;justify-content:center;padding:24px;animation:modal-in var(--duration-normal) var(--ease-out)}#reset-link-overlay .reset-link-card{max-width:min(520px,calc(100vw - 32px));width:100%;box-shadow:var(--shadow-3)}#reset-link-overlay .reset-link-hint{font-size:.82rem;color:var(--muted);margin-bottom:12px}#reset-link-overlay .reset-link-field{position:relative}#reset-link-overlay #reset-link-input{font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;font-size:.8rem;padding-right:128px}#reset-link-overlay .reset-link-actions-inline{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:flex;gap:4px}#reset-link-overlay .reset-link-actions-inline .btn.sm{padding:4px 10px;font-size:.75rem;min-height:32px}#reset-link-overlay .reset-link-footer{display:flex;justify-content:flex-end;margin-top:16px}html[data-theme="light"] #reset-link-overlay .reset-link-card{box-shadow:var(--shadow-3)}#invite-overlay{position:fixed;inset:0;background:var(--overlay);z-index:3000;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto;animation:modal-in var(--duration-normal) var(--ease-out)}#invite-overlay .invite-card{max-width:min(600px,calc(100vw - 32px));width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:var(--shadow-3);position:relative}#invite-overlay .invite-note{font-size:.82rem;color:var(--muted);margin-bottom:12px}#invite-overlay .invite-emails-field{width:100%;font-size:.85rem;font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;resize:vertical}#invite-overlay .invite-emails-field.has-remaining{outline:2px solid var(--red);outline-offset:0}#invite-overlay .invite-comp-list{max-height:200px;overflow-y:auto;border:1px solid var(--border);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:4px}#invite-overlay .invite-comp-empty{color:var(--muted);font-size:.85rem;margin:0}#invite-overlay .invite-error{color:var(--red);font-size:.85rem;margin-bottom:8px;display:none;padding:8px 10px;border-radius:8px;background:var(--red-soft);border:1px solid var(--border)}#invite-overlay .invite-result{display:none;padding:10px 12px;border-radius:8px;background:rgba(124,58,237,.12);border:1px solid var(--border);margin-bottom:12px;font-size:.85rem}#invite-overlay .invite-result-detail{font-size:.78rem;color:var(--muted)}#invite-overlay .invite-actions{display:flex;gap:10px;justify-content:flex-end;flex-shrink:0}#invite-overlay .invite-blocker{position:absolute;inset:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;border-radius:var(--radius);z-index:10}#invite-overlay .invite-blocker-inner{text-align:center;color:#fff}#invite-overlay .invite-blocker-label{font-size:.95rem;font-weight:600;margin-top:12px}#invite-overlay .invite-blocker-sub{font-size:.8rem;color:rgba(255,255,255,.75);margin-top:4px}html[data-theme="light"] #invite-overlay .invite-card{box-shadow:var(--shadow-3)}html[data-theme="light"] #invite-overlay .invite-result{background:rgba(124,58,237,0.08)}#comp-form-overlay{position:fixed;inset:0;background:var(--overlay);z-index:3000;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto;animation:modal-in var(--duration-normal) var(--ease-out)}#comp-form-overlay .comp-form-card{max-width:min(640px,calc(100vw - 32px));width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-3)}#comp-form-overlay .comp-form-lock-note{font-size:.82rem;color:var(--muted);margin-bottom:12px}#comp-form-overlay .comp-form-mode-row{display:flex;align-items:center;gap:12px;margin:16px 0 12px;flex-wrap:wrap}#comp-form-overlay .comp-form-mode-label{font-weight:600;font-size:.9rem}#comp-form-overlay .comp-mode-toggle{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}#comp-form-overlay .comp-mode-toggle.locked{opacity:.5;pointer-events:none}#comp-form-overlay .comp-mode-radio{display:none}#comp-form-overlay .comp-mode-option{padding:8px 16px;font-size:.85rem;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);font-weight:600;color:var(--muted)}#comp-form-overlay .comp-mode-radio:checked + .comp-mode-option{background:var(--accent);color:var(--role-on-color)}#comp-form-overlay .comp-form-mode-hint{font-size:.72rem;color:var(--muted)}#comp-form-overlay .comp-form-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}#comp-form-overlay .comp-form-dur-box{display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap;padding:10px 12px;background:var(--surface2);border-radius:8px}#comp-form-overlay .comp-form-end-preview{font-size:.82rem;color:var(--muted);margin-top:6px}#comp-form-overlay .session-form-row{padding:10px 12px;background:var(--surface2);border-radius:8px;margin-bottom:6px}#comp-form-overlay .session-form-row .session-form-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}html[data-theme="light"] #comp-form-overlay .comp-form-card{box-shadow:var(--shadow-3)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end}@media(max-width:600px){.form-row{grid-template-columns:1fr}}.badge{display:inline-block;padding:3px 10px;border-radius:var(--pill-radius);font-size:.75rem;font-weight:700;text-transform:uppercase}.badge.easy{background:var(--green-soft);color:var(--easy)}.badge.medium{background:var(--yellow-soft);color:var(--medium)}.badge.hard{background:var(--red-soft);color:var(--hard)}.badge.solved{background:#7c5cfc1a;color:var(--accent)}.badge.draft{background:#9B98B81a;color:var(--muted)}.badge.published{background:var(--green-soft);color:var(--green)}.badge.hidden{background:var(--red-soft);color:var(--red)}.badge.comp-badge{font-size:.65rem;padding:2px 7px;margin:1px 2px;white-space:nowrap}.badge.comp-badge.comp-live{background:var(--green-soft);color:var(--green)}.badge.comp-badge.comp-upcoming{background:var(--yellow-soft);color:var(--yellow)}.badge.comp-badge.comp-ended{background:var(--surface2);color:var(--muted)}.task-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.task-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;cursor:pointer;transition:all var(--duration-normal) var(--ease-spring);position:relative;overflow:hidden;border-top:2px solid var(--accent2);box-shadow:var(--shadow);min-height:180px}@media(hover:hover){.task-card:hover{border-color:var(--accent);border-top-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-2)}}.task-card:active{border-color:var(--accent);border-top-color:var(--accent)}.task-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.task-card.solved::after{content:'✓ SOLVED';position:absolute;top:12px;right:12px;background:var(--green);color:var(--role-on-color);font-size:.7rem;font-weight:700;padding:2px 10px;border-radius:999px;letter-spacing:.02em}.task-card.unsolved::after{content:'✗ UNSOLVED';position:absolute;top:12px;right:12px;background:var(--red);color:var(--role-on-color);font-size:.7rem;font-weight:700;padding:2px 10px;border-radius:999px;letter-spacing:.02em}.task-card h3{margin:10px 0 8px;font-size:1rem;overflow-wrap:anywhere;word-break:break-word}.task-card p{font-size:.83rem;color:var(--muted);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.pts{font-size:.8rem;color:var(--accent2);margin-top:10px;font-weight:600}.filters{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.filter-btn{background:var(--surface);border:1px solid var(--border);color:var(--muted);padding:6px 16px;border-radius:var(--pill-radius);font-size:.85rem;min-height:44px;transition:all var(--duration-normal) var(--ease-out)}@media(hover:hover){.filter-btn:hover{border-color:var(--accent);color:var(--text)}}.filter-btn.active{border-color:var(--accent);color:#fff;background:var(--accent)}#task-detail-view{max-width:760px}.back-btn{background:var(--surface);color:var(--accent);padding:8px 16px;margin-bottom:16px;font-size:.9rem;font-weight:600;display:flex;align-items:center;gap:6px;border-radius:8px;border:1px solid var(--border);position:sticky;top:72px;z-index:50;width:fit-content;cursor:pointer;min-height:44px;transition:all var(--duration-fast) var(--ease-out)}@media(hover:hover){.back-btn:hover{color:var(--text);background:var(--surface2);border-color:var(--accent)}}.answer-area{margin-top:20px}.result-msg{padding:12px 16px;border-radius:8px;margin-top:14px;font-weight:600}.result-msg.correct{background:var(--green-soft);border:1px solid var(--green);color:var(--green)}.result-msg.wrong{background:var(--red-soft);border:1px solid var(--red);color:var(--red)}.podium{display:flex;justify-content:center;align-items:flex-end;gap:12px;margin-bottom:32px;min-height:180px}.podium-slot{display:flex;flex-direction:column;align-items:center;gap:8px}.podium-block{border-radius:8px 8px 0 0;width:100px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:10px}.podium-block.p1{height:120px;background:linear-gradient(180deg,#ffd16633,#ffd16611);border:1px solid var(--yellow)}.podium-block.p2{height:90px;background:linear-gradient(180deg,#aaaaaa22,#aaaaaa0a);border:1px solid #aaa}.podium-block.p3{height:70px;background:linear-gradient(180deg,#cd7f3222,#cd7f320a);border:1px solid #cd7f32}.podium-num{font-size:1.4rem;font-weight:900}.podium-name{font-size:.8rem;font-weight:600;text-align:center}.podium-pts{font-size:.75rem;color:var(--accent2)}.lb-table{width:100%;border-collapse:collapse}.lb-table th{text-align:left;padding:10px 12px;font-size:.8rem;color:var(--muted);border-bottom:1px solid var(--border);font-weight:600}.lb-table td{padding:12px;border-bottom:1px solid var(--border);font-size:.9rem}.lb-table tr.me{background:#7C3AED15}.avatar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:8px}.avatar-option{width:52px;height:52px;border-radius:50%;cursor:pointer;font-size:1.6rem;display:flex;align-items:center;justify-content:center;border:2px solid transparent;background:var(--surface2);transition:all var(--duration-normal) var(--ease-out)}.avatar-option:hover,.avatar-option.selected{border-color:var(--accent)}.score-pill{background:var(--surface2);border:1px solid var(--border);border-radius:var(--pill-radius);padding:4px 14px;font-size:.85rem;font-weight:700;color:var(--accent2)}.countdown{font-size:1.5rem;font-weight:900;letter-spacing:.02em;color:var(--accent2);background:linear-gradient(90deg,#00e5a0,#40cfff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:16px 0;font-variant-numeric:tabular-nums}@media (forced-colors:active){.countdown{-webkit-text-fill-color:CanvasText;background:none;color:CanvasText}}.countdown .btn{-webkit-text-fill-color:initial;background-clip:border-box;-webkit-background-clip:border-box}.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;z-index:10000}.skip-link:focus{left:12px;top:12px;width:auto;height:auto;padding:8px 14px;background:var(--accent);color:#fff;border-radius:6px;font-weight:600;outline:3px solid var(--text);box-shadow:0 0 0 5px rgba(124,58,237,0.25)}#pending-page.active{align-items:center;justify-content:center;padding:24px}.pending-screen{width:100%;display:flex;justify-content:center}.pending-card{width:100%;max-width:480px;text-align:center;box-shadow:var(--shadow);padding:32px 24px}.pending-icon{line-height:1;margin-bottom:8px;color:var(--muted);display:flex;justify-content:center}.pending-icon svg{width:56px;height:56px}.pending-screen h2{font-size:1.6rem;margin-bottom:12px}.pending-start{color:var(--muted);font-size:.95rem;margin-bottom:4px}.pending-kicker{color:var(--muted);margin-bottom:16px;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}.pending-reminder{margin-top:20px;display:flex;justify-content:center;align-items:center}.pending-reminder:empty{display:none}.pending-reminder-set{color:var(--text);font-size:.85rem;margin:0}.pending-change-session{margin-top:4px}.pending-actions{margin-top:24px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.tab-bar{display:flex;gap:4px;margin-bottom:24px;border-bottom:1px solid var(--border);padding-bottom:8px}.tab{background:transparent;color:var(--muted);padding:8px 18px;border-radius:8px 8px 0 0;font-size:.9rem;min-height:44px;transition:all var(--duration-normal) var(--ease-out)}.tab.active{background:var(--surface2);color:var(--text)}table{width:100%;border-collapse:collapse;font-size:.85rem}table th{text-align:left;padding:8px 12px;color:var(--muted);border-bottom:1px solid var(--border);vertical-align:middle}table td{padding:8px 12px;border-bottom:1px solid var(--border);vertical-align:middle}table tbody tr{transition:background var(--duration-fast) var(--ease-out)}@media(hover:hover){table tbody tr:hover{background:var(--surface2)}}.toast{position:fixed;bottom:24px;right:24px;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);padding:14px 20px;border-radius:var(--radius);min-height:44px;display:flex;align-items:center;gap:10px;z-index:999;box-shadow:var(--shadow);animation:toast-in var(--duration-normal) var(--ease-spring)}.toast.toast-error{border-left-color:var(--red)}.toast.toast-success{border-left-color:var(--green)}#loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8999;display:none;align-items:center;justify-content:center;pointer-events:none}#loading-overlay.active{display:flex}.spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}#loading-overlay .spinner{border:3px solid var(--border);border-top-color:var(--accent)}@keyframes spin{to{transform:rotate(360deg)}}#modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:9000;display:none;align-items:center;justify-content:center;padding:24px}#modal-overlay.open{display:flex}#modal-box{width:min(420px,calc(100vw - 32px));max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);overflow-y:auto;box-shadow:var(--shadow-3);animation:modal-in var(--duration-normal) var(--ease-spring)}#modal-title{margin-bottom:12px}#modal-body{color:var(--muted);font-size:.9rem;line-height:1.6;margin-bottom:24px}#modal-box .modal-actions{display:flex;gap:12px;justify-content:flex-end}@keyframes modal-in{from{opacity:0;transform:scale(0.96)}to{opacity:1;transform:none}}#task-preview-overlay{position:fixed;inset:0;background:var(--overlay);z-index:3000;display:flex;align-items:flex-start;justify-content:center;padding:24px;overflow:auto;animation:modal-in var(--duration-normal) var(--ease-out)}#task-preview-overlay .card{display:flex;flex-direction:column;box-shadow:var(--shadow)}.task-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-shrink:0}.task-preview-kicker{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}.task-preview-body{overflow:auto;flex:1;min-height:0;padding:4px 4px 4px 0}.task-preview-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.task-preview-author{font-size:.85rem;color:var(--muted);margin-bottom:12px}.task-preview-desc{line-height:1.7;color:var(--text)}.task-preview-attach{margin-top:14px}.task-preview-hint{margin-top:16px;padding:12px 16px;background:var(--surface2);border-radius:8px;font-size:.9rem}.task-preview-hint-label{font-weight:600;color:var(--yellow);margin-bottom:6px}.task-preview-hint-body{color:var(--muted)}.task-preview-solution{margin-top:24px;padding:20px;background:var(--surface2);border:1px solid var(--border);border-left:3px solid var(--accent2);border-radius:var(--radius)}.task-preview-solution h3{font-size:1rem;margin-bottom:12px;color:var(--accent2)}.task-preview-solution-group{margin-bottom:12px}.task-preview-solution-group:last-child{margin-bottom:0}.task-preview-solution-label{font-size:.8rem;color:var(--muted);margin-bottom:4px;font-weight:600}.task-preview-answer{background:var(--surface);padding:10px 14px;border-radius:8px;font-size:.9rem;font-weight:700;color:var(--green);word-break:break-all}.task-preview-explanation{color:var(--text);line-height:1.7;font-size:.9rem}.task-preview-foot{margin-top:16px;display:flex;justify-content:flex-end;flex-shrink:0}.sortable{cursor:pointer;user-select:none;white-space:nowrap}.sortable:hover{color:var(--accent)}.sortable:focus-visible{outline:2px solid var(--accent2);outline-offset:2px;color:var(--accent)}.tag{display:inline-block;padding:1px 8px;border-radius:var(--pill-radius);font-size:.7rem;font-weight:600;background:var(--accent);color:#fff;margin:1px 2px;white-space:nowrap}.tag .tag-x{cursor:pointer;margin-left:4px;opacity:.7;padding:4px}.tag .tag-x:hover{opacity:1}.tag-add{display:inline-block;padding:1px 6px;border-radius:var(--pill-radius);font-size:.7rem;cursor:pointer;border:1px dashed var(--muted);color:var(--muted);white-space:nowrap}.tag-add:hover{border-color:var(--accent);color:var(--accent)}.dev-link-box{position:fixed;bottom:24px;right:24px;background:var(--surface2);border:1px solid var(--yellow);padding:16px 20px;border-radius:8px;z-index:999;max-width:420px;overflow-wrap:break-word;animation:slide-in .3s ease}@keyframes slide-in{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}@keyframes toast-in{from{opacity:0;transform:translateX(20px) scale(0.96)}to{opacity:1;transform:none}}.skeleton{background:linear-gradient(90deg,var(--surface2) 25%,var(--surface) 50%,var(--surface2) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:8px}.skeleton-line{height:1em;margin-bottom:8px;border-radius:4px}.skeleton-card{background:var(--surface);border:1px solid var(--border);border-top:2px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px;min-height:180px;animation:none}.skeleton-card::before{content:"";display:block;height:24px;width:70%;background:linear-gradient(90deg,var(--surface2) 25%,var(--surface) 50%,var(--surface2) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:4px}.skeleton-card::after{content:"";display:block;height:14px;width:100%;flex:1;background:linear-gradient(90deg,var(--surface2) 25%,var(--surface) 50%,var(--surface2) 75%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:4px}.skeleton-row{height:44px;margin-bottom:4px;border-radius:4px}@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.reveal{opacity:0;transform:translateY(12px);transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.reveal.visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}.reveal{opacity:1;transform:none}}.status-badge{display:inline-block;padding:2px 8px;border-radius:var(--pill-radius);font-size:.75rem;font-weight:700}.status-badge.unconfirmed{background:var(--yellow-soft);color:var(--yellow)}.status-badge.confirmed{background:var(--green-soft);color:var(--green)}.status-badge.locked{background:var(--yellow-soft);color:var(--yellow)}.status-badge.blocked{background:var(--red-soft);color:var(--red)}.status-badge.live{background:var(--green-soft);color:var(--green)}.status-badge.upcoming{background:var(--yellow-soft);color:var(--yellow)}.status-badge.ended{background:var(--surface2);color:var(--muted)}.action-cell{display:inline-flex;gap:4px;align-items:center}.task-actions{flex-wrap:nowrap;white-space:nowrap}.kebab-btn{display:none;width:44px;height:44px;border-radius:50%;background:transparent;border:none;cursor:pointer;font-size:1.3rem;color:var(--muted);align-items:center;justify-content:center;transition:all var(--duration-fast) var(--ease-out)}.kebab-btn.kebab-always{display:inline-flex}@media(hover:hover){.kebab-btn:hover{background:var(--surface2);color:var(--text)}}.kebab-btn:active{background:var(--surface2);color:var(--text)}.kebab-menu{display:none;position:fixed;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:4px 0;min-width:180px;z-index:20;box-shadow:var(--shadow)}.kebab-menu.open{display:block}.kebab-menu button{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:8px 14px;background:transparent;border:none;color:var(--text);font-size:.85rem;cursor:pointer;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out);font-family:inherit}.kebab-menu button svg{flex-shrink:0;opacity:.7;transition:opacity var(--duration-fast) var(--ease-out)}.kebab-menu button:hover{background:var(--surface2)}.kebab-menu button:hover svg{opacity:1}.kebab-menu button.km-danger{color:var(--red)}.kebab-menu button.km-danger:hover{background:var(--red-soft)}.kebab-menu button.km-warning{color:var(--yellow)}.kebab-menu button.km-warning:hover{background:var(--yellow-soft)}footer{background:#131028;border-top:1px solid var(--border);padding:20px 32px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}footer .footer-logo img.logo-dark{height:26px;width:auto;opacity:.85;display:inline}footer .footer-logo img.logo-light{height:26px;width:auto;opacity:.85;display:none}footer .footer-copy{font-size:.78rem;color:var(--muted)}footer .footer-social{display:flex;align-items:center;gap:14px}footer .footer-social a{color:var(--muted);transition:.2s;display:flex;align-items:center}footer .footer-social a:hover{color:var(--text)}footer .footer-social svg{width:18px;height:18px;fill:currentColor}.cx-logo-card{display:block;margin:0 auto 20px;height:48px;width:auto}#admin-comp-body tr.comp-selected{background:rgba(124,58,237,0.08);outline:2px solid var(--accent);outline-offset:-2px}#admin-comp-body tr.comp-dimmed{opacity:.4}.scope-banner{background:var(--surface2);border:1px solid var(--accent);border-radius:var(--radius);padding:12px 20px;margin-bottom:16px;display:flex;align-items:center;gap:16px;font-size:.9rem;font-variant-numeric:tabular-nums;min-height:50px;flex-wrap:wrap;box-shadow:var(--shadow)}.scope-banner strong{color:var(--accent2)}.scope-banner .scope-content{display:flex;align-items:center;gap:12px;flex-wrap:wrap;flex:1;min-width:0}.scope-banner .scope-status,.scope-banner .scope-ts-status{display:inline-flex;align-items:center;gap:6px}.scope-banner .scope-action{margin-left:8px}.scope-banner .scope-action-sm{font-size:.7rem;padding:8px 12px;margin-left:8px;min-height:44px}.scope-banner .scope-ts-chips{font-size:.78rem;display:inline-flex;flex-wrap:wrap;gap:4px}.scope-banner .scope-ts-chips .comp-badge{cursor:pointer;font-size:.68rem}.scope-banner .scope-clear{background:transparent;color:var(--muted);font-size:.85rem;margin-left:auto;cursor:pointer;padding:6px 12px;border-radius:6px;border:1px solid transparent;transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.scope-banner .scope-clear:hover{color:var(--red);background:var(--red-soft);border-color:var(--red)}.search-wrap{position:relative;flex:1;min-width:200px}.search-wrap::before{content:"";position:absolute;left:12px;top:50%;width:14px;height:14px;transform:translateY(-50%);pointer-events:none;opacity:.7;background:currentColor;color:var(--muted);transition:color var(--duration-fast) var(--ease-out),opacity var(--duration-fast) var(--ease-out);-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' d='M7 1.5a5.5 5.5 0 1 1 0 11 5.5 5.5 0 0 1 0-11Zm4 9.5 3.5 3.5'/></svg>") no-repeat center/contain;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' d='M7 1.5a5.5 5.5 0 1 1 0 11 5.5 5.5 0 0 1 0-11Zm4 9.5 3.5 3.5'/></svg>") no-repeat center/contain}.search-wrap input{width:100%;padding-left:34px;padding-right:60px}.search-wrap.has-value input{border-color:var(--accent2)}.search-wrap.has-value::before{color:var(--accent2);opacity:1}.search-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:var(--muted);font-size:.85rem;cursor:pointer;padding:4px 8px;border-radius:6px;white-space:nowrap;transition:color var(--duration-fast) var(--ease-out)}.search-clear:hover,.search-clear:focus-visible{color:var(--text)}.search-clear.hidden{display:none}.pagination{display:flex;align-items:center;gap:12px;margin-top:16px;justify-content:center;flex-wrap:wrap}.pagination button{padding:8px 16px;border-radius:6px;font-size:.82rem;background:var(--surface2);color:var(--text);border:1px solid var(--border);min-height:44px;transition:all var(--duration-fast) var(--ease-out)}.pagination button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination .page-info{font-size:.82rem;color:var(--muted)}.pagination select{width:auto;padding:4px 8px;font-size:.82rem}.cb-cell{width:32px;text-align:center}.cb-cell input[type="checkbox"]{width:20px;height:20px;cursor:pointer;accent-color:var(--accent);min-width:20px}#pending-badge{display:none;background:var(--yellow);color:#000;font-size:.65rem;padding:1px 8px;border-radius:999px;font-weight:700;margin-left:4px;line-height:1.5}.selection-bar{position:sticky;bottom:0;background:var(--surface);border:1px solid var(--accent);border-radius:8px;padding:12px 20px;display:flex;align-items:center;gap:12px;margin-top:12px;z-index:10;box-shadow:var(--shadow);flex-wrap:wrap}.comp-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;cursor:pointer;transition:all var(--duration-normal) var(--ease-spring);border-top:2px solid var(--accent2);box-shadow:var(--shadow)}@media(hover:hover){.comp-card:hover{border-color:var(--accent);border-top-color:var(--accent);transform:translateY(-2px)}}.comp-card:active{border-color:var(--accent);border-top-color:var(--accent)}.comp-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.comp-card.internal{opacity:.75;border-left:3px solid var(--yellow)}.comp-card .comp-name{font-weight:700;font-size:1.05rem;margin-bottom:8px;overflow-wrap:anywhere;word-break:break-word}.comp-card .comp-time{font-size:.82rem;color:var(--muted);margin-bottom:4px;font-variant-numeric:tabular-nums}.comp-card .comp-countdown{font-size:.9rem;font-weight:700;margin-top:8px;min-height:1.4em;font-variant-numeric:tabular-nums}#timeslot-picker-page .ts-picker-wrap{max-width:min(600px,calc(100vw - 32px));margin:0 auto;padding:24px}#timeslot-picker-page .ts-picker-subtitle{color:var(--muted);margin-bottom:20px}#timeslot-picker-page .ts-picker-list>.comp-card{margin-bottom:12px}#timeslot-picker-page .ts-picker-list>.comp-card:last-child{margin-bottom:0}.comp-card .ts-row{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.comp-card.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.comp-card.selected{outline:2px solid var(--accent);outline-offset:-2px}.comp-card.internal-ts{border-left:3px solid var(--yellow)}.comp-card.ended-readonly{opacity:.6;cursor:default;pointer-events:none}.ts-chosen-badge{font-size:.72rem;font-weight:600;color:var(--green)}.ts-internal-badge{font-size:.65rem;margin-left:4px}.ts-live-warning{font-size:.72rem;color:var(--yellow);margin-top:4px}.ts-all-ended-note{text-align:center;padding:16px 0;color:var(--muted)}.ts-all-ended-note p{font-size:1.1rem;margin-bottom:16px}html[data-theme="light"]{--bg:#F5F3FA;--surface:#FFFFFF;--surface2:#EFECF6;--accent:#7C3AED;--accent2:#6D28D9;--green:#15803d;--yellow:#c2410c;--red:#d62828;--text:#0F0D1A;--muted:#64607A;--easy:#15803d;--medium:#c2410c;--hard:#d62828;--border:rgba(0,0,0,0.12);--overlay:rgba(0,0,0,0.40);--code-bg:#f5f2f9;--code-fg:#383a42;--badge-green-fg:#166534;--badge-yellow-fg:#9a3412;--badge-red-fg:#991b1b;--shadow-1:0 1px 2px rgba(15,13,26,0.06);--shadow-2:0 4px 12px rgba(15,13,26,0.08),0 1px 2px rgba(15,13,26,0.06);--shadow-3:0 12px 32px rgba(15,13,26,0.14),0 2px 6px rgba(15,13,26,0.08);--shadow:var(--shadow-1)}html[data-theme="light"] body{background:var(--bg)}html[data-theme="light"] input,html[data-theme="light"] select,html[data-theme="light"] textarea{background:var(--surface);border:1px solid rgba(0,0,0,0.20)}html[data-theme="light"] input:focus,html[data-theme="light"] select:focus,html[data-theme="light"] textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(109,40,217,0.15)}html[data-theme="light"] input[type="date"],html[data-theme="light"] input[type="time"]{color-scheme:light}html[data-theme="light"] .card{background:var(--surface);border:1px solid rgba(0,0,0,0.12);border-top:2px solid var(--accent)}html[data-theme="light"] header{background:var(--surface);border-color:rgba(0,0,0,0.12)}html[data-theme="light"] .nav-btn{color:var(--muted)}html[data-theme="light"] .nav-btn:hover,html[data-theme="light"] .nav-btn.active{background:var(--surface2);color:var(--text)}html[data-theme="light"] .btn.secondary{background:var(--surface);color:var(--text);border:1px solid rgba(0,0,0,0.20)}@media(hover:hover){html[data-theme="light"] .btn.secondary:hover{border-color:var(--accent);color:var(--accent)}}html[data-theme="light"] .filter-btn{background:var(--surface);border:1px solid rgba(0,0,0,0.18);color:var(--muted)}@media(hover:hover){html[data-theme="light"] .filter-btn:hover{border-color:var(--accent);color:var(--text)}}html[data-theme="light"] .filter-btn.active{border-color:var(--accent);color:#fff;background:var(--accent)}html[data-theme="light"] .task-card{background:var(--surface);border:1px solid rgba(0,0,0,0.12);border-top:2px solid var(--accent2)}@media(hover:hover){html[data-theme="light"] .task-card:hover{border-color:var(--accent);border-top-color:var(--accent);box-shadow:var(--shadow-2)}}html[data-theme="light"] .task-card h3{color:var(--text)}html[data-theme="light"] .task-card p{color:var(--muted)}html[data-theme="light"] .pts{color:var(--accent2)}html[data-theme="light"] .score-pill{background:var(--surface);border:1px solid rgba(0,0,0,0.18);color:var(--accent2);font-weight:700}html[data-theme="light"] .lb-table th{border-color:var(--border);color:var(--muted);font-weight:700}html[data-theme="light"] .lb-table td{border-color:var(--border)}html[data-theme="light"] .lb-table tr.me{background:#6d28d910}html[data-theme="light"] table th{border-color:var(--border);color:var(--muted);font-weight:700}html[data-theme="light"] table td{border-color:var(--border)}html[data-theme="light"] .tab-bar{border-color:var(--border)}html[data-theme="light"] .tab{color:var(--muted)}html[data-theme="light"] .tab.active{background:var(--surface2);color:var(--text);font-weight:600}html[data-theme="light"] .toast{background:var(--surface)}html[data-theme="light"] .dev-link-box{background:var(--surface);border-color:var(--yellow)}html[data-theme="light"] footer{background:var(--surface);border-color:rgba(0,0,0,0.12)}html[data-theme="light"] .badge.easy{background:#15803d18;color:var(--badge-green-fg);font-weight:700}html[data-theme="light"] .badge.medium{background:#c2410c18;color:var(--badge-yellow-fg);font-weight:700}html[data-theme="light"] .badge.hard{background:#d6282818;color:var(--badge-red-fg);font-weight:700}html[data-theme="light"] .badge.solved{background:#6d28d915;color:var(--accent);font-weight:700}html[data-theme="light"] .badge.draft{background:#4b556318;color:var(--muted);font-weight:700}html[data-theme="light"] .badge.published{background:#15803d18;color:var(--badge-green-fg);font-weight:700}html[data-theme="light"] .badge.hidden{background:#d6282818;color:var(--badge-red-fg);font-weight:700}html[data-theme="light"] .badge.comp-badge.comp-live{background:#15803d20;color:var(--badge-green-fg);font-weight:700}html[data-theme="light"] .badge.comp-badge.comp-upcoming{background:#c2410c20;color:var(--badge-yellow-fg);font-weight:700}html[data-theme="light"] .badge.comp-badge.comp-ended{background:#4b556315;color:var(--muted);border:1px solid rgba(0,0,0,0.08)}html[data-theme="light"] .status-badge.unconfirmed{background:#c2410c20;color:var(--badge-yellow-fg);font-weight:700}html[data-theme="light"] .status-badge.confirmed{background:#15803d20;color:var(--badge-green-fg);font-weight:700}html[data-theme="light"] .status-badge.locked{background:#c2410c20;color:#9a3412;font-weight:700}html[data-theme="light"] .status-badge.blocked{background:#d6282820;color:var(--badge-red-fg);font-weight:700}html[data-theme="light"] .status-badge.live{background:#15803d20;color:var(--badge-green-fg);font-weight:700}html[data-theme="light"] .status-badge.upcoming{background:#c2410c20;color:var(--badge-yellow-fg);font-weight:700}html[data-theme="light"] .status-badge.ended{background:#4b556315;color:var(--muted);border:1px solid rgba(0,0,0,0.08)}html[data-theme="light"] #modal-overlay{background:var(--overlay)}html[data-theme="light"] #modal-box{box-shadow:var(--shadow-3)}html[data-theme="light"] .kebab-menu{background:var(--surface);border:1px solid rgba(0,0,0,0.15);box-shadow:var(--shadow)}html[data-theme="light"] .kebab-menu button:hover{background:var(--surface2)}html[data-theme="light"] .kebab-menu button.km-danger:hover{background:#d6282815}html[data-theme="light"] .kebab-menu button.km-warning:hover{background:#c2410c15}html[data-theme="light"] .podium-block.p1{background:linear-gradient(180deg,#c2410c40,#c2410c18);border-color:#c2410c}html[data-theme="light"] .podium-block.p2{background:linear-gradient(180deg,#9ca3af35,#9ca3af12);border-color:#6b7280}html[data-theme="light"] .podium-block.p3{background:linear-gradient(180deg,#9a341240,#9a341218);border-color:#9a3412}html[data-theme="light"] .countdown{background:linear-gradient(90deg,#15803d,#2563eb);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}html[data-theme="light"] header h1 span{color:var(--muted)}html[data-theme="light"] header h1 img.logo-dark{display:none}html[data-theme="light"] header h1 img.logo-light{display:inline}html[data-theme="light"] .cx-logo-card.logo-dark{display:none}html[data-theme="light"] .cx-logo-card.logo-light{display:block}html[data-theme="light"] footer .footer-logo img.logo-dark{display:none}html[data-theme="light"] footer .footer-logo img.logo-light{display:inline}html[data-theme="light"] .comp-card{background:var(--surface);border:1px solid var(--border);border-top:2px solid var(--accent2)}@media(hover:hover){html[data-theme="light"] .comp-card:hover{border-color:var(--accent);border-top-color:var(--accent)}}html[data-theme="light"] .scope-banner{background:var(--surface);border:1px solid var(--accent);box-shadow:var(--shadow)}html[data-theme="light"] .selection-bar{background:var(--surface);border:1px solid var(--accent);box-shadow:var(--shadow)}html[data-theme="light"] .pagination button{background:var(--surface);border:1px solid rgba(0,0,0,0.18)}html[data-theme="light"] .tag{background:var(--accent);color:#fff}html[data-theme="light"] #admin-comp-body tr.comp-selected{background:rgba(109,40,217,0.07);outline-color:var(--accent)}html[data-theme="light"] .pending-screen{color:var(--text)}html[data-theme="light"] .back-btn{color:var(--muted)}@media(hover:hover){html[data-theme="light"] .back-btn:hover{color:var(--text)}}html[data-theme="light"] .result-msg.correct{background:#15803d12;border-color:var(--green);color:var(--green)}html[data-theme="light"] .result-msg.wrong{background:#d6282812;border-color:var(--red);color:var(--red)}@media(max-width:600px){header{padding:8px 14px;gap:8px}main{padding:16px;padding-bottom:calc(80px + env(safe-area-inset-bottom))}footer{padding-bottom:calc(60px + env(safe-area-inset-bottom) + 14px)}#main-nav{position:fixed;bottom:0;left:0;right:0;z-index:100;border-radius:0;padding:8px 16px calc(8px + env(safe-area-inset-bottom)) 16px;background:var(--surface);border-top:1px solid var(--border);justify-content:space-around}.nav-btn{font-size:.78rem;padding:8px 12px;flex-shrink:0;min-height:44px}.task-actions{display:none!important}.comp-actions{display:none!important}.kebab-btn{display:inline-flex!important}.scope-banner{padding:8px 12px;gap:8px;font-size:.82rem;min-height:auto}.selection-bar{padding:8px 12px;gap:8px}.toast,.dev-link-box{right:12px;left:12px;bottom:80px;max-width:unset}}@media(max-width:768px){main{padding:16px}header{padding:8px 14px;gap:8px}header h1 img{height:26px}.task-actions{display:none!important}.comp-actions{display:none!important}.kebab-btn{display:inline-flex!important}#assign-to-comp-btn{display:none!important}.cx-logo-card{height:36px}.card{padding:16px}footer{padding:14px 16px;flex-direction:column;align-items:center;text-align:center;gap:8px}.table-card{overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-bar{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;gap:0}.tab-bar::-webkit-scrollbar{display:none}.tab{flex-shrink:0;font-size:.8rem;padding:8px 10px}.pending-card{padding:24px 16px}.pending-screen h2{font-size:1.3rem}.pending-icon svg{width:45px;height:45px}.countdown{font-size:1.1rem;letter-spacing:.01em}.podium{gap:8px;margin-bottom:20px;min-height:140px}.podium-block{width:72px}.podium-block.p1{height:85px}.podium-block.p2{height:64px}.podium-block.p3{height:48px}.podium-name{font-size:.7rem;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.podium-num{font-size:1.1rem}.podium-pts{font-size:.65rem}.lb-table th,.lb-table td{padding:8px 6px;font-size:.78rem}#leaderboard-page .card{overflow-x:auto;-webkit-overflow-scrolling:touch}#leaderboard-page h2{font-size:1.2rem;margin-bottom:16px}.avatar-grid{grid-template-columns:repeat(auto-fill,minmax(48px,1fr))}#user-info{gap:8px!important}}@media(max-width:480px) and (orientation:portrait){header{min-height:auto;flex-wrap:wrap;padding-top:4px;padding-bottom:4px}header h1{order:0;height:44px;flex:0 0 auto;min-width:0;overflow:hidden}header h1 span{display:none}header h1 img{height:22px}#platform-version{order:0;font-size:.6rem;margin-left:auto;align-self:center;flex-shrink:0}#user-info{order:1;width:100%;height:auto;gap:6px!important;padding:0 0 4px;flex-wrap:wrap}#user-info .btn{font-size:.72rem!important;padding:6px 8px!important;min-height:44px!important;min-width:44px!important}.user-nickname{display:none}#header-timer{order:2;width:100%;font-size:.8rem!important;padding:0 0 6px}.score-pill{font-size:.75rem;padding:3px 10px}.podium{gap:4px;min-height:120px}.podium-block{width:60px}.podium-block.p1{height:72px}.podium-block.p2{height:54px}.podium-block.p3{height:40px}.podium-name{font-size:.62rem;max-width:60px}.podium-num{font-size:1rem}.podium-pts{font-size:.6rem}}@media(max-height:450px){header{height:48px!important;flex-wrap:nowrap!important}#main-nav{order:0!important;width:auto!important;padding:0!important}main{padding:10px 16px}#pending-page.active{padding:12px 16px}.pending-card{padding:16px}.pending-icon{margin-bottom:4px}.pending-icon svg{width:35px;height:35px}}.rich-editor{border:1px solid var(--border);border-radius:8px;background:var(--surface2);overflow:hidden}.rich-toolbar{display:flex;align-items:center;gap:2px;padding:6px 8px;border-bottom:1px solid var(--border);flex-wrap:wrap}.rich-toolbar button{background:transparent;color:var(--muted);border:none;border-radius:4px;width:30px;height:28px;font-size:.85rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.rich-toolbar button:hover{background:#ffffff12;color:var(--text)}.rich-toolbar .tb-sep{width:1px;height:18px;background:var(--border);margin:0 4px}.rich-body{min-height:80px;padding:10px 14px;color:var(--text);font-size:.9rem;line-height:1.6;outline:none}.rich-body:focus{box-shadow:inset 0 0 0 1px var(--accent)}.rich-body ol,.rich-body ul,#task-detail-card ol,#task-detail-card ul{margin:4px 0 4px 20px;padding:0}.rich-body li,#task-detail-card li{margin:2px 0}.rich-body:empty::before{content:attr(data-placeholder);color:#ffffff40;pointer-events:none}.rich-body a,#task-detail-card a{color:var(--accent2);text-decoration:underline;text-underline-offset:2px}.rich-body a:hover,#task-detail-card a:hover{opacity:.8}.color-pop{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;z-index:10;box-shadow:var(--shadow)}.color-sw{width:24px;height:24px;border-radius:4px;cursor:pointer;border:2px solid transparent;transition:all var(--duration-fast) var(--ease-out)}.color-sw:hover{border-color:var(--text)}.color-sw.no-color{background:var(--surface2);display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--muted)}.rich-body code,#task-detail-card code{background:rgba(255,255,255,.07);padding:2px 6px;border-radius:4px;font-family:'Courier New',monospace;font-size:.85em}.rich-body pre,#task-detail-card pre{background:var(--code-bg);border:1px solid var(--border);border-radius:8px;padding:16px 20px;overflow-x:auto;margin:10px 0}.rich-body pre code,#task-detail-card pre code{background:none!important;padding:0!important;font-size:.85rem;line-height:1.6;font-family:'Courier New',Consolas,'Fira Code',monospace;color:var(--code-fg)}.rich-body pre code .hljs-keyword,.rich-body pre code .hljs-selector-tag,#task-detail-card pre code .hljs-keyword,#task-detail-card pre code .hljs-selector-tag{color:#c678dd}.rich-body pre code .hljs-string,.rich-body pre code .hljs-addition,#task-detail-card pre code .hljs-string,#task-detail-card pre code .hljs-addition{color:#98c379}.rich-body pre code .hljs-number,.rich-body pre code .hljs-literal,#task-detail-card pre code .hljs-number,#task-detail-card pre code .hljs-literal{color:#d19a66}.rich-body pre code .hljs-comment,.rich-body pre code .hljs-quote,#task-detail-card pre code .hljs-comment,#task-detail-card pre code .hljs-quote{color:#5c6370;font-style:italic}.rich-body pre code .hljs-tag,#task-detail-card pre code .hljs-tag{color:#abb2bf}.rich-body pre code .hljs-name,.rich-body pre code .hljs-selector-id,.rich-body pre code .hljs-selector-class,#task-detail-card pre code .hljs-name,#task-detail-card pre code .hljs-selector-id,#task-detail-card pre code .hljs-selector-class{color:#e06c75}.rich-body pre code .hljs-attr,.rich-body pre code .hljs-variable,.rich-body pre code .hljs-template-variable,#task-detail-card pre code .hljs-attr,#task-detail-card pre code .hljs-variable,#task-detail-card pre code .hljs-template-variable{color:#d19a66}.rich-body pre code .hljs-built_in,.rich-body pre code .hljs-type,#task-detail-card pre code .hljs-built_in,#task-detail-card pre code .hljs-type{color:#e6c07b}.rich-body pre code .hljs-function,.rich-body pre code .hljs-title,#task-detail-card pre code .hljs-function,#task-detail-card pre code .hljs-title{color:#61afef}.rich-body pre code .hljs-params,#task-detail-card pre code .hljs-params{color:#abb2bf}.rich-body pre code .hljs-regexp,.rich-body pre code .hljs-link,#task-detail-card pre code .hljs-regexp,#task-detail-card pre code .hljs-link{color:#56b6c2}.rich-body pre code .hljs-symbol,.rich-body pre code .hljs-bullet,#task-detail-card pre code .hljs-symbol,#task-detail-card pre code .hljs-bullet{color:#61afef}.rich-body pre code .hljs-meta,.rich-body pre code .hljs-meta .hljs-keyword,#task-detail-card pre code .hljs-meta,#task-detail-card pre code .hljs-meta .hljs-keyword{color:#e06c75}.rich-body pre code .hljs-deletion,#task-detail-card pre code .hljs-deletion{color:#e06c75}.rich-body pre code .hljs-emphasis,#task-detail-card pre code .hljs-emphasis{font-style:italic}.rich-body pre code .hljs-strong,#task-detail-card pre code .hljs-strong{font-weight:700}html[data-theme="light"] .rich-body pre code .hljs-keyword,html[data-theme="light"] .rich-body pre code .hljs-selector-tag,html[data-theme="light"] #task-detail-card pre code .hljs-keyword,html[data-theme="light"] #task-detail-card pre code .hljs-selector-tag{color:#a626a4}html[data-theme="light"] .rich-body pre code .hljs-string,html[data-theme="light"] .rich-body pre code .hljs-addition,html[data-theme="light"] #task-detail-card pre code .hljs-string,html[data-theme="light"] #task-detail-card pre code .hljs-addition{color:#50780f}html[data-theme="light"] .rich-body pre code .hljs-number,html[data-theme="light"] .rich-body pre code .hljs-literal,html[data-theme="light"] #task-detail-card pre code .hljs-number,html[data-theme="light"] #task-detail-card pre code .hljs-literal{color:#986801}html[data-theme="light"] .rich-body pre code .hljs-comment,html[data-theme="light"] .rich-body pre code .hljs-quote,html[data-theme="light"] #task-detail-card pre code .hljs-comment,html[data-theme="light"] #task-detail-card pre code .hljs-quote{color:#5f6676;font-style:italic}html[data-theme="light"] .rich-body pre code .hljs-attr,html[data-theme="light"] .rich-body pre code .hljs-variable,html[data-theme="light"] .rich-body pre code .hljs-template-variable,html[data-theme="light"] #task-detail-card pre code .hljs-attr,html[data-theme="light"] #task-detail-card pre code .hljs-variable,html[data-theme="light"] #task-detail-card pre code .hljs-template-variable{color:#986801}html[data-theme="light"] .rich-body pre code .hljs-built_in,html[data-theme="light"] .rich-body pre code .hljs-type,html[data-theme="light"] #task-detail-card pre code .hljs-built_in,html[data-theme="light"] #task-detail-card pre code .hljs-type{color:#805600}html[data-theme="light"] .rich-body pre code .hljs-function,html[data-theme="light"] .rich-body pre code .hljs-title,html[data-theme="light"] #task-detail-card pre code .hljs-function,html[data-theme="light"] #task-detail-card pre code .hljs-title{color:#0045b4}html[data-theme="light"] .rich-body pre code .hljs-tag,html[data-theme="light"] #task-detail-card pre code .hljs-tag,html[data-theme="light"] .rich-body pre code .hljs-params,html[data-theme="light"] #task-detail-card pre code .hljs-params{color:#3e3f42}html[data-theme="light"] .rich-body pre code .hljs-name,html[data-theme="light"] .rich-body pre code .hljs-selector-id,html[data-theme="light"] .rich-body pre code .hljs-selector-class,html[data-theme="light"] #task-detail-card pre code .hljs-name,html[data-theme="light"] #task-detail-card pre code .hljs-selector-id,html[data-theme="light"] #task-detail-card pre code .hljs-selector-class{color:#b21c1c}.drop-pop{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:4px 0;z-index:10;box-shadow:var(--shadow);min-width:140px;max-height:250px;overflow-y:auto}.drop-pop div{padding:6px 14px;cursor:pointer;font-size:.82rem;color:var(--text);white-space:nowrap}.drop-pop div:hover{background:rgba(255,255,255,.06)}#admin-rankings-tab .rankings-card-grid{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-start}#admin-rankings-tab .rankings-picker-card{flex:1;min-width:320px;overflow-x:auto;-webkit-overflow-scrolling:touch;cursor:pointer;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}@media(hover:hover){#admin-rankings-tab .rankings-picker-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-2)}}#admin-rankings-tab .rankings-picker-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}#admin-rankings-tab .rankings-picker-card.is-internal{border-left:3px solid var(--yellow)}#admin-rankings-tab .rankings-empty{color:var(--muted);margin:0;padding:8px 0}#admin-rankings-tab .rankings-empty-row{color:var(--muted);text-align:center;padding:24px}#admin-rankings-tab .rankings-empty-row.compact{padding:16px}#admin-rankings-tab .rankings-status-pill{font-size:.75rem;font-weight:600;letter-spacing:.02em;margin-left:6px}#admin-rankings-tab .rankings-status-pill.is-live{color:var(--green)}#admin-rankings-tab .rankings-status-pill.is-ended{color:var(--muted)}#admin-rankings-tab .rankings-status-pill.is-upcoming{color:var(--accent2)}html[data-theme="light"] #admin-rankings-tab .rankings-picker-card:hover{box-shadow:var(--shadow-2)}.analytics-filterbar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.filter-card{background:var(--surface2);border-radius:var(--radius-md);padding:14px 16px;display:flex;flex-direction:column;gap:12px}.filter-card-title{font-size:.7rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.filter-card-section{display:flex;flex-direction:column;gap:6px}.mini-label{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.mini-hint{font-size:.7rem;color:var(--muted);font-weight:400}.filter-select,.filter-card input[type="date"]{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:7px 10px;font-size:.85rem;font-family:inherit;width:100%}.filter-select:focus,.filter-card input[type="date"]:focus{outline:none;border-color:var(--accent)}.filter-date-range{display:flex;align-items:center;gap:6px;font-size:.85rem}.filter-date-range input[type="date"]{flex:1;min-width:0}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--text);cursor:pointer;line-height:1.4}.checkbox-row input[type="checkbox"]{width:16px;height:16px;flex-shrink:0;cursor:pointer;accent-color:var(--accent);padding:0;margin:0}.seg-control{display:inline-flex;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:2px;gap:2px;width:100%}.seg{flex:1;background:transparent;border:0;color:var(--muted);font-weight:600;padding:7px 12px;border-radius:6px;cursor:pointer;font-size:.82rem;transition:background var(--duration-fast),color var(--duration-fast)}.seg:hover{color:var(--text)}.seg-active{background:var(--accent);color:#fff}.seg-active:hover{color:#fff}.chip-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chip{background:var(--surface);border:1px solid var(--border);color:var(--muted);font-size:.76rem;font-weight:600;padding:5px 11px;border-radius:var(--pill-radius);cursor:pointer;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}.chip:hover{color:var(--text)}.chip-active{background:var(--accent);color:#fff;border-color:var(--accent)}.chip-active.chip-easy{background:var(--easy);border-color:var(--easy)}.chip-active.chip-medium{background:var(--medium);border-color:var(--medium);color:#1a1730}html[data-theme="light"] .chip-active.chip-medium{color:#fff}.chip-active.chip-hard{background:var(--hard);border-color:var(--hard)}.picker-btn{display:flex;align-items:center;gap:8px;width:100%;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:9px 12px;cursor:pointer;color:var(--text);font-size:.88rem;font-family:inherit;text-align:left;transition:border-color var(--duration-fast),background var(--duration-fast)}.picker-btn:hover{border-color:var(--accent);background:rgba(255,255,255,.03)}.picker-btn-name{flex:1;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-btn-placeholder{flex:1;color:var(--muted);font-style:italic}.picker-btn-chev{color:var(--muted);font-size:.7rem;flex-shrink:0}.link-btn{background:transparent;border:0;color:var(--accent2);font-size:.78rem;cursor:pointer;text-decoration:underline;padding:0;font-family:inherit;align-self:flex-start}.link-btn:hover{color:var(--accent)}.link-btn-inline{background:transparent;border:0;color:var(--accent2);font-size:.7rem;cursor:pointer;text-decoration:underline;padding:0;margin-left:6px;font-family:inherit;text-transform:none;font-weight:400}.picker-overlay{position:fixed;inset:0;background:var(--overlay);z-index:3000;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto}.picker-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px 24px;width:min(680px,calc(100vw - 32px));max-height:90vh;display:flex;flex-direction:column;gap:14px}.picker-modal-wide{width:min(960px,calc(100vw - 32px))}.picker-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.picker-modal-head h3{margin:0}.picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;overflow-y:auto;padding:4px 2px;max-height:65vh}.picker-grid-narrow{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.picker-card{position:relative;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px;cursor:pointer;text-align:left;font-family:inherit;color:var(--text);display:flex;flex-direction:column;gap:6px;transition:border-color var(--duration-fast),background var(--duration-fast),transform var(--duration-fast)}@media(hover:hover){.picker-card:hover{border-color:var(--accent);background:rgba(255,255,255,.03);transform:translateY(-1px)}}.picker-card-active{border-color:var(--accent);background:rgba(124,58,237,.12)}.picker-card-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.picker-card-name{font-weight:600;font-size:.92rem;flex:1;min-width:0}.picker-card-num{color:var(--accent);font-weight:700;font-size:.82rem}.picker-card-meta{font-size:.75rem;color:var(--muted);display:flex;gap:6px;flex-wrap:wrap}.picker-card-checkmark{position:absolute;top:8px;right:10px;color:var(--accent);font-weight:700;font-size:1rem}.picker-modal-flow{gap:12px;box-shadow:var(--shadow-3)}.picker-note{font-size:.85rem;color:var(--muted);margin:0}.picker-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.picker-toolbar-count{font-size:.82rem;color:var(--muted);margin-left:auto}.picker-rows{overflow-y:auto;flex:1;min-height:0;border:1px solid var(--border);border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:4px}.picker-row{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px 10px;border-radius:6px;background:var(--surface2);border:1px solid transparent;transition:border-color var(--duration-fast),background var(--duration-fast)}.picker-row:hover{border-color:var(--accent)}.picker-row:has(.picker-row-check:checked){border-color:var(--accent);background:rgba(124,58,237,.12)}.picker-row-check{width:16px;height:16px;accent-color:var(--accent);flex-shrink:0}.picker-row-body{flex:1;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.picker-row-flag{color:var(--red);font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.picker-modal-foot{display:flex;gap:10px;margin-top:4px;flex-shrink:0;flex-wrap:wrap}html[data-theme="light"] .picker-modal-flow{box-shadow:var(--shadow-3)}html[data-theme="light"] .picker-row:has(.picker-row-check:checked){background:rgba(124,58,237,0.08)}.bulk-assign-row-meta{display:block;font-size:.78rem;color:var(--muted)}.bulk-assign-section{display:flex;flex-direction:column;gap:8px}.bulk-assign-section-title{font-size:.9rem;margin:0}.bulk-assign-summary{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:.82rem;display:flex;flex-direction:column;gap:4px}.bulk-assign-summary-scroll{max-height:150px;overflow-y:auto}.analytics-summary{margin-top:14px}.analytics-summary-grid{display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:stretch}.analytics-donut-wrap{display:flex;align-items:center;justify-content:center}.analytics-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.analytics-stat{background:var(--surface2);border-radius:var(--radius-md);padding:14px 16px}.analytics-stat-label{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:6px}.analytics-stat-value{font-size:1.6rem;font-weight:800;font-feature-settings:"tnum";line-height:1.1}@media(max-width:900px){.analytics-summary-grid{grid-template-columns:1fr}.analytics-stats{grid-template-columns:repeat(2,1fr)}}#analytics-table-card{margin-top:14px}#analytics-table thead th{position:sticky;top:0;background:var(--surface);z-index:1;font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600}#analytics-table thead th[data-sort]:hover{color:var(--text)}#analytics-table tbody tr{transition:background var(--duration-fast)}@media(hover:hover){#analytics-table tbody tr:hover{background:rgba(255,255,255,.03)}}#analytics-table .analytics-row-chart{flex-shrink:0}html[data-theme="light"] .analytics-stat{background:var(--surface2)}html[data-theme="light"] #analytics-table thead th{background:var(--surface)}@media(hover:hover){html[data-theme="light"] #analytics-table tbody tr:hover{background:rgba(0,0,0,.03)}}html[data-theme="light"] .rich-editor{border-color:var(--border)}html[data-theme="light"] .rich-toolbar button:hover{background:#00000008}html[data-theme="light"] .rich-body:empty::before{color:#00000030}html[data-theme="light"] .color-pop{border-color:var(--border)}html[data-theme="light"] .drop-pop{border-color:var(--border)}html[data-theme="light"] .drop-pop div:hover{background:rgba(0,0,0,.04)}html[data-theme="light"] .rich-body code,html[data-theme="light"] #task-detail-card code{background:rgba(0,0,0,.06)}.help-trigger{width:32px;height:32px;border-radius:50%;padding:0;font-size:1.05rem;font-weight:700;line-height:1}#help-slot{display:flex;align-items:center}.help-icon-btn{background:var(--surface2);border:1px solid var(--border);color:var(--text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-family:inherit;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast);min-width:32px;height:32px;padding:0 8px;border-radius:var(--pill-radius);text-decoration:none;font-size:1rem}.help-icon-btn:hover{background:var(--accent);color:var(--role-on-color);border-color:var(--accent)}#help-drawer-overlay{position:fixed;inset:0;z-index:4000;display:flex}#help-drawer-overlay[hidden]{display:none}.help-backdrop{position:absolute;inset:0;background:var(--overlay);opacity:0;transition:opacity var(--duration-normal) var(--ease-out)}#help-drawer-overlay.help-open .help-backdrop{opacity:1}.help-drawer{position:relative;margin-left:auto;width:min(900px,100vw);max-width:100vw;height:100vh;height:100dvh;background:var(--surface);border-left:1px solid var(--border);display:flex;flex-direction:column;transform:translateX(100%);transition:transform var(--duration-slow) var(--ease-out);box-shadow:var(--shadow-3)}#help-drawer-overlay.help-open .help-drawer{transform:translateX(0)}.help-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid var(--border);background:var(--surface)}.help-drawer-title{font-size:1.05rem;font-weight:700}.help-drawer-sub{font-size:.72rem;color:var(--muted);margin-top:2px}.help-drawer-actions{display:flex;align-items:center;gap:8px}.help-drawer-body{flex:1;overflow-y:auto;overscroll-behavior:contain;padding:20px 24px calc(20px + env(safe-area-inset-bottom,0px));line-height:1.6;font-size:.92rem;color:var(--text);-webkit-overflow-scrolling:touch}.help-drawer-body:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.help-drawer-body h1{font-size:1.4rem;margin:0 0 12px}.help-drawer-body h2{font-size:1.15rem;margin:28px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--border)}.help-drawer-body h3{font-size:1rem;margin:22px 0 8px}.help-drawer-body h4{font-size:.92rem;margin:16px 0 6px;color:var(--muted)}.help-drawer-body p{margin:8px 0}.help-drawer-body ul,.help-drawer-body ol{padding-left:22px;margin:8px 0}.help-drawer-body li{margin:3px 0}.help-drawer-body a{color:var(--accent2);text-decoration:underline}.help-drawer-body a:hover{color:var(--accent)}.help-drawer-body img{max-width:100%;height:auto;border:1px solid var(--border);border-radius:8px;margin:12px 0;box-shadow:var(--shadow);display:block}.help-drawer-body code{background:var(--surface2);padding:1px 6px;border-radius:4px;font-size:.85em}.help-drawer-body pre{background:var(--surface2);padding:12px 14px;border-radius:8px;overflow-x:auto;margin:12px 0;border:1px solid var(--border)}.help-drawer-body pre code{background:transparent;padding:0}.help-drawer-body blockquote{border-left:3px solid var(--accent);padding:2px 14px;margin:12px 0;color:var(--muted);background:var(--surface2);border-radius:0 8px 8px 0}.help-drawer-body table{border-collapse:collapse;margin:12px 0;width:100%;font-size:.88em}.help-drawer-body th,.help-drawer-body td{border:1px solid var(--border);padding:6px 10px;text-align:left;vertical-align:top}.help-drawer-body th{background:var(--surface2);font-weight:600}.help-drawer-body hr{border:0;border-top:1px solid var(--border);margin:20px 0}@media(max-width:768px){.help-drawer{width:100vw;border-left:0}.help-drawer-body{padding:16px 16px calc(24px + env(safe-area-inset-bottom,0px))}}html[data-theme="light"] .help-drawer{background:var(--surface);border-left-color:var(--border)}html[data-theme="light"] .help-drawer-head{background:var(--surface)}html[data-theme="light"] .help-icon-btn{background:var(--surface2);border-color:var(--border);color:var(--text)}html[data-theme="light"] .help-icon-btn:hover{color:var(--role-on-color)}html[data-theme="light"] .help-drawer-body code,html[data-theme="light"] .help-drawer-body pre{background:var(--surface2)}html[data-theme="light"] .help-drawer-body blockquote{background:var(--surface2)}html[data-theme="light"] .help-drawer-body th{background:var(--surface2)}.help-page{max-width:960px;margin:0 auto;padding:24px 20px;min-height:100vh;min-height:100dvh}.help-page-head{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.help-page-home{color:var(--muted);text-decoration:none;font-size:.85rem}.help-page-home:hover{color:var(--accent)}.help-page-title{font-weight:700;font-size:.95rem;color:var(--text)}.help-page-nav{margin-left:auto;display:flex;gap:8px;font-size:.8rem;flex-wrap:wrap}.help-page-nav a{color:var(--muted);text-decoration:none;padding:4px 10px;border-radius:6px;border:1px solid var(--border)}.help-page-nav a:hover{color:var(--text);background:var(--surface2)}.help-page-body{flex:initial;overflow-y:visible;overscroll-behavior:auto;padding:0}@media(max-width:768px){.help-page{padding:16px 14px calc(20px + env(safe-area-inset-bottom,0px))}.help-page-nav{width:100%;justify-content:flex-start}}#admin-settings-tab .settings-bento{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}#admin-settings-tab .settings-card{margin-top:0}#admin-settings-tab .settings-card+.settings-card{margin-top:0}#admin-settings-tab .settings-heading{margin:0 0 20px}#admin-settings-tab .settings-help{font-size:.85rem;color:var(--muted);margin:0 0 16px;line-height:1.5}#admin-settings-tab .settings-status{margin-bottom:16px}#admin-settings-tab .settings-status:empty{display:none}#admin-settings-tab .settings-hint{font-size:.8rem;color:var(--muted);margin:6px 0 0;line-height:1.4}#admin-settings-tab .settings-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}@media(max-width:900px){#admin-settings-tab .settings-bento{grid-template-columns:1fr;gap:16px}}#admin-task-form.task-form-card{margin-bottom:24px;box-shadow:var(--shadow)}#admin-task-form .task-form-title{margin:0 0 20px}#admin-task-form .task-form-feedback{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}#admin-task-form .task-form-feedback-title{font-size:.75rem;color:var(--muted);margin:0 0 10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}#admin-task-form .task-form-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;padding-top:20px;border-top:1px solid var(--border)}#admin-task-form .rich-editor{transition:border-color var(--duration-normal) var(--ease-out)}#admin-task-form .rich-editor:focus-within{border-color:var(--accent)}