:root{
  --ink:#24251f;--muted:#6d705f;--line:#e7e5dd;--paper:#fbfaf7;--card:#fff;
  --sidebar:#141512;--gold:hsl(43 96% 56%);--gold-deep:#9a6c17;--coral:hsl(10 100% 68%);--danger:#933c2e;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-synthesis:none;
}
*{box-sizing:border-box}body{margin:0;background:var(--paper);font-size:14px}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}a{color:#815917}[hidden]{display:none!important}
.app-shell{display:flex;height:100vh;height:100dvh;overflow:hidden}.sidebar{width:270px;flex:0 0 270px;display:flex;flex-direction:column;background:var(--sidebar);padding:31px 20px 19px;color:#e8e8df;border-right:1px solid #2d2e27}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:#f8f7f1;width:fit-content}.brand-symbol{width:42px;height:42px;object-fit:contain}.brand-wordmark{font-size:25px;font-weight:750;letter-spacing:-.9px}.brand-ai{color:#e3ba58;font-weight:450}.brand-caption{font-size:8px;letter-spacing:1.8px;margin:13px 0 29px;color:#9b9d8b;padding-left:3px;font-weight:650}.new-chat{display:flex;align-items:center;gap:10px;min-height:44px;padding:12px 13px;background:#f5c54c;color:#272219;border:1px solid #f9d270;border-radius:10px;font-weight:650;font-size:12px;box-shadow:0 3px 14px #0002}.new-chat:hover:not(:disabled){background:#ffda76}.new-chat>span{font-size:22px;line-height:20px;font-weight:400}.new-chat kbd{margin-left:auto;font:10px inherit;color:#725a24;border:1px solid #be932e66;padding:3px 5px;border-radius:4px}.history-heading{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#929583;margin:31px 9px 12px;font-weight:600}.history-heading span{letter-spacing:0;background:#2a2c24;padding:2px 6px;border-radius:5px;color:#b5b8a7}.history{flex:1;overflow-y:auto;min-height:40px;scrollbar-color:#404238 transparent}.history-empty{font-size:12px;line-height:1.8;color:#999c8b;padding:8px 9px}.history-item{display:block;width:100%;min-height:44px;padding:12px 11px;text-align:left;border:1px solid transparent;background:transparent;border-radius:9px;color:#bfc2b1;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}.history-item:hover{background:#24261f}.history-item.active{background:#2a2b21;border-color:#43412b;color:#f1ce77;font-weight:550}.sidebar-bottom{padding-top:14px}.method-card{display:flex;align-items:center;gap:11px;padding:14px 7px 18px;border-bottom:1px solid #303228;margin-bottom:9px}.method-symbol{display:grid;place-items:center;width:33px;height:33px;border:1px solid #6b5d37;border-radius:50%;color:#d6bd78;font-size:11px;font-weight:650;letter-spacing:-.7px}.method-card strong{font-size:11px;font-weight:550;color:#d7d9cb}.method-card p{font-size:10px;color:#979b88;margin:5px 0 0}.quiet-button{display:block;min-height:37px;border:0;background:transparent;color:#a5aa96;font-size:11px;padding:9px;text-align:left;border-radius:6px;width:100%}.quiet-button:hover:not(:disabled){background:#22251d;color:#eed291}.profile{display:flex;gap:10px;align-items:center;border-top:1px solid #303228;margin-top:12px;padding:17px 2px 0}.avatar{display:grid;place-items:center;background:#33362a;color:#d1d5c3;border:1px solid #454837;width:33px;height:33px;border-radius:50%;font-size:12px;flex-shrink:0}.profile strong{font-size:10px;font-weight:550;color:#d7d9cb}.profile div>span{display:block;margin-top:5px;font-size:9px;color:#969d85}.profile>.icon-button{margin-left:auto;color:#b4b99e}
.main{position:relative;display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;background:radial-gradient(ellipse at 55% 27%,#f4e4bd24,transparent 65%),var(--paper)}.topbar{height:68px;flex:0 0 68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px;background:#fbfaf7e8}.topbar-start{display:flex;gap:12px;align-items:center}.desktop-label{font-size:11px;color:#6d705f}.connection{font-size:10px;color:#6d705f;display:flex;gap:7px;align-items:center;border:1px solid #e2e4d8;background:#f6f7f0;border-radius:20px;padding:7px 10px;white-space:nowrap}.connection>span{width:5px;height:5px;background:#86956a;border-radius:50%}.mode-banner{font-size:11px;background:#fff6df;border-bottom:1px solid #ede1c4;color:#7f632a;text-align:center;padding:10px 18px;line-height:1.55}.mode-banner>span{font-size:8px;border:1px solid #d8c18b;border-radius:4px;padding:2px 4px;margin-right:8px;font-weight:650;letter-spacing:1px}.preview-banner{background:#f7f2e6;color:#766442}.notice{margin:12px 24px 0;padding:12px 17px;background:#fbede7;border:1px solid #ebd4c8;color:var(--danger);border-radius:10px;font-size:12px;line-height:1.6}.notice button{border:0;background:transparent;color:inherit;text-decoration:underline;margin-left:10px;min-height:32px}
.welcome,.access-gate{width:min(790px,100%);margin:0 auto;flex:1;min-height:0;overflow:auto;padding:42px 42px 24px;text-align:center}.access-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;padding-top:35px;padding-bottom:50px}.hero-mark{margin:0 auto 22px;width:72px;height:72px;border:1px solid #34362a;border-radius:22px;display:grid;place-items:center;background:#171912;box-shadow:0 9px 22px #27230f15;flex-shrink:0}.hero-mark img{width:58px;height:58px;object-fit:contain}.eyebrow{color:#8a651e;font-size:9px;font-weight:700;letter-spacing:2px;margin:0 0 16px}h1{font-size:clamp(32px,3.8vw,49px);line-height:1.13;letter-spacing:-2px;font-weight:550;margin:0 0 20px}h1>span{color:#94742e}.welcome-description{font-size:13px;color:#6d705f;line-height:1.85;margin:0 auto 30px;max-width:545px}.suggestion-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;text-align:left}.suggestion{position:relative;display:grid;grid-template-columns:33px 1fr;column-gap:12px;row-gap:6px;text-align:left;background:#fff;border:1px solid #e5e2d7;border-radius:13px;padding:19px 17px;min-height:96px;transition:border-color .15s,transform .15s,box-shadow .15s;box-shadow:0 2px 3px #39321902}.suggestion:hover:not(:disabled){transform:translateY(-2px);border-color:#d8bd79;box-shadow:0 6px 20px #52401008}.suggestion-icon{grid-row:1/3;width:32px;height:32px;background:#faf3df;color:#987121;border-radius:9px;display:grid;place-items:center;font-size:21px}.suggestion strong{font-size:12px;font-weight:600;padding-right:13px;color:#424536}.suggestion>span:not(.suggestion-icon){font-size:10px;line-height:1.65;color:#6d705f}.suggestion i{position:absolute;right:13px;top:18px;color:#b3a884;font-size:15px;font-style:normal}.welcome-note{font-size:10px;color:#6d705f;margin:25px 0 0}.welcome-note span{margin-right:5px;color:#b49951}
.composer-area{width:min(880px,100%);padding:13px 38px 19px;align-self:center;flex-shrink:0}.composer{background:#fff;border:1px solid #deded1;border-radius:17px;padding:16px 17px 11px;box-shadow:0 5px 25px #36321d06}.composer:focus-within{border-color:#c5a85d;box-shadow:0 0 0 3px #d3b96713}textarea{display:block;width:100%;border:0;background:transparent;color:var(--ink);resize:none;outline:none!important;line-height:1.65;min-height:29px;max-height:160px;font-size:14px;padding:0 0 9px}textarea::placeholder{color:#6d705f}.composer-bottom{display:flex;align-items:center;justify-content:space-between;color:#6d705f;font-size:9px;min-height:35px}.composer-star{color:#ae8733;font-size:15px;margin-right:5px}.composer-method{color:#6d705f;margin-left:4px}.send-button{width:36px;height:36px;display:grid;place-items:center;background:#292d20;border:0;border-radius:10px;color:#f3cd68;font-size:24px}.send-button:hover:not(:disabled){background:#454b32}.composer-note{font-size:9px;color:#6d705f;text-align:center;margin:10px 0 0;line-height:1.6}.composer-note>span{margin-left:14px;color:#6d705f}
.conversation{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scroll-behavior:smooth}.messages{max-width:820px;margin:auto;padding:34px 35px 20px;display:flex;flex-direction:column;gap:29px}.message{display:flex;align-items:flex-start;gap:14px}.message-avatar{flex:0 0 33px;height:33px;background:#20231a;border-radius:10px;display:grid;place-items:center;margin-top:3px}.message-avatar img{width:26px;height:26px;object-fit:contain}.message-body{min-width:0;flex:1;font-size:14px;line-height:1.85;overflow-wrap:anywhere;color:#3b3d33}.message-meta{font-size:10px;font-weight:650;letter-spacing:.3px;color:#6d705f;margin-bottom:9px}.message-meta>span{margin-left:8px;font-size:8px;font-weight:500;letter-spacing:.5px;background:#eee9dc;color:#8b7748;padding:3px 5px;border-radius:4px}.message.user{align-self:flex-end;max-width:88%;margin-left:35px;background:#efeee6;border:1px solid #e4e3d8;padding:14px 19px;border-radius:17px 17px 4px 17px}.message.user .message-body{font-size:13px;line-height:1.75;white-space:pre-wrap}.message-body p{margin:0 0 14px}.message-body p:last-child{margin-bottom:0}.message-body h2,.message-body h3{font-family:inherit;letter-spacing:0;font-size:16px;margin:21px 0 11px;font-weight:600}.message-body ul,.message-body ol{padding-left:22px;margin:11px 0}.message-body code{background:#f0eee4;padding:2px 4px;border-radius:4px;font-size:.9em}.message-body a{text-underline-offset:3px}.table-scroll{overflow-x:auto;max-width:100%;margin:16px 0;border-radius:8px}.message-body table{border-collapse:collapse;font-size:12px;width:100%;min-width:380px}.message-body th{background:#f2eee2;text-align:left;font-weight:600}.message-body th,.message-body td{padding:11px;border:1px solid #e5e0d2}.message-actions{display:flex;align-items:center;gap:7px;margin-top:12px}.feedback-button{min-height:34px;min-width:32px;padding:5px 8px;border:1px solid transparent;border-radius:7px;background:transparent;color:#6d705f;font-size:12px}.feedback-button:hover,.feedback-button.selected{color:#836622;border-color:#e6d8b1;background:#faf4e4}.source-list{margin-top:16px;color:#6d705f;font-size:11px;border-top:1px solid #ebeade;padding-top:11px}.source-list summary{cursor:pointer}.source-list ul{margin:8px 0;padding-left:18px}.typing{color:#6d705f;font-size:12px;display:flex;gap:10px;align-items:center}.typing>span{width:13px;height:13px;border:1px solid #dfd4b4;border-top-color:#a48130;border-radius:50%;animation:spin 1s linear infinite}
.primary-button{border:1px solid #e9bd52;border-radius:11px;color:#31291a;background:#f4c657;padding:14px 22px;font-size:13px;font-weight:600;margin:23px auto 8px;display:block;min-height:45px}.primary-button>span{margin-left:15px}.access-gate>p:not(.eyebrow){font-size:14px;color:#6d705f;line-height:1.9;max-width:450px;margin:0 auto}.access-gate h1{max-width:550px}.text-link{font-size:12px;display:block;margin-top:25px;color:#71591f;border:1px solid #d9c796;border-radius:10px;background:#fbf6e9;padding:14px 19px;min-height:45px;text-decoration:none;font-weight:550}.text-link:hover{background:#f5e9c9}.icon-button{border:0;background:transparent;color:var(--ink);padding:8px;font-size:20px;min-width:36px;min-height:36px;border-radius:8px}.mobile-only{display:none}dialog{width:min(490px,calc(100% - 32px));border:1px solid #e2ddcd;border-radius:19px;padding:35px;color:var(--ink);background:var(--paper);box-shadow:0 20px 100px #24291833}dialog::backdrop{background:#1d23125e;backdrop-filter:blur(4px)}dialog h2{font-size:27px;line-height:1.2;font-weight:550;letter-spacing:-.8px}dialog p:not(.eyebrow){font-size:13px;line-height:1.85;color:#6d705f}.dialog-close{position:absolute;right:12px;top:10px;font-size:25px}.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}
@keyframes spin{to{transform:rotate(360deg)}}
@media(max-height:810px) and (min-width:761px){.welcome{padding-top:25px;padding-bottom:14px}.hero-mark{margin-bottom:17px;width:59px;height:59px;border-radius:18px}.hero-mark img{width:47px;height:47px}.eyebrow{margin-bottom:12px}h1{font-size:41px;margin-bottom:15px}.welcome-description{margin-bottom:23px}.suggestion{min-height:86px;padding:16px}.welcome-note{margin-top:19px}.composer-area{padding-top:10px;padding-bottom:13px}.sidebar{padding-top:24px}.brand-caption{margin-bottom:24px}.method-card{padding-bottom:14px}}
@media(max-width:1100px){.sidebar{width:242px;flex-basis:242px;padding-left:17px;padding-right:17px}.welcome{padding-left:27px;padding-right:27px}.composer-area{padding-left:27px;padding-right:27px}.topbar{padding:0 27px}.brand-wordmark{font-size:23px}}
@media(max-width:760px){.sidebar{position:fixed;left:0;top:0;bottom:0;width:280px;z-index:20;transform:translateX(-100%);visibility:hidden;transition:transform .2s,visibility .2s;padding-top:max(26px,env(safe-area-inset-top))}.sidebar.open{transform:translateX(0);visibility:visible}.sidebar-backdrop{position:fixed;inset:0;z-index:19;background:#12170b70;border:0;backdrop-filter:blur(2px)}.mobile-only{display:inline-flex}.desktop-label{display:none}.mobile-brand{display:inline-flex;align-items:center;gap:6px;font-size:17px;font-weight:750;letter-spacing:-.7px;color:#373a2d}.mobile-brand img{background:#1c1f16;border-radius:6px;padding:2px;width:27px;height:27px}.mobile-brand>span{margin-left:-6px;font-weight:450;color:#9f7c2c}.topbar{height:61px;flex-basis:61px;padding:0 15px}.topbar-start{gap:10px}.connection{font-size:9px;padding:6px 8px}.mode-banner{font-size:10px;padding:8px 17px;line-height:1.6}.welcome,.access-gate{padding:29px 21px 19px;max-width:580px}.hero-mark{width:56px;height:56px;border-radius:17px;margin-bottom:18px}.hero-mark img{width:44px;height:44px}.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:14px}h1{font-size:36px;letter-spacing:-1.5px;margin-bottom:17px}.welcome-description{font-size:12px;line-height:1.8;margin-bottom:24px}.welcome-description br{display:none}.suggestion-grid{gap:9px}.suggestion{padding:14px 12px;min-height:120px;grid-template-columns:1fr;row-gap:9px}.suggestion-icon{grid-row:auto;width:29px;height:29px;font-size:20px}.suggestion strong{font-size:11px;line-height:1.4}.suggestion>span:not(.suggestion-icon){font-size:10px;line-height:1.55}.suggestion i{top:16px;right:13px}.welcome-note{margin-top:21px;font-size:9px}.composer-area{padding:10px 14px max(10px,env(safe-area-inset-bottom));background:#fbfaf7}.composer{padding:13px 14px 10px;border-radius:15px}textarea{font-size:16px;min-height:30px;line-height:1.5}.send-button{width:40px;height:40px}.composer-note{font-size:8px;margin-top:8px}.composer-note>span{display:none}.composer-method{display:none}.messages{padding:25px 16px;gap:25px}.message{gap:10px}.message-body{font-size:14px}.message-avatar{flex-basis:30px;height:30px;border-radius:9px}.message-avatar img{width:24px;height:24px}.message.user{max-width:91%;margin-left:25px;padding:12px 15px}.message.user .message-body{font-size:14px}.feedback-button{min-width:40px;min-height:40px}.notice{margin:10px 15px 0;font-size:11px}.access-gate h1{font-size:35px}.access-gate>p:not(.eyebrow){font-size:13px}.icon-button{min-width:40px;min-height:40px}.sidebar-bottom .quiet-button{min-height:39px}.profile>.icon-button{min-width:36px}}
@media(max-width:350px){.connection{font-size:8px;padding:5px 6px}.mobile-brand{font-size:15px}.topbar{padding:0 8px}.welcome{padding-left:16px;padding-right:16px}h1{font-size:32px}.suggestion{padding:12px 10px}.suggestion>span:not(.suggestion-icon){font-size:9px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.offline-page{min-height:100vh;min-height:100dvh}.offline-page .primary-button{text-decoration:none}

.login-button{text-decoration:none;text-align:center;min-width:220px}.access-gate .login-button:not([hidden])~.text-link{margin-top:12px;background:transparent;border-color:transparent;font-weight:400}

/* The email challenge stays in page memory; these controls are hidden until configured. */
.email-login{width:min(380px,100%);margin:18px auto 0;text-align:left;flex-shrink:0}.email-login label{display:block;font-size:12px;font-weight:600;margin:0 0 8px}.email-login input{display:block;box-sizing:border-box;width:100%;min-height:48px;padding:12px 14px;border:1px solid #cfcec2;border-radius:9px;background:#fff;color:#24251f;font:inherit;font-size:16px}.email-login input:focus-visible,.email-login button:focus-visible{outline:3px solid #b79b56;outline-offset:3px}.email-login input:disabled{background:#f1f1e9}.email-login .email-help{font-size:11px;line-height:1.65;color:#6d705f;margin:9px 0 14px}.email-login .email-divider{text-align:center;color:#6d705f;font-size:11px;margin:0 0 18px}.email-primary{width:100%;min-height:46px;border:1px solid #303828;border-radius:9px;background:#303828;color:#fff;font:inherit;font-size:13px;font-weight:600;padding:12px 16px;cursor:pointer}.email-login button:disabled{opacity:.5;cursor:default}.email-actions{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:8px}.email-actions button{min-height:44px;padding:7px 0;background:transparent;border:0;color:#625328;text-decoration:underline;font:inherit;font-size:12px;cursor:pointer}.email-login .email-destination{font-size:12px;line-height:1.7;overflow-wrap:anywhere;margin:0 0 14px;color:#59604e}.email-login .email-status{font-size:12px;line-height:1.7;margin:14px 0 0;padding:12px;border:1px solid #dedfd0;border-radius:8px;background:#f5f5ed;color:#4b563f;overflow-wrap:anywhere}.email-login .email-status.error{background:#fff1ea;border-color:#edc9b7;color:#873c2b}.access-gate:has(.email-login:not([hidden])){justify-content:flex-start}
.account-dialog{width:min(560px,calc(100vw - 32px));max-height:90dvh;overflow:auto}.account-dialog h2{padding-right:25px}.account-dialog .account-method{border-top:1px solid #dedfd0;padding:17px 0}.account-method h3{font-size:15px;margin:0 0 7px}.account-method>p{font-size:12px;margin:0 0 14px}.account-dialog .email-login{width:100%;margin:0;max-width:none}.account-dialog .email-login input{margin:8px 0 14px}.account-dialog .account-notice,.account-reauth{padding:14px;border:1px solid #d4dfc4;border-radius:9px;background:#f1f5e9;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.account-dialog .account-notice.error{background:#fff1ea;border-color:#edc9b7;color:#873c2b}.account-reauth{margin-bottom:18px}.account-reauth p{margin-top:0;font-size:12px}.account-dialog .email-primary:disabled{opacity:.5;cursor:default}.account-dialog .quiet-button{color:#4c583c;text-align:left}
