/* TechLabs modifications to MiroTalk SFU. SPDX-License-Identifier: AGPL-3.0-only */
:root{color-scheme:light;--ink:#173d36;--muted:#647771;--green:#1c7160;--border:#dce6df;font-family:Inter,Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif;color:var(--ink);background:#f4f7f3;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;min-height:100svh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 6% 65%,#dfece5 0,transparent 52%),#f4f7f3}header,footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:28px clamp(24px,5vw,80px)}header{border-bottom:1px solid #dae4dc}a{color:inherit;text-decoration:none}.brand{display:inline-flex;align-items:center;gap:12px;font-size:22px;font-weight:650;letter-spacing:-.6px}.brand b{font-weight:450}.brand-icon{display:grid;place-items:center;width:42px;height:42px;background:#f5d672;border-radius:12px}.brand-icon svg{width:25px;height:25px}.header-note{font-size:13px;color:var(--muted)}main{width:min(1140px,100%);margin:auto;display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(32px,6vw,92px);padding:60px 32px;align-items:center}.eyebrow,.card-kicker{display:block;font-size:12px;font-weight:750;letter-spacing:2px;color:var(--green);margin:0 0 22px}h1{font-size:clamp(35px,4.2vw,57px);letter-spacing:-2px;line-height:1.22;margin:0 0 28px;font-weight:740;word-break:keep-all}.lead{font-size:17px;line-height:1.85;color:#546e63;margin:0;word-break:keep-all}.feature-line{display:flex;gap:10px;margin-top:34px;flex-wrap:wrap}.feature-line span{border:1px solid #c6d9ce;border-radius:22px;padding:8px 14px;font-size:13px}.card{background:#fff;border:1px solid var(--border);border-radius:22px;padding:38px;box-shadow:0 16px 54px #244e3d0c}.card-kicker{font-size:10px;letter-spacing:1.8px;margin-bottom:15px;color:#6b8177}h2{font-size:25px;letter-spacing:-.8px;line-height:1.45;word-break:keep-all;margin:0 0 27px}.primary,.secondary{width:100%;min-height:50px;border-radius:10px;padding:13px 18px;font:inherit;font-size:15px;font-weight:650;display:flex;align-items:center;justify-content:center;gap:18px;cursor:pointer;border:1px solid transparent}.primary{background:var(--green);color:white}.primary:hover{background:#145a4c}.secondary{border-color:#c6d8ce;background:#fff;color:var(--green)}.secondary:hover{background:#f1f7f3}button:disabled,[aria-disabled=true]{opacity:.48;pointer-events:none}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #e2bb4d;outline-offset:3px}.hint{font-size:12px;color:var(--muted);line-height:1.65;margin:12px 0 0;word-break:keep-all}.divider{display:flex;align-items:center;gap:12px;margin:28px 0;color:#7a8c82;font-size:12px}.divider:before,.divider:after{content:"";height:1px;background:var(--border);flex:1}label{display:block;font-size:13px;font-weight:600;margin:0 0 9px}input{width:100%;border:1px solid #ccdacf;border-radius:9px;padding:13px 14px;font:inherit;font-size:15px;min-height:48px;background:#fcfdfb;color:var(--ink);margin-bottom:16px}input::placeholder{color:#93a199}.back{display:inline-block;font-size:13px;color:var(--muted);margin-bottom:25px}.description{font-size:14px;color:var(--muted);line-height:1.7;margin:-12px 0 26px}.error{font-size:13px;line-height:1.6;background:#fff1ec;color:#a63520;border:1px solid #f3d6cd;border-radius:8px;padding:11px 13px;margin:0 0 16px}.error[hidden]{display:none}.room-code{font-size:14px;overflow-wrap:anywhere;background:#f3f6f3;padding:12px;border-radius:8px}.card [role=status]{font-size:14px;line-height:1.7;color:var(--muted);margin:18px 0}footer{flex-wrap:wrap;font-size:12px;color:#809188;padding-top:20px}footer a{text-decoration:underline;text-underline-offset:3px}@media(max-width:760px){header{padding:20px 22px}.header-note{display:none}main{grid-template-columns:1fr;gap:30px;padding:35px 22px}.welcome{max-width:550px}.welcome.compact{display:none}h1{font-size:36px;margin-bottom:18px}.eyebrow{margin-bottom:16px}.lead{font-size:15px}.feature-line{margin-top:20px}.card{padding:28px 24px;border-radius:17px}footer{padding:20px 22px;font-size:11px}}@media(prefers-reduced-motion:no-preference){.primary,.secondary{transition:background .15s}}
