:root{color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:#000;color:#fff;overflow:hidden;-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{cursor:pointer}#app{width:100%;height:100dvh;padding-top:max(9px,env(safe-area-inset-top));background:#000;display:flex;flex-direction:column;overflow:hidden}#stage{flex:1;min-height:0;position:relative;overflow:hidden;border-radius:9px;background:radial-gradient(circle at 55% 38%,#494245,#0d0e11 75%)}#video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}#veil{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(to bottom,#0008 0%,#0001 17%,transparent 40%,#0001 61%,#0005 100%)}#header{position:absolute;left:11px;right:9px;top:12px;display:flex;align-items:center;gap:7px;z-index:5;text-shadow:0 1px 3px #0008}#avatar{height:37px;width:37px;border-radius:50%;flex-shrink:0;padding:0;overflow:hidden;border:0;background:linear-gradient(130deg,#c18553,#9b406d 65%,#4b2b80);font-size:19px;font-weight:800;color:#fff;display:grid;place-items:center}#avatar img{width:100%;height:100%;object-fit:cover}#username{flex:1;min-width:0;font-size:15px;font-weight:700;letter-spacing:-.22px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#username .arrow{display:inline-block;margin-left:3px;font-size:14px;opacity:.95}#live{background:linear-gradient(100deg,#ed0070,#da006f);padding:8px 10px;border-radius:4px;font-size:12px;line-height:1;font-weight:790;white-space:nowrap;box-shadow:0 0 9px #de0c7580}#audience{display:flex;align-items:center;justify-content:center;gap:5px;flex:0 0 auto;background:#0808089c;border-radius:4px;padding:8px 9px;font-size:12px;line-height:1;font-weight:710;white-space:nowrap;font-variant-numeric:tabular-nums}#audience svg{width:13px;height:13px;stroke:#fff;fill:none;stroke-width:2.25}#chat{position:absolute;left:11px;right:43px;bottom:40px;height:37%;min-height:160px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:9px;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 14%,#000 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 14%,#000 100%);z-index:2}#chat .message{display:flex;align-items:flex-start;gap:8px;flex-shrink:0;min-width:0;animation:appear .24s ease both;text-shadow:0 1px 3px #000c}#chat .picture{width:32px;height:32px;flex:0 0 32px;object-fit:cover;border-radius:50%;border:1px solid #ffffff30;overflow:hidden}#chat .words{font-size:14px;line-height:1.27;max-width:100%;min-width:0;overflow-wrap:anywhere}#chat .nick{font-weight:750;display:block;margin:0 0 2px;letter-spacing:-.05px}#chat .comment{font-weight:400}.message.join .comment{font-size:12px;opacity:.85}@keyframes appear{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}#hearts{position:absolute;right:11px;bottom:12px;pointer-events:none;width:36px;height:270px;z-index:3}#hearts .heart{position:absolute;bottom:0;right:0;line-height:1;opacity:.92;animation:heartFloat var(--dur) ease-out forwards;filter:drop-shadow(0 1px 2px #0007)}@keyframes heartFloat{0%{opacity:0;transform:translate(0) scale(.68)}16%{opacity:.9}70%{opacity:.86}to{opacity:0;transform:translate(var(--dx),calc(-1 * var(--height))) scale(var(--scale)) rotate(var(--rot))}}#toolbar{flex:none;position:relative;display:flex;align-items:center;gap:14px;min-height:78px;padding:15px 16px 19px;background:#000;margin-bottom:env(safe-area-inset-bottom)}.compose{flex:1;min-width:0;display:flex;align-items:center;height:42px;border:1.25px solid #777;border-radius:24px;overflow:hidden;padding-left:14px}.compose:focus-within{border-color:#eee}.compose input{background:transparent;color:#fff;border:0;outline:none;min-width:0;flex:1;height:100%;font-size:14px}.compose input::placeholder{color:#939393}.dots{height:100%;width:31px;border:0;background:transparent;color:#fff;font-size:19px;font-weight:750;padding:0;line-height:1}.action{display:grid;place-items:center;background:transparent;border:0;color:#fff;width:29px;height:34px;padding:0;flex-shrink:0}.action svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.action:active{opacity:.65;transform:scale(.95)}#home{position:absolute;bottom:6px;left:50%;width:32%;max-width:135px;height:5px;border-radius:6px;background:#fff;transform:translate(-50%);pointer-events:none}#mark{position:absolute;right:10px;top:61px;font-size:10px;color:#f0f0f0;background:#0008;border-radius:4px;padding:3px 6px;z-index:4;font-weight:550;letter-spacing:.2px}#startCamera{position:absolute;top:88px;right:10px;z-index:5;color:#fff;background:#111b;border:1px solid #ffffff55;border-radius:20px;padding:6px 10px;font-size:11px}#toast{position:absolute;top:115px;left:12px;right:12px;z-index:9;font-size:12px;color:#fff;text-shadow:0 1px 4px #000;text-align:center;pointer-events:none}#sheet{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:none;align-items:flex-end;z-index:20}#sheet.open{display:flex}#panel{width:100%;background:#252529;border-radius:16px 16px 0 0;padding:18px 18px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -8px 35px #0008}#panel h2{font-size:17px;margin:0 0 13px}#panel p{font-size:12px;color:#bbb;line-height:1.45;margin:12px 0}#panel button,#panel label.control{width:100%;min-height:42px;margin:4px 0;padding:11px 12px;color:#fff;border:0;background:#39393e;border-radius:9px;display:block;text-align:left;font-size:14px}#panel button.close-menu{text-align:center;background:#444}#panel input[type=file]{display:none}#panel label.speed{display:flex;align-items:center;gap:9px;font-size:14px;margin-top:11px}#panel input[type=range]{width:100%;accent-color:#e80073}#status{display:block;font-size:12px;color:#ccc;margin-top:9px}#first-tip{position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);color:#fff;text-shadow:0 1px 4px black;background:#0009;border:1px solid #ffffff23;border-radius:21px;padding:9px 13px;white-space:nowrap;font-size:12px;z-index:3;pointer-events:none}#first-tip{display:none!important}#first-tip.hidden{display:none}@media(max-width:385px){#header{gap:6px;left:8px;right:7px}#avatar{width:32px;height:32px}#username{font-size:13px}#live,#audience{font-size:11px;padding:7px}#toolbar{gap:10px;padding-left:11px;padding-right:11px}.action{width:25px}.action svg{width:26px;height:26px}#chat .words{font-size:13.3px}}@media(min-width:480px){#app{padding-top:9px}#header{top:20px;left:10px;right:10px;gap:10px}#avatar{width:46px;height:46px;font-size:25px}#username{font-size:20px}#live{width:165px;font-size:18px;padding:12px 8px;text-align:center}#audience{width:130px;font-size:18px;padding:12px 8px}#audience svg{width:17px;height:17px}#chat{left:16px;right:60px;bottom:60px;gap:12px;height:37%}#chat .picture{width:43px;height:43px;flex-basis:43px}#chat .words{font-size:19px}#chat .message{gap:11px}#hearts{right:14px;bottom:16px;width:42px;height:310px}#toolbar{min-height:105px;padding:22px 17px 27px;gap:21px}.compose{height:55px;border-radius:30px;padding-left:20px}.compose input{font-size:20px}.dots{font-size:24px;width:40px}.action{width:37px;height:40px}.action svg{width:35px;height:35px}#home{bottom:9px}#mark{top:78px;font-size:11px}}#app{padding-top:max(8px,env(safe-area-inset-top))}#stage{border-radius:9px 9px 8px 8px}#header{gap:7px;top:12px}#username{font-weight:720;letter-spacing:-.27px}#live{font-weight:780;box-shadow:0 0 9px #f0006e73}#chat{height:39%;bottom:23px;gap:7px;-webkit-mask-image:linear-gradient(transparent 0%,#000 13%,#000);mask-image:linear-gradient(transparent 0%,#000 13%,#000)}#chat .message-shell{flex:0 0 auto;display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .26s ease-out,opacity .22s ease-out}#chat .message-shell.visible{grid-template-rows:1fr;opacity:1}#chat .message{display:flex;align-items:flex-start;gap:8px;overflow:hidden;min-height:0;animation:none}#chat .picture{flex:0 0 32px;height:32px;width:32px;border-radius:50%;border:1px solid rgba(255,255,255,.16)}#chat .picture.empty{border:1px solid #ffffff26;background:#bdbdbd;overflow:hidden}#chat .words{font-size:14px;line-height:1.22;max-width:100%;padding-top:1px}#chat .nick{margin-bottom:2px;font-weight:710}#hearts{bottom:11px;right:9px;height:250px;width:42px}#hearts .heart{position:absolute;bottom:0;right:0;display:block;filter:drop-shadow(0 1px 2px #0006);animation:heartFloat var(--dur) cubic-bezier(.14,.35,.25,1) forwards;opacity:0}#hearts .heart svg{width:100%;height:100%;display:block}@keyframes heartFloat{0%{opacity:0;transform:translate(0) scale(.72) rotate(-10deg)}12%{opacity:var(--opacity)}70%{opacity:var(--opacity)}to{opacity:0;transform:translate(var(--dx),calc(-1 * var(--height))) scale(var(--scale)) rotate(var(--rot))}}#toolbar{gap:13px;padding-top:13px;padding-bottom:16px;min-height:74px}.compose{height:43px;border-color:#8e8e8e;border-width:1.1px}.compose input{font-size:14px}.action svg{stroke-width:1.8}#mark{top:60px;right:10px;background:#0009;color:#eee;font-size:9px;letter-spacing:.1px;padding:3px 5px}#startCamera{top:83px;right:9px;background:#080808cc;font-size:11px}#startCamera.active{font-size:0;min-width:30px;height:30px;padding:2px 6px;opacity:.65}#startCamera.active:before{content:"⟳";font-size:18px}#status{line-height:1.4}#panel .privacy{color:#cacaca;font-size:11px}@media(max-width:385px){#chat .words{font-size:13.3px}#toolbar{gap:11px}#chat{bottom:20px}}@media(min-width:480px){#chat{bottom:54px;gap:11px}#chat .picture{height:43px;width:43px;flex-basis:43px}#chat .words{font-size:19px}#hearts{bottom:18px;width:48px}}@media(prefers-reduced-motion:reduce){#chat .message-shell{transition-duration:.01ms}#hearts .heart{animation-duration:.01ms}}#mark,#startCamera,#first-tip{display:none!important}#stage #videoBg,#stage #video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}#stage #videoBg{object-fit:cover;filter:blur(26px) brightness(.42);transform:scaleX(-1) scale(1.1);opacity:.92}#stage #video{object-fit:contain;transform:scaleX(-1) scale(var(--camera-scale,1));transform-origin:center center;z-index:0}#stage #veil{z-index:1}#panel .frame-option{display:flex;align-items:center;gap:9px;font-size:14px;margin-top:16px;line-height:1.4}#panel .frame-option input{width:19px;height:19px;accent-color:#eb1c87;flex:0 0 19px}#panel .zoom-option{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-top:14px}#panel #cameraScale{width:100%;accent-color:#ed1c83;display:block;margin:8px 0 0}#panel .camera-note{font-size:12px;line-height:1.42;color:#bbb;margin:9px 0}#panel .camera-info{font-size:11px;color:#bfbfbf;margin:7px 0 11px}#home{display:none!important}#panel{max-height:min(92dvh,830px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(25px,env(safe-area-inset-bottom))}#panel h2{display:flex;gap:8px;flex-wrap:wrap;align-items:baseline}#panel .version-tag{font-size:11px;color:#f3b4d0;font-weight:600}#panel .camera-group{margin-top:14px}#panel .camera-group label{display:block;font-size:13px;margin-bottom:7px}#panel #captureMode{width:100%;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;color:#fff;background:#37373d;border:1px solid #666;border-radius:9px;padding:12px;font-size:15px}#panel .camera-info{white-space:pre-line;line-height:1.5}#panel .camera-note{margin-top:7px}#panel .voice-panel{background:#303036;border:1px solid #4c4c50;border-radius:12px;padding:12px;margin:7px 0 12px}#panel .voice-row{display:flex;align-items:center;gap:9px;font-size:13px}#panel .voice-dot{width:10px;height:10px;display:inline-block;border-radius:50%;background:#888;flex:none;box-shadow:0 0 0 3px #ffffff14}#panel .voice-dot.active{background:#3ddc82;box-shadow:0 0 0 3px #26b76a33}#panel .voice-dot.error{background:#fc615f;box-shadow:0 0 0 3px #e64f4f33}#panel .heard{font-size:12px;color:#fafafa;margin-top:9px;line-height:1.45;overflow-wrap:anywhere}#panel #voiceHelp{font-size:12px;margin:8px 0 4px;color:#d2d2da}#panel button.secondary{background:#4c4654;font-size:13px;min-height:36px;padding:9px 11px;margin:6px 0}#panel .topic-row{display:flex;gap:7px;align-items:center;margin-top:8px}#panel .topic-row input{border:1px solid #666;border-radius:8px;background:#1d1d23;color:#fff;padding:10px;min-width:0;flex:1;font-size:13px}#panel .topic-row button{width:54px;min-width:54px;text-align:center;padding:10px 8px;margin:0;background:#a42268;font-size:13px}#stage #videoBg{filter:blur(22px) brightness(.61);opacity:1;transform-origin:center center}#stage #video{transition:transform .2s ease,object-position .2s ease;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 8%,#000 90%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 8%,#000 90%,transparent 100%)}#panel .camera-note{margin-bottom:9px}#stage #videoBg{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;width:120%;height:120%;object-fit:cover;filter:blur(28px) brightness(.83);opacity:1;max-width:none;transform-origin:center center}#stage #video{position:absolute;inset:auto;top:50%;left:50%;width:100%;height:auto;max-width:none;max-height:none;object-fit:contain;display:block;transform-origin:center center;transition:transform .2s ease;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 7%,black 90%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 7%,black 90%,transparent 100%)}#stage #video.cover-frame{top:0;left:0;width:100%;height:100%;object-fit:cover;max-width:100%;-webkit-mask-image:none;mask-image:none}#panel .camera-reset{background:#514750;font-size:13px;margin:8px 0}#panel .heard{white-space:normal}#panel .enhancement-controls{margin:15px 0;padding:13px;border:1px solid #56545d;background:#202026;border-radius:12px}#panel .feature-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font-size:13px;margin-bottom:9px}#panel .feature-head strong:last-child{color:#ff9dc8;font-variant-numeric:tabular-nums}#panel .range-hints{display:flex;justify-content:space-between;color:#a8a4ad;font-size:11px;margin-top:4px}#panel .checkline{display:flex;align-items:center;gap:8px;font-size:12px;margin-top:12px;line-height:1.4}#panel .checkline input{width:18px;height:18px;accent-color:#e80073}#panel #speechSensitivity{background:#383740;color:#fff;padding:10px;border:1px solid #68636c;border-radius:9px;width:100%;font-size:13px}#panel .quick-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}#panel .quick-topics button{font-size:12px;min-height:34px;padding:8px 9px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#48414e;text-align:center}#panel #viewerTarget,#panel #topicBias{display:block;margin:8px 0 0}#panel #speechHistory{font-size:11px;color:#cac2ca;margin-top:12px;line-height:1.5}#panel .v12-tools{border:1px solid #55505e;background:#2a2930;border-radius:12px;padding:12px;margin:12px 0}#panel .v12-tools button{margin:4px 0 8px}#panel .v12-info{font-size:12px;color:#cdc8d0;line-height:1.45}#panel .v12-good{color:#74e7a0}#panel .v12-number{font-variant-numeric:tabular-nums}html,body{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:100%;overflow:hidden;overscroll-behavior:none;touch-action:manipulation}#app{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;max-height:100dvh;min-height:0;overflow:hidden;overscroll-behavior:none;touch-action:manipulation}#stage,#toolbar,#like,.action{touch-action:manipulation;-webkit-touch-callout:none}html,body,#app,#app *,#stage *,#toolbar *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,select,#app input,#toolbar input{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}#like{-webkit-user-select:none;user-select:none;outline:none;transform:none}#like:active{opacity:.77;transform:none}#panel{touch-action:pan-y;overflow-y:auto;-webkit-overflow-scrolling:touch}#panel input[type=range]{touch-action:auto}.voice-enhancements{display:grid;gap:9px;margin:5px 0 18px}.voice-enhancements select,.voice-enhancements input[type=password]{width:100%;font-size:15px;border:1px solid #65656a;border-radius:9px;color:#fff;background:#34343a;padding:12px}.voice-enhancements .camera-note{margin:0 0 8px;color:#bcbcc2;font-size:12px;line-height:1.45}.voice-enhancements button{font-size:14px}#voiceProfile{background:#29292e;border-radius:10px;padding:12px;font-size:13px}#voiceProfile p{font-size:12px;line-height:1.5;color:#c6c6ca;margin:7px 0 0}#panel .profile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:9px}#panel .profile-form label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#c9c4cc;min-width:0}#panel .profile-form label.wide{grid-column:1/-1}#panel .profile-form input{width:100%;border:1px solid #666;border-radius:8px;background:#1d1d23;color:#fff;padding:9px;font-size:13px;min-width:0}#panel .profile-form .checkline{grid-column:1/-1;flex-direction:row;align-items:center;font-size:12px;color:#fff}#panel .profile-form .checkline input{width:18px;height:18px;flex:none}#panel #profileSave{margin-top:8px;text-align:center;background:#a42268}#donationTotal{position:absolute;right:10px;top:60px;z-index:5;font-size:11px;font-weight:650;color:#fff;background:#0007;border-radius:4px;padding:4px 7px;text-shadow:0 1px 2px #000a;font-variant-numeric:tabular-nums}#donationCard{position:absolute;left:50%;top:38%;z-index:6;width:min(74%,300px);transform:translate(-50%,-50%) scale(.86);opacity:0;pointer-events:none;background:#18181ddb;border:1px solid #ffffff22;border-radius:16px;padding:12px 14px 14px;text-align:center;box-shadow:0 10px 30px #0007;transition:opacity .28s ease,transform .32s cubic-bezier(.2,1.4,.4,1)}#donationCard.show{opacity:1;transform:translate(-50%,-50%) scale(1)}#donationCard .donation-head{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:700}#donationCard .donation-avatar{width:26px;height:26px;border-radius:50%;background:#bdbdbd center/cover no-repeat;border:1px solid #fff4;flex:none}#donationCard .donation-avatar.empty{background-image:url(/avatars/default.png)}#donationCard .donation-amount{font-size:34px;font-weight:800;color:#3ddc6f;line-height:1.15;margin:6px 0 2px;text-shadow:0 0 14px #3ddc6f55;font-variant-numeric:tabular-nums}#donationCard .donation-text{font-size:16px;font-weight:600;line-height:1.25;overflow-wrap:anywhere}#panel .donation-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}#panel .donation-row label{display:flex;flex-direction:column;gap:4px;font-size:11px;color:#c9c4cc}#panel .donation-row select{width:100%;background:#383740;color:#fff;padding:9px;border:1px solid #68636c;border-radius:9px;font-size:13px}@media(min-width:480px){#donationTotal{top:80px;font-size:13px}#donationCard .donation-amount{font-size:42px}}@media(prefers-reduced-motion:reduce){#donationCard{transition-duration:.01ms}}#verified{display:inline-block;width:15px;height:15px;margin-left:4px;vertical-align:-2px;filter:drop-shadow(0 1px 2px #0006)}#verified[hidden]{display:none}@media(max-width:385px){#verified{width:13px;height:13px;vertical-align:-1px}}@media(min-width:480px){#verified{width:20px;height:20px;margin-left:6px;vertical-align:-3px}}#donationGoal{position:absolute;right:10px;top:86px;z-index:5;width:min(52%,210px);background:#0008;border-radius:6px;padding:5px 7px 6px;font-size:10.5px;font-weight:650;color:#fff;text-shadow:0 1px 2px #000a}#donationGoal[hidden],#donationTotal[hidden]{display:none}#donationGoal .goal-row{display:flex;justify-content:space-between;gap:6px;margin-bottom:4px}#donationGoal .goal-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}#donationGoal .goal-sum{flex:none;font-variant-numeric:tabular-nums;opacity:.9}#donationGoal .goal-bar{height:5px;border-radius:3px;background:#ffffff2e;overflow:hidden}#donationGoal .goal-fill{height:100%;width:0;background:linear-gradient(90deg,#3ddc6f,#9ef06a);border-radius:3px;transition:width .6s ease}#donationGoal.done .goal-fill{background:linear-gradient(90deg,#fc3,#ff7a3d)}#donationCard .donation-badge{font-size:15px}#donationCard .donation-badge[hidden]{display:none}#donationCard.big{border-color:#ffd54a88;box-shadow:0 0 24px #ffd54a40,0 10px 30px #0007}#donationCard.big .donation-amount{color:#ffd54a;text-shadow:0 0 16px #ffd54a66}#panel .donation-row input{width:100%;background:#1d1d23;color:#fff;padding:9px;border:1px solid #666;border-radius:9px;font-size:13px;min-width:0}@media(min-width:480px){#donationGoal{top:110px;font-size:12px}}
