:root{--paper:#f6f5f1;--white:#fff;--ink:#28372d;--muted:#7b8178;--line:#e3e5dc;--accent:#ba6543;--accent-dark:#a45132;--sage:#e8ecdf;--sidebar:265px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button,a,textarea,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{outline:3px solid #b07850;outline-offset:4px}button{color:inherit}a{color:inherit}button,textarea,input{border-radius:0}[hidden]{display:none!important}.shell{display:flex;min-height:100dvh}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:34px 22px 23px;background:#fbfbf8;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:30}.brand{display:flex;align-items:center;text-decoration:none;font-size:21px;font-weight:800;letter-spacing:-.8px;gap:7px;white-space:nowrap}.brand-house{font-weight:400}.brand small{font-size:7px;letter-spacing:1.55px;display:block;margin-top:6px;font-weight:500}.brand-icon{height:33px;width:33px;color:var(--accent);flex:none}.brand-icon svg{height:100%;width:100%;stroke:currentColor;stroke-width:1.5;fill:none}.new-chat{margin-top:34px;display:flex;align-items:center;gap:11px;padding:12px 16px;border:1px solid #d9ddd2;border-radius:8px;background:transparent;font-size:13px;text-align:left}.new-chat:hover{background:#efefe7}.new-chat span{font-size:21px;line-height:1;color:var(--accent)}.nav-label{font-size:9px;letter-spacing:1.55px;color:#969b91;margin:30px 10px 13px}.topic{display:flex;align-items:center;gap:12px;width:100%;padding:11px 10px;border:0;background:transparent;text-align:left;font-size:12px;border-radius:7px;color:#626e61}.topic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4;flex:none}.topic:hover,.topic.active{background:#eceedf;color:#35432f}.recent-block{min-height:80px;overflow:auto}.empty-recent{margin:12px 10px;font-size:11px;color:#a3a79d}.recent-item{display:block;border:0;background:transparent;max-width:100%;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;text-align:left;padding:9px 10px;border-radius:6px;color:#6e766a}.recent-item:hover,.recent-item.selected{background:#f0f0e8;color:var(--ink)}.sidebar-bottom{margin-top:auto;padding-top:24px}.about-button{background:none;border:0;border-top:1px solid var(--line);padding:18px 3px 0;display:flex;align-items:center;gap:10px;font-size:12px;width:100%;text-align:left}.about-button>span:last-child{margin-left:auto;color:#8a9282}.info-symbol{border:1px solid #929c89;border-radius:100%;width:15px;height:15px;display:inline-flex;align-items:center;justify-content:center;font-family:Georgia,serif;font-size:11px}.sidebar-bottom p{font-size:10px;line-height:1.7;color:#9aa093;margin:18px 4px 0}.main{margin-left:var(--sidebar);width:calc(100% - var(--sidebar));height:100dvh;display:flex;flex-direction:column;min-width:0}.topbar{height:80px;padding:0 40px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;flex:none}.topbar-left{display:flex;align-items:center;gap:13px}.topbar-title{font-size:12px;color:#797f74}.pilot-tag{border:1px solid #d7dccf;color:#858c7b;font-size:8px;letter-spacing:1.5px;padding:4px 6px;border-radius:3px}.status-button{display:flex;align-items:center;gap:8px;background:transparent;border:0;font-size:10px;color:#79816f;white-space:nowrap}.status-dot{height:5px;width:5px;border-radius:100%;background:#9b9f75}.workspace{overflow-y:auto;scroll-behavior:smooth;flex:1;min-height:0;padding:0 40px;scroll-padding:25px}.welcome{max-width:900px;margin:55px auto 0}.welcome-kicker{font-size:9px;letter-spacing:2px;color:#879078;display:flex;align-items:center;gap:10px}.tiny-line{height:1px;width:23px;background:#9eaa8d}.hero-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.hero-text h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(43px,4.8vw,70px);font-weight:400;letter-spacing:-2.7px;line-height:1.1;margin:24px 0 21px}.hero-text h1 em{font-weight:400;color:var(--accent)}.hero-description{font-size:13px;line-height:1.85;color:#828878;margin:0}.house-drawing{width:245px;flex:none;transform:rotate(-3deg);margin:20px 20px 0 0;opacity:.9}.house-drawing svg{width:100%;height:auto}.suggestions-label{font-size:11px;color:#8c9285;margin:38px 0 13px}.suggestions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.suggestions button{position:relative;border:1px solid #dedfd4;border-radius:9px;background:#fbfbf7;text-align:left;padding:21px 19px;min-height:135px;transition:background .2s,transform .2s}.suggestions button:hover{background:#fffdf7;transform:translateY(-2px);border-color:#c6cabb}.card-category{font-size:8px;letter-spacing:1.1px;color:#9a9e8f;display:block;margin-bottom:16px}.suggestions strong{font-size:13px;line-height:1.6;font-weight:400;color:#505e49}.card-arrow{position:absolute;right:16px;bottom:17px;color:#9da789;font-size:19px}.how-it-works{display:flex;align-items:center;gap:9px;margin:30px 0 38px;color:#8e9586;font-size:10px}.step-marker{display:inline-flex;border:1px solid #d8ddcf;border-radius:100%;width:19px;height:19px;align-items:center;justify-content:center;font-size:8px}.step-link{width:25px;height:1px;background:#d9dfd0;margin:0 4px}.composer-area{padding:16px 40px 14px;flex:none;background:var(--paper);position:relative}.composer{max-width:900px;margin:0 auto;background:#fffefb;border:1px solid #daddcf;box-shadow:0 6px 25px #263c2206;border-radius:12px;padding:17px 17px 11px}.composer textarea{width:100%;resize:none;border:0;outline:0!important;background:transparent;color:var(--ink);font-size:13px;line-height:1.65;max-height:150px;min-height:30px;padding:0 4px}.composer textarea::placeholder{color:#a0a393}.composer:focus-within{border-color:#adba9b;box-shadow:0 0 0 2px #9eaa8d10}.composer-actions{display:flex;justify-content:space-between;align-items:center;margin-top:4px}.composer-hint{font-size:9px;color:#a7ab9c;padding-left:4px}.send{border:0;border-radius:8px;width:34px;height:34px;background:var(--accent);color:#fff;display:grid;place-items:center;flex:none}.send:hover{background:var(--accent-dark)}.send svg{height:21px;width:21px;stroke:currentColor;stroke-width:1.6;fill:none}.composer-footer{max-width:900px;margin:10px auto 0;text-align:center;font-size:9px;color:#979e8e;display:flex;align-items:center;justify-content:center;gap:5px;line-height:1.6}.composer-footer svg{width:12px;height:12px;stroke:currentColor;fill:none;flex:none}.mode-notice{max-width:900px;margin:0 auto 8px;font-size:10px;color:#8b7958;line-height:1.6;padding-left:5px}.messages{max-width:800px;margin:0 auto;padding:25px 0 5px}.message{margin:20px 0 32px;animation:appear .2s ease-out}.message.user{display:flex;justify-content:flex-end}.user-bubble{background:#e8ecdf;color:#4b5941;border-radius:14px 14px 3px 14px;max-width:85%;padding:15px 20px;line-height:1.65;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.assistant-head{display:flex;align-items:center;gap:9px;margin-bottom:13px;font-size:10px;letter-spacing:.8px;color:#86917e}.assistant-mark{display:grid;place-items:center;width:25px;height:25px;background:#b96745;border-radius:6px;color:white;font-family:Georgia,serif;font-size:18px;flex:none}.message-content{padding-left:34px;font-size:14px;line-height:1.75;color:#4b5744}.message-content>p{margin:0 0 15px;white-space:pre-wrap;overflow-wrap:anywhere}.response-label{display:inline-block;font-size:9px;letter-spacing:.5px;border:1px solid #d8dfce;border-radius:4px;padding:2px 7px;margin-bottom:14px;color:#8c947f}.route-steps{list-style:none;padding:0;margin:14px 0 22px;counter-reset:route}.route-steps li{position:relative;padding:0 0 20px 36px;counter-increment:route;border-left:1px solid #d9dfd0;margin-left:11px;white-space:pre-wrap}.route-steps li::before{content:counter(route);position:absolute;left:-12px;top:0;width:24px;height:24px;display:grid;place-items:center;border-radius:100%;font-size:11px;background:#e9eddf;color:#71835b;border:4px solid var(--paper)}.route-steps li:last-child{border-left-color:transparent}.step-ref{display:inline-block;border:0;background:#e8ecdf;border-radius:4px;font-size:10px;padding:2px 6px;color:#71835b;text-decoration:none;margin:8px 0 0}.sources-title{font-size:9px;letter-spacing:1.2px;color:#929b85;margin:20px 0 10px}.source-card{background:#fbfcf7;border:1px solid #e0e4d7;border-radius:9px;margin-bottom:10px;padding:14px 16px}.source-meta{display:flex;gap:7px;align-items:center;font-size:9px;color:#919983;line-height:1.5;margin-bottom:6px}.source-meta .experience{color:#a2704b}.source-title{font-size:13px;text-decoration:none;font-weight:500;display:block;color:#536247;line-height:1.5}.source-title:hover{text-decoration:underline}.source-text{font-size:12px;line-height:1.7;color:#838d77;margin:9px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.source-card details{font-size:10px;color:#98a08d;margin-top:8px}.source-card summary{cursor:pointer}.source-card details p{font-size:11px;line-height:1.7;color:#848d77;margin:7px 0 0}.warning{font-size:11px;line-height:1.7;background:#f1eade;border-left:2px solid #b99869;padding:11px 14px;color:#94805f;margin-top:18px}.quick-replies{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.quick-replies button{border:1px solid #d8dfcb;border-radius:20px;padding:7px 13px;background:#fffef8;color:#6f7c60;font-size:11px}.quick-replies button:hover{background:#e8eddf}.message-actions{display:flex;gap:12px;margin-top:12px}.copy-button{border:0;background:none;color:#a0a793;font-size:10px;padding:4px 0}.copy-button:hover{color:var(--accent)}.loading{max-width:800px;margin:0 auto 25px;display:flex;align-items:center;gap:12px}.loading div{display:flex;gap:3px}.loading div span{width:4px;height:4px;border-radius:100%;background:#9aab85;animation:pulse 1.2s infinite}.loading div span:nth-child(2){animation-delay:.15s}.loading div span:nth-child(3){animation-delay:.3s}.loading p{font-size:11px;color:#9aa58b}.icon-button{border:0;background:transparent;display:grid;place-items:center;width:32px;height:32px;border-radius:5px;font-size:25px;color:#879178}.icon-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5}.mobile-only{display:none}.scrim{position:fixed;inset:0;z-index:25;background:#1b2a1d66;border:0}.about-dialog,.access-dialog{border:1px solid #dce1d2;border-radius:16px;background:#fafbf5;max-width:550px;width:calc(100% - 32px);padding:30px 32px;color:var(--ink);max-height:85dvh;overflow:auto;box-shadow:0 20px 80px #253a2220}.about-dialog::backdrop,.access-dialog::backdrop{background:#25312266;backdrop-filter:blur(3px)}.dialog-top{display:flex;align-items:center;justify-content:space-between}.dialog-kicker{font-size:9px;letter-spacing:1.4px;color:#a0a58f}.about-dialog h2,.access-dialog h2{font-family:Georgia,serif;font-size:34px;font-weight:400;letter-spacing:-1px;line-height:1.2;margin:20px 0 18px}.about-dialog>p,.access-dialog>p{font-size:13px;color:#838d78;line-height:1.8}.base-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #dee5d4;border-bottom:1px solid #dee5d4;padding:20px 0;margin:22px 0;gap:10px}.stat strong{display:block;font-family:Georgia,serif;font-size:29px;font-weight:400;color:var(--accent)}.stat span{display:block;font-size:10px;color:#929c83;line-height:1.5;margin-top:5px}.about-rules h3{font-size:12px;font-weight:500;margin:20px 0 5px}.about-rules p{font-size:12px;color:#929b85;line-height:1.8;margin:0}.text-button{border:0;background:none;text-decoration:underline;font-size:11px;color:#9d7e64;padding:0;margin-top:24px}.access-dialog input{display:block;width:100%;border:1px solid #ccd7bf;padding:13px;border-radius:7px;margin:8px 0;background:white}.access-dialog label{font-size:12px}.access-submit{border:0;background:var(--accent);color:white;border-radius:7px;padding:12px 18px;font-size:13px}.access-dialog #access-error{font-size:12px;color:#ae5c40;min-height:18px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:12px 18px;background:#374531;color:white;font-size:12px;border-radius:8px;box-shadow:0 5px 25px #0002;z-index:60}.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}.skip{position:fixed;top:-80px;left:10px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}@keyframes pulse{50%{opacity:.25}}@keyframes appear{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(min-width:1450px){.welcome{margin-top:80px}.topbar,.workspace{padding-left:65px;padding-right:65px}.house-drawing{width:270px}.suggestions button{min-height:145px}.suggestions-label{margin-top:47px}}
@media(max-width:1150px){:root{--sidebar:230px}.sidebar{padding:28px 15px 20px}.brand{font-size:19px}.brand small{font-size:6px}.topbar{padding:0 25px}.workspace{padding:0 25px}.composer-area{padding:15px 25px}.house-drawing{width:180px;margin-right:0}.hero-text h1{font-size:54px}.welcome{margin-top:40px}.hero-description{font-size:12px}.suggestions button{padding:18px 14px}.suggestions strong{font-size:12px}.how-it-works{gap:6px;font-size:9px}.step-link{width:15px}.topbar-title{font-size:11px}}
@media(max-width:850px){.house-drawing{width:140px}.hero-text h1{font-size:47px}.desktop-only{display:none}.hero-description{max-width:340px}.suggestions{gap:8px}.suggestions button{min-height:145px;padding:15px 10px}.suggestions strong{font-size:11px}.card-category{font-size:7px}.status-button{font-size:9px}.topbar-title{font-size:10px}.topbar{gap:8px}.topbar-left{gap:8px}.how-it-works{flex-wrap:wrap;row-gap:8px}.composer-hint{font-size:8px}}
@media(max-width:700px){:root{--sidebar:270px}.sidebar{transform:translateX(-100%);transition:transform .2s ease-out;padding:27px 22px}.sidebar.open{transform:none}.brand{font-size:22px}.brand small{font-size:7px}.main{margin:0;width:100%;height:100dvh}.mobile-only{display:grid}.topbar{height:62px;padding:0 17px;gap:5px}.topbar-title{font-size:11px;max-width:170px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.status-button{font-size:8px;gap:5px;padding:5px 0}.pilot-tag{display:none}.workspace{padding:0 23px}.welcome{margin-top:33px}.welcome-kicker{font-size:8px;letter-spacing:1.6px}.hero-row{gap:0;position:relative}.hero-text{position:relative;z-index:2}.hero-text h1{font-size:48px;letter-spacing:-2px;line-height:1.06;margin:26px 0 19px}.hero-description{font-size:12px;max-width:310px;line-height:1.8}.house-drawing{position:absolute;width:132px;right:-11px;top:14px;opacity:.45;z-index:1}.suggestions-label{font-size:10px;margin-top:27px}.suggestions{grid-template-columns:1fr;gap:8px}.suggestions button{min-height:83px;padding:14px 17px}.card-category{font-size:7px;letter-spacing:1px;margin-bottom:7px}.suggestions strong{font-size:12px;line-height:1.5}.suggestions strong br{display:none}.card-arrow{right:18px;bottom:26px;font-size:22px}.how-it-works{font-size:8px;gap:6px;margin:24px 0 25px;line-height:1.8}.step-marker{width:16px;height:16px;font-size:7px}.step-link{width:9px;margin:0 1px}.composer-area{padding:10px 14px max(12px,env(safe-area-inset-bottom));}.composer{padding:12px 12px 10px;border-radius:11px}.composer textarea{font-size:16px;line-height:1.5;min-height:42px}.composer textarea::placeholder{font-size:12px}.composer-hint{font-size:8px;max-width:235px}.composer-footer{font-size:8px;align-items:flex-start;padding:0 5px;margin-top:9px}.mode-notice{font-size:9px;line-height:1.5;margin-bottom:7px;padding:0 7px}.messages{padding-top:12px}.message{margin:12px 0 25px}.message-content{font-size:13px;padding-left:0;line-height:1.8}.user-bubble{font-size:13px;max-width:92%;padding:13px 16px}.assistant-head{margin-bottom:12px}.source-card{padding:12px 13px}.source-text{font-size:12px}.about-dialog,.access-dialog{padding:22px}.about-dialog h2{font-size:31px}.stat strong{font-size:25px}.loading{gap:8px}.loading p{font-size:10px}.recent-block{flex:1}.sidebar-bottom{margin-top:0}.toast{max-width:calc(100% - 32px);width:max-content;bottom:20px}}
@media(max-width:370px){.topbar-title{max-width:130px}.workspace{padding:0 18px}.hero-text h1{font-size:43px}.house-drawing{width:115px;right:-8px}.how-it-works{font-size:7px;gap:4px}.step-link{width:5px}.composer-hint{max-width:205px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.user-context { margin: 12px 0; color: var(--muted, #666); overflow-wrap: anywhere; }
.user-context summary { cursor: pointer; }
.clarifying-question { flex-basis: 100%; margin: 4px 0; overflow-wrap: anywhere; }
