/* SIPCO customer application palette and component proportions. */
:root{color-scheme:light;--bg:#f3f6f8;--paper:#fff;--ink:#19313c;--muted:#697d87;--line:#dfe7eb;--accent:#e8f4ef;--green:#347f71;--navy:#142f37;--on-accent:#fff;--warning:#80571e;--warning-bg:#fff6e4;--danger:#bd424c;--shadow:0 16px 46px #19313c0a;--font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
:root[data-theme=dark]{color-scheme:dark;--bg:#101b22;--paper:#18262f;--ink:#e5eef2;--muted:#afc2cb;--line:#3b505d;--accent:#193b30;--green:#8dd4bd;--navy:#101b22;--on-accent:#102c23;--warning:#f2d18e;--warning-bg:#40331d;--danger:#ffb3bb;--shadow:0 16px 46px #0002}
body{font-synthesis:none;background:var(--bg);color:var(--ink)}
.sidebar{background:var(--paper);padding:24px 18px}.brand{gap:10px;letter-spacing:0;min-width:0}.brand img{width:116px;height:45px;object-fit:contain}.brand-product{font-size:16px;color:var(--muted);font-weight:500;letter-spacing:-.3px;border-left:1px solid var(--line);padding-left:10px}.workspace-label{color:var(--muted);letter-spacing:1.1px;margin-top:42px}.nav-item{min-height:46px;border-radius:12px;padding:12px 15px}.nav-item.active{background:var(--accent);color:var(--green)}.sidebar-bottom{padding-left:12px;padding-right:12px}.mini-brand{background:none;display:block;border-radius:12px;object-fit:contain}.sidebar-bottom p{color:var(--muted)}
.button{min-height:44px;border-radius:12px;font-weight:550}.button.primary,.button.dark{background:var(--green);border-color:var(--green);color:var(--on-accent)}.button.outline{background:var(--paper);border-color:var(--line);color:var(--ink)}.button:hover{filter:brightness(.97)}.header-actions{gap:8px}select{background:var(--paper);border-color:var(--line);border-radius:12px;min-height:44px}.appearance-control{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;padding:10px;border:1px solid var(--line);border-radius:13px;background:var(--paper);color:var(--ink)}.appearance-control svg,.visual-controls svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.theme-options{display:grid;gap:8px}.theme-options [aria-pressed=true]{background:var(--accent);color:var(--green);border-color:var(--green)}
.hero{padding-top:44px;padding-bottom:44px}.hero-copy h1{font-weight:650;letter-spacing:-1.7px;line-height:1.12}.lead{color:var(--muted)}.tag{background:var(--accent);color:var(--green);border:0;border-radius:9px;letter-spacing:.5px}.dot{background:var(--green)}.quiet{color:var(--muted)}
.meeting-visual{background:var(--paper);border:1px solid var(--line);border-radius:24px;transform:none;box-shadow:var(--shadow);padding:22px;margin:0 0 14px}.meeting-visual:before,.meeting-visual:after{display:none}.visual-top{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px}.visual-top img{width:100px;height:39px;object-fit:contain}.visual-dots{margin-left:auto;color:var(--muted)}.visual-grid{position:relative;display:grid;place-items:center;min-height:210px;margin:18px 0;border-radius:18px;background:var(--bg);overflow:hidden}.brand-presence{position:relative;padding:24px;border:1px solid var(--line);background:var(--paper);border-radius:32px;box-shadow:var(--shadow);z-index:1}.brand-presence img{display:block;object-fit:contain;border-radius:24px}.presence-dot{position:absolute;right:16px;bottom:16px;width:16px;height:16px;border-radius:50%;background:var(--green);border:4px solid var(--paper)}.visual-connection{position:absolute;border:1px solid var(--line);border-radius:50%;width:230px;height:230px}.connection-two{width:320px;height:320px}.connection-three{width:410px;height:410px}.visual-controls{display:flex;justify-content:center;gap:10px;margin:0}.visual-controls i{display:grid;place-items:center;width:42px;height:40px;border-radius:12px;color:var(--muted);background:var(--bg);font-style:normal}.visual-controls .hangup{background:#fcebec;color:#bd424c;width:54px}.visual-note{position:static;transform:none;border-radius:12px;background:var(--accent);color:var(--green);font-size:11px;text-align:center;padding:10px 12px;margin-top:16px;box-shadow:none}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow)}.panel h2{font-weight:600}.section-icon,.empty-mark{background:var(--bg);border-color:var(--line);color:var(--muted)}.count{background:var(--accent);color:var(--green)}.join-input input,input:not([type=checkbox]),textarea{background:var(--paper);color:var(--ink);border-color:var(--line);border-radius:12px;min-height:44px}.join-input .button{border-radius:10px}.feature-row{color:var(--muted)}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #529c8e;outline-offset:3px}.capabilities-strip strong{color:var(--ink)}.capabilities-strip>div>span{color:var(--green)}.notice{background:var(--accent);color:var(--muted);border-radius:12px}.notice-dot{background:var(--green)}.notice button{color:var(--green)}footer{color:var(--muted)}
dialog{background:var(--paper);color:var(--ink);border-color:var(--line);border-radius:20px}dialog::backdrop{background:#06192388}.connection-status{color:var(--warning)}.connection-status.on{color:var(--green)}.form-error{color:var(--danger)!important}.calendar-day{background:var(--bg);color:var(--ink);border-radius:10px}.calendar-day.is-today{background:var(--green);color:var(--on-accent)}.calendar-day.has-event:after{background:var(--green)}
.video-container{background:var(--navy);border-radius:20px}.camera-placeholder{display:block;object-fit:contain;background:none;border-radius:20px;width:80px;height:80px}.room-notes .tag{color:var(--green)}#prejoin{color:#e5eef2}#prejoin .quiet{color:#afc2cb}.recording{color:var(--danger)}#toast{background:var(--ink);color:var(--paper)}
:root[data-theme=dark] .visual-controls .hangup{background:#432a33;color:#ffb3bb}:root[data-theme=dark] .brand>img,:root[data-theme=dark] .visual-top>img{background:#fff;border-radius:9px;padding:3px 6px}
@media(max-width:1150px){.sidebar{padding:24px 12px}.brand img{width:98px;height:39px}.brand-product{font-size:14px;padding-left:8px}.brand{gap:8px}.visual-grid{min-height:190px}.brand-presence{padding:18px}.brand-presence img{width:94px;height:94px}}
@media(max-width:760px){.sidebar{padding:14px 18px}.brand img{width:94px;height:37px}.brand-product{font-size:14px}.hero{padding-top:28px;padding-bottom:30px;gap:28px}.hero-copy h1{font-size:37px;letter-spacing:-1.3px}.meeting-visual{width:100%;max-width:420px;margin:0 auto 10px;padding:18px}.visual-grid{min-height:185px}.panel{padding:22px;border-radius:20px}.header-actions{gap:6px}.header-actions .button{min-height:44px;font-size:12px}.appearance-control{width:42px;height:44px}select{padding:9px 8px;font-size:12px}.nav-item{min-height:40px;padding:8px}.sidebar nav{gap:2px}.brand-product{border-left:0;padding-left:0}.capabilities-strip{padding-top:24px}}
@media(max-width:360px){.sidebar{padding-left:12px;padding-right:12px}.brand{gap:6px}.brand img{width:84px}.brand-product{font-size:13px}.nav-item{padding:7px}.hero-copy h1{font-size:33px}.hero-buttons{gap:8px}.hero-buttons .button{padding:11px 13px}}
.visual-grid{grid-template-columns:1fr;gap:0}.meeting-icon{background:var(--accent);color:var(--green)}
/* Flag assets and colors match the main SIPCO project. */
.language-flags{position:relative;flex-shrink:0}
.flag-trigger{display:flex;align-items:center;justify-content:center;gap:7px;width:64px;height:44px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);cursor:pointer}
.flag-trigger img,.flag-choice img{object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px #19313c20}
.flag-trigger:focus-visible,.flag-choice:focus-visible{outline:3px solid var(--green);outline-offset:3px}
.flag-menu{position:absolute;right:0;top:52px;display:flex;gap:6px;padding:10px;background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:0 10px 30px #101b2220;z-index:30}
.flag-menu[hidden]{display:none}
.flag-choice{width:44px;height:42px;display:grid;place-items:center;border:2px solid transparent;border-radius:9px;background:transparent;cursor:pointer}
.flag-choice[aria-pressed="true"]{border-color:var(--green);background:var(--accent)}
.recap-options{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}
.recap-options[hidden]{display:none}
@media(max-width:600px){.flag-menu{right:auto;left:50%;transform:translateX(-50%)}}
