.tul-account .tul-preview{position:relative;overflow:hidden;aspect-ratio:9/12;max-height:56vh;margin:18px auto;border-radius:24px;background:radial-gradient(circle at 50% 35%,#29213f,#08070d 70%);border:1px solid #ffffff18}
.tul-preview video{display:block;width:100%;height:100%;object-fit:cover}.tul-camera-note{position:absolute;inset:auto 14px 14px;padding:8px 12px;border-radius:999px;background:#0009;color:#fff;font:700 12px system-ui}
.tul-form{display:grid;gap:13px}.tul-form label{display:grid;gap:7px;font-weight:700}.tul-form input,.tul-form select{box-sizing:border-box;width:100%;padding:14px;border:1px solid #ffffff18;border-radius:14px;background:#0b0912;color:#fff;font:inherit}.tul-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.tul-actions button{flex:1;min-width:130px}#tulStatus{padding:12px 0;color:#aaa}#tulStatus.error{color:#ff9ba9}
.tul-viewer{position:relative;overflow:hidden;background:#030303;color:#fff;font-family:system-ui}.tul-video{position:absolute;inset:0;background:#000}.tul-video video,.tul-video canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;opacity:0;visibility:hidden}.tul-video video.is-front{z-index:2;opacity:1;visibility:visible}.tul-video canvas{z-index:3;pointer-events:none}.tul-video canvas.show{opacity:1;visibility:visible}.tul-wait{position:absolute;z-index:4;inset:48% 0 auto;text-align:center;font-weight:800}.tul-person{position:absolute;z-index:5;left:20px;bottom:145px;display:flex;align-items:center;gap:10px;padding:7px 12px 7px 7px;border:1px solid #ffffff30;border-radius:999px;background:#08070cbf;color:#fff;text-decoration:none;backdrop-filter:blur(10px)}.tul-person img{width:48px;height:48px;border-radius:50%;object-fit:cover}.tul-person span{display:grid}.tul-person small{color:#ff5260}.tul-info{position:absolute;z-index:5;left:20px;right:18px;bottom:28px;text-shadow:0 2px 8px #000}.tul-info h2,.tul-info p{margin:0 0 5px}.tul-info h2{font-size:25px}.tul-count{margin-right:12px}.tul-push{border:1px solid #ffffff42;border-radius:999px;padding:8px 12px;background:#16101ecc;color:#fff;font-weight:800}.tul-push.done{color:#ffd36c;border-color:#ffd36c}.tul-push i{font-style:normal}
.tul-profile{height:min(70vh,680px);margin:20px 0;border-radius:28px;border:1px solid #ffffff20}.tul-mediawall{width:100vw!important;height:100vh!important;min-height:100vh!important;scroll-snap-align:start;scroll-snap-stop:always}.tul-tv{position:relative;width:min(420px,100vw);height:72vh;border-radius:20px}
.tul-finish[hidden]{display:none!important}.tul-finish{position:fixed;z-index:999999;inset:0;display:grid;place-items:end center;padding:20px;background:#000b;backdrop-filter:blur(10px)}.tul-finish>div{box-sizing:border-box;width:min(520px,100%);padding:24px;border:1px solid #ffffff22;border-radius:26px;background:#151020;color:#fff;box-shadow:0 25px 90px #000}.tul-finish h2{margin:0 0 7px}.tul-finish p{margin:0 0 18px;color:#aaa}.tul-finish button{display:block;width:100%;margin-top:11px}.tul-finish small{display:block;margin:5px 4px 2px;color:#999}.tul-finish .tul-cancel{border:0;background:transparent;color:#bbb;padding:12px}.tul-recording-grid{display:grid;gap:14px}.tul-recording-grid article{overflow:hidden;border:1px solid #ffffff14;border-radius:18px;background:#08070d}.tul-recording-grid video{display:block;width:100%;max-height:340px;background:#000}.tul-recording-grid article>div{display:flex;justify-content:space-between;gap:12px;padding:13px}.tul-recording-grid small{color:#aaa}
#tul-profile-mount{width:100%}#tul-tv-hub{display:none;position:fixed;inset:0;z-index:130;padding:70px 20px 30px;overflow:auto;background:#08070e;color:#fff;font-family:system-ui}#tul-tv-hub.open{display:block}#tul-tv-hub h1{max-width:1100px;margin:0 auto 22px}.tul-tv-list{max-width:1100px;margin:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.tul-tv-list>p{opacity:.7}.tul-studio{position:fixed;z-index:99998;left:18px;bottom:18px;width:min(350px,calc(100vw - 36px));padding:15px;border:1px solid #ffffff20;border-radius:16px;background:#111e;color:#fff;font:14px system-ui}.tul-studio>div{display:flex;justify-content:space-between;gap:8px;margin-top:9px}.tul-studio button{border:0;border-radius:8px;padding:7px 10px;background:#d71920;color:#fff;font-weight:800}
@media(max-width:640px){.tul-profile{height:68svh}.tul-person{bottom:150px}.tul-info{bottom:24px}.tul-account .tul-preview{max-height:52svh}}
