:root{--line:var(--border-str)}
.ask-launch63{font:500 12px/1.2 var(--sans);color:var(--ink);background:transparent;border:1px solid var(--border-str);border-radius:24px;padding:10px 14px;min-height:44px;white-space:nowrap;cursor:pointer}
.ask-launch63:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.rylome-dialog{box-sizing:border-box;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:18px;width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 32px);margin:auto;padding:28px;overflow:auto;font-family:var(--sans)}
.rylome-dialog .btn:not(.btn-ghost){background:var(--ink);color:var(--bg)}
.rylome-dialog::backdrop{background:rgba(15,19,16,.66);backdrop-filter:blur(4px)}
.rylome-dialog h2{font:400 clamp(28px,4vw,38px)/1.2 var(--serif);margin:10px 0 20px;letter-spacing:-.02em}
.rylome-dialog p{font-size:16px;line-height:1.65}
.rylome-dialog .week-note{font-size:13px;line-height:1.6;color:var(--ink-2);margin:16px 0}
.help-header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:0}
.rylome-dialog button{min-height:44px;white-space:normal}
.help-header button{font-size:13px;padding:10px 12px}
.help-answer{border-top:1px solid var(--line);padding:8px 0}
.help-answer summary{font-size:16px;line-height:1.5;cursor:pointer;min-height:44px;align-content:center;padding-right:12px}
.help-answer p{color:var(--ink-2);margin:10px 0 18px}
#help-search{box-sizing:border-box;width:100%;padding:12px;margin:8px 0;font:16px var(--sans);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px}
@media(max-width:600px){.topbar-in{gap:6px;padding-inline:16px}.topbar .brand-tag{display:none}.topbar .brand-mark{height:24px!important}.topbar .icon-btn{min-width:44px;min-height:44px}.topbar .acctchip{padding-inline:6px;min-width:44px;min-height:44px}.ask-launch63{font-size:11px;padding:8px}.rylome-dialog{padding:20px}}
@media(prefers-reduced-motion:reduce){.rylome-dialog *{animation:none!important;transition:none!important}}
.chat-consent{display:flex;align-items:flex-start;gap:12px;font-size:14px;line-height:1.6;margin:20px 0}
.chat-consent input{width:20px;height:20px;flex:0 0 20px;margin-top:2px;accent-color:var(--ink)}
#rylome-chat textarea{box-sizing:border-box;width:100%;display:block;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font:16px/1.6 var(--sans);padding:12px;margin:8px 0 16px;resize:vertical}
.chat-log{max-height:36dvh;overflow:auto;overscroll-behavior:contain}
.chat-message{border:1px solid var(--line);padding:16px;border-radius:12px;margin:12px 0;overflow-wrap:anywhere}
.chat-message.user{background:color-mix(in oklab,var(--ink) 6%,var(--bg));margin-left:20px}
.chat-message strong{font-size:13px}
.chat-message p{white-space:pre-wrap;margin:8px 0 0}
.chat-resources{display:grid;gap:8px;margin-top:16px}
.chat-resources .btn{white-space:normal;text-align:left;justify-content:flex-start;font-size:14px;padding:10px 14px}
#rylome-chat.has-messages[open]{display:flex;flex-direction:column;height:min(860px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);box-sizing:border-box;overflow:hidden}
#rylome-chat.has-messages> *{flex-shrink:0}
#rylome-chat.has-messages .chat-intro,#rylome-chat.has-messages .chat-notice,#rylome-chat.has-messages .chat-consent,#rylome-chat.has-messages .chat-starters{display:none}
#rylome-chat.has-messages .chat-log{flex:1;min-height:100px;max-height:none;margin:8px 0}
#rylome-chat.has-messages .help-header{position:static}
#rylome-chat.has-messages .help-answer{margin:4px 0}
#rylome-chat.has-messages .help-answer[open]{max-height:28dvh;overflow:auto}
#rylome-chat.has-messages #chat-status{font-size:12px;margin:4px 0 8px}
#rylome-chat.has-messages textarea{margin:4px 0 0;resize:none}
#rylome-chat.has-messages .chat-controls{margin-top:8px}
.chat-controls,.chat-starters{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
#rylome-chat a{color:var(--ink);text-decoration:underline}
#rylome-chat .btn-ghost{color:var(--ink);border-color:var(--ink);background:transparent}
#rylome-chat .help-header{position:static;background:var(--bg);z-index:2;padding-top:8px}
#rylome-chat button:disabled{opacity:.5;cursor:not-allowed}
#rylome-chat button:hover,#rylome-chat button:focus{transform:none}
#rylome-chat :focus-visible{outline:2px solid var(--ink);outline-offset:3px}
@media(max-width:500px){#rylome-chat{padding:20px}.chat-controls .btn{flex:1 1 45%;padding:10px}.chat-starters .btn{width:100%;text-align:left}.chat-message.user{margin-left:8px}}
