:root{--asu-maroon: #8C1D40;--asu-gold: #FFC627;--asu-black: #000000;--asu-white: #FFFFFF;--asu-gray-1: #191919;--asu-gray-2: #484848;--asu-gray-3: #747474;--asu-gray-4: #BFBFBF;--asu-gray-5: #D0D0D0;--asu-gray-6: #E8E8E8;--asu-gray-7: #FAFAFA;--asu-green: #78BE20;--asu-blue: #00A3E0;--asu-orange: #FF7F32;--asu-copper: #AF674B;--asu-turquoise: #4AB7C4;--asu-pink: #E74973;--color-text: var(--asu-gray-1);--color-text-muted: var(--asu-gray-3);--color-link: var(--asu-maroon);--color-cta: var(--asu-gold);--color-success: var(--asu-green);--color-warning: var(--asu-orange);--color-danger: var(--asu-maroon);--color-surface: var(--asu-white);--color-surface-alt: var(--asu-gray-7);--color-border: var(--asu-gray-5);--font-family: Arial, Helvetica, "Nimbus Sans L", "Liberation Sans", FreeSans, sans-serif;--font-size-h1: 32px;--font-size-h2: 24px;--font-size-h3: 20px;--font-size-body: 16px;--font-size-small: 14px;--line-height-body: 1.5;--space-1: 8px;--space-2: 16px;--space-3: 24px;--space-4: 32px;--space-6: 48px;--space-8: 64px;--text-max-width: 700px;--content-max-width: 1200px;--transition-quick: .18s ease}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-family);font-size:var(--font-size-body);color:var(--color-text);background:var(--color-surface)}body{margin:0;line-height:var(--line-height-body);text-align:left}i,em{font-style:normal;font-weight:700}h1,h2,h3,h4{margin:0 0 var(--space-2);line-height:1.25;font-weight:700;max-width:var(--text-max-width)}h1{font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3)}p,li,blockquote{max-width:var(--text-max-width)}a{color:var(--color-link);text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--asu-maroon);outline-offset:2px;box-shadow:0 0 0 2px var(--asu-white)}#main:focus,#main:focus-visible{outline:none;box-shadow:none}.btn{display:inline-block;font-family:var(--font-family);font-size:var(--font-size-body);font-weight:700;line-height:1;padding:12px var(--space-3);border:0;border-radius:24px;cursor:pointer;text-decoration:none;transition:transform var(--transition-quick)}.btn:hover:not(:disabled){transform:scale(1.05)}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-gold{background:var(--color-cta);color:var(--asu-gray-1)}.btn-maroon{background:var(--asu-maroon);color:var(--asu-white)}.btn-secondary{background:var(--asu-white);color:var(--asu-gray-1);border:1px solid var(--asu-gray-4)}.btn-small{font-size:var(--font-size-small);padding:8px var(--space-2)}.field{margin-bottom:var(--space-2);max-width:var(--text-max-width)}.field-label{display:block;font-weight:700;margin-bottom:4px}.field-required:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--asu-maroon);margin-right:6px;vertical-align:middle}.field-help{font-size:var(--font-size-small);color:var(--color-text-muted);margin-bottom:4px}.field-error{font-size:var(--font-size-small);color:var(--color-danger);font-weight:700;margin-top:4px}input[type=text],input[type=date],input[type=time],input[type=email],select,textarea{font-family:var(--font-family);font-size:var(--font-size-body);color:var(--color-text);background:var(--color-surface);border:1px solid var(--asu-gray-5);border-radius:4px;padding:10px 12px;width:100%}.table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-small)}.data-table>caption{text-align:left}.data-table th,.data-table td{text-align:left;padding:12px var(--space-2);border-bottom:1px solid var(--asu-gray-5)}.data-table th{font-weight:700;background:var(--color-surface)}.data-table tbody tr:nth-child(2n){background:var(--asu-gray-6)}.chip{display:inline-flex;align-items:center;gap:6px;font-size:var(--font-size-small);font-weight:700;padding:4px 12px;border-radius:14px;background:var(--asu-gray-6);color:var(--asu-gray-1);white-space:nowrap}.chip-dot{width:10px;height:10px;border-radius:50%;flex:none}.page{max-width:var(--content-max-width);margin:0 auto;padding:var(--space-3) var(--space-2) var(--space-6)}.card{background:var(--color-surface);border:1px solid var(--asu-gray-5);border-radius:8px;padding:var(--space-3)}.muted{color:var(--color-text-muted)}.small{font-size:var(--font-size-small)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-9999px;top:0;background:var(--asu-gold);color:var(--asu-gray-1);padding:12px var(--space-2);z-index:100;text-decoration:none;font-weight:700}.skip-link:focus{left:0}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.utility-bar{background:var(--asu-gray-6);color:var(--asu-gray-1);font-size:var(--font-size-small);display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);padding:6px var(--space-2);flex-wrap:wrap}.utility-bar .identity{font-weight:700}.utility-bar select{width:auto;font-size:var(--font-size-small);padding:4px 8px}.utility-link{background:none;border:0;padding:0;font:inherit;color:var(--color-link);text-decoration:underline;cursor:pointer}.primary-nav{background:var(--asu-white);display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--asu-gray-5);overflow-x:auto}.primary-nav .logo-link{flex:none;display:flex;align-items:center;text-decoration:none}.primary-nav .logo-link img{height:56px;width:auto;display:block}.nav-items{display:flex;align-items:center;gap:var(--space-3);list-style:none;margin:0;padding:0}.nav-items a{color:var(--asu-gray-1);text-decoration:none;white-space:nowrap;padding:10px 0 7px;border-bottom:3px solid transparent;transition:border-color var(--transition-quick)}.nav-items a:hover,.nav-items a[aria-current=page],.nav-items a[aria-current=true]{border-bottom-color:var(--asu-gold)}.impersonation-banner{background:var(--asu-gray-6);border-left:6px solid var(--asu-maroon);padding:var(--space-1) var(--space-2);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.app-footer{background:var(--asu-gray-1);color:var(--asu-white);padding:var(--space-4) var(--space-2);margin-top:var(--space-8)}.app-footer .footer-inner{max-width:var(--content-max-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--space-2)}.app-footer img{height:44px;width:auto;align-self:flex-start}.app-footer a{color:var(--asu-white)}.footer-links{display:flex;gap:var(--space-2);flex-wrap:wrap;list-style:none;margin:0;padding:var(--space-2) 0 0;border-top:1px solid var(--asu-gray-2);font-size:var(--font-size-small)}.booking-page{max-width:560px}.identity-card p{margin:4px 0}.date-strip{display:flex;gap:var(--space-1);overflow-x:auto;padding:var(--space-1) 0;list-style:none;margin:0}.date-chip{border:1px solid var(--asu-gray-4);background:var(--asu-white);color:var(--asu-gray-1);border-radius:8px;padding:8px 12px;font-size:var(--font-size-small);cursor:pointer;white-space:nowrap;font-family:var(--font-family)}.date-chip[aria-pressed=true]{border-color:var(--asu-maroon);border-width:2px;font-weight:700}.slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:var(--space-1);margin:var(--space-2) 0}.slot-btn{border:1px solid var(--asu-gray-4);background:var(--asu-white);color:var(--asu-gray-1);border-radius:8px;padding:12px 8px;font-size:var(--font-size-small);font-family:var(--font-family);cursor:pointer}.slot-btn[aria-pressed=true]{background:var(--asu-maroon);border-color:var(--asu-maroon);color:var(--asu-white);font-weight:700}.confirm-banner{background:var(--asu-gray-7);border-left:6px solid var(--asu-green);padding:var(--space-1) var(--space-2);margin-bottom:var(--space-2)}.notice-banner{background:var(--asu-gray-7);border-left:6px solid var(--asu-orange);padding:var(--space-1) var(--space-2);margin-bottom:var(--space-2)}.status-toggle{display:inline-flex;gap:6px}.status-btn{border:1px solid var(--asu-gray-4);background:var(--asu-white);color:var(--asu-gray-1);font-family:var(--font-family);font-size:var(--font-size-small);border-radius:16px;padding:8px 12px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.status-btn .chip-dot{width:10px;height:10px;border-radius:50%}.status-btn[aria-pressed=true]{font-weight:700;border-width:2px}.status-btn.present[aria-pressed=true]{border-color:var(--asu-green);background:var(--asu-gray-7)}.status-btn.absent[aria-pressed=true]{border-color:var(--asu-maroon);background:var(--asu-gray-7)}.status-btn.excused[aria-pressed=true]{border-color:var(--asu-gray-3);background:var(--asu-gray-7)}.queue-panel{background:var(--asu-gray-7);border-left:6px solid var(--asu-orange);padding:var(--space-2);margin:var(--space-2) 0}.spirals-bg{background-image:url(/spirals-bg-fixed-pattern.png);background-repeat:repeat;background-size:420px;border-radius:12px;padding:var(--space-3)}.topo-bg{background-image:url(/TopoPatternWhite.png);background-repeat:repeat;background-size:300px;border-radius:12px;padding:var(--space-6) var(--space-3);text-align:center}.jeopardy-board{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;max-width:900px;margin:0 auto}.jeopardy-cat{padding:var(--space-2);margin:0;border-radius:5px;font-weight:700;text-align:center;color:var(--asu-gray-1);font-size:clamp(14px,1.5vw,20px);display:flex;align-items:center;justify-content:center}.jeopardy-cell{background-color:var(--asu-gold);color:var(--asu-black);padding:15px;font-size:20px;font-weight:700;cursor:pointer;text-align:center;border-radius:5px;position:relative;overflow:hidden;border:0;font-family:var(--font-family);transition:transform var(--transition-quick)}.jeopardy-cell:after{content:"";position:absolute;bottom:0;left:0;width:0;height:4px;background-color:var(--asu-maroon);transition:width .3s ease}.jeopardy-cell:hover:not(:disabled){transform:scale(1.04)}.jeopardy-cell:hover:not(:disabled):after{width:100%}.jeopardy-cell:disabled{background-color:var(--asu-gray-4);color:var(--asu-gray-2);cursor:default}.team-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:var(--space-2) 0}.team-card{background:var(--asu-maroon);color:var(--asu-white);padding:10px 14px;border-radius:5px;font-weight:700;text-align:center;min-width:150px}.team-card .team-score{font-size:26px}.team-card button{background-color:var(--asu-white);color:var(--asu-gray-1);border:none;padding:4px 10px;border-radius:6px;font-weight:700;cursor:pointer;font-size:14px;font-family:var(--font-family);margin:2px}.clue-overlay{position:fixed;top:0;right:0;bottom:0;left:0;margin:0;max-width:none;max-height:none;border:0;background:var(--asu-maroon);color:var(--asu-white);z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6);text-align:center;gap:var(--space-2);overflow:auto}.clue-overlay::backdrop{background:var(--asu-maroon)}.clue-overlay .clue-value{color:var(--asu-gold);font-size:clamp(20px,2.5vw,32px);font-weight:700}.clue-overlay .clue-text{font-size:clamp(28px,4vw,56px);font-weight:700;max-width:1000px;line-height:1.3;animation:clue-in .35s ease}.clue-overlay .clue-answer{color:var(--asu-gold);font-size:clamp(24px,3vw,44px);font-weight:700;animation:clue-in .35s ease}.clue-overlay .clue-note{color:var(--asu-white);max-width:700px}.clue-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;justify-content:center}@keyframes clue-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.reveal-btn{background-color:var(--asu-gold);color:var(--asu-gray-1);border:none;padding:12px 16px;border-radius:999px;font-weight:700;cursor:pointer;font-family:var(--font-family);font-size:var(--font-size-body);transition:transform var(--transition-quick)}.reveal-btn:hover:not(:disabled){transform:scale(1.05)}.reveal-btn.secondary{background-color:var(--asu-white);border:1px solid var(--asu-gray-4)}.team-columns{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.team-column{background:#ffffffeb;border:2px dashed var(--asu-gray-4);border-radius:8px;padding:var(--space-2);min-height:140px}.team-column.drag-over{border-color:var(--asu-maroon);border-style:solid}.team-member{background:var(--asu-white);border:1px solid var(--asu-gray-4);border-radius:16px;padding:8px 14px;margin:4px 4px 4px 0;cursor:grab;display:inline-block;font-size:var(--font-size-small);font-family:var(--font-family);transition:transform var(--transition-quick)}.team-member:hover{border-color:var(--asu-maroon);transform:scale(1.03)}.team-member:active{cursor:grabbing}.congrats-heading{color:var(--asu-gray-1);font-size:clamp(32px,4vw,52px);font-weight:700;margin:0 0 var(--space-3);max-width:none}.podium-container{display:flex;justify-content:center;align-items:flex-end;gap:30px;margin:var(--space-3) 0;min-height:260px}.podium-spot{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px}.podium-team{font-weight:700;font-size:18px;max-width:160px}.podium-points{font-weight:700;color:var(--asu-gray-2)}.podium-platform{width:140px;border-top-left-radius:12px;border-top-right-radius:12px;border:1px solid var(--asu-gray-4);border-bottom:0;color:var(--asu-gray-1);font-weight:700;display:flex;align-items:flex-end;justify-content:center;padding:10px;font-size:24px;transform-origin:bottom;animation:podium-rise .7s ease both}.podium-spot.first .podium-platform{height:180px;background-color:var(--asu-gold);animation-delay:.5s}.podium-spot.second .podium-platform{height:140px;background-color:var(--asu-gray-4);animation-delay:.25s}.podium-spot.third .podium-platform{height:110px;background-color:var(--asu-copper);color:var(--asu-white);animation-delay:0s}.podium-spot.first .podium-team{font-size:22px;animation:winner-pop .5s ease 1.2s both}@keyframes podium-rise{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes winner-pop{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.runner-up-list{list-style:none;padding:0;margin:var(--space-2) auto 0;max-width:420px;font-weight:700}.winner-screen{background:var(--asu-gold);border:8px solid var(--asu-maroon);border-radius:12px;color:var(--asu-gray-1);text-align:center;padding:var(--space-6) var(--space-3)}.winner-screen h2{color:var(--asu-gray-1);font-size:clamp(28px,4vw,52px);max-width:none}.winner-screen .winner-names{font-size:clamp(18px,2vw,28px);font-weight:700}@media(prefers-reduced-motion:reduce){.podium-platform,.podium-spot.first .podium-team,.clue-overlay .clue-text,.clue-overlay .clue-answer{animation:none}}
