@font-face{font-family:openSans;src:url(../media/open_sans_latin_variable-s.p.1wc2mf9hp9pav.woff2)format("woff2");font-display:swap;font-weight:300 800}@font-face{font-family:openSans Fallback;src:local(Arial);ascent-override:101.58%;descent-override:27.84%;line-gap-override:0.0%;size-adjust:105.22%}.opensans_d4665be5-module__gPuh5G__className{font-family:openSans,openSans Fallback}.opensans_d4665be5-module__gPuh5G__variable{--font-open-sans:"openSans", "openSans Fallback"}
:root{--blue:#0c6eb9;--blue-dark:#095590;--blue-soft:#e7f1f9;--ink:#1f2937;--muted:#5b6676;--line:#dde3ea;--bg:#f4f7fa;--card:#fff;--danger:#b42318;--ok:#157347;--radius:12px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);font-family:var(--font-open-sans), "Open Sans", system-ui, sans-serif;margin:0;font-size:16px;line-height:1.5}a{color:var(--blue)}h1,h2,h3{margin:0 0 12px;line-height:1.25}h1{font-size:1.6rem;font-weight:700}h2{font-size:1.15rem;font-weight:700}p{margin:0 0 12px}.topbar{background:var(--card);border-bottom:1px solid var(--line)}.topbar-inner{flex-wrap:wrap;align-items:center;gap:16px;max-width:1040px;margin:0 auto;padding:12px 16px;display:flex}.topbar img{width:auto;height:34px;display:block}.topbar nav{flex-wrap:wrap;align-items:center;gap:4px;margin-left:auto;display:flex}.navlink{color:var(--ink);border-radius:8px;padding:8px 12px;font-size:.95rem;font-weight:600;text-decoration:none}.navlink:hover{background:var(--blue-soft)}.who{color:var(--muted);padding:0 8px;font-size:.9rem}@media (max-width:600px){.who{display:none}.topbar .logout{margin-left:auto}.topbar nav{order:3;width:100%;margin-left:-6px}.topbar .btn{min-height:36px;padding:6px 10px}.navlink{padding:8px 6px;font-size:.9rem}}.page{max-width:1040px;margin:0 auto;padding:32px 16px 64px}.narrow{max-width:460px;margin:0 auto}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.stack>*+*{margin-top:16px}label{margin-bottom:6px;font-size:.92rem;font-weight:600;display:block}input[type=text],input[type=email],input[type=password],textarea{width:100%;font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;padding:10px 12px}input:focus,textarea:focus,button:focus-visible,a:focus-visible{outline-offset:1px;outline:3px solid #0c6eb959}textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.code-input{letter-spacing:.4em;text-align:center;font-variant-numeric:tabular-nums;font-size:1.6rem!important}.btn{font:inherit;border:1px solid var(--blue);background:var(--blue);color:#fff;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 18px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:var(--blue-dark);border-color:var(--blue-dark)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-secondary{color:var(--blue);background:#fff}.btn-secondary:hover{background:var(--blue-soft);border-color:var(--blue)}.btn-danger{background:var(--danger);border-color:var(--danger)}.btn-danger:hover{background:#8f1c13;border-color:#8f1c13}.btn-block{width:100%}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.muted{color:var(--muted);font-size:.92rem}.notice{background:var(--blue-soft);border-radius:8px;padding:12px 14px;font-size:.92rem}.error{color:var(--danger);font-size:.92rem;font-weight:600}.success{color:var(--ok);font-size:.92rem;font-weight:600}.tabs{background:var(--bg);border:1px solid var(--line);border-radius:10px;gap:4px;padding:4px;display:inline-flex}.tab{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 18px;font-weight:600}.tab[aria-pressed=true]{background:var(--card);color:var(--blue);box-shadow:0 1px 2px #0f172a1f}.recorder-grid{grid-template-columns:minmax(0,3fr) minmax(0,2fr);align-items:start;gap:24px;display:grid}@media (max-width:820px){.recorder-grid{grid-template-columns:minmax(0,1fr)}}.stage{border-radius:var(--radius);aspect-ratio:16/9;color:#dbe6f1;background:#0f1b2a;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.stage>span{text-align:center;padding:0 24px}.stage video{object-fit:cover;background:#000;width:100%;height:100%}.stage-audio{text-align:center;flex-direction:column;gap:16px;padding:24px}.meter{background:#ffffff26;border-radius:99px;width:min(320px,80%);height:10px;overflow:hidden}.meter>div{background:#5fb0ee;height:100%;transition:width 80ms linear}.rec-badge{color:#fff;font-variant-numeric:tabular-nums;background:#0009;border-radius:99px;align-items:center;gap:8px;padding:4px 12px;font-size:.85rem;font-weight:600;display:inline-flex;position:absolute;top:12px;left:12px}.rec-dot{background:#ef4444;border-radius:50%;width:10px;height:10px}.linkbox{gap:8px;display:flex}.linkbox input{flex:1;min-width:0}@media (max-width:520px){.linkbox{flex-direction:column}}.list{border-collapse:collapse;width:100%}.list th,.list td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:12px 8px}.list th{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.82rem;font-weight:600}.pill{background:var(--blue-soft);color:var(--blue-dark);border-radius:99px;padding:2px 10px;font-size:.78rem;font-weight:600;display:inline-block}.recipient{flex-direction:column;min-height:100vh;display:flex}.recipient-head{background:var(--blue);color:#fff}.recipient-head .inner{justify-content:space-between;align-items:center;gap:12px;max-width:820px;margin:0 auto;padding:14px 16px;display:flex}.recipient-head img{width:auto;height:30px;display:block}.recipient-main{flex:1;width:100%;max-width:820px;margin:0 auto;padding:32px 16px 48px}.greeting{margin-bottom:4px;font-size:1.5rem;font-weight:700}.player video,.player audio{background:#000;border-radius:10px;width:100%;display:block}.player audio{background:0 0}.speed{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.speed button{font:inherit;border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:99px;padding:4px 12px;font-size:.85rem;font-weight:600}.speed button[aria-pressed=true]{border-color:var(--blue);background:var(--blue);color:#fff}.sender{align-items:center;gap:12px;display:flex}.avatar{background:var(--blue-soft);width:44px;height:44px;color:var(--blue-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.recipient-foot{text-align:center;color:var(--muted);padding:16px;font-size:.85rem}.embed-body{background:0 0}.embed-body .player{padding:0}.login-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;font-size:.92rem;display:flex}.login-check{align-items:center;gap:8px;margin:0;font-weight:400;display:flex}.login-check input{width:auto;margin:0}.login-or{color:#8496a8;align-items:center;gap:12px;margin:6px 0 0;font-size:.85rem;display:flex}.login-or:before,.login-or:after{content:"";border-top:1px solid #e3e9ef;flex:1}.login-sub{margin:0;font-size:1.05rem}.auth{background:var(--bg);max-width:none;min-height:100vh;padding-top:52px;position:relative}.auth:before{content:"";clip-path:ellipse(120% 100% at 50% 0);background:radial-gradient(700px 300px at 85% -40px,#ffffff29,#0000 70%),linear-gradient(135deg,#0a5a99 0%,#0c6eb9 55%,#1784d2 100%);height:340px;position:absolute;inset:0 0 auto}.auth .narrow{max-width:448px;position:relative}.auth .narrow>img{margin:0 auto 22px;display:block}.auth .card{border:0;border-radius:20px;padding:36px 36px 30px;box-shadow:0 2px 4px #08528b0f,0 24px 60px #083e6c2e}.auth h1{color:#0f2437;letter-spacing:-.02em;font-size:1.75rem}.auth h2,.auth .login-sub{color:#0f2437}.auth label{color:#0f2437;font-size:.88rem}.auth input[type=text],.auth input[type=email],.auth input[type=password],.auth select{background:#fbfcfe;border-color:#d5dee7;border-radius:11px;padding:12px 14px;transition:border-color .12s,box-shadow .12s,background .12s}.auth select{width:100%;font:inherit;color:var(--ink);border:1px solid #d5dee7;padding-left:10px}.auth select:focus,.auth input:focus{background:#fff;border-color:#9fd0ef;outline:0;box-shadow:0 0 0 4px #0c6eb921}.auth .btn{background:linear-gradient(#167bc9,#0c6eb9);border-radius:11px;min-height:48px;box-shadow:0 1px 2px #0c6eb959,0 8px 18px #0c6eb93d}.auth .btn:hover{background:linear-gradient(#0f6db6,#095a98)}.auth .btn-secondary{box-shadow:none;background:#fff}.auth .muted{color:#6b7c8f}.auth .notice{border:1px solid #cfe4f6;border-radius:11px}.auth .login-or{margin:10px 0 2px}.auth .narrow>.muted{text-align:center;margin-top:18px;font-size:.82rem}@media (max-width:600px){.auth{padding-top:32px}.auth:before{height:250px}.auth .narrow>img{margin-bottom:16px}.auth .card{border-radius:18px;padding:26px 20px 22px}}.pwgate{background:radial-gradient(900px 420px at 50% -140px, #d7e9f8 0%, transparent 70%), var(--bg);justify-content:center;align-items:flex-start;min-height:100vh;padding:14vh 16px 40px;display:flex}.pwgate-card{background:#fff;border-radius:20px;width:100%;max-width:420px;padding:34px 32px 28px;box-shadow:0 2px 4px #08528b0f,0 24px 60px #083e6c24}.pwgate-card:before{content:"";background:var(--blue-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230c6eb9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='11' width='16' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center / 22px no-repeat;border-radius:14px;width:48px;height:48px;margin:0 0 18px;display:block}.pwgate h1{color:#0f2437;letter-spacing:-.02em;margin:0 0 8px;font-size:1.4rem}.pwgate p{color:var(--muted);margin:0 0 20px;font-size:.95rem}.pwgate label{color:#0f2437;font-size:.88rem}.pwgate input[type=password]{background:#fbfcfe;border-color:#d5dee7;border-radius:11px;padding:12px 14px;transition:border-color .12s,box-shadow .12s,background .12s}.pwgate input:focus{background:#fff;border-color:#9fd0ef;outline:0;box-shadow:0 0 0 4px #0c6eb921}.pwgate .pwgate-error{color:var(--danger);background:#fdecea;border-radius:10px;margin:10px 0 0;padding:9px 12px;font-size:.88rem}.pwgate button{width:100%;min-height:48px;font:inherit;color:#fff;cursor:pointer;background:linear-gradient(#167bc9,#0c6eb9);border:0;border-radius:11px;margin-top:18px;font-weight:600;box-shadow:0 1px 2px #0c6eb959,0 8px 18px #0c6eb93d}.pwgate button:hover{background:linear-gradient(#0f6db6,#095a98)}@media (max-width:600px){.pwgate{padding-top:8vh}.pwgate-card{border-radius:18px;padding:26px 20px 22px}}
