form.viva-quick-form{display:grid;gap:18px;margin:14px 0 0;padding:20px;background:#f7faff;border:1px solid #dce6f2;border-radius:14px}
.viva-quick-heading{display:grid;gap:4px}.viva-quick-heading strong{font-size:16px;color:#153353}.viva-quick-heading span{font-size:13px;color:#6b7b90}
.viva-quick-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:16px}
.viva-quick-fields>label{display:grid;gap:7px;font-size:13px;font-weight:650;color:#36516f;min-width:0}
.viva-quick-fields select{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #cad8e8;border-radius:9px;background:#fff;color:#172e48;font:400 14px system-ui,sans-serif}
.viva-quick-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-top:2px}
label.viva-quick-zoom{display:flex!important;gap:8px;align-items:center;font-size:13px;color:#526980;white-space:nowrap}
.viva-quick-zoom input{width:17px!important;height:17px;margin:0;accent-color:#1760df}
.viva-quick-buttons{display:flex;gap:10px;flex-wrap:wrap}.viva-quick-buttons button{min-height:42px;padding:10px 16px!important;font-size:13px!important;white-space:nowrap}
.viva-quick-form p.viva-quick-hint{margin:0;padding-top:12px;border-top:1px solid #e0e8f2;font-size:12px;color:#75849a;line-height:1.5}
.viva-session-actions button:disabled,.viva-quick-buttons button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
@media(max-width:600px){form.viva-quick-form{padding:14px}.viva-quick-fields{grid-template-columns:1fr}.viva-quick-footer{align-items:flex-start;flex-direction:column}.viva-quick-buttons{width:100%}.viva-quick-buttons button{flex:1}}

/* Clean scheduling panel and multi-topic picker. */
form.viva-session-form{display:grid;gap:18px;margin:14px 0 0;padding:20px;border:1px solid #dce6f2;border-radius:14px;background:#f8fbff}
form.viva-session-form .form-two-col{display:grid;grid-template-columns:minmax(0,2fr) minmax(110px,1fr);gap:14px}
form.viva-session-form label,.viva-topic-field{display:grid;gap:7px;min-width:0;font-size:13px;font-weight:700;color:#36516f}
form.viva-session-form input,form.viva-session-form select{box-sizing:border-box;width:100%;min-height:44px;margin:0;padding:10px 12px;border:1px solid #cad8e8;border-radius:9px;background:#fff;color:#172e48;font:400 14px system-ui,sans-serif}
.viva-topic-picker{position:relative;border:0}.viva-topic-picker>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;box-sizing:border-box;padding:10px 12px;border:1px solid #cad8e8;border-radius:9px;background:#fff;cursor:pointer;list-style:none;font-weight:600;color:#172e48}.viva-topic-picker>summary::-webkit-details-marker{display:none}.viva-topic-picker>summary:after{content:'⌄';font-size:17px;color:#55708d}.viva-topic-picker[open]>summary{border-color:#1760df;box-shadow:0 0 0 3px #1760df18}.viva-topic-picker>summary small{margin-left:auto;color:#718298;font-size:11px;font-weight:500}
.viva-topic-options{position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:10px;border:1px solid #cad8e8;border-radius:11px;background:#fff;box-shadow:0 14px 34px #18344f26}.viva-topic-options label{display:flex!important;align-items:center;gap:9px;min-height:38px;padding:8px 10px;border-radius:8px;color:#304b68!important;font-size:13px!important;font-weight:600!important;cursor:pointer}.viva-topic-options label:hover{background:#f2f6fb}.viva-topic-options label.selected{background:#eaf2ff;color:#174d9c!important}.viva-topic-options input{width:17px!important;min-height:17px!important;height:17px;margin:0!important;padding:0!important;accent-color:#1760df}
form.viva-session-form>.primary{justify-self:start;min-height:43px;padding-inline:22px}

/* Station choice follows role selection and clearly identifies repeats. */
.viva-lobby-station-picker{margin-top:18px;padding:16px;border:1px solid #d9e5f2;border-radius:12px;background:#f8fbff}.viva-lobby-station-picker label{display:grid;gap:7px;color:#36516f;font-size:13px;font-weight:700}.viva-lobby-station-picker select{box-sizing:border-box;width:100%;min-height:46px;padding:10px 12px;border:1px solid #bdcfe2;border-radius:9px;background:#fff;color:#142d48;font:600 14px system-ui,sans-serif}.viva-station-history-status{display:flex;align-items:center;gap:9px;margin-top:10px;padding:9px 11px;border-radius:8px;font-size:12px}.viva-station-history-status strong{white-space:nowrap}.viva-station-history-status.new{background:#eaf8ef;color:#17613a}.viva-station-history-status.repeat{background:#fff3d9;color:#7c5000}.viva-station-picker-message{margin:0;color:#687b91;font-size:13px}
@media(max-width:600px){form.viva-session-form{padding:14px}.viva-topic-options{position:static;grid-template-columns:1fr;margin-top:6px;box-shadow:none}form.viva-session-form .form-two-col{grid-template-columns:1fr}.viva-station-history-status{align-items:flex-start;flex-direction:column;gap:2px}}

/* Per-material visibility at the start of a Viva Buddy station. */
.viva-auto-release-toggle{display:flex!important;align-items:center;gap:7px;margin:0;color:#36516f;font-size:12px;font-weight:650;white-space:nowrap;cursor:pointer}.viva-auto-release-toggle input{width:17px!important;height:17px!important;min-height:17px!important;margin:0!important;padding:0!important;accent-color:#1760df}.viva-labelled-material-row .viva-auto-release-toggle{margin-left:auto}.viva-edit-material-row{grid-template-columns:28px minmax(0,1fr) auto auto!important}.viva-edit-new-auto{justify-self:start;padding:9px 11px;border-radius:8px;background:#f2f7fc}
@media(max-width:760px){.viva-labelled-material-row{align-items:flex-start!important;flex-wrap:wrap}.viva-labelled-material-row .viva-auto-release-toggle{order:3;width:100%;margin-left:36px}.viva-edit-material-row{grid-template-columns:28px minmax(0,1fr) auto!important}.viva-edit-material-row .viva-auto-release-toggle{grid-column:2/-1}}

/* Structured observer notes: one optional note per examiner point plus an overall summary. */
.viva-observer-question-notes{display:grid;gap:14px;margin:18px 0;padding:18px;border:1px solid #d9e5f2;border-radius:14px;background:#f8fbff}.viva-observer-question-notes ol{display:grid;gap:10px;margin:0;padding:0;list-style:none}.viva-observer-question-notes li{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,1fr);gap:18px;padding:14px;border:1px solid #dce6f1;border-radius:11px;background:#fff}.viva-observer-question-copy{display:flex;gap:10px;align-items:flex-start}.viva-observer-question-copy>span{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:8px;background:#e9f1ff;color:#1557b8;font-size:13px;font-weight:800}.viva-observer-question-copy p{margin:3px 0 0;color:#172e48;font-size:14px;line-height:1.45}.viva-observer-question-notes label{display:grid;gap:6px;color:#526980;font-size:12px;font-weight:700}.viva-observer-question-notes textarea{box-sizing:border-box;width:100%;min-height:78px;margin:0;padding:10px 11px;resize:vertical;border:1px solid #c8d7e7;border-radius:9px;background:#fff;color:#172e48;font:400 14px/1.4 system-ui,sans-serif}.viva-observer-question-notes textarea:focus{outline:0;border-color:#1760df;box-shadow:0 0 0 3px #1760df18}.viva-history-question-notes{margin-top:14px;padding:14px;border:1px solid #dce6f1;border-radius:10px;background:#f8fbff}.viva-history-question-notes h4{margin:0 0 10px}.viva-history-question-notes ol{display:grid;gap:10px;margin:0;padding-left:22px}.viva-history-question-notes li strong{color:#203d5d;font-size:13px}.viva-history-question-notes li p{margin:3px 0 0;white-space:pre-wrap;color:#4b6179;font-size:13px}
@media(max-width:760px){.viva-observer-question-notes{padding:13px}.viva-observer-question-notes li{grid-template-columns:1fr;gap:10px;padding:12px}}

/* Branded presentation frame for every Viva Buddy material, including legacy uploads. */
.floating-image-stage.viva-branded-material-stage{display:grid!important;grid-template-rows:minmax(0,1fr) 44px;gap:0;padding:9px;background:#0e2d50!important}.viva-material-image-shell{min-width:0;min-height:0;display:grid;place-items:center;overflow:hidden;border:2px solid #fff;background:#030b15}.viva-branded-material-stage .viva-material-image-shell img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;margin:auto}.viva-material-brand-footer{display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;font-size:13px;font-weight:800;letter-spacing:.06em}.viva-material-brand-footer span{opacity:.7}.viva-branded-material-stage .floating-image-nav{top:calc(50% - 22px)}
@media(max-width:700px){.floating-image-stage.viva-branded-material-stage{grid-template-rows:minmax(0,1fr) 38px;padding:7px}.viva-material-brand-footer{font-size:11px}.viva-branded-material-stage .floating-image-nav{top:calc(50% - 19px)}}

/* Examiner station choice after roles are selected. */
.viva-station-picker-head{display:flex;justify-content:space-between;align-items:end;gap:20px}.viva-station-picker-head>div{display:grid;gap:4px}.viva-station-picker-head strong{font-size:16px;color:#173554}.viva-station-picker-head small{font-size:12px;color:#6b7d92}.viva-station-picker-head label{display:grid;gap:5px;min-width:220px;color:#36516f;font-size:12px;font-weight:700}.viva-station-picker-head select{min-height:40px!important}.viva-station-picker-key{display:flex;gap:8px;margin:12px 0}.viva-station-picker-key span,.viva-station-choice em{display:inline-flex;align-items:center;justify-content:center;padding:6px 11px;border-radius:999px;font-size:10px;font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:.025em}.viva-station-picker-key .new,.viva-station-choice.new em{background:#eaf8ef;color:#17613a}.viva-station-picker-key .repeat,.viva-station-choice.repeat em{background:#fff3d9;color:#7d5200}.viva-station-choice-list{display:grid;gap:8px}.viva-station-choice{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:62px;padding:10px 13px;border:1px solid #d9e5f2;border-radius:10px;background:#fff;color:#173554;text-align:left;cursor:pointer}.viva-station-choice:hover{border-color:#8bb3ea;background:#fbfdff}.viva-station-choice.selected{border:2px solid #f2b84b;background:#fffaf0}.viva-choice-radio{display:grid;place-items:center;width:24px;height:24px;border:2px solid #1760df;border-radius:50%;color:#fff;background:#fff;font-size:12px;font-weight:800}.viva-station-choice.selected .viva-choice-radio{background:#1760df}.viva-station-choice>span:nth-child(2){display:grid;gap:2px}.viva-station-choice strong{font-size:14px}.viva-station-choice small{color:#718399;font-size:11px}
@media(max-width:700px){.viva-station-picker-head{align-items:stretch;flex-direction:column}.viva-station-picker-head label{min-width:0;width:100%}.viva-station-choice{grid-template-columns:26px minmax(0,1fr)}.viva-station-choice em{grid-column:2;justify-self:start}.viva-station-picker-key{flex-wrap:wrap}}

/* Upcoming and previous revision sessions. */
.viva-session-tabs{display:grid;gap:12px;margin-top:14px}.viva-session-tab-buttons{display:flex;gap:7px;padding:5px;border:1px solid #dce6f1;border-radius:11px;background:#f3f7fb}.viva-session-tab-buttons button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:8px 16px;border:0;border-radius:8px;background:transparent;color:#526980;font-weight:750;cursor:pointer}.viva-session-tab-buttons button.active{background:#fff;color:#173554;box-shadow:0 2px 8px #17355412}.viva-session-tab-buttons span{display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:999px;background:#e5edf6;color:#526980;font-size:11px}.viva-session-tab-buttons button.active span{background:#e9f1ff;color:#1557b8}.viva-session-row.previous-session{opacity:.88}.viva-session-row.previous-session .viva-status.passed,.viva-session-row.previous-session .viva-status.completed{background:#eaf2fb;color:#45627f}.viva-session-row.previous-session .viva-status.cancelled{background:#f3f4f6;color:#6b7280}
@media(max-width:600px){.viva-session-tab-buttons{display:grid;grid-template-columns:1fr 1fr}.viva-session-tab-buttons button{padding-inline:8px;font-size:12px}}

/* Interactive preview mirrors the live observer marking workspace. */
.viva-demo-observer-notes{margin-top:14px}.viva-demo-observer-summary{display:grid;grid-template-columns:minmax(0,2fr) minmax(220px,1fr);gap:14px;margin-top:14px;padding:16px;border:1px solid #dce6f1;border-radius:12px;background:#fff}.viva-demo-observer-summary label{display:grid;align-content:start;gap:7px;color:#36516f;font-size:13px}.viva-demo-observer-summary textarea,.viva-demo-observer-summary select{box-sizing:border-box;width:100%;margin:0;padding:10px 11px;border:1px solid #c8d7e7;border-radius:9px;background:#fff;color:#172e48;font:400 14px/1.4 system-ui,sans-serif}.viva-demo-observer-summary textarea{min-height:108px;resize:vertical}.viva-demo-observer-summary select{min-height:44px}.viva-demo-observer-summary button{grid-column:2;justify-self:start;align-self:end}
@media(max-width:760px){.viva-demo-observer-summary{grid-template-columns:1fr}.viva-demo-observer-summary button{grid-column:1}}

/* Keep material sizing and navigation independent of watermark child positioning. */
.viva-material-viewer .viva-branded-material-stage{display:flex!important;flex-direction:column;align-items:stretch;justify-content:stretch;gap:0;min-width:0;min-height:0}
.viva-material-viewer .viva-material-image-shell{position:relative;flex:1 1 0;align-self:stretch;display:block;width:100%;min-width:0;min-height:0;overflow:hidden}
.viva-material-viewer .viva-material-image-shell img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;margin:0}
.viva-material-viewer .viva-material-brand-footer{flex:0 0 44px;align-self:stretch}
.viva-material-viewer .viva-branded-material-stage>.floating-image-nav{position:absolute!important;z-index:10}
.viva-material-viewer .viva-material-load-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:22px;color:#fff;text-align:center;font-size:14px}
.viva-material-viewer [hidden]{display:none!important}
@media(max-width:700px){.viva-material-viewer .viva-material-brand-footer{flex-basis:38px}}

/* Private examiner/observer teaching prompts, kept with each question. */
.viva-question-key-points{display:block;margin:9px 0 0;padding:10px 12px;border:1px solid #c8dfd8;border-left:3px solid #25826d;border-radius:8px;background:#edf7f3;color:#245b50;font-size:13px;font-weight:400;line-height:1.5;text-align:left}
.viva-question-key-points strong{display:block;margin-bottom:4px;color:#1c6656;font-size:11px;letter-spacing:.025em;text-transform:uppercase}
.viva-question-key-points>div{white-space:pre-wrap}
.viva-question-edit-copy{display:grid;gap:10px;min-width:0}.viva-question-edit-copy>textarea{width:100%}.viva-question-edit-copy>label{display:grid;gap:5px;padding:10px;border:1px solid #c8dfd8;border-radius:8px;background:#edf7f3;color:#245b50;font-size:12px;font-weight:650}.viva-question-edit-copy>label textarea{box-sizing:border-box;width:100%;min-height:72px;font-weight:400;background:#fff}
.viva-observer-question-copy>div{min-width:0;flex:1}

/* Two independent materials, side by side on desktop and stacked on phones. */
.viva-material-viewer.active-material{z-index:100000}
.viva-material-viewer.paired-material{left:16px!important;right:auto!important;top:100px!important;width:calc(50vw - 24px);max-width:calc(50vw - 24px);min-width:0;height:min(720px,78vh)}
.viva-material-viewer.paired-material.material-slot-second{left:calc(50vw + 8px)!important}
@media(max-width:700px){.viva-material-viewer.paired-material{left:8px!important;right:8px!important;top:64px!important;width:calc(100vw - 16px);max-width:none;height:calc((100dvh - 88px)/2);min-height:0}.viva-material-viewer.paired-material.material-slot-second{left:8px!important;top:calc(64px + (100dvh - 88px)/2 + 8px)!important}.viva-material-viewer.paired-material .floating-image-header{padding:6px 10px}.viva-material-viewer.paired-material .floating-image-footer{display:none}.viva-material-viewer.paired-material .viva-material-brand-footer{flex-basis:25px;font-size:10px}}
