:root{color:#f3f7ff;background:#07111f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;--newnet-blue: #000066;--newnet-blue-light: #4175fc;--newnet-green: #00a232;--surface: #101c30;--surface-raised: #15243d;--border: #2c4670;--text-muted: #afbed2;--page-background: radial-gradient(circle at 100% 0%, #163f80 0, #07111f 52%);--card-background: rgba(16, 28, 48, .94);--header-background: #071a36;--chat-background: #081426;--banner-background: #112e5c;--bubble-background: #13243d;--bubble-border: #31527f;--message-dot: #1b3964;--composer-background: #0d1b31;--control-text: #f3f7ff;--header-text: #f7faff;--attachment-background: #172944}:root[data-theme=light]{color:#171735;background:#edf4ff;--surface: #ffffff;--surface-raised: #ffffff;--border: #bdd0eb;--text-muted: #50627b;--page-background: radial-gradient(circle at 100% 0%, #d8e8ff 0, #f7fbff 52%);--card-background: rgba(255, 255, 255, .96);--header-background: #000066;--chat-background: #f4f8ff;--banner-background: #e3efff;--bubble-background: #ffffff;--bubble-border: #c3d5ee;--message-dot: #c5d9f4;--composer-background: #ffffff;--control-text: #171735;--header-text: #ffffff;--attachment-background: #f4f6ff}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--page-background)}button,input,select{font:inherit}button{cursor:pointer}.shell{width:min(100% - 32px,440px);margin:0 auto}.auth-shell{min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:36px 0}.brand-lockup{display:flex;align-items:center;gap:12px;margin-bottom:28px}.brand-lockup .theme-toggle{margin-left:auto}.brand-mark{display:block;width:48px;height:48px;border-radius:12px;background:var(--newnet-blue);object-fit:contain}.avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--newnet-blue);color:#fff;font-weight:900;font-size:24px}.eyebrow{margin:0;color:#c6c6ff;font-size:11px;font-weight:800;letter-spacing:.14em}.brand-caption{margin:3px 0 0;color:#9b9bc6;font-size:12px}h1{margin:0;font-size:clamp(28px,8vw,40px);line-height:1.08;letter-spacing:-.04em}.lede{margin:14px 0 28px;color:var(--text-muted);line-height:1.55}.welcome-lede span{display:block}.welcome-lede span+span{margin-top:10px}.card{border:1px solid var(--border);border-radius:24px;background:var(--card-background);box-shadow:0 20px 70px #0000232e}.form-stack{display:grid;gap:16px;padding:20px}label{display:grid;gap:8px;color:var(--control-text);font-size:13px;font-weight:700}input,select{width:100%;border:1px solid var(--border);border-radius:14px;background:var(--surface-raised);color:var(--control-text);outline:none;padding:14px 15px}input:focus,select:focus{border-color:var(--newnet-blue-light);box-shadow:0 0 0 3px #4175fc40}.phone-input{display:grid;grid-template-columns:minmax(136px,.85fr) 1.15fr;gap:8px}.phone-input select{min-width:0;padding-right:26px}.primary{border:0;border-radius:14px;background:var(--newnet-blue-light);color:#fff;font-weight:800;padding:14px 18px;box-shadow:0 10px 22px #00006652}.primary:hover{background:#5a88ff}.primary:disabled{opacity:.55;cursor:wait}.link-button{border:0;background:transparent;color:#bfc8ff;font-size:13px;font-weight:700;padding:12px}.link-button:hover{color:#fff}.form-stack small{color:#a0a0c5;font-size:11px;line-height:1.4}.pending-card{display:grid;gap:8px;padding:20px;color:#e2e2f4;line-height:1.5}.pending-card strong{color:#7f9cff;font-size:18px}.pending-card p{margin:0;color:var(--text-muted);font-size:13px}.microcopy{color:#9696bc;font-size:12px;text-align:center}.error{margin:0;color:#ff9c98;font-size:13px}.chat-shell{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto;width:min(100%,760px);min-height:100svh;margin:0 auto;background:var(--chat-background)}.chat-header{display:flex;align-items:center;gap:12px;padding:18px max(18px,env(safe-area-inset-left)) 14px;border-bottom:1px solid var(--border);background:var(--header-background);color:var(--header-text)}.chat-header .avatar{flex:0 0 42px;width:42px;height:42px;border-radius:14px;font-size:18px}.chat-header .brand-avatar{background:transparent;box-shadow:none;object-fit:contain}.header-actions{position:relative;display:flex;align-items:center;margin-left:auto}.header-actions .icon-button{margin-left:0}.account-menu{position:absolute;z-index:2;top:calc(100% + 8px);right:0;min-width:172px;padding:6px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 14px 32px #00001438}.account-menu button{width:100%;border:0;border-radius:8px;background:transparent;color:var(--control-text);padding:10px 12px;text-align:left}.account-menu button:hover{background:#29295c}.chat-header h1{font-size:18px;letter-spacing:-.02em}.status,.typing-status{margin:4px 0 0;color:#a4a4cb;font-size:12px}.onboarding-banner{padding:8px 16px;border-bottom:1px solid var(--border);background:var(--banner-background);color:var(--control-text);font-size:12px;line-height:1.4}.icon-button{margin-left:auto;border:0;background:transparent;color:#c4c4e4;font-size:26px}.message-list{display:flex;flex-direction:column;gap:10px;min-height:0;overflow-y:auto;padding:24px 16px;background-image:radial-gradient(var(--message-dot) 1px,transparent 1px);background-size:20px 20px}.bubble{max-width:min(82%,520px);padding:11px 13px 8px;border:1px solid var(--bubble-border);border-radius:17px 17px 17px 5px;background:var(--bubble-background);box-shadow:0 5px 16px #00002029}.bubble.mine{align-self:flex-end;border-color:#315fbe;border-radius:17px 17px 5px;background:#093a92}.bubble.pending{opacity:.68;border-style:dashed}.bubble p{margin:0;line-height:1.42;white-space:pre-wrap;overflow-wrap:anywhere}.bubble time{display:block;margin-top:6px;color:var(--text-muted);font-size:10px;text-align:right}.empty-state{margin:auto;max-width:300px;color:#b3b3d1;text-align:center}.empty-state span{color:#829cff;font-size:28px}.empty-state h2{margin:10px 0 5px;color:var(--control-text);font-size:20px}.empty-state p{margin:0;line-height:1.5}.typing-status{min-height:18px;padding:0 18px;color:#aebeff}.composer{display:grid;gap:8px;padding:10px 14px max(14px,env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--composer-background)}.composer-row{display:flex;align-items:center;gap:8px}.composer input{min-width:0;border-radius:22px;padding:11px 15px}.attachment-control{position:relative;display:grid}.composer-action{display:grid;flex:0 0 42px;place-items:center;width:42px;height:42px;padding:0;border:1px solid transparent;border-radius:50%;background:var(--attachment-background);color:var(--newnet-blue-light)}.composer-action svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.composer-action:hover{border-color:var(--border);background:var(--surface-raised)}.composer-action:focus-visible,.attachment-menu button:focus-visible,.composer-text-button:focus-visible,.composer-primary-button:focus-visible{outline:3px solid rgba(65,117,252,.55);outline-offset:2px}.attachment-menu{position:fixed;z-index:8;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 6px;padding:14px max(16px,env(safe-area-inset-left)) calc(16px + env(safe-area-inset-bottom));border:0;border-radius:22px 22px 0 0;background:var(--surface);box-shadow:0 -12px 36px #01091847}.attachment-menu:before{grid-column:1 / -1;width:38px;height:4px;margin:0 auto 1px;border-radius:99px;background:var(--border);content:""}.attachment-menu button{display:grid;place-items:center;gap:6px;min-height:74px;border:0;border-radius:14px;background:transparent;color:var(--control-text);padding:4px 2px;text-align:center;font-size:11px;font-weight:700}.attachment-menu button span{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#4175fc24;color:var(--newnet-blue-light);font-size:20px}.attachment-menu button span svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.attachment-menu button:nth-of-type(2) span{background:#00a23224;color:#1ba85a}.attachment-menu button:nth-of-type(3) span{background:#b15bff24;color:#9963df}.attachment-menu button:nth-of-type(4) span{background:#efa03026;color:#d68a18}.attachment-menu button:hover{background:var(--attachment-background)}.send{display:grid;flex:0 0 42px;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:var(--newnet-blue-light);color:#fff;box-shadow:0 8px 18px #0020664d;transition:background .16s ease,box-shadow .16s ease,transform .16s ease}.send svg{width:21px;height:21px;fill:currentColor;transform:translate(1px,-1px)}.send:hover:not(:disabled){background:#5a88ff;box-shadow:0 10px 22px #0000667a;transform:translateY(-1px)}.send:focus-visible{outline:3px solid rgba(127,156,255,.72);outline-offset:3px}.send:disabled{background:#30305a;color:#8c8cb3;box-shadow:none;cursor:not-allowed}.attachment-preview{display:flex;align-items:center;gap:9px;padding:8px;border:1px solid var(--border);border-radius:16px;background:var(--surface-raised)}.voice-recorder{display:grid;gap:11px;padding:10px 4px 2px}.voice-recorder-meter{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:44px;padding:0 9px;border-radius:22px;background:var(--surface-raised)}.voice-recorder-meter time{color:var(--control-text);font-size:17px;font-variant-numeric:tabular-nums;font-weight:800}.voice-recorder-status{color:var(--text-muted);font-size:10px;white-space:nowrap}.recording-wave{display:flex;flex:1;align-items:center;justify-content:center;gap:2px;height:38px;overflow:hidden}.recording-wave i{display:block;width:3px;height:var(--bar);border-radius:99px;background:var(--newnet-blue-light);animation:waveform 1.15s ease-in-out infinite alternate;animation-delay:calc(var(--bar) * -12ms)}.voice-recorder-controls{display:grid;grid-template-columns:48px minmax(0,1fr) 56px;gap:10px;align-items:center}.recording-discard,.recording-pause,.recording-send{border:0;font-weight:800}.recording-discard{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#ef4a631f;color:#ef4a63;font-size:23px}.recording-pause{min-height:48px;border-radius:99px;background:var(--attachment-background);color:var(--control-text);font-size:15px}.recording-send{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--newnet-green);color:#fff;font-size:27px;box-shadow:0 6px 18px #00a23247}.composer-text-button,.composer-primary-button{border:0;border-radius:10px;padding:9px 11px;font-size:12px;font-weight:800}.composer-text-button{background:transparent;color:var(--text-muted)}.composer-text-button:hover{background:var(--attachment-background);color:var(--control-text)}.composer-primary-button{background:var(--newnet-blue-light);color:#fff}.attachment-preview{align-items:stretch}.attachment-preview-media{display:grid;flex:0 0 58px;place-items:center;width:58px;height:58px;overflow:hidden;border-radius:11px;background:var(--attachment-background)}.attachment-preview-media img,.attachment-preview-media video{width:100%;height:100%;object-fit:cover}.attachment-preview-media audio{width:148px;max-width:42vw}.attachment-preview-icon{color:var(--newnet-blue-light);font-size:25px}.attachment-preview-copy{display:grid;min-width:0;align-content:center;flex:1;gap:3px}.attachment-preview-copy strong{color:var(--control-text);font-size:12px}.attachment-preview-copy span{overflow:hidden;color:var(--text-muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.attachment-preview-audio{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.attachment-preview-audio .voice-player{grid-column:1 / -1;margin:0}.attachment-preview-actions{display:flex;grid-column:1 / -1;justify-content:flex-end;gap:6px}.attachment-card{display:grid;grid-template-columns:28px minmax(0,1fr);gap:2px 8px;width:100%;margin-top:4px;border:1px solid var(--border);border-radius:12px;background:var(--attachment-background);color:inherit;padding:9px;text-align:left}.attachment-card span{grid-row:span 2;align-self:center;color:var(--newnet-blue-light);font-size:20px}.attachment-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.attachment-card small{color:var(--text-muted);font-size:10px}.attachment-audio-card{grid-template-columns:40px minmax(0,1fr);gap:5px 9px;min-height:56px;padding:8px 10px}.attachment-audio-card .voice-play{display:grid;grid-row:span 2;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--newnet-blue-light);color:#fff;font-size:13px}.attachment-audio-card .voice-wave{display:flex;grid-row:1;align-items:center;gap:2px;height:25px;overflow:hidden;color:var(--newnet-blue-light)}.attachment-audio-card .voice-wave i{display:block;flex:0 0 2px;height:var(--voice-bar);border-radius:99px;background:currentColor}.attachment-audio-card small{grid-column:2;color:var(--text-muted)}.voice-player{display:grid;grid-template-columns:36px minmax(82px,1fr) 34px;align-items:center;gap:8px;width:100%;min-width:0;margin-top:4px;padding:9px 10px;border:1px solid var(--border);border-radius:14px;background:var(--attachment-background)}.voice-player audio{display:none}.voice-player-toggle{display:grid;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:var(--newnet-blue-light);color:#fff;font-size:13px;line-height:1}.voice-player-track{position:relative;display:grid;align-items:center;width:100%;height:30px;padding:0;border:0;border-radius:99px;background:transparent;overflow:hidden;cursor:pointer}.voice-player-wave{display:flex;align-items:center;gap:2px;width:100%;height:30px;color:color-mix(in srgb,var(--newnet-blue-light) 56%,var(--text-muted))}.voice-player-wave i{display:block;flex:1 1 0;min-width:2px;max-width:3px;height:var(--voice-bar);border-radius:99px;background:currentColor}.voice-player-progress{position:absolute;inset:0 auto 0 0;display:block;width:0;background:color-mix(in srgb,var(--newnet-blue-light) 18%,transparent);border-radius:inherit;pointer-events:none;transition:width .08s linear}.voice-player time{color:var(--text-muted);font-size:11px;font-variant-numeric:tabular-nums;text-align:right}.voice-player-toggle:focus-visible,.voice-player-track:focus-visible{outline:3px solid rgba(65,117,252,.55);outline-offset:2px}.bubble.mine .voice-player{border-color:#ffffff52;background:#00114a52}.bubble.mine .voice-player-toggle{background:#fff;color:var(--newnet-blue)}.bubble.mine .voice-player-wave{color:#ffffffb8}.bubble.mine .voice-player-progress{background:#ffffff2e}.bubble.mine .voice-player time{color:#ffffffd1}.attachment-image{display:block;max-width:100%;max-height:260px;margin-top:5px;border-radius:12px}.attachment-video{display:block;width:100%;max-height:320px;margin-top:5px;border-radius:12px;background:#000}@keyframes recording-pulse{50%{transform:scale(.92)}}@keyframes waveform{0%{transform:scaleY(.58);opacity:.58}to{transform:scaleY(1);opacity:1}}@media(min-width:700px){.chat-shell{margin:24px auto;min-height:calc(100svh - 48px);border:1px solid #29295c;border-radius:26px;overflow:hidden}}@media(max-width:390px){.phone-input{grid-template-columns:1fr}.composer{padding-inline:10px}.attachment-preview{flex-wrap:wrap}.attachment-preview-copy{flex-basis:calc(100% - 68px)}.attachment-preview .composer-text-button,.attachment-preview .composer-primary-button{flex:1}}
