/* Kotoba / midnight console theme. All assets and effects are served locally. */
:root{--paper:#050816;--white:#f6f8ff;--ink:#edf3ff;--muted:#9caecb;--line:#233452;--forest:#1262ff;--forest-2:#0750db;--lime:#91edff;--mint:#122548;--error:#ff9baf;--shadow:0 28px 100px #0006;color-scheme:dark;background:#050816;color:var(--ink);font-family:Inter,"Aptos","Segoe UI",Arial,"Noto Sans JP",sans-serif}
html{scroll-behavior:smooth;scroll-padding-top:28px}body{background:radial-gradient(ellipse at 12% 25%,#06319638,transparent 48%),radial-gradient(ellipse at 100% 58%,#132e672b,transparent 55%),#050816;isolation:isolate}body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#28446c13 1px,transparent 1px),linear-gradient(90deg,#28446c13 1px,transparent 1px);background-size:76px 76px;mask-image:linear-gradient(#000,transparent 85%)}
#connection-field{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1;opacity:.85}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#85dbff;outline-offset:4px}
input,textarea,select{background:#0a1328;border-color:#2a3c5b;color:#f1f5ff;border-radius:7px;min-height:44px}input::placeholder,textarea::placeholder{color:#8395b2}input:focus,textarea:focus,select:focus{border-color:#6aa8ff;box-shadow:0 0 0 3px #3588ff26}label{color:#d9e4f9}label span{color:#9aabc6}select option{background:#0c152b}
.button{border-radius:7px;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}.button:hover:not(:disabled){transform:translateY(-2px)}.primary{color:white;background:linear-gradient(120deg,#0760f8,#247eff);border:1px solid #72acff88;box-shadow:0 5px 24px #006aff30}.primary:hover:not(:disabled){background:linear-gradient(120deg,#237dff,#4b99ff);box-shadow:0 6px 32px #117aff66}.subtle{background:#101c34;border-color:#314768;color:#e6eeff}.subtle:hover{background:#193357}.text-button{color:#9ecaff}.dot{background:#69d8ff;box-shadow:0 0 13px #41b9ff88}.dot.offline{background:#f4bf79;box-shadow:none}.brand{color:white;font-weight:600;letter-spacing:-1.1px}.brand-mark{background:linear-gradient(140deg,#2b8dff,#0047db);color:white;border-radius:12px;box-shadow:0 0 30px #0077ff3a;font-family:inherit;font-weight:350}.brand-sub{color:#8fbaec;letter-spacing:4px}.small-tag{color:#b6c9e6}.small-tag span{color:#83d3ff}
.lobby{max-width:1600px;margin:0 auto;padding:30px 5.3% 22px}.landing-header{padding-bottom:24px;border-bottom:1px solid #28416a80;gap:20px}.header-center{display:flex;align-items:center;gap:24px;font-size:10px;letter-spacing:2px;color:#8c9fbc}.header-center span:first-child{color:#fff}.header-actions-lobby{display:flex;align-items:center;gap:22px}.motion-toggle{background:#0e1930;border:1px solid #314663;border-radius:30px;color:#bad1ef;padding:9px 12px;min-height:38px;font-size:10px;white-space:nowrap}.motion-toggle:hover{background:#172d4c}.motion-toggle[aria-pressed=true]{color:#76d9ff;border-color:#489ace}
.lobby-grid{max-width:1280px;grid-template-columns:minmax(0,1.25fr) minmax(360px,1fr);gap:8%;align-items:center;padding:66px 0 70px}.intro{min-width:0;align-self:center;position:relative}.intro .eyebrow{color:#75bdff;letter-spacing:2.2px;font-size:9px}.intro h1{font-size:clamp(50px,5.1vw,78px);font-weight:500;letter-spacing:-3.7px;line-height:1.01;margin:27px 0}.intro h1 em{display:inline-block;font-style:normal;font-family:inherit;font-weight:400;color:#92dbff;background:linear-gradient(105deg,#e5f6ff 10%,#65b3ff 60%,#4c77ff);background-clip:text;-webkit-text-fill-color:transparent}.intro-copy{color:#a7bad6;line-height:1.8;font-size:14px;max-width:390px}.hero-link{display:inline-flex;gap:20px;align-items:center;font-size:11px;letter-spacing:.3px;margin:26px 0 2px;color:#dcecff}.hero-link span{display:grid;place-items:center;border:1px solid #4f95ff80;border-radius:50%;width:32px;height:32px;background:#0e2c58;transition:transform .2s}.hero-link:hover span{transform:translateY(4px)}
.signal-stage{height:190px;margin:12px 0 16px;position:relative;width:100%;max-width:500px;display:flex;align-items:center;justify-content:space-between;padding:0 30px}.signal-stage svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.signal-node{position:relative;z-index:1;width:78px;height:78px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(circle at 40% 30%,#194983,#06142d 80%);border:1px solid #78bcff88;box-shadow:0 0 0 7px #4e9bff06,0 0 0 8px #477bc622,0 0 46px #167aff38;color:#f7fbff;font-size:25px;font-weight:300}.signal-node small{font-size:7px;letter-spacing:2px;color:#86bded;margin-top:6px}.signal-node.japanese{border-color:#b2b9ff80;background:radial-gradient(circle at 40% 30%,#2e397d,#10162f 80%)}.signal-core{z-index:1;font-size:24px;font-weight:200;color:#82ceff;text-shadow:0 0 20px #168bff}.signal-caption{position:absolute;bottom:3px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:2px;color:#839cbd}.signal-path{stroke-dasharray:5 9;animation:signal-travel 16s linear infinite}.signal-orbit{transform-origin:250px 90px;animation:orbit-drift 18s ease-in-out infinite alternate}
.sample-conversation{margin-top:26px;max-width:460px}.sample-line{background:#0a172bce;border-color:#274367;padding:14px 17px;border-radius:10px;color:#dde9fa;font-size:13px;box-shadow:none}.sample-line small{color:#8cadd3;font-size:7px;letter-spacing:1.3px;margin-top:7px}.sample-line.translated{background:#0c2442bc;border-color:#31629a;margin-left:26px}.mini-avatar{background:#13365e;color:#9bd9ff;border:1px solid #41659a;border-radius:9px}.bridge-dots{color:#6db9ff;font-size:17px;margin:6px 0 6px 31px}.bridge-dots span{color:#88a6c9;font-size:9px}.feature-row{color:#94afd0;gap:18px;font-size:9px;margin-top:24px}.feature-row span:before{color:#73c8ff}.provider-story{border-color:#2c4565;margin-top:26px;padding-top:20px}.provider-story strong{color:#edf5ff;font-size:16px;font-weight:500}.provider-story p{color:#93a9c7;font-size:12px}.provider-path{color:#b2d8ff;letter-spacing:1px;font-size:9px;gap:15px}.provider-path span{background:#112745a6;border-color:#2a4b77;border-radius:5px;padding:9px 12px}
.join-card{max-width:470px;width:100%;justify-self:end;background:linear-gradient(145deg,#111d35ed,#090f21f5);border:1px solid #3a537b;border-radius:16px;padding:30px 30px 25px;box-shadow:0 30px 100px #0007,0 0 55px #0c56bb12;position:relative;scroll-margin-top:25px}.join-card::before{content:"";position:absolute;top:-1px;left:28px;right:28px;height:2px;background:linear-gradient(90deg,transparent,#2c8fff,#a0dfff,transparent);box-shadow:0 0 22px #268cff}.join-card .eyebrow{color:#83bfff;letter-spacing:2px;font-size:8px}.join-card h2{color:#f1f6ff;font-size:29px;font-weight:450;margin-top:14px}.join-card>p{color:#a4b5d1}.join-card label{margin-top:18px}.join-card label span{font-size:10px}.join-card .card-footnote{color:#95a5be;line-height:1.8}.join-card>.text-button{color:#92bff4;font-size:11px}.setup-status{color:#adc5e7;border-color:#2b3c58;line-height:1.5}.key-help{color:#a4b5d1}.key-consent{color:#bac8df!important;font-size:11px!important}.check-label input{accent-color:#2583ff}.check-label{color:#c4d3e9}.join-card .button{margin-top:16px;font-size:12px}.landing-footer{border-top:1px solid #243b5d;padding-top:22px;color:#7f96b8;font-size:9px}
.bridge-journey{position:relative;padding:50px 0 70px;max-width:1280px;width:100%;margin:0 auto;isolation:isolate}.journey-head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:44px}.journey-head .eyebrow{color:#70b9ff;font-size:8px}.journey-head h2{font-size:30px;font-weight:400;letter-spacing:-1px;line-height:1.2;margin-top:14px}.journey-head>p{color:#91a8c9;font-size:12px;max-width:290px;line-height:1.7}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.journey-card{position:relative;background:linear-gradient(130deg,#101e35db,#091226dc);border:1px solid #2b4161;border-radius:10px;padding:24px;min-height:162px}.journey-card>span{display:block;font-size:10px;letter-spacing:2px;color:#76baff;margin-bottom:27px}.journey-card h3{font-size:16px;font-weight:500;color:#ebf4ff;margin-bottom:10px}.journey-card p{font-size:11px;line-height:1.8;color:#9bb1d0;max-width:270px}.journey-wire{position:absolute;z-index:-1;left:0;right:0;top:126px;width:100%;height:210px;overflow:visible;pointer-events:none}.journey-wire .wire-progress{stroke-dasharray:100;stroke-dashoffset:100;filter:drop-shadow(0 0 5px #329aff);transition:stroke-dashoffset .12s linear}
/* Conversation, consent and every status surface retain the same dark palette. */
.workspace{position:relative;z-index:1}.sidebar{background:linear-gradient(170deg,#0d1a35,#080f21);border-right:1px solid #293e60;color:#edf3ff}.light .brand-mark{background:linear-gradient(140deg,#2b8dff,#0047db);color:white}.light .brand-sub{color:#88a9d2}.side-heading,.side-heading>span{color:#87a6cf}.participant small,.side-note{color:#93acd0}.avatar{background:#1757b5;color:#e4f3ff}.participant.other .avatar{background:#2d3671;color:#dce5ff}.participant .presence-dot{background:#73d6ff;box-shadow:0 0 9px #48a2ff}.settings-form label,.settings-form label span{color:#b4c7e3}.settings-form input,.settings-form textarea,.settings-form select{background:#0d203b;border-color:#2d476d;color:#e9f2ff}.settings-form textarea::placeholder{color:#879fbe}.outline-light{border-color:#426495;color:#c1dbff;background:#102744}.outline-light:hover{background:#1b3c64}.display-options .check-label{color:#bdd0ea}.privacy-card{background:#112442;border-color:#2d4b75}.privacy-icon{color:#82ccff}.privacy-card p{color:#98b4d9}.light-text{color:#9fbce3}.conversation{background:radial-gradient(ellipse at top right,#123c7828,transparent 60%),#080e1d}.room-header{background:#0b1428;border-color:#293c58}.room-header .eyebrow{color:#7dafed}.room-meta{color:#a5bada}.divider{color:#577292}.banner{background:#34291b;color:#f3cf95;border-color:#775d35}.demo-badge{background:#15366b;color:#a3d2ff!important;border:1px solid #315f98}.messages{scrollbar-color:#355276 transparent}.empty-state{color:#96abcd}.empty-symbol{background:#14294d;border-color:#385b91;color:#8dcaff}.empty-state h3{color:#c9ddf7}.empty-tags{color:#9ab9df}.empty-tags span:first-child,.empty-tags span:last-child{background:#11233e}.message-meta{color:#9ab2d1}.message-meta b{color:#bedcff}.message-meta time{color:#8fa4c2}.message-bubble{background:#111e35;border-color:#2b4061;box-shadow:none}.mine .message-bubble{background:linear-gradient(145deg,#15305b,#102647);border-color:#355986}.secondary-text{border-color:#315276;color:#a7bddb}.message:not(.mine) .secondary-text{border-color:#2b3f5d}.text-label{color:#83b8ef}.reading{color:#acc3e7}.translation-note{color:#e3c28e}.message-status,.pending-text{color:#8facd5}.message-error{color:#ffacb8}.composer-wrap{background:#080e1d}.composer{background:#101c32;border-color:#314969;box-shadow:0 4px 25px #0002}.composer textarea::placeholder{color:#93a9c7}#composer-language{color:#9fc8fa}#composer-language span,.composer-note{color:#90a7c5}.call-panel{background:linear-gradient(120deg,#112b53,#101c36);border-color:#3a6199}.call-top .eyebrow{color:#a0ccff}.call-top p{color:#9ab5dc}.waveform i{background:#6ec5ff;box-shadow:0 0 12px #0f8cff77}.call-bottom{border-color:#355278}.call-metrics{color:#adc8ea}.danger{background:#422238;border-color:#80425a;color:#ffb8c6}.danger:hover{background:#593049}.consent-dialog{background:#0e1930;border-color:#466591;color:#eef5ff;box-shadow:0 35px 150px #000a}.consent-dialog::backdrop{background:#020817ca}.consent-dialog .eyebrow{color:#89bdff}.consent-dialog p{color:#a8bedd}.consent-flow{background:#152d51;color:#c3e0ff;border:1px solid #335684}.consent-flow b{color:#73baff}.toast{background:#122c50;color:#eaf4ff;border-color:#416b9e;box-shadow:0 8px 35px #0007}
@keyframes signal-travel{to{stroke-dashoffset:-160}}@keyframes orbit-drift{to{transform:rotate(9deg) scale(.94)}}
body.motion-paused .signal-path,body.motion-paused .signal-orbit{animation-play-state:paused}body.motion-paused .journey-wire .wire-progress{transition:none}
@media(min-width:1550px){.lobby-grid{padding-top:82px;padding-bottom:82px}.intro h1{font-size:82px}}
@media(max-width:1100px){.lobby-grid{gap:5%;padding-top:45px}.intro h1{font-size:57px;letter-spacing:-2.8px}.header-center{gap:14px;font-size:8px}.header-actions-lobby{gap:12px}.join-card{padding:26px 23px}.signal-stage{padding:0 18px}.signal-node{width:66px;height:66px}.provider-path{gap:8px;font-size:8px}.journey-card{padding:20px}}
@media(max-width:760px){.lobby{padding:23px 6%}.landing-header{padding-bottom:20px}.header-center,.header-actions-lobby .small-tag{display:none}.header-actions-lobby{gap:0}.motion-toggle{font-size:9px;padding:8px 10px}.lobby-grid{grid-template-columns:1fr;max-width:500px;padding:42px 0 22px;gap:36px}.intro h1{font-size:clamp(43px,11vw,65px);line-height:1.03;letter-spacing:-2.6px}.intro-copy{font-size:13px}.signal-stage{height:165px;margin-top:20px;padding:0 36px}.signal-node{width:68px;height:68px}.intro .eyebrow{font-size:8px;letter-spacing:1.6px}.sample-conversation{display:none}.feature-row{font-size:9px;gap:14px}.provider-story{margin-top:22px}.provider-story p{font-size:12px}.provider-path{font-size:9px}.join-card{max-width:none;padding:28px 23px}.bridge-journey{max-width:500px;padding-top:36px;padding-bottom:42px}.journey-head{display:block;margin-bottom:26px}.journey-head h2{font-size:28px}.journey-head>p{margin-top:14px;max-width:none}.journey-grid{grid-template-columns:1fr;gap:18px;padding-left:18px}.journey-card{min-height:0;padding:20px}.journey-card>span{margin-bottom:14px}.journey-wire{left:-4px;top:178px;width:46px;height:530px}.journey-card p{max-width:none}.landing-footer{font-size:8px;line-height:1.7;align-items:flex-start;gap:22px}.workspace.settings-open .sidebar{background:#0a152b;box-shadow:30px 0 90px #0009}.workspace.settings-open #mobile-settings{background:#173766;color:#d4eaff}.room-header{background:#0b1428}.button:hover:not(:disabled){transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.signal-path,.signal-orbit{animation:none}.journey-wire .wire-progress{transition:none;stroke-dashoffset:0}#connection-field{opacity:.5}}
