/* Reading layer: luminous lavender, soft grain and clear, warm text. */
body.flow{--mayrose-pink:#f5b1df;--mayrose-lavender:#d6a0f3;--mayrose-mark:linear-gradient(110deg,var(--mayrose-pink),var(--mayrose-lavender));--bg:#20182d;--ink:#eee5eb;--muted:#d0bce4;--dim:#bca2d0;--accent:#eea1dd;--line:#dac3ea19;background:var(--bg);font-size:18px}
.flow .ambient{pointer-events:none}
.flow [data-palette="violet"]{--sky:#1b132b;--fold:#9467d1;--glow:#e894ce;--glint:#a8b9ed}
.flow .atmosphere{background:radial-gradient(ellipse at 88% 88%,color-mix(in srgb,var(--glow) 18%,transparent),transparent 62%),radial-gradient(ellipse at 67% 65%,color-mix(in srgb,var(--fold) 34%,var(--sky)),var(--sky) 90%)}
/* Broad translucent folds add depth without hard edges behind the text. */
.flow .atmosphere:after{content:"";position:absolute;inset:-8%;pointer-events:none;background:radial-gradient(ellipse 110% 74% at 16% -12%,#100b2645 34%,#100b262e 46%,#bea2f126 49%,#deb3ec14 53%,transparent 63%),radial-gradient(ellipse 78% 94% at 111% 118%,transparent 39%,#ecc4e91b 49%,#9c79d71a 52%,#170b3226 60%,transparent 68%);filter:blur(1.4cqw);opacity:calc(.3 + var(--scene-depth,.65)*.8)}
.flow .atmosphere-field{opacity:calc(.46 + var(--scene-depth,.65)*.48)}
.flow .light-one{opacity:.86}.flow .light-two{opacity:.58}.flow .light-three{opacity:.64}
.flow .atmosphere-shade{background:radial-gradient(ellipse at 32% 45%,#19112b30,transparent 58%),linear-gradient(115deg,#140e2545,transparent 68%)}
.flow .atmosphere-texture{opacity:calc(var(--scene-texture,.045)*3.6);background-size:180px 180px;mix-blend-mode:soft-light}
.flow .topbar{background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;isolation:isolate}
.flow .topbar:before{content:"";display:block;position:absolute;inset:0 0 -24px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#21172eef,#21172ec0 60%,#21172e00);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);mask-image:linear-gradient(#000 65%,transparent);-webkit-mask-image:linear-gradient(#000 65%,transparent)}
.flow .topbar:after{display:none}
.flow .wordmark{background:var(--mayrose-mark);opacity:1;filter:drop-shadow(0 0 14px #e988d62b)}
.flow .location,.flow .today-link,.flow .menu-button{color:#dfb7ed}
.flow .workspace{max-width:760px}
.flow .messages{padding-top:28px;padding-right:0}
.flow .message{margin-bottom:36px}
.flow .message.assistant{padding:0}
.flow .message.user{margin-left:6%;padding:18px 24px;background:#b5a3bd0b;border:0;border-radius:18px;backdrop-filter:none;box-shadow:none}
.flow .message-body,.flow .source-content{font-family:"Times New Roman",Times,"Liberation Serif",serif;font-size:21px;line-height:1.7;font-weight:400;color:#e6dfe6;text-shadow:0 1px 2px #10081b70;letter-spacing:0;-webkit-font-smoothing:antialiased}
.flow .message-body p{white-space:normal;margin:0 0 1em}
.flow .message-body> :first-child{margin-top:0}.flow .message-body> :last-child{margin-bottom:0}
.flow .message-body h2,.flow .message-body h3,.flow .message-body h4,.flow .message-body h5,.flow .message-body h6{font-family:inherit;color:#f0e6ef;font-weight:600;letter-spacing:0;line-height:1.4;margin:1.6em 0 .65em}
.flow .message-body h2{font-size:1.3em}.flow .message-body h3{font-size:1.15em}.flow .message-body h4,.flow .message-body h5,.flow .message-body h6{font-size:1em}
.flow .message-body strong{font-weight:600;color:#f1e4ed}
.flow .message-body ul,.flow .message-body ol{margin:.8em 0 1.2em;padding-left:1.4em}
.flow .message-body li{padding-left:.2em;margin:.45em 0}
.flow .message-body li>p{margin:.35em 0}.flow .message-body li ul,.flow .message-body li ol{margin:.35em 0 .65em}
.flow .message-body li::marker{color:#a39aa8}
.flow .message-body a{color:#e4ade5;text-decoration-color:#e4ade555;text-underline-offset:4px;text-decoration-thickness:1px}
.flow .message-body blockquote{margin:1.2em 0;padding:.2em 0 .2em 1.1em;border-left:2px solid #b4a0c240;color:#d5c4df}
.flow .message-body hr{border:0;height:1px;background:#ccc0d016;margin:1.8em 0}
.flow .message-body pre{background:#15131870;padding:18px 20px;border:0;border-radius:12px;color:#d8cce5;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.65;text-shadow:none;margin:1.2em 0}
.flow .message-body code{font-size:.82em;background:#b7a5c010;border-radius:4px;padding:.1em .25em;text-shadow:none}
.flow .message-body pre code{font-size:inherit;background:transparent;padding:0}
.flow .message-head{font-size:12px;letter-spacing:.35px;color:#c5a5d6;margin-bottom:12px}
.flow .message-more{color:#d4afe6}
.flow .reading-table{width:100%;margin:1.2em 0}
.flow .reading-table table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.9em;line-height:1.5}
.flow .reading-table th,.flow .reading-table td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid #c5b6ce18;overflow-wrap:anywhere}
.flow .reading-table th{font-weight:600;background:#b4a0c007;color:#d0c6d4}
.flow .imported-context{margin:1.3em 0 0;color:#c5abd6;font:12px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.flow .imported-context summary{cursor:pointer;min-height:36px;display:list-item;align-content:center}
.flow .imported-context pre{font-size:13px;color:#cbb7d8;margin-top:8px}
.flow .has-messages .composer-wrap{border:0;padding-top:30px;padding-bottom:24px}
.flow .composer textarea{color:#f2e9f1;text-shadow:0 1px 3px #160a2580,0 0 20px #e8b3f218}
.flow .composer textarea::placeholder,.flow .has-messages .composer textarea::placeholder{color:#e9dceb;opacity:1}
.flow .composer:focus-within textarea::placeholder{color:#e9dceb}
.flow .has-messages .composer textarea{font-size:24px}
.flow .inviting-cursor{background:var(--mayrose-mark);box-shadow:0 0 12px #b69bd74a}
.flow .thinking-mode,.flow .project-selector{color:#d5ade9}
.flow #send-button{color:#edb5e7;border-color:#b6a4c32b;background:#b39bc409}
.flow .sidebar{top:10px;bottom:10px;left:10px;width:282px;border:0;border-radius:20px;background:linear-gradient(160deg,#29232ff0,#221e29f2);backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);box-shadow:12px 0 50px #08070c26;padding:22px 16px}
.flow .drawer-head{color:#dbb7ea;margin-bottom:22px;font-size:14px}
.flow .sidebar .new-thought{border:0;background:#bc9ed10a;color:#efd8f3;border-radius:10px;font-weight:400}
.flow .sidebar .nav-button,.flow .sidebar .project-link{color:#d8c3e4;font-weight:400;font-size:15px;min-height:42px;padding:10px 14px}
.flow .sidebar .project-link.active{background:#b99dcb12;color:#f2d9f2}
.flow .sidebar .project-link:hover,.flow .sidebar .nav-button:hover{background:#b99dcb0d;color:#f2d9f2}
.flow .sidebar .section-label{color:#c5a2d6;letter-spacing:1.3px;font-size:11px;padding-top:28px}
.flow .sidebar .sidebar-bottom{padding-top:24px}
.flow .inline-menu{background:#282131ed;border:0;box-shadow:0 12px 35px #08050f35}
.flow dialog{background:linear-gradient(150deg,#29242e,#201d26);border-color:#c1abcd20}
.flow .workspace-footer .status,.flow .workspace-footer button{color:#c7a9d8}
@media(min-width:900px) and (hover:hover) and (pointer:fine){.flow.sidebar-pinned .main{margin-left:302px}.flow .sidebar:not([hidden]){animation:quiet-drawer .18s ease-out}}
@keyframes quiet-drawer{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:700px){
 .flow .workspace{width:calc(100% - 40px)}
 .flow .message-body,.flow .source-content{font-size:20px;line-height:1.7}
 .flow .message.user{margin-left:12px;padding:16px 18px}
 .flow .message{margin-bottom:30px}.flow .message-body h2{font-size:1.2em}
 .flow .reading-table th,.flow .reading-table td{padding:8px 5px;font-size:.9em}
 .flow .sidebar{width:min(282px,calc(100vw - 28px))}
 .flow .has-messages .composer textarea{font-size:22px}
}
@media(prefers-reduced-motion:reduce){.flow .sidebar:not([hidden]){animation:none}}

/* One text origin: the idle invitation, native caret and first letter align. */
.flow .workspace.is-empty .composer-wrap{width:min(100%,560px);margin-inline:auto}
.flow .workspace .floating-field,.flow .workspace.is-empty .floating-field,.flow .workspace.is-empty .composer.has-text .floating-field{position:relative;padding:8px 52px 8px 20px;min-height:52px}
.flow .composer textarea,.flow .project-landing .composer textarea,.flow .workspace.is-empty .composer textarea:placeholder-shown,.flow .workspace.is-empty .composer textarea:not(:placeholder-shown){text-align:left;font-size:25px;line-height:1.55;letter-spacing:normal;min-height:35px;caret-color:var(--mayrose-pink)}
.flow .inviting-cursor,.flow .workspace.is-empty .inviting-cursor,.flow .has-messages .inviting-cursor{left:20px;top:13px;height:28px;width:1px;animation:none;opacity:.85;box-shadow:0 0 10px #b9a2cd50}
.flow .composer:not(.has-text) textarea::placeholder{padding-left:10px;transition:opacity .18s ease}
.flow .composer:focus-within textarea::placeholder{opacity:0}
.flow .composer:focus-within .inviting-cursor,.flow .composer.has-text .inviting-cursor{opacity:0;animation:none}
.flow .composer-bottom,.flow .workspace.is-empty .composer-bottom{padding-inline:20px;justify-content:flex-start;gap:20px}
.flow .composer.engaged .composer-bottom{opacity:1;visibility:visible;pointer-events:auto}
.flow .inline-menu{width:280px;max-width:calc(100vw - 24px)}
.flow .inline-menu button>span:first-child{min-width:0}
.flow .inline-menu button small{display:block;font-size:13px;line-height:1.5;color:#d2bddf;margin-top:4px;font-weight:400}
.flow .header-actions{display:flex;align-items:center;gap:16px;min-width:0}
.flow .work-indicator{font-size:13px;color:#d9b6e7;min-height:44px;padding:0 4px;white-space:nowrap}
.flow .work-indicator.is-working:before{content:"";display:inline-block;width:5px;height:5px;margin-right:7px;border-radius:50%;background:#b6c8bd;animation:work-breathe 2.5s ease-in-out infinite}
.flow .stop-work{font-size:14px;color:#e4b5e8;padding:8px 14px;min-height:44px;margin-left:auto}
.flow .pending{display:flex;align-items:center;gap:10px}
/* Approved Mayrose curves: 65% of the 24px audition mark. */
.flow .daily-start{width:100%;margin:10px 0 0;padding:0 20px;display:flex;align-items:center;gap:8px;color:#debee9}
.flow .daily-destination{display:flex;align-items:center;gap:10px;min-width:0;text-align:left;min-height:44px;padding:6px 0;color:#dcbfe4;font:17px/1.55 "Times New Roman",Times,serif}
.flow .daily-destination>span:last-child{min-width:0;overflow-wrap:anywhere}
.flow .daily-destination:hover,.flow .daily-destination:focus-visible{color:#f5d4ee}
.flow .daily-curves{position:relative;display:block;flex:0 0 15.6px;width:15.6px;height:15.6px;opacity:.85;filter:drop-shadow(0 0 3px #d8b9ee18)}
.flow .daily-curves i{display:block;position:absolute;top:1.95px;width:6.5px;height:11.7px;background:var(--mayrose-mark);border-radius:100% 0 0 100%;mask:radial-gradient(ellipse 73% 67% at 100% 50%,transparent 65%,#000 70%);-webkit-mask:radial-gradient(ellipse 73% 67% at 100% 50%,transparent 65%,#000 70%)}
.flow .daily-curves i:first-child{left:0}
.flow .daily-curves i:last-child{right:0;transform:rotate(180deg);background:linear-gradient(290deg,var(--mayrose-pink),var(--mayrose-lavender))}
.flow .daily-dismiss{flex:0 0 44px;width:44px;min-height:44px;color:#d2aadc;font-size:18px;opacity:.5}
@media(hover:hover) and (pointer:fine){.flow .daily-dismiss{opacity:0}.flow .daily-start:hover .daily-dismiss,.flow .daily-start:focus-within .daily-dismiss{opacity:.65}}
.flow .daily-start.is-arriving .daily-destination{animation:daily-arrive 1.1s cubic-bezier(.22,.65,.25,1) both}
.flow .daily-start.is-arriving .daily-curves{animation:daily-breathe 4.6s ease-in-out both}
.flow .daily-start.is-arriving .daily-curves i{animation:daily-open 1.5s ease-out both}
.flow .daily-start.is-arriving .daily-curves i:last-child{--curve-from:1.3px}
@keyframes daily-arrive{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}
@keyframes daily-open{from{translate:var(--curve-from,-1.3px) 0}to{translate:0 0}}
@keyframes daily-breathe{0%{opacity:.35;scale:.94;filter:drop-shadow(0 0 0 #d8b9ee00)}40%{opacity:.95;scale:1;filter:drop-shadow(0 0 7px #d8b9ee77)}62%{opacity:.76;scale:.99;filter:drop-shadow(0 0 3px #d8b9ee25)}79%{opacity:1;scale:1.045;filter:drop-shadow(0 0 6px #d8b9ee55)}100%{opacity:.85;scale:1;filter:drop-shadow(0 0 3px #d8b9ee18)}}
@keyframes work-breathe{50%{opacity:.4}}
@media(max-width:700px){.flow .header-actions{gap:8px}.flow .work-indicator{font-size:12px}.flow .workspace .floating-field{padding-left:12px}.flow .inviting-cursor,.flow .workspace.is-empty .inviting-cursor,.flow .has-messages .inviting-cursor{left:12px}.flow .composer-bottom,.flow .workspace.is-empty .composer-bottom{padding-left:12px;gap:15px}.flow .composer textarea{font-size:24px}.flow .daily-start{margin-top:8px;padding-inline:12px;gap:4px}.flow .daily-destination{font-size:16px}}
@media(prefers-reduced-motion:reduce){.flow .daily-start.is-arriving .daily-destination,.flow .daily-start.is-arriving .daily-curves,.flow .daily-start.is-arriving .daily-curves i,.flow .work-indicator.is-working:before{animation:none}.flow .composer textarea::placeholder{transition:none}}
.flow .reply-error small{display:block;font-size:13px;color:#cbb3d8;line-height:1.6;margin:5px 0}
@media(max-width:700px){
 .flow .workspace .floating-field,.flow .workspace.is-empty .floating-field,.flow .workspace.is-empty .composer.has-text .floating-field{padding-left:12px}
 .flow .composer textarea,.flow .project-landing .composer textarea,.flow .workspace.is-empty .composer textarea:placeholder-shown,.flow .workspace.is-empty .composer textarea:not(:placeholder-shown),.flow .has-messages .composer textarea{font-size:24px}
}

/* A cold start must still acknowledge Send immediately. */
.flow .admission-pending{font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:12px 20px 0;color:var(--muted,#d0bce4)}

/* Compact controls grow with the reading text, without adding more UI. */
.flow .location,.flow .today-link,.flow .thinking-mode,.flow .project-selector,.flow .tab{font-size:14px}
.flow .thread-title,.flow .standalone .thread-title{font-size:15px;color:#e7c7ee}
.flow .eyebrow,.flow .mobile-project-name,.flow .status,.flow .workspace-footer button{font-size:12px}
.flow .inline-menu button,.flow .sidebar .new-thought{font-size:15px}
.flow .recent-threads button,.flow .library-row strong,.flow .research-threads strong{font-size:16px}
.flow .project-shortcuts button,.flow .library-row span,.flow .research-threads span{font-size:13px}
.flow .dialog-copy,.flow .research-settings .dialog-copy{font-size:15px}
.flow .form-row label,.flow .review-step summary,.flow .area-choices button{font-size:14px}
.flow .form-row small,.flow .settings-meta,.flow .motion-status,.flow .research-disclosure{font-size:13px}
.flow .home .lead,.flow .research-home .lead{font-size:16px}
.flow .pending{font-size:14px;color:#e1c1ed}
.flow .composer-bottom{flex-wrap:wrap;row-gap:0}
.flow .sidebar{background:linear-gradient(150deg,#30213eee,#211b30f5);box-shadow:16px 0 65px #0c071b40,inset 1px 0 #eabaf31a}
.flow .sidebar .section-label{color:#d6a9e2}
.flow .message-head,.flow .thinking-mode,.flow .project-selector,.flow .daily-destination small{letter-spacing:.1px}
@media(max-width:700px){
 .flow .topbar{gap:10px}.flow .identity{gap:10px}
 .flow .header-actions{gap:6px}.flow .work-indicator{font-size:12px}
 .flow .today-link{font-size:14px}.flow .tabs{gap:20px}
 .flow .message-body,.flow .source-content{font-size:20px}
 .flow .workspace.is-empty .composer textarea,.flow .has-messages .composer textarea{font-size:24px}
 .flow .sidebar .nav-button,.flow .sidebar .project-link{font-size:15px}
}
