:root {
  color-scheme: light;
  --ink: #17312d;
  --ink-2: #284640;
  --muted: #6f7d77;
  --soft: #9ba49f;
  --paper: #f4f2eb;
  --card: #fffefa;
  --line: #dedfd7;
  --lime: #dfff82;
  --lime-dark: #97bc35;
  --red: #e35c53;
  --blue: #9bc8ec;
  font-family: Manrope, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html, body { margin: 0; min-width: 320px; min-height: 100%; background: var(--paper); color: var(--ink); }
body { min-height: 100vh; }
button, input, textarea, select { font: inherit; color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { cursor: pointer; }
svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.svg-defs { position: absolute; width: 0; height: 0; overflow: hidden; }

.site-header {
  position: sticky; z-index: 100; top: 0; height: 76px; display: grid; grid-template-columns: 1fr auto 1fr;
  align-items: center; padding: 0 34px; border-bottom: 1px solid rgba(28,53,48,.13); background: rgba(244,242,235,.91);
  backdrop-filter: blur(16px);
}
.brand { display: flex; align-items: center; gap: 11px; color: inherit; text-decoration: none; width: max-content; }
.brand-symbol { position: relative; width: 37px; height: 37px; border-radius: 12px; background: var(--ink); overflow: hidden; }
.brand-symbol::after { content: ""; position: absolute; width: 24px; height: 24px; right: -9px; bottom: -9px; border: 5px solid var(--lime); border-radius: 50%; }
.brand-symbol i { position: absolute; width: 3px; bottom: 8px; background: var(--lime); border-radius: 3px; }
.brand-symbol i:nth-child(1) { height: 10px; left: 10px; }.brand-symbol i:nth-child(2) { height: 20px; left: 17px; }.brand-symbol i:nth-child(3) { height: 14px; left: 24px; }
.brand > span:last-child { display: grid; }
.brand strong { font-size: 15px; line-height: 1; letter-spacing: .18em; font-weight: 800; }
.brand small { margin-top: 5px; color: var(--muted); font-size: 7px; letter-spacing: .13em; font-weight: 700; }
.header-center { color: var(--muted); font-size: 12px; font-weight: 600; }
.console-label { padding: 7px 12px; border: 1px solid var(--line); border-radius: 100px; color: var(--ink); background: #fffdfa; }
.header-meta { justify-self: end; display: flex; align-items: center; gap: 24px; }
.connection { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 10px; }
.connection i { width: 7px; height: 7px; border-radius: 50%; background: #d19840; box-shadow: 0 0 0 4px rgba(209,152,64,.12); }
.connection i.online { background: #56a66a; box-shadow: 0 0 0 4px rgba(86,166,106,.12); }
.connection b { font-weight: 600; }
.session-code { padding-left: 20px; border-left: 1px solid var(--line); font: 500 9px/1 DM Mono, monospace; letter-spacing: .09em; color: var(--soft); }
.session-code b { margin-left: 6px; color: var(--ink); font-weight: 500; }

/* Participant */
.participant-app { height: calc(100vh - 76px); display: grid; grid-template-columns: 360px minmax(0, 1fr); }
.discussion-stage { min-width: 0; overflow-y: auto; padding: clamp(42px, 6vh, 78px) clamp(30px, 5vw, 78px) 42px; text-align: center; }
.time-kicker { display: flex; justify-content: center; align-items: center; gap: 9px; color: var(--muted); font-size: 10px; letter-spacing: .11em; text-transform: uppercase; }
.time-kicker span { width: 7px; height: 7px; border-radius: 50%; background: #d19a45; }
.time-kicker span.live { background: var(--red); box-shadow: 0 0 0 5px rgba(227,92,83,.12); animation: pulse 1.6s infinite; }
.hero-timer { margin-top: 12px; font: 500 clamp(58px, 7vw, 92px)/.96 DM Mono, monospace; letter-spacing: -.065em; color: #18342f; }
.timer-caption { margin: 10px 0 45px; color: var(--soft); font-size: 11px; letter-spacing: .08em; }
.group-grid { max-width: 880px; margin: 0 auto; display: grid; grid-template-columns: repeat(5, 1fr); gap: clamp(13px, 2.2vw, 32px); }
.person-card { position: relative; padding: 2px 0; }
.avatar { position: relative; width: clamp(76px, 8vw, 108px); aspect-ratio: 1; margin: 0 auto 16px; display: grid; place-items: center; border-radius: 38%; background: #dfe5df; transition: .25s ease; }
.avatar::before { content: ""; position: absolute; inset: 8px; border: 1px solid rgba(23,49,45,.08); border-radius: 34%; }
.avatar span { font: 600 clamp(22px, 2.3vw, 30px)/1 DM Mono, monospace; color: rgba(23,49,45,.72); }
.avatar.green { background: #cfe9cf; }.avatar.blue { background: #cce4f5; }.avatar.pink { background: #f2d3df; }.avatar.red { background: #f0cfca; }.avatar.orange { background: #f1ddc3; }
.speak-ring { position: absolute; inset: -5px; border: 2px solid transparent; border-radius: 40%; pointer-events: none; }
.person-card.is-speaking .speak-ring { border-color: var(--member-color, var(--lime-dark)); box-shadow: 0 0 0 5px color-mix(in srgb, var(--member-color, var(--lime-dark)) 16%, transparent); animation: speaker 1.1s ease infinite; }
.person-card > strong { display: block; font-size: 12px; }
.person-card > small { margin-top: 5px; display: flex; align-items: center; justify-content: center; gap: 6px; color: #8a9791; font-size: 9px; }
.person-card > small i { width: 6px; height: 6px; border-radius: 50%; background: #b7beb9; }
.person-card.is-online > small i { background: #61aa72; }.person-card.is-online > small span { color: #5e726b; }
.person-card.is-offline .avatar { filter: grayscale(.75); opacity: .58; }
.person-card.is-me::after { content: "我"; position: absolute; top: -3px; right: 13%; padding: 3px 7px; border-radius: 8px; background: var(--ink); color: white; font-size: 8px; font-weight: 700; }
.conversation-card { max-width: 760px; min-height: 86px; margin: 49px auto 0; display: flex; align-items: center; gap: 17px; padding: 16px 20px; text-align: left; background: #e9ebe3; border: 1px solid #d8dbd2; border-radius: 22px; }
.conversation-icon { width: 48px; height: 48px; flex: none; display: grid; place-items: center; border-radius: 15px; background: var(--ink); color: var(--lime); }
.conversation-icon svg { width: 23px; height: 23px; }
.conversation-card strong { font-size: 13px; }.conversation-card p { margin: 5px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.live-wave { margin-left: auto; height: 33px; display: flex; gap: 3px; align-items: center; }
.live-wave i { width: 3px; height: 8px; border-radius: 3px; background: #94a29c; }
.live-wave.active i { animation: wave .9s ease-in-out infinite alternate; }.live-wave i:nth-child(2),.live-wave i:nth-child(6){animation-delay:-.25s}.live-wave i:nth-child(3),.live-wave i:nth-child(5){animation-delay:-.5s}.live-wave i:nth-child(4){animation-delay:-.7s}
.participant-side { overflow-y: auto; border-right: 1px solid var(--line); background: #fbfaf5; padding: 27px 25px 22px; }
.profile-head { display: flex; align-items: flex-start; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.profile-head h2 { margin: 5px 0 0; font-size: 18px; letter-spacing: -.025em; }
.profile-eyebrow { color: var(--soft); font: 500 7px DM Mono, monospace; letter-spacing: .13em; }
.profile-owner { display: flex; align-items: center; gap: 7px; padding: 7px 10px; border-radius: 9px; background: #eef4e9; color: #47724d; font-size: 9px; }
.profile-owner i { width: 7px; height: 7px; border-radius: 50%; background: var(--member-color, #71ad77); }
.profile-owner b { font-weight: 800; }
.shared-brief { margin: 17px 0 19px; padding: 15px; border: 1px solid #d9ddd5; border-radius: 15px; background: #f0f1ea; }
.shared-brief > span { display: block; margin-bottom: 9px; color: var(--ink); font-size: 10px; font-weight: 800; }
.shared-brief p { margin: 0 0 7px; color: #526660; font-size: 8.5px; line-height: 1.58; }
.shared-brief p:last-child { margin-bottom: 0; }
.facts-heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.facts-heading span { font-size: 10px; font-weight: 800; }
.facts-heading small { color: var(--soft); font-size: 7px; }
.profile-facts { display: grid; gap: 8px; }
.facts-locked { padding: 28px 16px; border: 1px dashed #cfd4cc; border-radius: 13px; color: var(--soft); background: #f5f5ef; text-align: center; font-size: 8px; }
.city-facts { overflow: hidden; border: 1px solid #dfe1da; border-radius: 13px; background: white; }
.city-facts header { display: flex; align-items: baseline; gap: 6px; padding: 10px 12px 8px; border-bottom: 1px solid #e8e9e4; }
.city-facts header strong { font-size: 10px; }
.city-facts header span { color: var(--soft); font-size: 7px; }
.city-facts ul { margin: 0; padding: 7px 12px 8px 25px; }
.city-facts li { padding: 3px 0; color: #4d625c; font-size: 8.5px; line-height: 1.45; }
.city-facts li::marker { color: var(--member-color, #71ad77); font-size: .75em; }
.profile-foot { display: flex; gap: 9px; margin-top: 12px; padding: 10px 2px 0; color: var(--soft); }
.profile-foot i { width: 17px; height: 17px; flex: none; display: grid; place-items: center; border: 1px solid #b8c0bb; border-radius: 50%; font: 600 8px serif; }
.profile-foot span { font-size: 7.5px; line-height: 1.55; }
.person-card[data-slot="P01"] { --member-color: #71ad77; }.person-card[data-slot="P02"] { --member-color: #72a9d4; }.person-card[data-slot="P03"] { --member-color: #dc83a5; }.person-card[data-slot="P04"] { --member-color: #d86c66; }.person-card[data-slot="P05"] { --member-color: #e7a35a; }
.person-card > strong { color: var(--member-color); }
.person-card.is-online > small i { background: var(--member-color); }
.room-integrity { max-width: 760px; margin: 14px auto 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; overflow: hidden; border: 1px solid #dbddd6; border-radius: 14px; background: #dbddd6; }
.room-integrity > span { min-height: 53px; display: grid; grid-template-columns: 25px 1fr; grid-template-rows: auto auto; column-gap: 9px; align-content: center; padding: 9px 13px; text-align: left; background: #faf9f4; }
.room-integrity > span > svg, .room-integrity > span > .record-orb { grid-row: 1 / 3; align-self: center; width: 25px; height: 25px; }
.room-integrity > span > svg { padding: 5px; border-radius: 8px; background: #edf0eb; }
.room-integrity b { align-self: end; font-size: 8px; }.room-integrity small { align-self: start; color: var(--soft); font-size: 7px; }
body[data-view="participant"] .participant-app, body[data-view="participant"] .modal-layer { -webkit-user-select: none; user-select: none; }
.side-section { padding: 25px 0; border-bottom: 1px solid var(--line); }
.side-section:first-child { padding-top: 2px; }.side-section:last-child { border: 0; }
.side-title { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }.side-title span { font-size: 12px; font-weight: 750; }.side-title small { font: 500 8px DM Mono,monospace; color: var(--soft); letter-spacing: .08em; }
.record-status { display: flex; align-items: center; gap: 12px; padding: 13px; background: white; border: 1px solid var(--line); border-radius: 14px; }
.record-orb { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; background: #edf0eb; }.record-orb i { width: 8px; height: 8px; border-radius: 50%; background: #a9b0ac; }
.record-orb.active { background: #fff0ee; }.record-orb.active i { background: var(--red); animation: pulse 1.3s infinite; }
.record-status div { display: grid; gap: 3px; }.record-status strong { font-size: 11px; }.record-status small { color: var(--soft); font-size: 8px; }
.integrity-row { display: flex; align-items: center; justify-content: space-between; margin-top: 13px; color: var(--muted); font-size: 9px; }.integrity-row span { display: flex; align-items: center; gap: 8px; }.integrity-row svg { width: 14px; height: 14px; }.integrity-row b { padding: 4px 7px; border-radius: 6px; background: #e9eee8; color: #52705f; font-weight: 650; }
.task-card > p { margin: 0; color: #465d57; font-size: 11px; line-height: 1.75; }
.privacy-note { margin-top: 16px; display: flex; gap: 10px; padding: 12px; background: #eef0e9; border-radius: 12px; }.privacy-note i { width: 18px; height: 18px; flex: none; display: grid; place-items: center; border: 1px solid #a7b0aa; border-radius: 50%; color: var(--muted); font: 600 9px serif; }.privacy-note span { color: var(--muted); font-size: 9px; line-height: 1.6; }
.mic-button { width: 100%; height: 45px; display: flex; align-items: center; justify-content: center; gap: 9px; border: 1px solid #c9cec8; border-radius: 12px; background: white; font-size: 10px; font-weight: 700; }.mic-button:hover { border-color: var(--ink); }.mic-button.is-muted { color: var(--red); border-color: #efc5c1; background: #fff7f6; }.mic-button svg { width: 16px; height: 16px; }.device-card > p { margin: 10px 0 0; color: var(--soft); text-align: center; font-size: 8px; }

/* Modals */
.modal-layer { position: fixed; z-index: 1000; inset: 0; display: grid; place-items: center; padding: 22px; background: rgba(23,49,45,.55); backdrop-filter: blur(15px); }
.modal-layer[hidden] { display: none; }
.join-card, .survey-card { width: min(510px, 100%); padding: 34px; border-radius: 28px; background: #fffefa; box-shadow: 0 35px 110px rgba(9,31,27,.28); }
.modal-mark { width: 47px; height: 47px; display: grid; place-items: center; border-radius: 15px; background: var(--ink); color: var(--lime); }.modal-mark svg { width: 22px; }
.modal-eyebrow, .page-eyebrow { display: block; margin-top: 23px; color: #788881; font: 500 8px DM Mono,monospace; letter-spacing: .15em; }
.join-card h1 { margin: 9px 0 10px; font-size: 27px; letter-spacing: -.035em; }.join-card > p { margin: 0 0 22px; color: var(--muted); font-size: 11px; line-height: 1.65; }
.join-card label, .note-field { display: grid; gap: 7px; color: #405752; font-size: 9px; font-weight: 700; }.field-row { display: grid; grid-template-columns: 1.4fr 1fr; gap: 11px; margin-bottom: 12px; }
.join-card input, .join-card select, .survey-card textarea { width: 100%; height: 45px; padding: 0 12px; border: 1px solid #d5d8d1; border-radius: 11px; outline: 0; background: white; font-size: 11px; }.join-card input:focus,.join-card select:focus,.survey-card textarea:focus { border-color: #728963; box-shadow: 0 0 0 4px rgba(151,188,53,.12); }
.consent-line { margin: 18px 0; display: flex; align-items: center; gap: 12px; padding: 12px; border-radius: 13px; background: #eef0e9; }.consent-line > span { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; background: white; }.consent-line svg { width: 16px; }.consent-line p { margin: 0; display: grid; gap: 3px; }.consent-line b { font-size: 10px; }.consent-line small { color: var(--muted); font-size: 8px; }
.primary-button { width: 100%; height: 49px; padding: 0 17px; display: flex; align-items: center; justify-content: space-between; border: 0; border-radius: 13px; background: var(--ink); color: white; font-size: 11px; font-weight: 700; }.primary-button:hover { background: #0f2723; }.primary-button svg { width: 17px; color: var(--lime); }
.join-foot { display: block; margin-top: 12px; text-align: center; color: var(--soft); font-size: 7px; }
.survey-layer { background: rgba(16,40,35,.68); }
.survey-card { width: min(620px,100%); max-height: calc(100vh - 36px); overflow-y: auto; padding: 0; }
.survey-card > header { padding: 24px 28px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); }.survey-card header div { display:grid;gap:4px}.survey-card header span { font-size: 14px; font-weight: 800; }.survey-card header small { color: var(--muted); font-size: 8px; }.survey-card header b { font: 500 10px DM Mono,monospace; color: var(--muted); }
.survey-prompt { margin: 22px 28px 10px; display: flex; gap: 12px; padding: 14px; border-radius: 14px; background: #edf0e9; }.survey-prompt i { width: 28px; height: 28px; flex:none;display:grid;place-items:center;border-radius:9px;background:var(--ink);color:var(--lime);font:700 8px DM Mono,monospace}.survey-prompt p{margin:0;align-self:center;font-size:10px;line-height:1.5}
#survey-scales { padding: 5px 28px; }.scale-block { padding: 16px 0; border-bottom: 1px solid var(--line); }.scale-block > label { display:flex;justify-content:space-between;font-size:10px;font-weight:700}.scale-block > label span{color:var(--soft);font-size:8px;font-weight:500}.scale-options{margin-top:11px;display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.scale-options label{cursor:pointer}.scale-options input{position:absolute;opacity:0}.scale-options b{height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:9px;background:white;font:500 10px DM Mono,monospace}.scale-options input:checked+b{border-color:var(--ink);background:var(--ink);color:var(--lime)}.scale-ends{margin-top:6px;display:flex;justify-content:space-between;color:var(--soft);font-size:7px}
.note-field { margin: 14px 28px; }.note-field > span{position:absolute;margin-left:75px;color:var(--soft);font-size:8px;font-weight:400}.survey-card textarea{height:62px;padding:10px;resize:none}.survey-card > .primary-button{width:calc(100% - 56px);margin:18px 28px 26px}

/* Operator */
body[data-view="operator"] { background: #f0efe9; }
.operator-app { min-height: calc(100vh - 76px); display: grid; grid-template-columns: minmax(680px,1fr) 350px; }
.operator-main { min-width:0; padding: 37px 38px 60px; }
.operator-heading { display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:26px}.operator-heading .page-eyebrow,.section-heading .page-eyebrow,.event-panel .page-eyebrow{margin:0}.operator-heading h1{margin:6px 0 5px;font-size:27px;letter-spacing:-.035em}.operator-heading p{margin:0;color:var(--muted);font-size:9px}.operator-actions{display:flex;gap:8px}.secondary-button,.ghost-button,.test-mode-button{height:36px;display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid #cfd3cc;border-radius:10px;background:white;color:var(--ink);text-decoration:none;font-size:9px;font-weight:700}.secondary-button svg{width:14px}.ghost-button{background:transparent;color:var(--muted)}.test-mode-button i{width:7px;height:7px;border-radius:50%;background:#abb3ae}.test-mode-button.is-active{border-color:#93ad54;background:#f4ffda;color:#385329}.test-mode-button.is-active i{background:#7ca132;box-shadow:0 0 0 4px rgba(124,161,50,.13)}.test-mode-button:disabled{cursor:not-allowed;opacity:.55}
.session-command { min-height:150px;display:flex;align-items:center;gap:27px;padding:25px 28px;border-radius:22px;background:var(--ink);color:white;box-shadow:0 17px 40px rgba(21,48,42,.13)}
.command-status{align-self:stretch;display:flex;flex-direction:column;justify-content:space-between}.live-badge{display:flex;align-items:center;gap:7px}.live-badge i{width:7px;height:7px;border-radius:50%;background:#b4bdb9}.live-badge.running i{background:#ff6a60;box-shadow:0 0 0 5px rgba(255,106,96,.12);animation:pulse 1.4s infinite}.live-badge b{font-size:10px}.command-status>small{font:500 7px DM Mono,monospace;color:#7e9690;letter-spacing:.1em;white-space:nowrap}.command-time{display:grid;text-align:center}.command-time strong{font:500 40px DM Mono,monospace;letter-spacing:-.05em}.command-time span{margin-top:5px;color:#91a49f;font-size:8px}.command-rule{height:64px;width:1px;background:#36514b}.command-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;flex:1}.command-facts div{display:grid;gap:6px}.command-facts span{color:#78918b;font-size:8px;white-space:nowrap}.command-facts b{font:500 12px DM Mono,monospace;white-space:nowrap}.start-button{align-self:stretch;min-width:150px;padding:0 17px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:9px;border:0;border-radius:16px;background:var(--lime);color:var(--ink);font-size:10px;font-weight:800}.start-button:hover{background:#ebffad}.start-button svg{width:20px}.start-button:disabled{cursor:not-allowed;opacity:.42}
.operator-roster{margin:15px 0 34px;display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #d7d9d2;border-radius:17px;background:#faf9f4;overflow:hidden}.operator-roster article{min-width:0;padding:12px;display:grid;grid-template-columns:33px 1fr;gap:8px;align-items:center;border-right:1px solid var(--line)}.operator-roster article:last-child{border:0}.mini-avatar{width:33px;height:33px;display:grid;place-items:center;border-radius:11px;background:#e3e7e1;color:#687871;font:600 9px DM Mono,monospace}.operator-roster article>div:nth-child(2){min-width:0;display:grid;gap:3px}.operator-roster strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.operator-roster small{display:flex;align-items:center;gap:5px;color:var(--soft);font-size:7px}.operator-roster small i{width:5px;height:5px;border-radius:50%;background:#b3bbb6}.operator-roster article.online small i{background:#55a76b}.track-pill{grid-column:1/-1;padding-top:7px;border-top:1px solid #e5e6e0;color:var(--soft);font:500 7px DM Mono,monospace}.track-pill.ready{color:#4c8160}.track-pill a{color:#3e7453;text-underline-offset:2px}
.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.section-heading h2,.event-panel h2{margin:5px 0 0;font-size:17px;letter-spacing:-.025em}.section-heading p{margin:0;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:8px}.section-heading p i{width:6px;height:6px;border-radius:50%;background:#78a455}
.intervention-list{display:grid;gap:10px}.intervention-card{display:grid;grid-template-columns:46px minmax(0,1fr) 135px 142px;gap:15px;align-items:center;padding:15px;border:1px solid #d8dbd4;border-radius:16px;background:#faf9f5}.intervention-index{width:43px;height:43px;display:grid;place-items:center;border:1px solid #d6d9d2;border-radius:13px;background:#f1f1eb;font:500 10px DM Mono,monospace}.intervention-copy{min-width:0}.intervention-copy strong{display:block;font-size:11px}.intervention-copy p{margin:5px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:9px}.audio-meta{min-width:0;display:flex;align-items:center;gap:8px}.audio-preview{width:32px;height:32px;flex:none;display:grid;place-items:center;border:1px solid #d4d8d0;border-radius:10px;background:white}.audio-preview svg{width:14px}.audio-meta div{min-width:0;display:grid;gap:3px}.audio-meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:8px}.audio-meta small{color:var(--soft);font:500 7px DM Mono,monospace}.upload-label{color:#66776f;text-decoration:underline;cursor:pointer}.upload-label input{display:none}.trigger-button{height:42px;display:flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;background:var(--ink);color:white;font-size:9px;font-weight:750}.trigger-button svg{width:14px;color:var(--lime)}.trigger-button:disabled{cursor:not-allowed;background:#dfe1db;color:#9ba39f}.trigger-button:disabled svg{color:inherit}.intervention-card.has-played{border-color:#b9c7a8;background:#fbfff3}.intervention-card.is-playing{outline:3px solid rgba(151,188,53,.18)}
.event-panel{position:sticky;top:76px;height:calc(100vh - 76px);display:flex;flex-direction:column;padding:34px 27px 25px;border-left:1px solid var(--line);background:#faf9f4}.event-panel>header{display:flex;align-items:center;justify-content:space-between}.audit-live{display:flex;align-items:center;gap:6px;padding:5px 8px;border-radius:8px;background:#e8eee7;color:#557261;font-size:8px}.audit-live i{width:5px;height:5px;border-radius:50%;background:#57a56c}.clock-anchor{margin-top:22px;padding:14px;border:1px solid var(--line);border-radius:13px;background:#f1f1eb;display:grid;gap:5px}.clock-anchor small{color:var(--muted);font-size:8px}.clock-anchor b{font:500 11px DM Mono,monospace}.clock-anchor span{color:#a0aaa5;font:500 6px DM Mono,monospace;letter-spacing:.09em}.timeline{position:relative;flex:1;min-height:0;margin:21px 0;overflow-y:auto;padding-left:18px}.timeline::before{content:"";position:absolute;top:5px;bottom:5px;left:4px;width:1px;background:#d9ddd5}.timeline-empty{padding:26px 12px;color:var(--soft);font-size:9px;text-align:center}.event-item{position:relative;padding:0 0 19px 6px}.event-item::before{content:"";position:absolute;left:-17px;top:4px;width:7px;height:7px;border:2px solid #faf9f4;border-radius:50%;background:#9ba8a2;box-shadow:0 0 0 1px #cbd0c9}.event-item.intervention::before{background:var(--lime-dark)}.event-item.recording::before{background:var(--red)}.event-item>div{display:flex;align-items:center;justify-content:space-between}.event-item strong{font-size:9px}.event-item time{font:500 8px DM Mono,monospace;color:#6f827b}.event-item p{margin:4px 0 0;color:var(--soft);font-size:7px;line-height:1.45}.data-promise{display:flex;gap:10px;padding:12px;border-radius:12px;background:var(--ink);color:white}.data-promise svg{width:17px;flex:none;color:var(--lime)}.data-promise p{margin:0;display:grid;gap:3px}.data-promise b{font-size:8px}.data-promise span{color:#8fa29c;font-size:7px;line-height:1.4}

#toast{position:fixed;z-index:5000;left:50%;bottom:25px;transform:translate(-50%,18px);padding:10px 15px;border-radius:10px;background:#142d28;color:white;box-shadow:0 10px 35px rgba(0,0,0,.18);font-size:10px;opacity:0;pointer-events:none;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}

@keyframes pulse{50%{opacity:.35}}@keyframes wave{to{height:29px}}@keyframes speaker{50%{transform:scale(1.06);opacity:.35}}
@media(max-width:1050px){.operator-app{grid-template-columns:1fr}.event-panel{position:relative;top:0;height:auto;border-left:0;border-top:1px solid var(--line)}.timeline{max-height:400px}.participant-app{grid-template-columns:320px minmax(620px,1fr);min-width:940px}.session-command{flex-wrap:wrap}.command-facts{min-width:260px}.start-button{height:62px}.intervention-card{grid-template-columns:40px 1fr 125px}.trigger-button{grid-column:2/-1}.operator-roster{grid-template-columns:repeat(5,minmax(115px,1fr));overflow:auto}}
@media(max-width:760px){.site-header{height:66px;padding:0 15px;grid-template-columns:1fr auto;min-width:940px}.header-center,.connection{display:none}.brand small{display:none}.participant-app{display:grid;height:calc(100vh - 66px);grid-template-columns:310px minmax(620px,1fr);min-width:930px}.discussion-stage{padding:35px 16px}.participant-side{border-right:1px solid var(--line);border-top:0}.group-grid{grid-template-columns:repeat(5,minmax(58px,1fr));gap:5px}.avatar{width:58px;border-radius:20px}.person-card>strong{font-size:9px}.person-card>small span{display:none}.conversation-card{margin-top:35px}.join-card{padding:25px}.operator-main{padding:25px 15px}.operator-heading{align-items:flex-start;gap:18px}.operator-heading p{display:none}.session-command{padding:20px}.command-rule{display:none}.command-facts{order:5;width:100%}.operator-roster{grid-template-columns:repeat(5,115px)}.intervention-card{grid-template-columns:40px 1fr}.audio-meta{grid-column:2}.trigger-button{grid-column:2}.event-panel{padding:28px 18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
