:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden;width:100%;box-sizing:border-box}*{box-sizing:border-box}html{overflow-x:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.app-root{min-height:100vh;min-height:100dvh;height:100vh;height:100dvh;display:flex;flex-direction:column;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;overflow-x:hidden;width:100%;box-sizing:border-box}.topbar{height:56px;display:flex;align-items:center;justify-content:space-between;padding:calc(env(safe-area-inset-top,0px) + 8px) 12px 8px;background:#0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1)}.brand{font-weight:700;font-size:20px}.top-actions{display:flex;gap:8px}.topbar-link{display:inline-flex;align-items:center;height:36px;padding:0 8px;color:#ffffffe6;text-decoration:underline;transition:all .2s ease;border-radius:8px}.topbar-link:hover{color:#fff;background:#ffffff1a;text-decoration:none}.settings-btn{height:36px;padding:0 12px;border-radius:10px;background:#14141cd9;border:1px solid rgba(255,255,255,.12);color:#fff;transition:all .2s ease;font-weight:500}.settings-btn:hover{background:#ffffff26;border-color:#ffffff40;transform:translateY(-1px)}.stage{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;overflow:hidden;padding-bottom:120px}.stage-tiles{display:flex;flex-direction:column;height:100%;position:relative;max-height:100%;overflow:hidden}.tile-main{flex:1 1 auto;position:relative;overflow:hidden;border-radius:8px;z-index:1;pointer-events:none}.tile-strip{display:flex;gap:8px;overflow-x:auto;padding:6px 0;scrollbar-width:thin;position:relative;z-index:150;pointer-events:auto}.tile-main .gallery-tile{pointer-events:auto}.tile-strip::-webkit-scrollbar{height:6px}.gallery-tile{position:relative;flex:0 0 auto;width:120px;aspect-ratio:16/9;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .2s ease;border:2px solid transparent}.gallery-tile video{pointer-events:none}.tile-strip .gallery-tile .tile-overlay{pointer-events:none}.gallery-tile:hover{transform:scale(1.02);border-color:#ffffff4d}.gallery-tile.primary{width:100%;height:100%}.gallery-tile video{width:100%;height:100%;object-fit:contain}.tile-overlay{position:absolute;bottom:4px;left:4px;right:4px;display:flex;justify-content:space-between;align-items:center;font-size:12px;background:#00000073;color:#fff;padding:2px 4px;border-radius:4px}.mic-indicator{width:8px;height:8px;background:#0f0;border-radius:50%}.tile-pip{position:absolute;right:12px;bottom:12px;width:clamp(140px,28%,280px);max-width:calc(100vw - 24px);aspect-ratio:16 / 9;border-radius:10px;overflow:hidden;border:1px solid rgba(255,255,255,.15);background:#111111e6;padding:0;line-height:0;cursor:pointer}.tile-pip:hover{border-color:#ffffff4d}.pip-badge{position:absolute;left:8px;bottom:8px;padding:4px 8px;border-radius:8px;font-size:12px;color:#fffffff2;background:#14141ca6}.controls{position:fixed;left:0;right:0;bottom:24px;display:flex;justify-content:center;z-index:100}.control-bar{display:flex;gap:12px;padding:12px;background:#0000001a;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.icon-btn{width:56px;height:56px;background:#14141cd9;border-radius:14px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.08);padding:0;line-height:0;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.icon-btn:hover{border-color:#fff3;background:#ffffff1a;transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.icon{width:22px;height:22px;color:#fff;display:block}.icon-danger{color:#ff7b4a}.icon-muted{opacity:.5}.icon-wrap{display:flex;flex-direction:column;align-items:center;gap:6px}.icon-label{font-size:12px;color:#ffffffd9}.sr-only-media{position:absolute;width:0;height:0;overflow:hidden}.build-badge{position:fixed;left:8px;bottom:8px;padding:4px 8px;border-radius:8px;font-size:11px;letter-spacing:.2px;color:#ffffffd9;background:#14141c8c;border:1px solid rgba(255,255,255,.12);z-index:10;-webkit-user-select:none;user-select:none;pointer-events:none}.settings-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;padding:12px;z-index:1000;animation:fadeIn .2s ease-out}.settings-panel{width:min(720px,calc(100vw - 24px));max-width:calc(100vw - 24px);background:#14141cf5;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:16px;color:#fff;max-height:90vh;overflow-y:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 40px #0000004d;animation:slideUp .3s ease-out;box-sizing:border-box}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.settings-title{font-size:16px;font-weight:600;margin-bottom:12px}.settings-row{display:grid;grid-template-columns:140px 1fr;gap:12px;align-items:center;margin-bottom:10px}.settings-label{color:#ffffffe6}.settings-select{width:100%;background:#111111e6;border:1px solid rgba(255,255,255,.08);border-radius:10px;color:#fff;padding:10px 12px;font-size:14px;min-height:40px;box-sizing:border-box}input[type=range]{accent-color:#ffffff}.settings-footer{display:flex;justify-content:flex-end;margin-top:12px}.settings-close{height:36px;padding:0 12px;border-radius:10px;background:#ffffff14;border:1px solid rgba(255,255,255,.16);color:#fff;transition:all .2s ease;font-weight:500}.settings-close:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-1px)}@media (max-width: 640px){.topbar{height:calc(48px + env(safe-area-inset-top,0px));padding:calc(env(safe-area-inset-top,0px) + 6px) 10px 6px}.stage{padding-bottom:100px}.brand{font-size:16px}.top-actions{gap:4px}.topbar-link{font-size:13px;padding:0 6px;height:32px}.settings-btn{font-size:13px;padding:0 8px;height:32px}.icon-btn{width:48px;height:48px;border-radius:12px}.icon{width:20px;height:20px}.icon-label{font-size:11px}.controls{bottom:16px;left:8px;right:8px}.control-bar{gap:8px;padding:8px}.settings-panel{margin:8px;padding:12px}.settings-row{grid-template-columns:1fr;gap:6px;margin-bottom:12px}.settings-title{font-size:14px}.tile-pip{right:8px;bottom:8px;width:clamp(120px,25%,180px)}.pip-wrapper{right:8px;bottom:8px;width:min(180px,calc(100vw - 16px))}}.pip-wrapper{position:absolute;bottom:12px;right:12px;width:min(220px,calc(100vw - 24px));max-width:calc(100vw - 24px);aspect-ratio:16/9;border:2px solid #fff;border-radius:6px;overflow:hidden;cursor:pointer;box-shadow:0 4px 10px #00000073}.pip-wrapper .gallery-tile{width:100%;height:100%}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;width:100%;height:100%;max-height:100%;overflow-y:auto;padding-bottom:20px}.gallery-tile.speaking:after{content:"";position:absolute;inset:0;border:3px solid #4caf50;border-radius:6px;pointer-events:none}.gallery-grid .gallery-tile,.solo-view .gallery-tile.primary{width:100%;height:100%}.solo-view{width:100%;height:100%;display:flex;align-items:center;justify-content:center;max-height:100%;overflow:hidden}@media (max-width: 932px) and (max-height: 932px) and (orientation: portrait){.app-root{height:100vh;height:100dvh}.stage{padding-bottom:110px}.topbar{flex-shrink:0;position:relative;z-index:200}}@media (max-height: 500px) and (orientation: landscape){.stage{padding-bottom:90px}.controls{bottom:12px}.control-bar{padding:8px}.icon-btn{width:44px;height:44px}}
