:root{--ink:#25352f;--muted:#758078;--green:#315d48;--green-soft:#e8eee8;--line:#e0e4db;--paper:#f6f5ef;--white:#fffefa;--amber:#ac7130;--red:#a94c43;--shadow:0 12px 48px #25352f12;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-size:14px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}button{border:1px solid var(--line);background:var(--white);color:var(--ink);padding:10px 15px;border-radius:7px;font-weight:550;display:inline-flex;align-items:center;justify-content:center;gap:7px}button:hover{border-color:#9aa99d;background:#f0f3eb}button.primary{background:var(--green);border-color:var(--green);color:white}button.primary:hover{background:#244936}button.small{padding:6px 10px;font-size:12px}button.icon{padding:6px 9px}button.danger{color:var(--red)}button:disabled{opacity:.5;cursor:default}.shell{display:grid;grid-template-columns:228px 1fr;min-height:100vh}.sidebar{background:#eeefe6;border-right:1px solid var(--line);padding:30px 18px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:0 10px 35px;font:600 29px Georgia,serif;letter-spacing:-1px}.mark{width:33px;height:38px;border:1.5px solid var(--green);border-radius:16px 16px 5px 5px;display:grid;place-items:center;font:24px Georgia;color:var(--green)}.nav-label{font-size:10px;letter-spacing:1.7px;color:var(--muted);padding:15px 12px 9px;font-weight:700}.nav{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:6px;margin:2px 0;font-size:13px;color:#606e62}.nav:hover{text-decoration:none;background:#e2e7dc}.nav.active{background:#dce5d9;color:#254b35;font-weight:650}.nav-symbol{width:18px;text-align:center;font-size:17px}.sidebar-foot{margin-top:auto;padding:20px 10px 0}.test-badge{background:#efe7d5;color:#8a672b;padding:5px 8px;border-radius:4px;font-size:10px;letter-spacing:1px;font-weight:700}.sidebar-foot p{font-size:11px;color:var(--muted);line-height:1.6}.main{min-width:0}.topbar{height:75px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px;background:#fffefa80;gap:15px}.topbar select{border:0;background:transparent;font-weight:600;max-width:370px}.top-meta{display:flex;align-items:center;gap:18px;font-size:12px;color:var(--muted)}.avatar{background:#dfe7d9;border:1px solid #d0dccb;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;color:var(--green);font-weight:700}.content{padding:35px 38px 60px;max-width:1600px;margin:auto}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:2px;color:var(--green);font-weight:750;margin:0 0 10px}h1{font:normal 38px/1.15 Georgia,"Times New Roman",serif;margin:0 0 10px;letter-spacing:-.8px}h2{font:normal 23px Georgia,serif;margin:0 0 16px}h3{margin:0 0 10px;font-size:15px}.subtitle{color:var(--muted);line-height:1.7;margin:0}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:30px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:27px}.stat{border:1px solid var(--line);background:var(--white);border-radius:10px;padding:20px 22px}.stat-label{font-size:12px;color:var(--muted)}.stat strong{font:36px Georgia,serif;display:block;margin:12px 0 7px}.stat small{font-size:11px;color:var(--muted)}.grid-2{display:grid;grid-template-columns:1.65fr 1fr;gap:24px;align-items:start}.card{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:24px;margin-bottom:22px}.card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.card-header h2{margin:0}.card.flush{padding:0;overflow:hidden}.card.flush .card-header{padding:22px 24px 0}.feature{background:#e5ebdf;border-color:#d7e0ce;position:relative;overflow:hidden}.feature h2{max-width:280px;line-height:1.3;font-size:26px}.feature p{max-width:300px;line-height:1.7;color:#65735f}.feature:after{content:'𝄞';position:absolute;right:10px;bottom:-50px;font:210px Georgia;color:#315d4810;pointer-events:none}.tag{display:inline-block;border-radius:4px;padding:4px 7px;font-size:10px;line-height:1.2;background:#ebefe9;color:#486149;white-space:nowrap}.tag.piano{background:#e9e7f1;color:#70618b}.tag.strings{background:#e6ece3;color:#5b7454}.tag.vocal{background:#f3e6dd;color:#956848}.tag.chamber{background:#e3ebef;color:#4b7386}.tag.warning{background:#fff0d7;color:#95651f}.tag.error{background:#f8e5e1;color:#a4483d}.tag.neutral{background:#eeeee9;color:#777d74}.muted{color:var(--muted)}.small-text{font-size:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#858d81;font-weight:600;padding:13px 16px;background:#f6f7f1;border-bottom:1px solid var(--line)}td{padding:14px 16px;border-bottom:1px solid #edf0e8;vertical-align:middle;font-size:13px}tr:last-child td{border-bottom:0}td strong{display:block;font-weight:600;margin-bottom:4px}.nowrap{white-space:nowrap}.row-actions{display:flex;gap:5px}.warning-box{padding:14px 16px;background:#fff6e7;border:1px solid #eddfc5;border-radius:7px;line-height:1.6;color:#8c6831;margin:15px 0;font-size:13px}.notice{padding:15px 17px;background:#edf1e9;border:1px solid #dce6d5;border-radius:7px;line-height:1.6;margin:15px 0;font-size:13px}.empty{text-align:center;padding:45px 20px;color:var(--muted);line-height:1.7}.toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:22px}.toolbar input{max-width:300px}.toolbar .spacer{flex:1}.toolbar select{width:auto;min-width:150px}input,select,textarea{background:var(--white);border:1px solid #d9ded4;border-radius:6px;padding:10px 11px;color:var(--ink);width:100%;min-width:0}input[type=checkbox]{width:16px;height:16px;accent-color:var(--green);vertical-align:middle}input[type=file]{padding:16px;border-style:dashed}textarea{min-height:95px;resize:vertical;line-height:1.5}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px;font-size:12px;font-weight:600}.field small{font-weight:400;color:var(--muted);line-height:1.5}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.wide{grid-column:1/-1}.check-field{display:flex;gap:9px;align-items:center;font-weight:400;margin:8px 0}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:16px;border-top:1px solid var(--line);margin-top:15px}dialog{border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:28px;width:min(720px,94vw);max-height:90vh;color:var(--ink);background:var(--white)}dialog::backdrop{background:#18281e66;backdrop-filter:blur(3px)}dialog h2{margin-right:35px}.modal-close{float:right;margin-top:-5px}.schedule-board{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:18px;overflow:auto}.venue-column{background:#eeefe8;border:1px solid var(--line);border-radius:9px;padding:15px;min-height:350px}.venue-title{padding:2px 3px 16px}.venue-title h3{font-size:13px;margin-bottom:7px}.venue-title small{font-size:10px;color:var(--muted)}.session-card{background:var(--white);border:1px solid #dce2d6;border-left:3px solid #8a9f78;border-radius:6px;padding:16px;margin-bottom:13px;box-shadow:0 3px 6px #25352f03}.session-card.piano{border-left-color:#a69bb9}.session-card.vocal{border-left-color:#c29775}.session-card.chamber{border-left-color:#85a5b7}.session-time{font-size:12px;font-weight:600;margin-bottom:14px;display:flex;justify-content:space-between}.session-card h3{font:18px Georgia,serif;line-height:1.35;margin:10px 0}.session-card .meta{font-size:11px;color:var(--muted);line-height:1.9}.session-bottom{border-top:1px solid var(--line);padding-top:10px;margin-top:12px;display:flex;align-items:center;justify-content:space-between}.date-strip{display:flex;gap:8px;margin-bottom:22px;overflow:auto}.date-tab{padding:10px 16px;min-width:95px;display:block;text-align:left;background:transparent;border:1px solid var(--line)}.date-tab span{display:block;font-size:10px;color:var(--muted);margin-bottom:4px}.date-tab.active{background:var(--green);color:white;border-color:var(--green)}.date-tab.active span{color:#dce7db}.timeline-row{display:grid;grid-template-columns:60px 1fr auto;gap:16px;padding:17px 0;border-bottom:1px solid var(--line);align-items:center}.timeline-row:last-child{border:0}.timeline-time{font-size:12px;font-weight:650}.timeline-row h3{font-size:13px;margin:5px 0}.progress{height:5px;background:#e8ece4;border-radius:5px;overflow:hidden;margin-top:9px}.progress-fill{height:100%;background:#78916a}.overview-link{display:block;margin:13px 0;font-size:13px}.selected-row{background:#eef3e9}tr[tabindex]:focus{outline:2px solid var(--green);outline-offset:-2px;background:#f0f5e9}.login-screen{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-art{background:#dfe7d9;padding:8vw;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.login-art h1{font-size:62px;max-width:480px;line-height:1.05;z-index:1}.login-art p{font-size:15px;max-width:330px;line-height:1.9;color:#5d705e;z-index:1}.login-art:after{content:'𝄞';position:absolute;right:-25px;bottom:-50px;font:540px Georgia;color:#34573f0d}.login-panel{display:flex;align-items:center;justify-content:center;padding:40px}.login-card{width:360px}.login-card h2{font-size:30px;margin-top:25px}.login-card button.primary{width:100%;padding:13px}.public-header{border-bottom:1px solid var(--line);padding:23px 40px;display:flex;justify-content:space-between;align-items:center;background:var(--white);gap:20px}.public-header .brand{padding:0;font-size:27px}.public-content{max-width:1140px;margin:auto;padding:45px 28px}.public-hero{padding:32px 0}.public-hero h1{font-size:46px;max-width:800px}.file-row{display:flex;gap:15px;align-items:center;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.file-row:last-child{border:0}.file-path{word-break:break-all;font-size:11px;color:var(--muted);line-height:1.7}.section-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.section-cards .card{margin:0}.count{font:30px Georgia;margin:16px 0}.split{display:flex;justify-content:space-between;align-items:center;gap:15px}.audit-item{font-size:12px;padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px}.loading{padding:50px;color:var(--muted)}#toast{position:fixed;right:25px;bottom:25px;max-width:480px;background:var(--green);color:white;padding:14px 21px;border-radius:8px;box-shadow:var(--shadow);z-index:1000;display:none;line-height:1.6}#toast.error{background:#933f37}.flow-list{display:flex;gap:14px;flex-wrap:wrap}.flow-step{padding:12px 15px;background:#f1f3eb;border-radius:6px;font-size:12px}code{background:#eef0e8;padding:3px 5px;border-radius:3px;font-size:12px;word-break:break-all}pre{white-space:pre-wrap;word-break:break-all;font-size:12px;background:#eef0e8;padding:15px}.work-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-bottom:9px}.status-line{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted)}.status-dot{width:6px;height:6px;border-radius:100%;background:#759168}.mobile-brand{display:none}@media(min-width:1500px){.content{padding-left:55px;padding-right:55px}.schedule-board{gap:25px}}@media(max-width:1100px){.shell{grid-template-columns:190px 1fr}.sidebar{padding:25px 10px}.content{padding:28px 24px}.topbar{padding:0 24px}.stats{gap:10px}.stat{padding:16px}.grid-2{grid-template-columns:1fr}.section-cards{grid-template-columns:repeat(2,1fr)}.schedule-board{grid-template-columns:repeat(3,minmax(220px,1fr))}}@media(max-width:720px){.shell{display:block}.sidebar{position:relative;height:auto;padding:15px;display:flex;flex-direction:row;overflow:auto;gap:8px;border-bottom:1px solid var(--line)}.sidebar .brand,.nav-label,.sidebar-foot{display:none}.nav{white-space:nowrap;padding:8px}.nav-symbol{display:none}.topbar{height:60px;padding:0 16px}.top-meta>span{display:none}.content{padding:25px 16px}.page-head{align-items:flex-start;flex-direction:column}h1{font-size:33px}.stats{grid-template-columns:1fr 1fr}.section-cards{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.login-screen{grid-template-columns:1fr}.login-art{padding:35px;min-height:220px}.login-art h1{font-size:40px}.login-art .brand{padding-bottom:20px}.login-panel{padding:30px}.public-header{padding:17px;flex-wrap:wrap}.public-content{padding:20px 16px}.public-hero h1{font-size:34px}.schedule-board{grid-template-columns:1fr;overflow:visible}.venue-column{min-height:0}.work-row{grid-template-columns:1fr}.topbar select{max-width:210px}.card{padding:18px}}
.competition-links{margin-top:20px!important;background:#274d44!important;color:white!important;padding:18px!important;font-size:17px!important}.brand-logo{width:48px;height:48px;object-fit:contain}.qr{width:150px;height:150px}.card a{overflow-wrap:anywhere}.drop-container{min-height:180px}.session-card:focus,.selected{outline:3px solid #c68a40!important}.eligible{box-shadow:0 0 0 3px #42a882!important}.filled{background:#e1e8e4!important}.staff-slot{border:1px dashed #819b90;border-radius:8px;padding:12px;margin:8px 0;min-height:45px}.resource-tray{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.resource-tray button{cursor:grab}.date-tab small{display:block;font-size:11px;max-width:160px}.work-day{padding:12px;border-bottom:1px solid #ddd}textarea{width:100%;box-sizing:border-box}.session-card[draggable=true]{cursor:grab}.toolbar .field{min-width:150px}details{padding:12px} .schedule-board{align-items:start}
.availability-row{display:grid;grid-template-columns:2fr repeat(4,1fr) auto;gap:8px;align-items:end;padding:12px 0;border-bottom:1px solid #ddd}.availability-row .field{min-width:0}.availability-row button{margin-bottom:4px}[hidden]{display:none!important}@media(max-width:700px){.availability-row{grid-template-columns:repeat(2,1fr)}}
.competition-list{display:grid;gap:12px}.competition-row{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #dce1dc;border-radius:12px;padding:22px 26px}.competition-title{font-size:21px;font-weight:600;border:0;background:transparent;padding:0;text-align:left;color:#285546}.competition-title:hover{text-decoration:underline}.competition-row p{margin:8px 0 0}.competition-menu{position:relative;padding:0}.competition-menu summary{font-size:28px;cursor:pointer;list-style:none;padding:0 14px}.competition-menu>div{position:absolute;right:0;top:36px;background:white;border:1px solid #ddd;box-shadow:0 8px 24px #0002;z-index:12;min-width:210px;padding:8px;border-radius:10px}.competition-menu button{display:block;width:100%;text-align:left;border:0;margin:3px 0}.competition-switch{font-weight:600}#canonical-preview{margin:16px 0}

/* Dense competitor register: one outer row per identity, stacked registrations. */
.compact-entries{font-size:12px}.compact-entries .page-head{margin-bottom:14px;gap:12px}.compact-entries h1{font-size:28px;margin-bottom:4px}.compact-entries .subtitle{font-size:12px;line-height:1.4}.compact-entries .page-head button{font-size:12px;padding:7px 10px}.compact-entry-list{border:1px solid var(--line);border-radius:6px;overflow:auto;background:var(--white)}.compact-entry-list table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px;min-width:680px}.compact-entry-list th{font-size:10px;padding:7px 10px;letter-spacing:.6px;text-align:left}.compact-entry-list th:first-child{width:21%}.compact-entry-list td{padding:5px 10px;vertical-align:top;line-height:1.3;border-bottom:1px solid var(--line)}.compact-entry-list tbody tr:last-child td{border-bottom:0}.compact-entry-list tbody tr:hover{background:#f3f5ee}.compact-person strong{font-size:12px;font-weight:600}.compact-person-id{display:block;font-size:10px;color:var(--muted);margin-top:2px}.compact-entry-line{display:grid;grid-template-columns:minmax(160px,1.5fr) minmax(90px,1fr) 126px;gap:10px;align-items:start}.compact-registrations .compact-entry-line+.compact-entry-line{border-top:1px dotted var(--line);margin-top:4px;padding-top:4px}.compact-section strong{display:inline;margin-right:6px;font-size:12px;white-space:nowrap}.compact-section span{font-size:11px;color:#536259}.compact-works{font-size:11px;overflow-wrap:anywhere;color:#536259}.compact-entry-actions{display:flex;gap:4px;white-space:nowrap}.compact-entry-actions button{font-size:10px;line-height:1.3;padding:3px 6px;border-radius:4px;min-height:22px}.compact-entry-list thead{background:#edf0e8}
.compact-person-id{display:none}.compact-entry-list .compact-person{padding-top:7px;padding-bottom:7px}

.entry-search-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 10px;font-size:12px}.entry-search-toolbar label{font-weight:600}.entry-search-toolbar input{width:320px;max-width:100%;padding:7px 10px;font-size:12px;border:1px solid var(--line);border-radius:5px;background:var(--white)}#entry-search-count{color:var(--muted);font-size:11px}#entry-search-empty{padding:12px;margin:0;color:var(--muted);font-size:12px}

.entry-comment{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.4}.compact-works .entry-comment{font-size:11px;margin-top:3px;color:var(--ink)}.compact-registrations .entry-search-match{background:#e8eee8}

.entry-comment-details{padding:0;margin-top:3px}.entry-comment-details summary{cursor:pointer;font-size:11px;color:var(--green)}

.entry-inactive{background:#eceeea!important;color:#788078}.entry-inactive .compact-section,.entry-inactive .compact-works{opacity:.6}.entry-inactive .tag{font-size:10px;margin:0 5px}.compact-entry-line{grid-template-columns:minmax(150px,1.5fr) minmax(80px,1fr) 215px}.compact-entry-actions{flex-wrap:wrap}.section-register{font-size:13px}.section-register h1{font-size:30px}.section-register .page-head{margin-bottom:14px}.section-register td{padding:8px 10px;vertical-align:top;font-size:13px;line-height:1.4}.section-register th{font-size:11px;padding:8px 10px}.section-register button{font-size:11px;padding:5px 8px}.section-register .card{overflow:auto}.section-register table{min-width:900px}.section-group-line{margin-bottom:3px;white-space:nowrap}

.section-list-tools{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin-bottom:16px}.section-list-tools .field{margin:0}.section-list-tools input{min-width:260px}.section-list-tools>a,.section-list-tools>span{margin-bottom:10px;font-size:12px}.section-list-wrap{border:1px solid var(--line);border-radius:7px;overflow:auto;background:var(--white)}.section-register .section-list-table{table-layout:fixed;width:100%;min-width:800px;border-collapse:collapse}.section-list-table td{border:0;padding:8px 10px;vertical-align:top;overflow-wrap:anywhere}.section-list-table tbody+tbody tr:first-child td{border-top:1px solid var(--line)}.section-list-table .section-subgroup td{border-top:1px solid var(--line)}.section-list-table .section-name strong{display:inline;font-size:13px}.section-list-table .section-name span{display:block;margin-top:3px;line-height:1.35}.section-list-table .section-name small{display:block;margin-top:3px}.section-group-summary{display:flex;align-items:center;gap:8px;white-space:nowrap}.section-headcount{display:inline-flex;align-items:center;gap:4px;font-size:12px}.section-register .section-group-summary button{padding:3px 6px}.section-list-table .section-limit-cell{white-space:nowrap}.section-list-table .section-team-cell{line-height:1.4}.section-list-table .section-config-cell button{max-width:100%}#section-search-count{color:var(--muted)}#section-search-empty{padding:12px;margin:0;font-size:13px}

/* Compact planning workspace: four candidates per row and 4.5 room columns. */
.content:has(.dense-schedule){max-width:none;padding:20px}.dense-schedule .page-head{margin-bottom:12px}.dense-schedule h1{font-size:28px}.dense-schedule .toolbar{margin-bottom:10px}.dense-schedule .date-strip{margin:12px 0}.dense-room-board{display:grid!important;grid-auto-flow:column;grid-auto-columns:calc((100% - 42px)/4.5);grid-template-columns:none!important;gap:10px!important;overflow-x:auto;align-items:start;padding:3px 3px 12px;scroll-padding:4px}.dense-room{min-width:0;border:1px solid var(--line);background:#edf0e7;border-radius:6px;overflow:hidden}.dense-room>header{padding:9px 8px;border-bottom:1px solid var(--line)}.dense-room h3{font-size:13px;margin:0 0 3px}.dense-room small{font-size:10px}.dense-slot{padding:6px;min-height:90px}.dense-slot-time{font-size:10px;display:flex;justify-content:space-between;margin:0 0 5px}.dense-slot+.dense-slot{border-top:2px solid #a7b6a4}.dense-session{padding:8px!important;margin:0 0 7px!important;border-radius:5px!important;font-size:11px;min-height:0!important;scroll-margin:12px}.dense-session h3{font-weight:600;font-family:inherit!important;font-size:12px!important;line-height:1.3;margin:5px 0!important;overflow-wrap:anywhere}.dense-session-top{display:flex;justify-content:space-between;gap:4px;font-size:10px;color:var(--muted)}.dense-session-meta{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:10px;margin:6px 0}.dense-session-meta span{display:inline-flex;align-items:center;gap:3px}.dense-session .actions{gap:5px}.dense-session .actions button{padding:3px 6px;font-size:10px}.dense-session .staff-slot{font-size:11px;padding:5px;margin:4px 0;min-height:26px}.dense-session.schedule-overflow{background:#fae2df!important;border:1px solid #c55246!important}.schedule-overflow .dense-session-top{color:#9a3027}.dense-candidates{padding:12px!important;margin-top:12px}.dense-candidates h2{font-size:19px;margin-bottom:6px}.candidate-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.candidate-grid .dense-session{margin:0!important}.dense-schedule .empty{padding:15px 5px;font-size:11px}.dense-session.selected{outline:2px solid #b67929!important;outline-offset:1px}@media(max-width:800px){.dense-room-board{grid-auto-columns:190px}.candidate-grid{grid-template-columns:repeat(4,minmax(150px,1fr));overflow-x:auto}}

.choice-list{border:1px solid var(--line);border-radius:6px;padding:12px;min-width:0}.choice-list label{display:flex;align-items:center;gap:8px;margin:7px 0;font-size:14px}.choice-list input{width:auto}.resource-disciplines{display:block;font-size:11px;margin-top:4px}.dense-session{position:relative}.conflict-badge,.complete-badge{position:absolute;right:5px;top:5px;border-radius:50%;font-weight:bold}.conflict-badge{background:#fff0cf;color:#9a4e00;padding:2px 7px}.complete-badge{color:#218347;background:#e4f3e6;padding:2px 5px}.dense-session-top{padding-right:18px}.person-match{display:block;text-align:left;width:100%;margin:5px 0}.person-match small{color:var(--muted)}

.dense-slot .dense-session{display:flow-root}.duration-spacer{float:left;width:1px;margin-right:-1px;pointer-events:none}

.personal-id{font:12px Arial,sans-serif;color:var(--muted);white-space:nowrap}.personal-entry .card-header{align-items:flex-start}.submission-work{border-bottom:1px solid var(--line);padding:16px 0}.submission-work:first-child{padding-top:0}

.award-category{border:1px solid var(--line);border-radius:6px;margin:8px 0;padding:12px}.award-category.selected{outline:2px solid #b67929}.award-category .card-header{margin:0}.team-section{text-align:left;width:100%;font:inherit}.team-day{margin:24px 0}

/* Published results: equal-width cards and consistent award columns. */
.results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch;margin-bottom:28px}
.results-grid .result-card{min-width:0;margin:0;padding:24px}
.result-card h3{overflow-wrap:anywhere}
.result-card table{width:100%;table-layout:fixed;min-width:0}
.result-card th,.result-card td{width:50%;overflow-wrap:anywhere;vertical-align:top}
@media(max-width:720px){.results-grid{grid-template-columns:1fr;gap:16px}.results-grid .result-card{padding:18px}}

.modal-message{position:sticky;top:0;z-index:2;padding:12px 16px;margin-bottom:16px;border:1px solid var(--line);border-radius:6px;background:var(--green-soft);white-space:pre-wrap}.modal-message.error{background:#fff0ec;color:#8e3027;border-color:#e4aaa0}

.coi-picker{margin:16px 0;border-top:1px solid var(--line);padding-top:12px}.coi-picker[hidden]{display:none}.coi-matches button{display:flex;flex-direction:column;align-items:flex-start;width:100%;text-align:left}.coi-matches small{font-size:11px;font-weight:normal}.coi-selected{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.organizer-avatar{width:80px;height:80px;object-fit:cover;border-radius:8px}.organizer-contact{display:flex;gap:16px;align-items:center}.rest-card{background:#efe8d8;border:1px dashed #b29b6b}.rest-card:focus{outline:3px solid var(--green)}.dense-slot .rest-card{padding:4px 6px!important}.rest-summary{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:22px;white-space:nowrap;font-size:11px}.rest-summary button{padding:2px 5px!important;min-height:0;font-size:10px;line-height:16px;border-radius:4px}.team-day[hidden]{display:none}

.organizer-photo[hidden]{display:none}

tr[data-entry]{cursor:pointer}tr[data-entry].order-selected{background:#e5eee8;outline:2px solid var(--green);outline-offset:-2px}

dialog:has(.roster-compact){width:min(1320px,96vw);max-width:96vw;padding:22px}.roster-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.roster-columns table{width:100%;table-layout:fixed}.roster-columns th,.roster-columns td{padding:5px 6px;font-size:12px;line-height:1.3}.roster-columns th:first-child{width:28px}.roster-columns th:nth-child(2){width:68px;white-space:nowrap;overflow-wrap:normal}.roster-columns th:nth-child(3){width:40%}.roster-columns th:last-child{width:88px}.roster-columns td{overflow-wrap:anywhere}.roster-columns input[type=checkbox]{width:15px;height:15px;margin:0}.roster-columns button{padding:3px 6px;font-size:11px;line-height:1.3;white-space:nowrap;min-height:0}.roster-compact .toolbar{margin-bottom:8px}.roster-compact .small-text{margin:8px 0}@media(max-width:760px){.roster-columns{grid-template-columns:1fr;gap:0}}
.compact-programme h1{font-size:30px;margin:0 0 12px}.programme-day{margin:20px 0}.programme-day>h2{font-size:22px;margin:0 0 10px}.programme-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.programme-card{padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--white)}.programme-title{display:flex;align-items:flex-start;gap:8px;justify-content:space-between}.programme-title h3{font-weight:600;margin:0;font-size:14px;line-height:1.35}.programme-title button{padding:2px 6px;flex-shrink:0;min-height:0}.programme-card p{font-size:12px;line-height:1.4;margin:4px 0 0}dialog:has(.public-roster-columns){width:min(980px,94vw);max-width:94vw;padding:20px}.public-roster-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.public-roster-columns table{table-layout:fixed;width:100%}.public-roster-columns th,.public-roster-columns td{padding:5px 8px;font-size:12px;line-height:1.35;overflow-wrap:anywhere}.public-roster-columns th:first-child{width:76px;white-space:nowrap;overflow-wrap:normal}@media(max-width:650px){.programme-grid,.public-roster-columns{grid-template-columns:1fr}}

input[type=radio]{width:16px;height:16px;min-width:16px;padding:0;margin:0;accent-color:var(--green);flex:0 0 16px;vertical-align:middle}.choice-list{border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin:16px 0}.choice-list legend{font-weight:600;padding:0 6px}.choice-list label:has(input[type=radio]){display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;padding:6px 0;margin:0;cursor:pointer}.choice-list label input[type=radio]{order:-1;margin:0}
