.journey-hero{background:var(--lb-surface-raised);border-radius:12px;padding:38px 42px;display:grid;grid-template-columns:1.5fr 1fr;gap:35px;color:var(--lb-text);margin:0 0 34px}.journey-hero .eyebrow{color:var(--lb-text-strong)}.journey-hero h2{font-size:34px;font-weight:500;line-height:1.5;margin:16px 0}.journey-hero p{color:var(--lb-text-secondary);line-height:1.9;margin-bottom:22px}.journey-note{border-left:1px solid var(--lb-border);padding:12px 0 0 35px;align-self:center}.journey-note>span{letter-spacing:6px;font-size:var(--lb-text-xs);color:var(--lb-text-strong)}.journey-note p{font-size:21px;line-height:1.8;margin:15px 0}.journey-note small{color:var(--lb-text-strong);font-size:var(--lb-text-xs)}.journey-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.journey-card{padding:22px 18px;background:white;border:1px solid var(--line);border-radius:9px;display:flex;flex-direction:column;gap:14px;min-width:0}.journey-card .num{font-size:var(--lb-text-xs);letter-spacing:1.8px;color:var(--lb-text-muted)}.journey-card h3{font-size:18px;font-weight:550}.journey-card p{font-size:var(--lb-text-xs);line-height:1.8;min-height:65px}.journey-card button{margin-top:auto;text-align:left}.journey-status{font-size:var(--lb-text-xs);color:var(--lb-text-muted);line-height:1.7;overflow-wrap:anywhere}.brand-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(230px,1fr);gap:24px;align-items:start}.brand-note{position:static;width:auto;height:auto;display:block;background:var(--lb-primary-fill);color:var(--lb-primary-text);border:0;border-radius:10px;padding:30px;margin:0}.brand-note h2{font-size:27px;font-weight:500;line-height:1.6;margin:16px 0}.brand-note p{font-size:13px;line-height:2;color:var(--lb-text-muted)}.brand-note hr{border:0;border-top:1px solid var(--lb-border-strong);margin:25px 0}.oauth-primary{margin:24px 0}.developer-settings{padding-top:15px;border-top:1px solid var(--line)}.developer-settings summary{cursor:pointer;font-size:var(--lb-text-xs);color:var(--lb-text-muted)}.developer-settings>p,.developer-settings>a{font-size:var(--lb-text-xs);line-height:1.8;margin-top:12px}.developer-settings a{display:inline-block;color:var(--lb-primary-text)}select{width:100%;border:1px solid var(--line);border-radius:6px;padding:12px;background:white;color:var(--ink);font:inherit}#aiStatus{min-height:40px;line-height:1.8;margin:10px 0}button:disabled{cursor:not-allowed;opacity:.5}.brand-layout input,.brand-layout textarea{box-sizing:border-box;width:100%}.section{min-width:0}#brandSaved{margin-top:12px}#brandForm .hint{line-height:1.8;margin-top:12px}
@media(max-width:1200px){.journey-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:850px){.brand-layout{grid-template-columns:1fr}.brand-note{display:none}.journey-hero{padding:28px;gap:20px}.journey-hero h2{font-size:28px}.journey-note{padding-left:20px}}@media(max-width:550px){.journey-grid{grid-template-columns:1fr}.journey-hero{grid-template-columns:1fr;padding:25px}.journey-note{display:none}.journey-hero h2{font-size:27px}.journey-card p{min-height:0}.journey-card{gap:10px}.journey-card button{margin-top:5px}.intro h1{line-height:1.5}nav{max-width:100%}}

.bot-details{margin-top:18px;border-top:1px solid var(--lb-border-strong);padding-top:12px}.bot-details p{margin:10px 0;white-space:normal}.bot-details blockquote{margin:16px 0;padding:13px 16px;border-left:2px solid var(--lb-border);background:var(--lb-primary-fill);font-size:13px;line-height:1.9}.bot-details summary{cursor:pointer;font-size:var(--lb-text-xs);padding:10px 0}.bot-prompt{white-space:pre-wrap;overflow-wrap:anywhere;max-height:380px;overflow:auto;font:13px/1.9 inherit;padding:12px;background:white}.bot-details button{margin-top:10px}

/* Shared dark theme for the writing workspace. */
:root{--ink:var(--lb-text);--paper:var(--lb-surface);--line:var(--lb-divider);--muted:var(--lb-text-secondary);--accent:var(--lb-text-strong)}
body{background:var(--paper);color:var(--ink)}
aside{background:var(--lb-bg);border-right:1px solid var(--line)}
nav button{color:var(--lb-text-secondary)}nav button.active{background:var(--lb-surface-raised);color:var(--accent)}
p,.hint,.note,.saved,.panel-desc,.excerpt,.card-top,.content-head small,.seg-head,.footer,.mode .num,.journey-card .num{color:var(--muted)}
.panel,.card,.journey-card,.schedule-row,.empty,.mode,dialog,.bot-prompt{background:var(--lb-surface);color:var(--ink);border-color:var(--line)}
input,textarea,select,.brief-output,.seg,.lengths label{background:var(--lb-bg);color:var(--ink);border-color:var(--lb-border)}
input::placeholder,textarea::placeholder{color:var(--lb-text-muted);opacity:1}
input:focus,textarea:focus,select:focus{outline:2px solid var(--lb-focus);outline-offset:2px;border-color:var(--accent)}
.button{background:var(--lb-surface-raised);color:var(--ink);border-color:var(--lb-border)}
.button.dark,.button.lime{background:var(--lb-primary-fill);color:var(--lb-primary-text);border-color:var(--accent);box-shadow:var(--lb-primary-shadow)}
.button:hover:not(:disabled){filter:brightness(1.12)}
.tab{color:var(--lb-text-secondary)}.tab.selected,.mode.selected{background:var(--lb-surface-raised);color:var(--lb-text);border-color:var(--lb-border-strong)}
.card:hover{border-color:var(--lb-border)}.tag,.badge,.avatar{background:var(--lb-surface-raised);color:var(--lb-text-strong);border-color:var(--lb-border)}
.hero,.journey-hero,.brand-note,.live-note,.bot-details blockquote{background:var(--lb-surface);color:var(--lb-text)}
.hero p,.step,.brand-note p,.journey-hero p,.journey-note small,.journey-note>span,.journey-hero .eyebrow{color:var(--lb-text-secondary)}
.journey-status,.live-message,.status.approved{color:var(--lb-text-strong)}.status{color:var(--lb-warning)}
.link-btn,.connection-grid a,.guide-link,.developer-settings a,.footer a{color:var(--lb-text-strong)}
.developer-settings summary,.close{color:var(--lb-text-secondary)}
.bot-details,.brand-note hr,.journey-note{border-color:var(--lb-border)}
.toast{background:var(--lb-primary-fill);color:var(--lb-primary-text);border:1px solid var(--lb-border-strong)}
dialog::backdrop{background:var(--lb-bg)}::selection{background:var(--lb-selected-bg);color:var(--lb-text)}
.mode-summary,.notice{background:var(--lb-surface);color:var(--lb-text-secondary);border-color:var(--lb-border)}
.platform-switch button{background:var(--lb-surface-raised);color:var(--lb-text);border-color:var(--lb-border)}
.platform-switch button.selected{background:var(--lb-selected-fill);color:var(--lb-selected-text);border-color:var(--accent)}

.writing-advanced{margin-top:18px;border:1px solid var(--line);border-radius:7px;padding:14px 16px}.writing-advanced summary{cursor:pointer;color:var(--lb-text-strong);font-size:13px}.writing-advanced[open] summary{margin-bottom:12px}#topic{font-size:16px;min-height:150px;line-height:1.8}#generateAI{font-size:16px;min-height:50px}

.reply-copy{white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 0}.reply-item{border-bottom:1px solid var(--lb-divider);padding:20px 0}.reply-item:first-child{padding-top:10px}.reply-item textarea{width:100%;margin:12px 0;resize:vertical}.reply-item .connection-actions{flex-wrap:wrap}.reply-item .hint{margin:10px 0}#replyPost,#replyProvider{width:100%;min-width:0;max-width:100%;background:var(--lb-bg);color:var(--lb-text);padding:12px;border:1px solid var(--lb-border);border-radius:6px}#replies .workspace>div{min-width:0}#replyHistory{white-space:pre-wrap;overflow-wrap:anywhere;max-height:300px;overflow:auto}#replies .inline-check input{width:auto}#replies button{white-space:normal}
.ops-summary{margin-bottom:24px}.ops-summary p{margin-top:10px}.ops-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.ops-grid>*{min-width:0}.ops-result{border-top:1px solid var(--line);padding:22px 0;display:grid;gap:12px;overflow-wrap:anywhere}.ops-result p{white-space:pre-wrap}.ops-result textarea{min-width:0;width:100%}#operations select{width:100%;max-width:100%}#operations button{white-space:normal}#opsMessage{color:var(--accent);white-space:pre-wrap}@media(max-width:1000px){.ops-grid{grid-template-columns:1fr}}

.version-settings{border-top:1px solid var(--lb-divider);margin-top:24px;padding-top:20px}.version-settings select{width:100%;min-width:0}.version-results .cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.version-results .card{min-width:0;padding:16px}.version-results .button{margin-top:8px;width:100%}.version-results .excerpt{max-height:240px;overflow:auto}.version-settings .form-row>div{min-width:0}@media(max-width:900px){.version-results .cards{grid-template-columns:1fr}}

.writer-selection{border:1px solid var(--lb-divider);border-radius:12px;padding:24px;margin:16px 0 24px}.article-reader{padding:32px;background:var(--lb-surface);border:1px solid var(--lb-border);border-radius:14px;margin:28px 0;max-width:100%;overflow-wrap:anywhere}.reader-heading{display:flex;justify-content:space-between;gap:20px;align-items:start}.reader-heading h2{font-size:26px;line-height:1.5;margin:8px 0 24px}.reader-post{padding:22px 0;border-top:1px solid var(--lb-divider)}.reader-post p{white-space:pre-wrap;font-size:19px;line-height:1.95;max-width:760px;margin:10px 0}.reader-index{color:var(--lb-text-strong);font-weight:700}#articleMessage:empty{display:none}.nav-help{display:block;color:var(--lb-text-strong);padding:14px;text-decoration:none}#writer .writing-advanced .form-row:has(#reader){display:none}@media(max-width:700px){.article-reader{padding:20px}.reader-post p{font-size:17px}.writer-selection{padding:16px}.reader-heading h2{font-size:22px}}
/* Liubai design system v1 — frame rules (tokens only). The Threads post preview keeps Threads' own neutral look. */
nav button{justify-content:flex-start;gap:var(--lb-space-3);min-height:var(--lb-touch)}
nav button.active{background:var(--lb-selected-bg);color:var(--lb-text-strong);font-weight:var(--lb-weight-semibold);box-shadow:inset 2px 0 0 var(--lb-marker)}
.journey-hero{background:var(--lb-surface);border:1px solid var(--lb-divider);color:var(--lb-text)}
[data-liubai-theme-toggle]{margin-right:var(--lb-space-2)}

/* Narrow phones: let the two-card grid shrink below the text's min-content width. */
@media(max-width:750px){.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mode{min-width:0;overflow-wrap:anywhere}}
/* Help text is a navigation item, not an icon-sized slot. */
nav a[href="/usage-guide.html"],nav a[href="guide.html"] {display:inline-flex;align-items:center;flex:0 0 auto;width:auto;min-width:var(--lb-touch);min-height:var(--lb-touch);white-space:nowrap;padding-inline:var(--lb-space-3);}
.footer a {display:inline-flex;align-items:center;min-height:var(--lb-touch);}
