
@property --glow-angle {syntax:"<angle>";initial-value:0deg;inherits:false}
:root{--bg:#080e0b;--fg:#f1f8ef;--muted:#a1b09f;--subtle:#7a8d7c;--glass:rgba(22,34,25,.69);--glass-hover:rgba(34,49,34,.8);--line:rgba(190,224,160,.14);--accent:#9af243;--glow:rgba(154,242,67,.38);--orb-one:#376b20;--orb-two:#275743;--orb-three:#478d25;--bubble:rgba(83,123,47,.18);--button:#9af243;--button-fg:#16220d;--input-shadow:0 20px 65px rgba(0,0,0,.25);color-scheme:dark}
:root[data-theme="light"]{--bg:#f1f5ec;--fg:#20351f;--muted:#657462;--subtle:#72826c;--glass:rgba(253,255,249,.79);--glass-hover:rgba(255,255,255,.95);--line:rgba(81,119,48,.19);--accent:#3d7d17;--glow:rgba(121,207,41,.28);--orb-one:#b8da87;--orb-two:#c3dfc8;--orb-three:#b1d46f;--bubble:rgba(215,236,184,.58);--button:#8ee633;--button-fg:#17360b;--input-shadow:0 20px 65px rgba(61,91,30,.09);color-scheme:light}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--fg)}body{font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}button,textarea{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:default}button,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{background:var(--glow);color:var(--fg)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.glass{background:var(--glass);border:1px solid var(--line);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}
.mooco-app{height:100svh;height:100dvh;position:relative;isolation:isolate;display:flex;flex-direction:column;overflow:hidden}.ambient{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.ambient-one,.ambient-two,.ambient-three{position:absolute;filter:blur(100px);opacity:.27;border-radius:50%;transform:translateZ(0)}.ambient-one{width:620px;height:540px;background:var(--orb-one);left:calc(50% - 710px);top:4%}.ambient-two{width:620px;height:530px;background:var(--orb-two);right:calc(50% - 710px);top:32%;opacity:.22}.ambient-three{width:600px;height:160px;background:var(--orb-three);left:calc(50% - 300px);bottom:-140px;filter:blur(80px);opacity:.3}[data-theme="light"] .ambient-one,[data-theme="light"] .ambient-two{opacity:.46}
.app-header{height:100px;flex:none;padding:0 clamp(24px,4.5vw,76px);display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;border:0;background:none;padding:9px 0}.brand>span:last-child{font-size:25px;letter-spacing:-1.3px;font-weight:650}.brand b{font-weight:400;color:var(--accent)}.mooco-mark{height:26px;width:28px;display:inline-flex;align-items:center;justify-content:center;gap:3px;flex:none}.mooco-mark i{display:block;width:4px;height:12px;background:linear-gradient(180deg,#d8ffb4,#8dd83f);border-radius:4px;transform:rotate(-15deg)}.mooco-mark i:nth-child(2){height:24px}.mooco-mark i:nth-child(3){height:20px}.mooco-mark i:nth-child(4){height:12px}[data-theme="light"] .mooco-mark i{background:linear-gradient(180deg,#47841f,#8bd144)}.theme-toggle{display:grid;place-items:center;height:46px;width:46px;border-radius:50%;color:var(--muted);transition:background .2s,color .2s,transform .2s}.theme-toggle:hover{background:var(--glass-hover);color:var(--accent);transform:rotate(12deg)}
.chat-main{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;align-items:center}.is-welcome .chat-main{justify-content:center;padding:0 24px 95px}.welcome{text-align:center;margin-bottom:48px;animation:arrive .6s ease both}.welcome-emblem{width:76px;height:76px;border-radius:25px;display:grid;place-items:center;margin:0 auto 31px;transform:rotate(-7deg);background:linear-gradient(135deg,rgba(144,225,90,.1),rgba(165,248,90,.02));box-shadow:inset 1px 1px 1px rgba(227,255,206,.12),0 15px 65px rgba(123,207,53,.08)}.mooco-mark.large{width:44px;height:42px;gap:5px;transform:rotate(7deg)}.mooco-mark.large i{width:6px;height:20px}.mooco-mark.large i:nth-child(2){height:37px}.mooco-mark.large i:nth-child(3){height:31px}.mooco-mark.large i:nth-child(4){height:20px}.welcome h1{font-size:clamp(36px,4.3vw,60px);font-weight:450;line-height:1.17;letter-spacing:-2.6px;margin:0}.welcome h1 span{display:block;color:var(--accent)}
.input-dock{width:100%;max-width:800px;position:relative;flex:none}.composer-frame{position:relative;isolation:isolate;padding:1px;border-radius:27px;background:var(--line);box-shadow:var(--input-shadow)}.composer-frame::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:conic-gradient(from var(--glow-angle),transparent 0deg,transparent 230deg,rgba(154,242,67,.15) 285deg,#baff79 320deg,transparent 358deg);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;z-index:2;filter:drop-shadow(0 0 8px var(--glow));animation:glow-orbit 7s linear infinite}.composer-frame::after{content:"";position:absolute;inset:-2px;z-index:-1;border-radius:inherit;box-shadow:0 0 25px var(--glow);opacity:.2;pointer-events:none;transition:opacity .3s}.composer-frame:focus-within::after{opacity:.55}.composer-frame.working::before{animation-duration:4s}.composer{position:relative;display:flex;align-items:flex-end;gap:18px;padding:19px 19px 19px 23px;border:0;border-radius:26px;background:var(--glass);box-shadow:inset 0 1px 0 rgba(220,255,200,.05)}.composer textarea{display:block;flex:1;min-width:0;min-height:48px;max-height:180px;resize:none;background:transparent;border:0;outline:0;padding:10px 1px;font-size:18px;color:var(--fg);line-height:1.6;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}.composer textarea::placeholder{color:var(--subtle)}.send-button{height:46px;width:46px;flex:none;display:grid;place-items:center;border:1px solid rgba(179,247,106,.28);border-radius:15px;background:var(--button);color:var(--button-fg);box-shadow:0 4px 20px rgba(130,205,53,.12);transition:opacity .2s,transform .2s}.send-button:not(:disabled):hover{transform:translateY(-2px)}.send-button:disabled{opacity:.35}.send-button:disabled:has(.spin){opacity:.75}
.has-conversation .app-header{height:84px}.has-conversation .chat-main{padding:0 24px}.conversation-scroll{width:100%;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--line) transparent;scroll-padding-bottom:30px}.conversation{max-width:800px;margin:0 auto;padding:28px 10px 18px}.chat-message{margin-bottom:32px;animation:arrive .3s ease both}.chat-message.user{display:flex;justify-content:flex-end;margin-bottom:30px}.user-bubble{max-width:80%;padding:14px 20px;border-radius:23px 23px 7px 23px;background:var(--bubble);font-size:16px;line-height:1.65;overflow-wrap:anywhere;white-space:pre-wrap}.assistant-label{display:flex;align-items:center;gap:10px;margin:0 0 13px;font-size:14px;font-weight:600}.assistant-label .mooco-mark{width:21px;height:22px;gap:2px}.assistant-label .mooco-mark i{width:3px;height:9px}.assistant-label .mooco-mark i:nth-child(2){height:18px}.assistant-label .mooco-mark i:nth-child(3){height:15px}.assistant-content{margin-left:31px}.answer-body{font-size:16px;line-height:1.85;overflow-wrap:anywhere}.answer-body p{margin:0 0 13px;white-space:pre-wrap}.answer-body h3{font-size:17px;font-weight:600;line-height:1.6;margin:24px 0 11px;letter-spacing:-.2px}.answer-body h3:first-child{margin-top:0}.answer-body strong{font-weight:650}.answer-body ul,.answer-body ol{padding-left:23px;margin:12px 0 18px}.answer-body li{padding-left:4px;margin-bottom:9px}.answer-body li::marker{color:var(--accent)}.answer-body code{font-family:ui-monospace,monospace;font-size:.9em;background:var(--glass);border:1px solid var(--line);padding:2px 5px;border-radius:5px}.answer-notice{padding:12px 15px;border:1px solid var(--line);border-radius:12px;color:var(--muted);background:var(--glass);font-size:13px;line-height:1.7;margin:16px 0}.assistant-thinking{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px;margin:5px 0 24px}.thinking-dots{display:inline-flex;gap:4px;margin-left:1px}.thinking-dots i{width:4px;height:4px;border-radius:50%;background:var(--accent);animation:breathe 1.2s ease-in-out infinite}.thinking-dots i:nth-child(2){animation-delay:.15s}.thinking-dots i:nth-child(3){animation-delay:.3s}.chat-message.error .answer-body{color:var(--muted)}.has-conversation .input-dock{padding:10px 0 max(25px,env(safe-area-inset-bottom))}.spin{animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes glow-orbit{to{--glow-angle:360deg}}@keyframes breathe{0%,100%{opacity:.25}50%{opacity:1}}@keyframes arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.is-welcome .chat-main{padding-bottom:120px}.input-dock,.conversation{max-width:860px}}
@media(max-width:700px){.app-header,.has-conversation .app-header{height:78px;padding:0 22px}.brand{gap:9px}.brand>span:last-child{font-size:24px}.theme-toggle{height:42px;width:42px}.ambient-one{width:400px;height:450px;left:-250px;top:8%;filter:blur(90px)}.ambient-two{width:380px;height:430px;right:-255px;top:40%;filter:blur(80px)}.ambient-three{width:380px;left:calc(50% - 190px)}.is-welcome .chat-main{padding:0 20px 95px}.welcome{margin-bottom:36px}.welcome-emblem{width:68px;height:68px;border-radius:22px;margin-bottom:28px}.welcome h1{font-size:43px;letter-spacing:-1.8px}.composer-frame{border-radius:23px}.composer{border-radius:22px;padding:14px 14px 14px 17px;gap:10px}.composer textarea{font-size:16px;padding:11px 0}.send-button{height:44px;width:44px;border-radius:14px}.has-conversation .chat-main{padding:0 17px}.has-conversation .input-dock{padding-bottom:max(18px,env(safe-area-inset-bottom))}.conversation{padding:22px 3px 14px}.chat-message,.chat-message.user{margin-bottom:26px}.user-bubble{max-width:92%;padding:12px 16px;border-radius:20px 20px 6px 20px}.assistant-content{margin-left:0}.answer-body{line-height:1.8}}
@media(max-width:370px){.is-welcome .chat-main{padding-left:15px;padding-right:15px}.welcome h1{font-size:37px}.app-header,.has-conversation .app-header{padding:0 18px}}
@media(max-height:640px){.app-header,.has-conversation .app-header{height:64px}.is-welcome .chat-main{padding-bottom:35px}.welcome-emblem{display:none}.welcome{margin-bottom:28px}.welcome h1{font-size:38px}}
@media(max-height:440px){.is-welcome .chat-main{justify-content:flex-start;overflow-y:auto;padding-top:12px;padding-bottom:16px}.welcome h1{font-size:30px}.welcome{margin-bottom:20px}.has-conversation .app-header{height:56px}.has-conversation .input-dock{padding-bottom:max(8px,env(safe-area-inset-bottom))}.composer{padding-top:9px;padding-bottom:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

[hidden]{display:none!important}.access-main{flex:1;display:grid;place-items:center;padding:24px 20px 90px}.access-card{width:100%;max-width:420px;padding:38px 30px 24px;border-radius:28px;text-align:center;box-shadow:var(--input-shadow)}.access-card>h1{font-size:25px;font-weight:500;letter-spacing:-.8px;margin:24px 0}.access-card input{font:inherit;color:var(--fg);background:var(--bubble);width:100%;min-width:0;padding:15px 17px;border:1px solid var(--line);border-radius:15px;outline:none}.access-card input:focus{border-color:var(--accent)}.access-card input::placeholder{color:var(--subtle)}.access-button{border:0;border-radius:15px;background:var(--button);color:var(--button-fg);padding:14px;width:100%;font:inherit;margin-top:14px;font-weight:600}.access-button:disabled{opacity:.4}.access-card p{min-height:20px;color:var(--muted);font-size:13px;line-height:1.7;margin:16px 0 0}.composer textarea{height:48px}@media(max-height:440px){.access-main{overflow-y:auto;padding-bottom:20px}.access-card{padding:20px}.access-card>h1{margin:10px 0;font-size:22px}}
