/* Live application blocks and the document layout. Every value is one of the site's shared appearance values (--t-*, from /appearance.json, the
 * same ones the Chat appearance tab edits), with the fallback written beside it, so changing the appearance changes blocks, tasks, chat and
 * articles together. The style contract (/style, /api/style) lists each selector below as a component of the shared scope. */
.ms-blocks,.ms-messages,.ms-tasks,.ms-thread,.msd{--ms-ink:var(--t-text,#0b0b0b);--ms-soft:var(--t-text-secondary,#52514e);--ms-muted:var(--t-text-muted,#898781);--ms-line:var(--t-border,rgba(11,11,11,.1));--ms-surface:var(--t-surface,#fff);--ms-raised:var(--t-raised,#f0efec);--ms-accent:var(--t-accent,#d97757);--ms-link:var(--t-link,#2c6bc7);--ms-radius:var(--t-block-radius,12px);--ms-font:var(--t-reply-font,system-ui,sans-serif);--ms-mono:var(--t-mono-font,ui-monospace,Menlo,monospace);--ms-size:var(--t-reply-size,16px);--ms-line-h:var(--t-reply-line,1.6);--ms-code-bg:var(--t-code-bg,#f7f7f5);--ms-code-size:var(--t-code-size,13px)}
.ms-blocks,.ms-messages,.ms-tasks,.ms-thread{font:400 var(--ms-size)/var(--ms-line-h) var(--ms-font);color:var(--ms-ink)}
.ms-p{margin:0 0 .8em}.ms-h{margin:1.2em 0 .5em;font-weight:var(--t-heading-weight,600);line-height:1.25}.ms-list{margin:0 0 .8em;padding-left:1.4em}.ms-checklist{list-style:none;padding-left:.2em}
.ms-inline{font:var(--ms-code-size) var(--ms-mono);background:var(--ms-code-bg);border-radius:6px;padding:.1em .35em}
.ms-code{margin:0 0 .9em;border:1px solid var(--ms-line);border-radius:var(--ms-radius);background:var(--ms-code-bg);overflow:hidden}
.ms-code-bar{display:flex;justify-content:space-between;align-items:center;padding:4px 8px 4px 12px;border-bottom:1px solid var(--ms-line);color:var(--ms-muted);font:12px var(--ms-font)}
.ms-code pre{margin:0;padding:12px;overflow:auto;white-space:pre;font:var(--ms-code-size)/var(--t-code-line,1.5) var(--ms-mono);tab-size:2}
.ms-quote{margin:0 0 .9em;padding:.1em 1em;border-left:3px solid var(--ms-line);color:var(--ms-soft)}.ms-img{max-width:100%;border-radius:var(--ms-radius)}.ms-hr{border:0;border-top:1px solid var(--ms-line);margin:1.4em 0}
.ms-table{overflow:auto;margin:0 0 .9em}.ms-table table{border-collapse:collapse;width:100%}.ms-table th,.ms-table td{border-bottom:1px solid var(--ms-line);padding:6px 10px;text-align:left}
.ms-card{border:1px solid var(--ms-line);border-radius:var(--ms-radius);background:var(--ms-surface);padding:12px 14px;margin:0 0 .9em}
.ms-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:6px}.ms-title{font-weight:600}.ms-sub{color:var(--ms-soft);font-size:.9em}.ms-notes{white-space:pre-wrap;margin-top:6px}
.ms-kv{display:flex;gap:10px;font-size:.92em}.ms-k{color:var(--ms-muted);min-width:5em}.ms-v{overflow-wrap:anywhere}
.ms-chip{display:inline-block;font-size:12px;line-height:1;padding:4px 8px;border-radius:999px;background:var(--ms-raised);color:var(--ms-soft)}.ms-warn{color:#a15c00}.ms-bad{color:#b3261e}
.ms-st-succeeded{background:rgba(47,158,91,.15);color:#1d6b3d}.ms-st-failed,.ms-st-refused,.ms-st-invalid{background:rgba(179,38,30,.12);color:#b3261e}.ms-st-uncertain,.ms-st-pending{background:rgba(161,92,0,.14);color:#a15c00}
.ms-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px;font-size:12px;color:var(--ms-muted)}.ms-when{color:var(--ms-muted)}
.ms-link{color:var(--ms-link);text-decoration:underline;font-size:12px}
.ms-btn{font:inherit;font-size:.9em;border:1px solid var(--ms-line);background:var(--ms-surface);color:var(--ms-ink);border-radius:999px;padding:6px 14px;cursor:pointer;text-decoration:none;display:inline-block}
.ms-btn:hover{background:var(--ms-raised)}.ms-btn:disabled{opacity:.5;cursor:default}.ms-primary{background:var(--ms-ink);color:var(--ms-surface);border-color:var(--ms-ink)}.ms-primary:hover{background:var(--ms-ink);opacity:.88}.ms-quiet{border-color:transparent;color:var(--ms-soft);padding:2px 8px;font-size:12px}.ms-danger{color:#b3261e}
.ms-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.ms-note{margin-top:8px;font-size:.9em}.ms-row{padding:4px 0;border-bottom:1px solid var(--ms-line)}
.ms-task{display:flex;gap:12px;align-items:flex-start}.ms-task input{margin-top:.35em;width:18px;height:18px;accent-color:var(--ms-accent)}.ms-task-title{font-weight:500}.ms-done .ms-task-title{text-decoration:line-through;color:var(--ms-muted)}.ms-task-notes{color:var(--ms-soft);font-size:.9em;white-space:pre-wrap}.ms-task-due{color:var(--ms-muted);font-size:.85em}
.ms-unavailable,.ms-restricted{opacity:.75;border-style:dashed}.ms-receipt{margin:0 0 .9em;font-size:.85em;color:var(--ms-muted)}
.ms-thread{margin:48px auto 64px;max-width:var(--t-column,720px);padding:0 16px;border-top:1px solid var(--ms-line);padding-top:20px}.ms-thread-head{font-weight:600;margin-bottom:12px}
.ms-msg{margin:0 0 14px}.ms-user .ms-msg-body{background:var(--t-user-bubble,rgba(11,11,11,.05));border-radius:var(--ms-radius);padding:8px 14px;margin-left:auto;max-width:85%;width:fit-content}
.ms-composer{display:flex;gap:8px;align-items:flex-end;border:1px solid var(--ms-line);border-radius:var(--ms-radius);padding:8px;background:var(--ms-surface)}
.ms-composer textarea{flex:1;border:0;outline:0;resize:vertical;min-height:2.6em;font:inherit;background:transparent;color:inherit}
.ms-tabs{display:flex;gap:6px;margin:0 0 12px}.ms-tab{font:inherit;font-size:.9em;border:0;background:transparent;color:var(--ms-soft);padding:6px 12px;border-radius:999px;cursor:pointer}.ms-tab.on{background:var(--ms-raised);color:var(--ms-ink)}
/* document layout: focus (neither sidebar), left (outline), right (context), both. The document is the middle and always the widest thing. */
.msd{--msd-side:var(--t-sidebar-width,260px);display:grid;grid-template-columns:var(--msd-left,0) minmax(0,1fr) var(--msd-right,0);min-height:100vh;transition:grid-template-columns .18s ease}
.msd[data-layout=left]{--msd-left:var(--msd-side,260px)}.msd[data-layout=right]{--msd-right:var(--msd-side,300px)}.msd[data-layout=both]{--msd-left:var(--msd-side,260px);--msd-right:var(--msd-side,300px)}
.msd-side{overflow:hidden;min-width:0;font:400 14px/1.45 var(--ms-font);color:var(--ms-soft);background:var(--t-sidebar,#f9f9f7)}.msd-side>div{padding:56px 16px 24px;width:var(--msd-side,260px);box-sizing:border-box;position:sticky;top:0;max-height:100vh;overflow:auto}
.msd-left{border-right:1px solid var(--ms-line)}.msd-right{border-left:1px solid var(--ms-line)}.msd-main{min-width:0}
.msd-side h4{margin:0 0 8px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--ms-muted)}.msd-side a{display:block;color:var(--ms-ink);text-decoration:none;padding:3px 0}.msd-side a:hover{color:var(--ms-accent)}.msd-side .l2{padding-left:12px;color:var(--ms-soft)}.msd-side .l3{padding-left:24px;color:var(--ms-soft)}
.msd-bar{position:fixed;top:10px;right:12px;z-index:30;display:flex;gap:4px;background:var(--ms-surface);border:1px solid var(--ms-line);border-radius:999px;padding:3px}
.msd-bar button{font:13px var(--ms-font);border:0;background:transparent;color:var(--ms-soft);border-radius:999px;padding:6px 12px;cursor:pointer}.msd-bar button.on{background:var(--ms-raised);color:var(--ms-ink)}
.msd-prop{display:flex;justify-content:space-between;gap:8px;padding:3px 0;border-bottom:1px solid var(--ms-line)}.msd-prop span:last-child{color:var(--ms-ink);overflow-wrap:anywhere;text-align:right}
@media (max-width:900px){
  .msd,.msd[data-layout]{display:block}
  .msd-side{position:fixed;top:0;bottom:0;z-index:40;width:min(86vw,320px);transform:translateX(-105%);transition:transform .18s ease;box-shadow:0 0 40px rgba(0,0,0,.2)}.msd-right{right:0;left:auto;transform:translateX(105%)}
  .msd[data-layout=left] .msd-left,.msd[data-layout=both] .msd-left{transform:none}.msd[data-layout=right] .msd-right,.msd[data-layout=both] .msd-right{transform:none}
  .msd-side>div{width:auto;position:static}.ms-thread{margin-top:32px}.msd-bar{top:6px;right:8px}
}
.tk-live{margin:28px 16px 8px}.tk-live-h{font-size:15px;margin:0 0 10px;font-weight:600}.task-words.ms-blocks{white-space:normal}
