/* App layout aliases for the frozen 2026-10-16 stylesheet. */
:root.myna {
 font-size:16px;
 --dialog-bg:var(--myna-surface); --dialog-surface:var(--myna-surface); --dialog-field:var(--myna-surface); --dialog-hover:var(--myna-raised); --surface:var(--myna-surface);
 --bg-top:var(--myna-canvas); --bg-bottom:var(--myna-canvas);
 --panel:var(--myna-surface); --panel-strong:var(--myna-surface);
 --orange:var(--myna-accent); --orange-border:var(--myna-accent);
 --text:var(--myna-ink); --muted:var(--myna-muted); --line:var(--myna-line);
 --button-border:var(--myna-control-line); --button-border-strong:var(--myna-muted);
 --button-fill:var(--myna-accent); --button-fill-strong:var(--myna-accent-hover); --button-fill-text:var(--myna-on-accent);
 --shadow:var(--myna-shadow); --selection-surface:var(--myna-surface); --chat-paper-ink:#191919;
}
.myna body { font-size:16px; font-family:var(--myna-font); color:var(--myna-ink); background:var(--myna-canvas); line-height:1.55; }
.myna :where(button,input,textarea,select,h1,h2,h3,h4,p,pre,code) { font-family:var(--myna-font); }
/* In a user bubble, filename links share that bubble's readable foreground. */
.myna-bubble.user .myna-document-link { color:inherit; }

.chat-document-references { display:inline; margin:0; padding:0; border:0; background:none; }
.myna .myna-conversation-row { font-family:var(--myna-font); }
.chat-list-panel.myna-chat-list { margin-top:0; }

/* Reset superseded table presentation to the source file-row specimen. */
.myna-file-browser .workspace-list-head,.myna-file-browser .workspace-entry-cell { display:none; }
.myna-file-browser .workspace-entry-main { flex:1; min-width:0; }
.myna-file-browser .workspace-entry-name { font:inherit; font-weight:400; white-space:normal; text-overflow:clip; overflow:visible; }
.myna-file-browser .workspace-entry-icon { display:inline-flex; flex:0 0 20px; width:20px; height:20px; background:none; }
.myna-file-browser .file-menu { position:static; flex:0 0 auto; }

/* Remove inherited properties absent from the canonical specimens. */
.myna .myna-bubble { justify-self:auto; width:auto; margin:0; border:0; box-shadow:none; }
.myna .myna-document-link { height:auto; min-height:auto; max-width:none; box-shadow:none; }
.myna .myna-icon-button { flex:0 1 auto; min-width:auto; min-height:auto; line-height:normal; }
.myna body::before,.myna body::after { content:none; display:none; }

/* Explicit owner exception: Sources is an underlined word at bubble bottom. */
.myna .chat-source-panel { display:block; margin:14px 0 0; padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
.myna .chat-source-toggle { display:inline; list-style:none; font:inherit; padding:0; margin:0; border:0; border-radius:0; background:none; box-shadow:none; }
.myna .chat-source-toggle::marker { content:""; }
.myna .chat-source-toggle::-webkit-details-marker { display:none; }
.myna .chat-source-toggle::before,.myna .chat-source-toggle::after { content:none; }
/* Source references stay readable inside narrow message bubbles. */
.myna .chat-source-chip,.myna .chat-source-chip span {
 white-space:normal; overflow-wrap:anywhere; overflow:visible; text-overflow:clip;
}

.myna .myna-icon-button svg { display:block; }

/* App wrappers retain their behavior without adding legacy specimen geometry. */
.myna .myna-file-browser,.myna .myna-chat-list {box-shadow:none;min-width:0;}
.myna .myna-panel-header {padding:0;border:0;}
.myna .myna-file-list-row {margin:0;border-radius:0;background:none;box-shadow:none;}
.myna .myna-workspace-file {border-radius:0;box-shadow:none;}
.myna .myna-workspace-file:hover {border-radius:8px;}
.myna .workspace-kind {display:inline-flex;width:20px;height:20px;flex:0 0 20px;padding:0;background:none;}
.myna .conversation-rows {padding:0;}
.myna .myna-conversation-row {margin:0;border:0;box-shadow:none;}
.myna .chat-list-row-title {font:inherit;}
.myna .chat-list-row-preview {font-weight:400;}
.myna .myna-composer .field {margin:0;padding:0;}
.myna .myna-composer .field>span:first-child {display:none;}
.myna .myna-composer textarea {border-radius:0;box-shadow:none;}
.myna .myna-logo {max-width:none;max-height:none;}

.myna .workspace-entry-copy {display:block;}
.myna .workspace-browser-column,.myna .workspace-file-area,.myna .workspace-body-split {min-height:0;padding:0;margin:0;}
.myna .workspace-list {padding:0;margin:0;}
.myna .workspace-message:empty {display:none;}
.myna .workspace-entry {min-height:0;}

.myna .myna-workspace-file {line-height:normal;}
.myna .myna-workspace-file strong {font-size:inherit;line-height:normal;}
.myna .myna-workspace-file small {line-height:normal;}
.myna .myna-file-browser {display:block;gap:normal;}
.myna .workspace-location {display:flex;align-items:center;gap:10px;min-width:0;}

.myna .workspace-location {padding:0;margin:0;}
.myna .workspace-list {display:block;padding:0;gap:0;}

.myna .workspace-browser-column,.myna .workspace-file-area {display:block;gap:0;}

.myna .myna-composer {display:block;gap:normal;margin:0;min-height:0;width:auto;box-shadow:none;}
.myna .myna-composer-tools {padding:0;min-height:0;height:auto;justify-content:flex-start;}
.myna .myna-composer-tools>button {margin:0;}
.myna .myna-composer-tools>.send {margin-left:auto;}

.myna .myna-composer textarea {min-height:56px;}

.myna .preview-panel :is(.preview-markdown,.preview-text,.preview-csv) {background:#fff;color:#191919;border-radius:0;color-scheme:light;}
/* Unsupported files use the app canvas, rather than a white document page. */
.myna .preview-panel .preview-unsupported { --text:var(--myna-ink); color:var(--myna-ink); }

/* Generic keyboard pan controls use the shared guide's visible focus ring. */
.myna .pdf-preview-viewport[tabindex]:focus-visible {
 outline:2px solid var(--myna-focus);
 outline-offset:4px;
}

/* Preview failures are conversational recovery, on the app chrome surface. */
.myna .preview-panel .document-preview-error {
  color:var(--myna-ink);
  background:var(--myna-raised);
  border-color:var(--myna-line);
  font-family:var(--myna-font);
}

/* Send and Stop occupy the same fixed composer action slot. */
.myna .myna-composer-tools > .composer-primary-action { display:flex; order:3; margin-left:auto; flex:0 0 40px; width:40px; height:40px; }
.myna .composer-primary-action > button { flex:0 0 40px; width:40px; height:40px; min-width:40px; min-height:40px; margin:0; }

/* Inbox controls retain their layout when mapped to shared button classes. */
.myna .scheduled-sidebar-row {
 display:grid; justify-content:stretch; gap:2px; padding:10px 44px 10px 12px;
 text-align:left; white-space:normal;
}
.myna .scheduled-output-summary {
 display:grid; grid-template-columns:minmax(0,1fr) 32px; gap:8px;
 padding:12px 0 12px 12px; border:0; border-radius:calc(var(--radius-sm) - 1px);
 background:transparent; box-shadow:none; text-align:left; white-space:normal;
}
.myna .scheduled-output-delete {
 flex:0 0 40px; width:40px; height:40px; min-width:40px; min-height:40px;
 margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none;
}
.scheduled-output-body { overflow-wrap:anywhere; }
.scheduled-output-body :is(pre,table) { display:block; max-width:100%; overflow:auto; }
/* Short stacked windows use one scroll region instead of competing panes. */
@media (max-width:1000px) and (max-height:480px) {
 .scheduled-layout { display:block; overflow:auto; overscroll-behavior:contain; }
 .scheduled-sidebar { max-height:none; overflow:visible; margin-bottom:12px; }
 .scheduled-main { display:block; overflow:visible; }
 .scheduled-output-list { overflow:visible; padding-bottom:0; }
 .scheduled-load-more { display:block; margin:10px auto 0; }
}
/* Transient delivery notices use the conversation surface and Iconoir geometry. */
.scheduled-chat-notices { display:flex; flex-direction:column; align-items:flex-start; gap:14px; max-width:100%; }
.myna .scheduled-chat-notice {
 display:flex; align-items:center; justify-content:flex-start; gap:12px; max-width:100%;
 min-height:68px; padding:12px 16px; border:0; border-radius:26px 26px 26px 6px;
 background:var(--myna-surface); color:var(--myna-ink); box-shadow:none;
}
.myna .scheduled-notice-action {
 flex:0 1 auto; min-width:0; min-height:44px; padding:10px 16px; border:0; border-radius:999px;
 background:#191919; color:#fff; box-shadow:none; text-align:left; overflow-wrap:anywhere;
 font:inherit; font-size:16px; font-weight:400; line-height:24px; white-space:normal;
}
.myna[data-myna-theme="dark"] .scheduled-notice-action { background:#fff; color:#191919; }
.scheduled-notice-timer { display:flex; flex:0 0 24px; }
.myna .scheduled-notice-countdown { width:24px; height:24px; flex:0 0 24px; stroke:currentColor; stroke-width:1.5; }
.scheduled-notice-track { opacity:.28; }
.scheduled-notice-progress { transform:rotate(-90deg); transform-origin:center; stroke-dasharray:56.549; stroke-linecap:round; animation:scheduled-notice-countdown 10s linear forwards; }
@keyframes scheduled-notice-countdown { from { stroke-dashoffset:0; } to { stroke-dashoffset:56.549; } }
@media (prefers-reduced-motion:reduce) { .scheduled-notice-progress { animation:none; stroke-dashoffset:0; } }

/* Reserve a real row for update status, keeping composer and dialogs unobscured. */
.myna #app:has(> .ui-update-notice) { display:flex; flex-direction:column; height:100dvh; min-height:0; }
.myna #app:has(> .ui-update-notice) > .app-shell { flex:1 1 auto; height:auto; min-height:0; }
.ui-update-notice { flex:0 0 auto; display:flex; align-items:center; justify-content:center; gap:16px; padding:10px 20px; background:var(--myna-surface); color:var(--myna-ink); border-bottom:1px solid var(--myna-line); font-size:14px; line-height:1.4; }
.ui-update-notice > span { min-width:0; overflow-wrap:anywhere; }
.myna .ui-update-notice > button { flex:0 0 auto; min-height:36px; padding:6px 12px; border:1px solid var(--myna-control-line); border-radius:18px; background:transparent; color:inherit; box-shadow:none; font-size:14px; font-weight:500; }
@media(max-width:600px) { .ui-update-notice { align-items:flex-start; gap:10px; padding:10px 12px; } }

/* Keep the paper shadow inside the clipped preview, outside its text scroller. */
.myna .preview-panel:has(> :is(.preview-markdown, .preview-text)) { padding-bottom:56px; }
@media(min-width:1001px) {
 .myna .preview-panel .preview-markdown { min-height:min(60vh,650px,calc(100% - 60px)); }
}

/* Inbox: schedules and delivered results have separate, stable sections. */
#scheduledBackdrop .scheduled-modal { width:min(736px,100%); height:min(640px,calc(100dvh - 48px)); max-height:calc(100dvh - 48px); min-height:0; padding:0; gap:0; display:flex; flex-direction:column; border-radius:26px; overflow:hidden; }
#scheduledBackdrop .panel-head { flex:0 0 88px; min-height:0; padding:22px 28px; margin:0; border:0; display:flex; align-items:center; justify-content:space-between; gap:16px; }
#scheduledBackdrop h2 { margin:0; font-size:25px; font-weight:600; line-height:1.2; letter-spacing:-.025em; }
#scheduledBackdrop #scheduledClose { width:44px; height:44px; min-width:44px; padding:11px; flex:0 0 44px; margin:0; border:0; border-radius:50%; background:transparent; color:var(--text); box-shadow:none; }
#scheduledBackdrop #scheduledClose svg { width:22px; height:22px; }
#scheduledBackdrop #scheduledClose:hover { background:var(--dialog-hover); }
#scheduledBackdrop .scheduled-layout { flex:1; height:auto; min-height:0; max-height:none; display:grid; grid-template-columns:172px minmax(0,1fr); grid-template-rows:minmax(0,1fr); gap:24px; padding:0 28px 28px; }
#scheduledBackdrop .scheduled-sidebar { display:flex; flex-direction:column; gap:5px; padding:4px 0 0; max-height:none; overflow:visible; align-self:start; }
#scheduledBackdrop .scheduled-section-button { min-width:0; min-height:44px; width:100%; padding:10px 13px; text-align:left; border:0; border-radius:12px; background:transparent; color:var(--text); box-shadow:none; font:inherit; font-size:15px; line-height:1.35; white-space:normal; }
#scheduledBackdrop .scheduled-section-button:hover { background:var(--dialog-hover); }
#scheduledBackdrop .scheduled-section-button[aria-pressed="true"] { background:var(--text); color:var(--bg-top); }
#scheduledBackdrop .scheduled-nav-short { display:none; }
#scheduledBackdrop .scheduled-main { display:block; min-width:0; min-height:0; overflow:auto; padding:0 2px 4px; }
#scheduledBackdrop #scheduledSectionTitle { margin:5px 0; font-size:16px; font-weight:500; line-height:1.4; }
#scheduledBackdrop .scheduled-section-description { margin:0 0 18px; font-size:14px; line-height:1.5; color:var(--muted); }
#scheduledBackdrop .scheduled-task-row, #scheduledBackdrop .scheduled-output-card { min-width:0; margin:0; padding:0; border:0; border-top:1px solid var(--line); border-radius:0; background:transparent; box-shadow:none; }
#scheduledBackdrop .scheduled-task-head { display:flex; align-items:flex-start; gap:8px; }
#scheduledBackdrop .scheduled-task-head .scheduled-sidebar-row { display:flex; flex:1 1 auto; min-width:0; width:100%; gap:12px; justify-content:space-between; align-items:flex-start; padding:18px 0; border:0; border-radius:0; background:transparent; color:var(--text); box-shadow:none; text-align:left; }
#scheduledBackdrop .scheduled-task-copy { display:block; min-width:0; flex:1; }
#scheduledBackdrop .scheduled-sidebar-title, #scheduledBackdrop .scheduled-output-title { display:block; font-size:16px; font-weight:500; line-height:1.4; white-space:normal; overflow-wrap:anywhere; overflow:visible; text-overflow:clip; }
#scheduledBackdrop .scheduled-sidebar-meta, #scheduledBackdrop .scheduled-output-meta { display:block; margin-top:5px; color:var(--muted); font-size:14px; line-height:1.5; white-space:normal; overflow:visible; overflow-wrap:anywhere; }
#scheduledBackdrop .scheduled-sidebar-timing { white-space:normal; }
#scheduledBackdrop .scheduled-task-status { flex:0 0 auto; max-width:42%; padding-top:2px; color:var(--muted); font-size:13px; line-height:1.4; }
#scheduledBackdrop .scheduled-task-menu-button { position:static; align-self:flex-start; flex:0 0 44px; width:44px; height:44px; min-width:44px; margin:10px 0 0; padding:10px; opacity:1; pointer-events:auto; transform:none; border:0; background:transparent; box-shadow:none; color:var(--text); }
#scheduledBackdrop .scheduled-task-detail { padding:0 0 20px; font-size:14px; line-height:1.6; }
#scheduledBackdrop .scheduled-task-detail p { margin:0 0 14px; overflow-wrap:anywhere; }
#scheduledBackdrop .scheduled-task-actions { display:flex; gap:10px; flex-wrap:wrap; }
#scheduledBackdrop .scheduled-task-actions button { min-height:40px; padding:8px 14px; border:0; border-radius:20px; font:inherit; font-size:14px; background:var(--dialog-field); color:var(--text); box-shadow:none; }
#scheduledBackdrop .scheduled-task-actions button:hover { background:var(--dialog-hover); }
#scheduledBackdrop .scheduled-once-heading { margin:20px 0 8px; font-size:14px; font-weight:500; color:var(--muted); }
#scheduledBackdrop .scheduled-source-filter { display:flex; align-items:center; gap:8px; margin-bottom:12px; color:var(--muted); font-size:13px; }
#scheduledBackdrop .scheduled-source-filter span { min-width:0; overflow-wrap:anywhere; }
#scheduledBackdrop .scheduled-source-filter button { flex:0 0 44px; width:44px; height:44px; padding:12px; border:0; background:transparent; color:var(--text); }
#scheduledBackdrop .scheduled-source-filter svg { width:20px; height:20px; }
#scheduledBackdrop .scheduled-output-list { display:block; padding:0; }
#scheduledBackdrop .scheduled-output-summary { padding:18px 0; flex:1 1 auto; min-width:0; width:auto; gap:12px; }
#scheduledBackdrop .scheduled-output-summary > span:first-child { display:block; flex:1; min-width:0; }
#scheduledBackdrop .scheduled-output-chevron { flex:0 0 18px; }
#scheduledBackdrop .scheduled-output-delete { width:44px; height:44px; min-width:44px; min-height:44px; flex:0 0 44px; margin:0; }
#scheduledBackdrop .scheduled-output-body { padding:0 0 20px; overflow-wrap:anywhere; }
#scheduledBackdrop .scheduled-output-card.is-unread { background:var(--dialog-field); }
#scheduledBackdrop .scheduled-empty-main { margin:0; padding:18px 0; font-size:14px; line-height:1.5; }
#scheduledBackdrop button:focus-visible { outline:2px solid var(--company-red); outline-offset:2px; }
@media(max-width:700px) {
 .scheduled-backdrop { padding:12px; }
 #scheduledBackdrop .scheduled-modal { height:calc(100dvh - 24px); max-height:calc(100dvh - 24px); border-radius:24px; }
 #scheduledBackdrop .panel-head { flex-basis:80px; padding:18px 20px; }
 #scheduledBackdrop .scheduled-layout { display:flex; flex-direction:column; gap:20px; padding:0 20px 24px; }
 #scheduledBackdrop .scheduled-sidebar { flex:0 0 auto; align-self:stretch; flex-direction:row; gap:2px; padding:3px; border-radius:15px; background:var(--dialog-field); }
 #scheduledBackdrop .scheduled-section-button { flex:1; width:auto; text-align:center; padding:8px 4px; font-size:13px; border-radius:12px; }
 #scheduledBackdrop .scheduled-nav-short { display:inline; }
 #scheduledBackdrop .scheduled-nav-full { display:none; }
 #scheduledBackdrop .scheduled-main { flex:1; }
}
#scheduledBackdrop .scheduled-output-source { display:block; max-width:100%; min-height:44px; margin-bottom:12px; padding:8px 12px; border:0; border-radius:18px; background:var(--dialog-field); color:var(--text); text-align:left; white-space:normal; overflow-wrap:anywhere; font-size:13px; }
