:root{--bg: #f6f7f9;--surface: #ffffff;--ink: #16181d;--ink-soft: #5b6472;--line: #e6e8ec;--accent: #0a66ff;--accent-ink: #ffffff;--ok: #128a4f;--ok-bg: #e7f6ee;--warn: #b45309;--warn-bg: #fdf1e3;--danger: #c0392b;--danger-bg: #fdecec;--passback: #6d3ec2;--passback-bg: #f1eafb;--radius: 12px;--sidebar: 232px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%}body{background:var(--bg);color:var(--ink);font-size:15px;line-height:1.5}#app{min-height:100%}a{color:var(--accent);text-decoration:none}h1{font-size:1.5rem;margin:0;letter-spacing:-.01em}h2{font-size:1.125rem;margin:0 0 .5rem}.muted{color:var(--ink-soft)}.small{font-size:.8125rem}.app-shell{display:grid;grid-template-columns:var(--sidebar) 1fr;min-height:100vh}.sidebar{background:var(--surface);border-right:1px solid var(--line);padding:20px 16px;display:flex;flex-direction:column;gap:18px}.brand{font-weight:700;font-size:1.05rem;letter-spacing:-.01em}.brand-lg{font-weight:700;font-size:1.35rem;letter-spacing:-.02em;margin-bottom:6px}.org-switcher,.org-name{width:100%}.org-name{font-weight:600;color:var(--ink-soft);font-size:.9rem}.nav-links{display:flex;flex-direction:column;gap:2px}.nav-group-label{margin:14px 0 2px;padding:0 12px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft)}.nav-links>.nav-group-label:first-child{margin-top:4px}.nav-link{padding:8px 12px;border-radius:8px;color:var(--ink-soft);font-weight:500}.nav-link:hover{background:var(--bg);color:var(--ink)}.nav-link-active{background:#eaf1ff;color:var(--accent)}.sidebar-foot{margin-top:auto;display:flex;flex-direction:column;gap:10px;align-items:flex-start}.role-tag{font-size:.7rem;font-weight:700;letter-spacing:.04em;color:var(--ink-soft);background:var(--bg);padding:3px 8px;border-radius:6px}.content{padding:32px 40px;max-width:960px}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.stack{display:flex;flex-direction:column;gap:12px}.stat-label{font-size:.8rem;color:var(--ink-soft);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.stat-value{font-size:1.9rem;font-weight:700;letter-spacing:-.02em;margin:4px 0 8px}.stat-of{font-size:1rem;color:var(--ink-soft);font-weight:500}.row{display:flex;align-items:center;justify-content:space-between;gap:16px}.row>div:first-child{min-width:0}.row-title{font-weight:600;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.row-sub{font-size:.85rem;margin-top:2px}.row-sub.warn{color:var(--warn)}.row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.btn-block{display:block;width:100%;text-align:center}.callout-warn{background:var(--warn-bg);color:var(--warn);border-radius:8px;padding:10px 14px;font-size:.85rem;font-weight:600;margin:4px 0}.device-card{display:block;text-decoration:none;color:inherit;transition:border-color .12s}.device-card:hover{border-color:var(--accent)}.back-link{display:inline-block;margin-bottom:12px;font-size:.85rem;font-weight:600}.feed-row{padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.feed-pills{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.feed-row-override{border-color:#e8b7b0;background:#fdf5f4;box-shadow:inset 3px 0 0 var(--danger)}.override-note{color:var(--danger);font-weight:600}.btn{font:inherit;font-weight:600;border:1px solid transparent;border-radius:8px;padding:8px 14px;cursor:pointer;transition:background .12s,border-color .12s}.btn:disabled{opacity:.6;cursor:default}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:#0a58db}.btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn-ghost:hover:not(:disabled){background:var(--bg)}.btn-danger{background:var(--surface);color:var(--danger);border-color:#f0d3cf}.btn-danger:hover:not(:disabled){background:#fbeceb}[hidden]{display:none!important}.field{display:flex;flex-direction:column;gap:5px;margin-bottom:14px;flex:1}.field-label{font-size:.82rem;font-weight:600;color:var(--ink-soft)}.field-row{display:flex;gap:12px}.input{font:inherit;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);width:100%}.input:focus{outline:2px solid #cfe0ff;border-color:var(--accent)}select.input{appearance:auto}.pill{font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:999px;letter-spacing:.02em}.pill-ok{background:var(--ok-bg);color:var(--ok)}.pill-warn{background:var(--warn-bg);color:var(--warn)}.pill-danger{background:var(--danger-bg);color:var(--danger)}.pill-muted{background:var(--bg);color:var(--ink-soft)}.pill-check{background:transparent;color:var(--ink-soft);border:1px solid var(--line);padding:2px 8px}.pill-check-flag{background:transparent;color:var(--warn);border:1px solid #edd6b4;padding:2px 8px}.pill-check-attention{background:transparent;color:var(--ink-soft);border:1px solid var(--line);padding:2px 8px}.pill-override{background:var(--danger);color:#fff}.pill-passback{background:var(--passback-bg);color:var(--passback)}.empty{text-align:center;padding:56px 24px;color:var(--ink-soft);max-width:460px;margin:0 auto}.empty-icon{width:56px;height:56px;border-radius:16px;background:#eaf1ff;color:var(--accent);display:grid;place-items:center;margin:0 auto 18px}.empty-icon svg{width:28px;height:28px;display:block}.empty-title{font-weight:700;color:var(--ink);font-size:1.2rem;letter-spacing:-.01em}.empty-detail{margin:8px 0 20px;line-height:1.5}.empty .btn{min-width:180px}.spinner{width:26px;height:26px;border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;margin:32px auto}@keyframes spin{to{transform:rotate(360deg)}}.signin{display:grid;place-items:center;min-height:100vh;padding:24px}.signin .card{width:100%;max-width:400px;padding:32px}.signin-title{font-size:1.35rem;margin:4px 0 0}.signin-title:focus{outline:none}.signin-alt{display:flex;flex-direction:column;gap:8px;margin-top:22px}.signin-alt .btn{width:100%;padding:10px 14px}.signin-rule{border:0;border-top:1px solid var(--line);margin:20px 0 0}.signin-form{margin-top:18px;display:flex;flex-direction:column;gap:8px}.signin-form .btn{margin-top:4px}.signin-sent{margin:8px 0 0;overflow-wrap:anywhere}.signin-foot{margin:20px 0 0;font-size:.8rem}.btn-apple{background:#000;color:#fff;border-color:#000}.btn-apple:hover:not(:disabled){background:#222}.onboarding{min-height:100vh;padding:24px;max-width:880px;margin:0 auto}.onboarding-brand{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px}.setup-progress{list-style:none;padding:0;margin:0 auto 28px;max-width:720px;display:grid;grid-template-columns:repeat(5,1fr)}.setup-progress li{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--ink-soft);font-size:.78rem;text-align:center}.setup-progress li:before{content:"";position:absolute;height:2px;background:var(--line);left:0;right:50%;top:14px;transform:translate(-50%);z-index:-1}.setup-progress li:first-child:before{display:none}.setup-progress .complete,.setup-progress .active{color:var(--ink);font-weight:600}.setup-progress .complete:before,.setup-progress .active:before{background:var(--accent)}.setup-dot{width:28px;height:28px;border-radius:50%;background:var(--surface);border:2px solid var(--line);display:grid;place-items:center;font-size:.75rem}.complete .setup-dot{background:var(--accent);border-color:var(--accent);color:#fff}.active .setup-dot{border-color:var(--accent);color:var(--accent)}.setup-panel{width:100%;max-width:620px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:32px;box-shadow:0 12px 40px #1822340f}.setup-panel-wide{max-width:820px;text-align:center}.setup-panel h1,.invitation h1{font-size:clamp(1.75rem,5vw,2.4rem);letter-spacing:-.035em;margin:4px 0 8px}.setup-lede{font-size:1rem;margin:0 0 24px}.eyebrow{color:var(--accent);font-size:.82rem;font-weight:700;margin:0}.setup-form{display:flex;flex-direction:column;margin-top:24px}.setup-form .card{margin:4px 0 18px}.setup-form .card p{margin:4px 0 8px}.btn-large{padding:12px 18px;text-align:center}.form-message{min-height:1.3em;margin:10px 0 0;color:var(--ink-soft)}.form-message-error{color:var(--danger)}.status-ok{color:var(--ok)}.reassurance-list{margin:12px 0 0;padding-left:20px;color:var(--ink-soft)}.reassurance-list li{margin:5px 0}.success-mark{width:56px;height:56px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:var(--ok-bg);color:var(--ok);font-size:1.75rem;font-weight:700}.ready-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:28px 0;text-align:left}.ready-grid .card h2{margin-bottom:8px}.inline-action{display:flex;gap:8px;align-items:center}.ready-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.venue-request-card{margin:24px 0;text-align:left}.invitation{max-width:520px;display:flex;flex-direction:column;justify-content:center}.invitation .card{padding:32px}.invitation .btn{width:100%;padding:12px 18px}.overlay{position:fixed;inset:0;background:#14182166;display:grid;place-items:center;padding:24px;z-index:50}.dialog{background:var(--surface);border-radius:var(--radius);padding:24px;width:100%;max-width:380px;box-shadow:0 20px 50px #0003}.dialog-wide{max-width:460px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}.report-actions{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 12px}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px);background:var(--ink);color:#fff;padding:11px 18px;border-radius:10px;font-weight:500;opacity:0;transition:opacity .25s,transform .25s;z-index:60}.toast-in{opacity:1;transform:translate(-50%)}.toast-error{background:var(--danger)}@media(max-width:760px){.app-shell{display:block}.sidebar{flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px 12px;border-right:none;border-bottom:1px solid var(--line);padding:12px 16px;position:sticky;top:0;z-index:20}.brand{font-size:1rem}.org-switcher,.org-name{flex:1 1 auto;width:auto;min-width:0}.sidebar-foot{margin:0;order:3;flex-direction:row;align-items:center;gap:8px}.sidebar-foot .btn{padding:6px 12px}.role-tag{display:none}.nav-links{order:4;flex-basis:100%;flex-direction:row;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:2px -16px 0;padding:0 16px 2px;scrollbar-width:none}.nav-links::-webkit-scrollbar{display:none}.nav-link{white-space:nowrap;padding:7px 12px}.nav-group-label{display:none}.content{padding:18px 16px;max-width:none}.page-head{flex-wrap:wrap;gap:10px}.grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.row{flex-direction:column;align-items:stretch;gap:12px}.field-row{flex-direction:column;gap:0}.report-actions .btn{width:100%}.dialog{max-width:100%}.signin .card{padding:24px}.onboarding{padding:16px}.onboarding-brand{margin-bottom:20px}.setup-progress li span:last-child{display:none}.setup-panel{padding:24px 20px}.ready-grid{grid-template-columns:1fr}.inline-action{align-items:stretch;flex-direction:column}}@media(prefers-color-scheme:dark){:root{--bg: #111318;--surface: #1b1e25;--ink: #f4f6fa;--ink-soft: #aab1bd;--line: #303641;--accent: #5b9dff;--accent-ink: #07111f;--ok-bg: #153928;--warn-bg: #3d2b18;--danger-bg: #3f1a1a;--passback: #c4a9f5;--passback-bg: #2a1f45}.nav-link-active,.empty-icon{background:#172c4e}.input:focus{outline-color:#264a7d}.btn-apple{background:#fff;color:#000;border-color:#fff}.btn-apple:hover:not(:disabled){background:#e6e6e6}}.sidebar-app-link{font-size:.78rem;font-weight:600;color:var(--ink-soft);line-height:1.35}.sidebar-app-link:hover{color:var(--accent)}.app-note{margin:18px 0 0;padding-top:14px;border-top:1px solid var(--line);line-height:1.45}.join-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:2.4rem;font-weight:700;letter-spacing:.08em;text-align:center;padding:18px 12px;margin:12px 0;border-radius:12px;background:var(--surface-2, rgba(127, 127, 127, .12));user-select:all}
