/* Interface, October 2026. Navy, signal orange and ordinary numerals. */
:root { --ink:#22204f; --muted:#686378; --line:#c9c2d6; --blue:#22204f; --orange:#c2402a; --accent:#ef5b3b; --radius:8px; color:var(--ink); background:#e7e5f6; }
body, button, input, select, textarea { font-family:'IBM Plex Sans',sans-serif; font-feature-settings:'zero' 0; }
h1,h2,h3,h4,.brand-name,.event-wordmark { font-family:'Aileron','IBM Plex Sans',sans-serif; }
.mono,.brand i,.page-head .aside-note,.venue-eyebrow,.venue-steps b,.picker-label span,.material-index,.hardware-setup li>span,.arrival-step-number,.judges-demo li span,time,.code-box,.material-heading span,.resource-meta,.time-zone,.file-meta { font-family:'IBM Plex Sans',sans-serif; font-feature-settings:'zero' 0; }
body,.topbar,.workspace { background:#e7e5f6; color:var(--ink); }
a { color:#22204f; } .muted,.small-text.muted { color:var(--muted); }
.sidebar { background:#22204f; border:0; padding-top:30px; color:#ffffff; }
.brand .brand-name { color:#ffffff; font-size:32px; }
.brand>span,.brand i { color:#c9c2d6; }
.sidebar .nav-label { color:#9ea1ea; }
.sidebar nav>a { color:#c9c2d6; border-radius:5px; border-left:0; padding:11px 14px; }
.sidebar nav>a:hover { background:#22204f; color:#ffffff; }
.sidebar nav>a.active { background:#ef5b3b; color:#ffffff; border:0; }
.sidebar nav>a.active .nav-symbol { color:#ffffff; }
.sidebar .nav-symbol { color:#9ea1ea; }
.organizer-link { color:#c9c2d6; border-color:#22204f; }
.event-mark p { color:#c9c2d6; } .event-mark .techweek-logo { width:94px; height:auto; object-fit:contain; filter:none; }
.topbar { border-color:#c9c2d6; } .edition { color:var(--muted); }
.page-head { padding-bottom:25px; } .page-head h1 { color:var(--ink); font-size:clamp(2.4rem,3.8vw,3.5rem); } .page-head p { color:#686378; }
.kicker,.resource-meta,.hardware-track { color:#686378; } .accent-dot { background:#ef5b3b; }
.button { color:var(--ink); background:#ffffff; border:1px solid #c9c2d6; border-radius:5px; }
.button:hover { border-color:#22204f; background:#e7e5f6; }
.button.primary { background:#c2402a; color:#ffffff; border-color:#c2402a; } .button.primary:hover { background:#c2402a; }
.button.quiet { background:transparent; } .text-link { color:#22204f; }
.filter-button.active,.day-tab.active { background:#22204f; color:#ffffff; border-color:#22204f; }
.filter-button:hover,.day-tab:hover { border-color:#22204f; }
.panel,.resource-card,.hardware-dossier,.hardware-preview,.help-card { background:#ffffff; border-color:#c9c2d6; border-radius:8px; }
.notice { background:#e7e5f6; border-color:#c9c2d6; color:#22204f; }
.notice.warning,.kit-pending { background:#fbe4dc; border-color:#ef5b3b; color:#c2402a; }
.tag { background:#e7e5f6; color:#4e52cf; } .tag.orange { background:#fbe4dc; color:#c2402a; }
input,textarea,select { border-color:#c9c2d6; background:#ffffff; color:var(--ink); }
input:focus,textarea:focus,select:focus { outline-color:#ef5b3b; border-color:#22204f; }
.hardware-option.selected { background:#e7e5f6; border-color:#22204f; box-shadow:inset 3px 0 #22204f; }
.hardware-tabs button.active { color:#22204f; border-color:#ef5b3b; } .hardware-tabs button.active span { color:#ffffff; background:#22204f; }
.hardware-hero,.hardware-preview-image { background:#e7e5f6; } .hardware-intro { background:#ffffff; }
.slot { background:#ffffff; border-color:#c9c2d6; color:#22204f; } .slot:hover:not(:disabled) { background:#e7e5f6; border-color:#22204f; }
.venue-arrival,.venue-plan,.venue-detail,.venue-bottom .panel,.arrival-address { background:#ffffff; border-color:#c9c2d6; }
.venue-toolbar,.venue-caption,.arrival-step { background:#e7e5f6; color:var(--ink); }
.venue-modes button[aria-pressed=true],.venue-views button[aria-pressed=true] { background:#22204f; color:#ffffff; }
.venue-section-nav a,.arrival-notes a,.arrival-copy-status { color:#22204f; } .arrival-step-number { color:#22204f; border-color:#c9c2d6; }
.judge-photo,.judges-intro,.judges-demo { background:#e7e5f6; } .footer { border-color:#c9c2d6; }
.signal-intro { position:relative; overflow:hidden; display:grid; grid-template-columns:1.15fr 1fr; gap:28px; background:#22204f; color:#ffffff; border-radius:10px; padding:38px; margin-bottom:22px; }
.signal-intro { background:#22204f url("/assets/media/interface-signal.png") center/cover; }
.signal-copy { position:relative; align-self:center; } .signal-copy>span { color:#c9c2d6; font-size:.8rem; }
.signal-copy h2 { font-size:clamp(2.6rem,4.1vw,4.3rem); line-height:1.02; letter-spacing:-.05em; margin:20px 0; color:#ffffff; }
.signal-copy h2 em { color:#ef5b3b; font-style:normal; } .signal-copy p { color:#c9c2d6; max-width:34ch; line-height:1.65; }
.launch-card { position:relative; align-self:center; padding:0; border:1px solid #9ea1ea; border-radius:6px; overflow:hidden; cursor:pointer; text-align:left; min-height:240px; background:#22204f; color:white; }
.launch-card img { width:100%; height:260px; display:block; object-fit:cover; opacity:.8; }
.launch-card:after { content:''; position:absolute; inset:0; background:linear-gradient(transparent 45%,#22204fe6); pointer-events:none; }
.launch-play { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); width:70px; height:70px; display:grid; place-items:center; border:1px solid #ffffffa6; border-radius:50%; background:#ef5b3b; box-shadow:0 0 0 10px #ffffff16; z-index:1; font-size:23px; }
.launch-caption { position:absolute; bottom:20px; left:22px; right:20px; z-index:1; display:flex; justify-content:space-between; gap:8px; font-size:.8rem; }
.launch-card:hover .launch-play { background:#c2402a; box-shadow:0 0 0 16px #ffffff16; }
.launch-video { width:100%; max-height:65vh; background:#22204f; } dialog:has(.launch-video) { width:min(960px,94vw); max-width:960px; }
.overview-next { border:0; gap:14px; margin-top:0; } .next-step { border:1px solid #c9c2d6; border-radius:7px; background:#ffffff; padding:24px; } .next-step-number { color:#c2402a; } .next-step h2 { color:#22204f; } .next-step:hover { background:#e7e5f6; }
.overview-event { color:#686378; border-color:#c9c2d6; }
.event-calendar-tools { display:flex; align-items:center; justify-content:space-between; gap:15px; flex-wrap:wrap; } .event-calendar-tools>span,.calendar-caption { color:#686378; font-size:.8rem; }
.event-calendar { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:24px 0; } .event-calendar--single { max-width:780px; grid-template-columns:1fr; }
.event-day { min-width:0; border:1px solid #c9c2d6; border-radius:9px; overflow:hidden; background:#ffffff; }
.event-day>header { padding:25px; background:#22204f; color:#ffffff; } .event-day>header>span { color:#9ea1ea; font-size:.75rem; } .event-day h2 { margin:10px 0; font-size:2rem; display:flex; justify-content:space-between; color:#ffffff; } .event-day h2 b { font-weight:400; color:#ef5b3b; } .event-day header p { color:#c9c2d6; margin:0; font-size:.8rem; }
.event-day-blocks { padding:16px; display:grid; gap:9px; }
.event-block { width:100%; display:grid; grid-template-columns:68px 1fr 16px; gap:10px; align-items:center; text-align:left; border:1px solid #c9c2d6; border-left:3px solid #4e52cf; border-radius:4px; color:#22204f; background:#e7e5f6; padding:16px 12px; min-height:90px; cursor:pointer; }
.event-block:hover { border-color:#ef5b3b; box-shadow:0 3px 12px #22204f10; } .event-block--social { background:#fbe4dc; border-left-color:#ef5b3b; } .event-block--demo { background:#e7e5f6; border-left-color:#22204f; } .event-block--deadline { background:#fbe4dc; border-left-color:#ef5b3b; }
.event-block-time { font-size:.75rem; font-weight:500; } .event-block-time small { display:block; color:#4e52cf; font-size:.7rem; margin-top:5px; }
.event-block-copy strong { display:block; font-size:.95rem; font-weight:500; line-height:1.35; } .event-block-copy>span { display:block; color:#4e52cf; font-size:.7rem; margin-top:7px; line-height:1.4; } .event-block-arrow { font-size:18px; color:#4e52cf; }
.session-detail-time { font-size:1.2rem; color:#22204f; margin-bottom:22px; } .session-detail-time span { display:block; font-size:.8rem; color:#686378; margin-top:6px; }
.session-detail-list { border-top:1px solid #c9c2d6; padding-top:18px; display:grid; grid-template-columns:90px 1fr; gap:20px; margin:25px 0; } .session-detail-list dt { color:#686378; font-size:.8rem; } .session-detail-list dd { margin:0; } .session-detail-list small { display:block; font-size:.72rem; color:#686378; margin-top:5px; }
.hardware-track-filter { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin:0 0 22px; } .hardware-track-filter>span { color:#686378; font-size:.8rem; }
.project-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; } .project-art { min-height:390px; padding:0; position:relative; overflow:hidden; background:#22204f; border-radius:9px; isolation:isolate; }
.project-art .project-media { position:absolute; inset:0; height:100%; width:100%; object-fit:cover; z-index:0; }
.project-art:after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,#22204f15 0%,#22204f24 20%,#22204fb8 50%,#22204ff2 100%); z-index:1; }
.project-art .project-content { position:relative; z-index:2; min-height:390px; padding:25px; display:flex; flex-direction:column; justify-content:flex-end; color:#ffffff; }
.project-art .panel-top { margin-bottom:auto; padding-bottom:65px; color:#ffffff; }.project-art .tag { color:#ffffff; background:#22204fc9; border:1px solid #ffffff55; } .project-art h2 { font-size:1.85rem; color:#ffffff; margin:0 0 7px; } .project-art p { color:#e7e5f6; font-size:.84rem; max-width:52ch; } .project-art .by { color:#c9c2d6; font-size:.72rem; } .project-art a,.project-art summary { color:#ef5b3b; } .project-art details { border-color:#ffffff3d; } .project-art details p { color:#c9c2d6; } .project-art .media-toggle { align-self:flex-start; background:#22204fcc; color:white; border:1px solid #c9c2d6; border-radius:4px; padding:5px 10px; font-size:.7rem; margin-bottom:8px; }
.help-grid,.submission-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; } .help-card { padding:30px; display:flex; align-items:flex-start; flex-direction:column; gap:10px; } .help-card h2 { font-size:1.8rem; margin:4px 0; } .help-card p { color:#686378; margin:6px 0; } .help-card small { color:#686378; font-size:.75rem; } .help-card .text-link { margin-top:20px; } .help-symbol { color:#ef5b3b; font-size:36px; }.help-card--contact { border-top:3px solid #ef5b3b; } .help-card .form-note { font-size:.76rem; margin-top:18px; }
.submission-intro { max-width:680px; } .submission-intro h2 { font-size:2.5rem; margin:18px 0; } .submission-grid { margin:30px 0; } .submission-grid section { background:#e7e5f6; padding:22px; border-radius:6px; } .submission-grid li { padding-bottom:10px; line-height:1.55; } .scorecard { padding:20px 0; border-bottom:1px solid #c9c2d6; } .scorecard h3 { margin-bottom:7px; }.score-anchors { display:flex; gap:18px; justify-content:space-between; color:#686378; font-size:.76rem; margin-top:12px; }
@media(max-width:1050px) { .signal-intro { padding:26px; } .signal-copy h2 { font-size:3rem; } .event-block { grid-template-columns:60px 1fr 12px; padding:14px 10px; gap:6px; } }
@media(max-width:700px) { .signal-intro,.event-calendar,.help-grid,.submission-grid,.project-grid { grid-template-columns:1fr; } .signal-intro { padding:24px; } .signal-copy h2 { font-size:clamp(2.2rem,10.8vw,3rem); } .launch-card img { height:210px; } .launch-card { min-height:210px; } .overview-next { gap:12px; } .help-card { padding:24px; } .event-day-blocks { padding:12px; } .event-block { grid-template-columns:62px 1fr 16px; }.project-art,.project-art .project-content { position:relative; z-index:2; min-height:390px; } .score-anchors { flex-direction:column; gap:8px; } }
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }

.project-art .media-credit { color:#c9c2d6; font-size:.64rem; margin-top:12px; line-height:1.5; }
.project-embed { position:absolute; inset:0; width:100%; height:100%; border:0; z-index:0; pointer-events:none; }
.project-art.is-playing .project-content { opacity:.18; transition:opacity .2s; }
.project-art.is-playing:hover .project-content,.project-art.is-playing:focus-within .project-content { opacity:1; }
.project-art.is-playing:after { opacity:1; }
.sidebar nav { scrollbar-width:thin; scrollbar-color:#4e52cf transparent; }
.venue-plan:before,.hardware-photo,.photo-lightbox img { background:#e7e5f6; color:#686378; }
.lab-layout .hardware-option.selected { background:#e7e5f6; border-left-color:#22204f; }
.lab-layout .hardware-option:hover,.lab-layout .time-slot:hover:not(:disabled) { background:#e7e5f6; border-color:#9ea1ea; }
.lab-layout .day-tab.active { border-color:#22204f; }
.booking-saved,.booking-intent { background:#e7e5f6; border-color:#9ea1ea; }
.file-symbol,.hardware-tabs button span { background:#e7e5f6; color:#4e52cf; border-color:#c9c2d6; }
.hardware-option-copy small,.option-status,.hardware-intro p,.session-intro p,.hardware-tabs button,.hardware-photo figcaption,.hardware-setup li p,.kit-details dd { color:#686378; }
.hardware-photo button>span { background:#ffffff; color:#22204f; border-color:#c9c2d6; }
