*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:#f7f8fb;background:#05070a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button{font:inherit}.home-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100vh;padding:24px;display:flex}.eyebrow{color:#83d7ff;letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.85rem;font-weight:800}.home-screen h1{margin:0;font-size:clamp(1.8rem,4vw,3rem)}.video-preview{aspect-ratio:16/9;background:#101318;border:1px solid #29333f;border-radius:12px;width:100%;max-width:480px;overflow:hidden}.video-preview img{object-fit:cover;width:100%;height:100%;display:block}.qr-card{background:#101318;border:1px solid #29333f;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:20px;display:flex}.qr-card img{background:#fff;border-radius:8px;width:200px;height:200px;display:block}.qr-placeholder{background:#1a2028;border-radius:8px;width:200px;height:200px}.status-line{color:#b8c1cc;text-align:center;max-width:280px;margin:0;font-size:.95rem}.status-line.connected{color:#00f5a0;font-weight:800}.primary-btn{color:#07100d;cursor:pointer;background:#00f5a0;border:0;border-radius:8px;min-height:56px;padding:0 32px;font-size:1.1rem;font-weight:900}.primary-btn:disabled{cursor:not-allowed;opacity:.5}.game-screen{background:#000;width:100vw;height:100vh;position:relative;overflow:hidden}.camera-view{object-fit:cover;background:#111;width:100%;height:100%;position:absolute;inset:0;transform:scaleX(-1)}.youtube-corner{z-index:10;background:#111;border-bottom:3px solid #00f5a0;border-right:3px solid #00f5a0;width:50vw;height:50vh;position:absolute;top:0;left:0;overflow:hidden;box-shadow:4px 4px 24px #0009}.youtube-corner iframe{border:0;width:100%;height:100%;display:block}.back-btn{color:#f7f8fb;cursor:pointer;z-index:20;background:#0a0d12b8;border:1px solid #2a3440;border-radius:8px;min-height:44px;padding:0 16px;position:absolute;bottom:16px;right:16px}.debug-badge{color:#fff;z-index:20;background:#ff4b6eeb;border-radius:8px;padding:8px 14px;font-size:.85rem;font-weight:800;position:absolute;top:16px;left:16px}.sender-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;padding:24px;display:flex}.sender-preview-wrap{justify-content:center;width:100%;margin:4px 0;display:flex}.sender-preview{aspect-ratio:4/3;object-fit:cover;background:#111;border-radius:12px;width:100%;max-width:320px;transform:scaleX(-1)}.contact-form-container{width:100%}.contact-form{gap:16px;display:grid}.contact-form-field{gap:6px;display:grid}.contact-form-label{color:#536d8f;letter-spacing:.03em;text-transform:uppercase;font-size:.78rem;font-weight:800}.contact-form-input,.contact-form-textarea{color:#0f1f2d;width:100%;font:inherit;background:#f6f9fa;border:1px solid #7b899747;border-radius:10px;padding:12px 14px;font-size:.95rem;transition:border-color .15s,background .15s,box-shadow .15s}.contact-form-input::placeholder,.contact-form-textarea::placeholder{color:#9aa8b3}.contact-form-input:focus,.contact-form-textarea:focus{background:#fff;border-color:#00a49a;outline:none;box-shadow:0 0 0 3px #00a49a26}.contact-form-input--warning{border-color:#db7b2b}.contact-form-textarea{resize:vertical;min-height:100px;line-height:1.5}.contact-form-warning{color:#db7b2b;margin:0;font-size:.82rem;font-weight:700}.contact-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:4px;display:flex}.contact-form-submit,.contact-form-cancel{min-height:42px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:10px;padding:0 20px;font-size:.9rem;font-weight:800;transition:transform .12s,box-shadow .15s,border-color .15s,color .15s}.contact-form-submit{color:#fff;background:linear-gradient(135deg,#00a49a,#76d2ca);box-shadow:0 8px 20px #00a49a47}.contact-form-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 24px #00a49a5c}.contact-form-cancel{color:#536d8f;background:0 0;border-color:#7b899747}.contact-form-cancel:hover:not(:disabled){color:#0f1f2d;border-color:#536d8f}.contact-form-submit:disabled,.contact-form-cancel:disabled{opacity:.55;cursor:not-allowed;transform:none}.contact-form-success,.contact-form-error{border-radius:8px;margin:0;padding:10px 12px;font-size:.86rem;font-weight:750}.contact-form-success{color:#0a7a5f;background:#0a7a5f17}.contact-form-error{color:#c0392b;background:#c0392b17}
