:root{color-scheme:dark;--bg:#030914;--bg2:#060e1c;--panel:#0b1529;--panel2:#0f1d33;--line:#31558c;--text:#f8fbff;--muted:#b5c7e5;--gold:#ffd24a;--gold2:#ffbe00;--blue:#4a8fff;--blue2:#2070e0;--green:#4df5aa;--red:#ff6868}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -20%,#16335f 0,var(--bg2) 38%,var(--bg) 76%);color:var(--text);font-family:Inter,"Segoe UI",Arial,sans-serif}
body:before,.stars{position:fixed;inset:0;pointer-events:none;content:"";opacity:.32;background-image:radial-gradient(#fff 1px,transparent 1px),radial-gradient(#4a8fff 1px,transparent 1px);background-size:61px 61px,97px 97px;background-position:0 0,30px 20px}
.shell{position:relative;width:min(980px,100%);height:100vh;margin:auto;display:grid;grid-template-rows:auto 1fr auto auto auto;padding:22px}
header{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid var(--blue);padding:10px 4px 18px}.eyebrow{color:#5cb8ff;font:700 12px ui-monospace,monospace;letter-spacing:.18em;margin:0 0 5px}h1{font:800 clamp(24px,4vw,36px) Georgia,"Times New Roman",serif;letter-spacing:.12em;margin:0;color:var(--gold);text-shadow:0 0 25px #ffbe0030}h1 span{font-family:serif}.channel-brand{display:inline-block;margin-bottom:8px;color:var(--text);font-weight:900;letter-spacing:.12em;text-decoration:none}.channel-brand b{color:var(--gold)}.header-actions{display:flex;gap:12px;align-items:center}.online{border:1px solid var(--green);border-radius:999px;padding:8px 12px;color:var(--green);font:700 12px ui-monospace,monospace}.online i{display:inline-block;width:8px;height:8px;background:var(--green);border-radius:50%;box-shadow:0 0 12px var(--green);margin-right:7px}
button{border:1px solid #69a7ff;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--blue2));color:#fff;padding:12px 18px;font-weight:800;cursor:pointer;box-shadow:0 8px 24px #2070e033}button:hover{filter:brightness(1.15)}.ghost,.text-button{background:transparent;color:var(--muted);padding:8px 10px;box-shadow:none}.messages{overflow:auto;padding:22px 2px;scrollbar-color:var(--line) transparent}.message{display:flex;gap:12px;max-width:82%;margin:0 0 18px}.message.user{margin-left:auto;flex-direction:row-reverse}.message>div:last-child{background:#0b1529eb;border:1px solid var(--line);border-radius:4px 16px 16px 16px;padding:12px 15px;box-shadow:0 12px 30px #0006}.message.user>div:last-child{background:#102d53;border-color:var(--blue);border-radius:16px 4px 16px 16px}.message p{white-space:pre-wrap;line-height:1.55;margin:5px 0 0}.avatar{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--gold),var(--gold2));color:#111;font-weight:900}.user .avatar{background:var(--blue)}
.status{min-height:24px;color:var(--muted);font-size:13px;padding:0 4px 7px}.composer{display:grid;grid-template-columns:auto 1fr auto;gap:10px;background:var(--panel2);border:1px solid var(--line);border-radius:16px;padding:10px}.composer textarea{resize:none;max-height:150px;border:0;outline:0;background:transparent;color:var(--text);font:16px/1.4 inherit;padding:10px}.composer textarea::placeholder{color:#91a4c7}.mic{font-size:22px;padding:9px 13px;background:transparent}.mic.listening{background:var(--red);border-color:#ffb0b0;animation:pulse 1s infinite}.voice-row{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:13px;padding-top:8px}.voice-setting{display:flex;align-items:center;gap:7px}.voice-setting select{max-width:260px;background:var(--panel2);border:1px solid var(--line);border-radius:7px;color:var(--text);padding:7px}.voice-setting input[type=range]{width:90px;accent-color:var(--gold)}
.login-page{display:grid;place-items:center;padding:86px 20px 30px;position:relative;background:#030914}.login-page:before{opacity:1;background:linear-gradient(90deg,#03091418 0,#03091408 48%,#03091455 100%),url("login-background.png") center/cover no-repeat}.login-page:after{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,#02071124,#02071166)}.talon-brand{position:absolute;z-index:2;top:20px;left:clamp(20px,5vw,70px);display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-weight:900;letter-spacing:.14em;text-shadow:0 2px 8px #000}.talon-brand b{color:var(--gold)}.brand-mark{display:grid;place-items:center;width:46px;height:34px;border:1px solid var(--gold);border-radius:4px;color:var(--gold);font-family:Georgia,serif}.login-card{position:relative;z-index:1;width:min(520px,100%);text-align:center;background:linear-gradient(145deg,#0f1d33e8,#071225ed);border:1px solid #6ca1e8;border-top:4px solid var(--gold);border-radius:22px;padding:42px;box-shadow:0 30px 90px #000d,0 0 55px #2070e040;backdrop-filter:blur(9px)}.sigil{font-size:48px;color:var(--gold);text-shadow:0 0 25px #ffbe0080}.muted{color:var(--muted);font-size:17px}.login-form{text-align:left;display:grid;gap:10px;margin-top:28px}.login-form input{background:#142541;color:var(--text);border:1px solid #5277ae;border-radius:9px;padding:14px;font-size:16px;outline:none}.login-form input:focus{border-color:var(--gold);box-shadow:0 0 0 3px #ffd24a20}.error{color:var(--red);margin:0}.login-form button{margin-top:8px;background:linear-gradient(135deg,var(--gold),var(--gold2));border-color:#ffe383;color:#101827}.return-link{display:inline-block;margin-top:24px;color:#a9d1ff;text-decoration:none;font-weight:700}.return-link:hover,.channel-brand:hover{color:var(--gold)}
@keyframes pulse{50%{box-shadow:0 0 0 8px #ff747433}}@media(max-width:600px){.shell{padding:12px}.header-actions .ghost{display:none}.message{max-width:94%}.online{padding:7px 9px}.composer{grid-template-columns:auto 1fr}.composer #send{grid-column:1/-1}.voice-row{justify-content:space-between}.login-card{padding:30px 22px}.talon-brand{left:20px}}

/* Minimal Aniken chat */
.chat-page{--white:#fff;--paper:#f7f8fa;--ink:#252936;--soft:#687184;--hair:#dfe3e8;--accent:#276dcc;min-height:100vh;background:var(--white);color:var(--ink)}
.approval-card{max-width:780px;margin:0 auto 24px;padding:18px;border:1px solid #e4bd48;border-radius:16px;background:#fff9e7;color:#34302a}.approval-card p{margin:8px 0 14px;white-space:pre-wrap}.approval-card button{padding:9px 14px;border-radius:9px;box-shadow:none}.approve-button{background:#276dcc;border-color:#276dcc;margin-right:8px}.cancel-button{background:#fff;color:#596174;border-color:#cfd5dd}
.chat-page:before{display:none}.topbar{height:68px;padding:0 28px;border:0;display:flex;align-items:center;justify-content:space-between;background:#fffffff2;box-shadow:0 1px 0 #eceef1;position:fixed;z-index:10;inset:0 0 auto}.wordmark{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:850;letter-spacing:.08em}.wordmark-star{color:#d7a814;font-size:25px}.top-actions{display:flex;align-items:center;gap:10px}.top-actions .online{color:#198754;border-color:#a9ddbf;background:#effbf4}.top-actions .ghost{color:#596174;border-color:#d9dee5;background:#fff;box-shadow:none;text-transform:none}.chat-shell{width:min(960px,100%);height:100vh;margin:auto;padding:88px 24px 22px;display:grid;grid-template-rows:1fr auto;position:relative}.welcome{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);text-align:center;width:90%;transition:.25s}.welcome h1{font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:clamp(28px,4vw,39px);letter-spacing:-.035em;color:var(--ink);text-shadow:none;margin:15px 0 8px}.welcome p{color:var(--soft);margin:0}.aniken-orb{width:50px;height:50px;border-radius:16px;margin:auto;display:grid;place-items:center;background:linear-gradient(145deg,#18385e,#276dcc);color:#fff;font-weight:900;box-shadow:0 12px 30px #276dcc35}.chat-page .messages{grid-row:1;overflow:auto;padding:10px 0 210px}.chat-page .message{max-width:780px;margin:0 auto 26px;gap:14px}.chat-page .message>div:last-child{background:transparent;border:0;box-shadow:none;padding:4px 0;color:var(--ink)}.chat-page .message.user>div:last-child{background:#f2f4f7;border:1px solid #e1e5ea;border-radius:18px;padding:12px 16px}.chat-page .message.user{flex-direction:row-reverse}.chat-page .message p{line-height:1.65}.chat-page .avatar{background:#18385e;color:#fff;box-shadow:none}.chat-page .user .avatar{background:#dfe3e8;color:#3d4451}.input-dock{grid-row:2;width:min(900px,100%);margin:0 auto;z-index:3;background:linear-gradient(180deg,#ffffff00,#fff 22%);padding-top:26px}.chat-page .composer{display:grid;grid-template-columns:1fr auto;gap:8px;background:#fff;border:1px solid #d8dde4;border-radius:30px;padding:15px 14px 11px 22px;box-shadow:0 10px 35px #26384f18}.chat-page .composer textarea{grid-column:1/-1;width:100%;min-height:34px;padding:2px 0;border:0;background:transparent;color:var(--ink);font-size:17px}.chat-page .composer textarea::placeholder{color:#7e8796}.composer-tools{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:9px}.model-label{margin-right:auto;font-size:11px;font-weight:800;letter-spacing:.13em;color:#7c8491}.icon-button,.send-button{width:42px;height:42px;padding:0;border-radius:50%;display:grid;place-items:center;box-shadow:none}.icon-button{border:0;background:transparent;color:#343944;font-size:20px}.send-button{background:#243246;border:0;color:#fff;font-size:25px}.send-button:disabled{opacity:.4}.under-composer{display:flex;align-items:center;justify-content:flex-end;gap:13px;padding:9px 10px;color:var(--soft);font-size:12px}.under-composer .status{margin-right:auto;padding:0;min-height:0}.speak-toggle{display:flex;align-items:center;gap:5px}.speak-toggle input{accent-color:var(--accent)}.stop-button{border:0;background:transparent;color:var(--soft);padding:3px;box-shadow:none;font-weight:600}.has-chat .welcome{opacity:0;visibility:hidden}.has-chat .input-dock{position:sticky;bottom:0}
@media(max-width:600px){.topbar{height:60px;padding:0 14px}.top-actions .online{display:none}.chat-shell{padding:72px 12px 10px}.welcome{top:38%}.under-composer .status{display:none}.chat-page .message{max-width:100%}.chat-page .composer{border-radius:24px}.wordmark{font-size:13px}}

/* Compact login and illustrated private chat */
.login-card{width:min(430px,100%);padding:27px 32px;border-radius:19px}
.login-card h1{font-size:30px}
.login-card .sigil{font-size:34px}
.login-card .muted{font-size:15px}
.login-card .login-form{margin-top:18px;gap:8px}
.login-card .login-form input{padding:12px}
.login-card .login-form button{margin-top:6px;padding:11px 16px}
.login-card .return-link{margin-top:17px}

.chat-page{background:#031024;color:#fff}
.chat-page:before{display:block;opacity:1;background:linear-gradient(180deg,#03102480,#031024b0),url("chat-background.png") center/cover fixed no-repeat}
.chat-page .topbar{background:#071225e8;box-shadow:0 1px 0 #31558c;backdrop-filter:blur(8px)}
.chat-page .wordmark{color:#fff}
.chat-page .wordmark-star{color:#ffd24a}
.chat-page .top-actions .online{color:#4df5aa;border-color:#4df5aa;background:#071225d9}
.chat-page .top-actions .ghost{color:#dbe8ff;border-color:#5277ae;background:#0b1529df}
.chat-page .staff-link{display:inline-flex;align-items:center;text-decoration:none;padding:9px 14px;border:1px solid #5277ae;border-radius:9px;font-weight:700}
.chat-page .welcome h1{color:#fff;text-shadow:0 3px 18px #000}
.chat-page .welcome p{color:#d8e6ff;text-shadow:0 2px 10px #000}
.chat-page .message>div:last-child{background:#071225df;border:1px solid #31558c;box-shadow:0 12px 30px #0007;border-radius:16px;padding:12px 16px;color:#fff}
.chat-page .message.user>div:last-child{background:#102d53e8;border-color:#4a8fff}
.chat-page .input-dock{background:linear-gradient(180deg,#03102400,#031024e8 28%)}
.chat-page .composer{background:#fffffff2;box-shadow:0 10px 35px #0006}
.chat-page .under-composer,.chat-page .stop-button{color:#d8e6ff}

/* Aniken opening-channel video */
.splash-page{overflow:hidden;background:#020711;transition:opacity .35s ease}
.splash-page:before{display:none}
.splash-leaving{opacity:0}
.splash-stage{position:fixed;inset:0;display:grid;place-items:center;background:#020711}
.splash-stage video{width:100%;height:100%;object-fit:cover}
.splash-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#02071130,#02071108 55%,#02071170)}
.splash-brand{position:absolute;left:clamp(22px,5vw,72px);top:clamp(22px,5vw,58px);display:grid;gap:5px;color:#fff;font-weight:900;letter-spacing:.16em;text-shadow:0 3px 16px #000}
.splash-brand span{font-size:clamp(18px,3vw,30px);color:#ffd24a}
.splash-brand small{font-size:10px;color:#bfe5ff}
.splash-skip{position:absolute;right:clamp(20px,4vw,58px);bottom:clamp(20px,4vw,48px);border:1px solid #75cfff;background:#071225d9;color:#fff;border-radius:999px;padding:11px 23px;box-shadow:0 0 30px #35bfff42;letter-spacing:.12em}
.splash-paused .splash-skip{background:#276dcc}
.splash-sound{position:absolute;left:50%;bottom:clamp(24px,6vw,68px);transform:translateX(-50%);border:1px solid #8cecff;background:#071225e8;color:#fff;border-radius:999px;padding:14px 28px;box-shadow:0 0 38px #35dfff65;font-size:14px;letter-spacing:.12em;animation:sound-pulse 1.8s ease-in-out infinite}
.splash-sound.is-playing{opacity:.7;animation:none}
@keyframes sound-pulse{50%{box-shadow:0 0 58px #35dfffaa;transform:translateX(-50%) scale(1.04)}}

/* Show the complete chat artwork instead of zooming and cropping it. */
.chat-page:before{
  background-image:linear-gradient(180deg,#03102410,#03102428),url("chat-background.png");
  background-position:center,right bottom;
  background-size:100% 100%,calc(100% + 180px) auto;
  background-repeat:no-repeat,no-repeat;
  background-color:#031024;
}

/* Keep the lower-left Jedi artwork visible beside the conversation controls. */
@media(min-width:901px){
  .chat-page .chat-shell{width:min(1200px,100%)}
  .chat-page .input-dock{width:min(700px,calc(100vw - 48px));margin-left:auto;margin-right:120px}
}

@media(max-width:900px){
  .chat-page .input-dock{width:100%}
}

.chat-page .input-dock{
  max-width:100%;
  padding-top:12px;
  background:transparent;
}
.chat-page .mic{
  width:44px;
  height:44px;
  border:1px solid #d5dce6;
  background:#f3f6fa;
  color:#243246;
  transition:transform .15s ease,background .15s ease,color .15s ease;
}
.chat-page .mic:hover{background:#e5efff;color:#1769d2;transform:translateY(-1px)}
.chat-page .mic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.chat-page .mic.listening{background:#e5484d;color:#fff;border-color:#ff8c90}
.chat-page .wordmark-star{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:9px;
  background:linear-gradient(145deg,#ffd95b,#e7a919);
  color:transparent;
  font-size:0;
  box-shadow:0 0 20px #ffd24a38;
}
.chat-page .wordmark-star:after{
  content:"A";
  color:#071225;
  font-size:14px;
  font-weight:950;
}

@media(max-width:900px){
  .chat-page:before{
    background-position:center,bottom center;
    background-size:100% 100%,cover;
  }
}
