/* SynnFrameFW — Тосты, панель событий объекта, закладки, печать.
 * Вынесено из глобального <style> MainLayout.razor (этап 4a): правила те же,
 * размеры и цвета — через токены css/tokens.css. */

.synn-toast-host {
    position:fixed; bottom:16px; right:16px; z-index:9999;
    display:flex; flex-direction:column; gap:8px;
    max-width:360px;
}
.synn-toast {
    background:var(--surface-card); border-left:3px solid var(--brand-2);
    box-shadow:var(--shadow-3);
    padding:var(--space-3) var(--space-4); border-radius:var(--radius-sm);
    font-size:var(--fs-body); cursor:pointer;
    display:flex; align-items:center; gap:10px;
    animation:slidein .2s ease-out;
}
.synn-toast.toast-success { border-left-color:var(--color-success); }
.synn-toast.toast-success .ico { color:var(--color-success); }
.synn-toast.toast-error { border-left-color:var(--color-danger); }
.synn-toast.toast-error .ico { color:var(--color-danger); }
.synn-toast.toast-warning { border-left-color:var(--color-warning); }
.synn-toast.toast-warning .ico { color:var(--color-warning); }
.synn-toast .ico { display:inline-flex; flex:0 0 auto; color:var(--brand-2); }

/* Текст вопроса в диалоге подтверждения (был inline-стиль). */
.synn-confirm-text { margin:0; font-size:var(--fs-body); white-space:pre-line; }
@keyframes slidein {
    from { transform:translateX(100%); opacity:0; }
    to   { transform:translateX(0);    opacity:1; }
}

/* S2.EV — панель событий объекта. */
.oe-panel { margin-top:16px; background:var(--surface-card); border:1px solid var(--border-default); border-radius:6px; padding:14px 16px; }
.oe-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:10px; }
.oe-title { font-size:var(--fs-body); font-weight:600; }
.oe-empty { font-size:var(--fs-body); color:var(--text-secondary); padding:6px 0; }
.oe-table { width:100%; border-collapse:collapse; font-size:var(--fs-body); }
.oe-table th { text-align:left; font-size:var(--fs-xs); text-transform:uppercase; color:var(--text-secondary); padding:4px 8px; border-bottom:1px solid var(--border-default); }
.oe-table td { padding:6px 8px; border-bottom:1px solid var(--border-default); }
.oe-kind { background:var(--surface-selected); color:var(--brand-2); border-radius:10px; padding:2px 10px; font-size:var(--fs-xs); font-weight:600; }
.oe-sys { font-size:var(--fs-xs); color:var(--text-secondary); margin-left:6px; }
.oe-actions a { margin-left:8px; text-decoration:none; cursor:pointer; }
.oe-actions .oe-del:hover { color:var(--color-danger); }

.oe-editor { display:grid; grid-template-columns:360px 1fr; gap:16px; height:520px; }
.oe-edit-left { display:flex; flex-direction:column; gap:10px; overflow:auto; }
.oe-edit-right { display:flex; flex-direction:column; min-height:0; }
.oe-fld { display:flex; flex-direction:column; gap:3px; font-size:var(--fs-xs); color:var(--text-secondary); }
.oe-input, .oe-select { padding:6px 8px; border:1px solid var(--border-default); border-radius:4px; font-size:var(--fs-body); }
.oe-chk { font-size:var(--fs-body); display:flex; align-items:center; gap:6px; }
.oe-btns { display:flex; gap:6px; margin-top:4px; }
.oe-code-label { font-size:var(--fs-xs); color:var(--text-secondary); margin-bottom:4px; }
.oe-code { flex:1 1 auto; min-height:0; width:100%; font-family:'Cascadia Code','Fira Code',Consolas,monospace; font-size:var(--fs-body); padding:10px; border:1px solid var(--border-default); border-radius:4px; line-height:1.5; tab-size:4; white-space:pre; resize:none; }
.oe-monaco { flex:1 1 auto; min-height:0; border:1px solid var(--border-default); border-radius:4px; overflow:hidden; }
.monaco-host { width:100%; height:100%; }
.oe-globals { font-size:var(--fs-xs); color:var(--text-secondary); margin-top:6px; }
.oe-test { border-top:1px solid var(--border-default); padding-top:10px; margin-top:4px; display:flex; flex-direction:column; gap:8px; }
.oe-test-head { font-size:var(--fs-xs); font-weight:600; text-transform:uppercase; color:var(--text-secondary); }
.oe-hint { font-size:var(--fs-xs); color:var(--color-warning); }
.oe-result { font-size:var(--fs-xs); border-radius:4px; padding:8px 10px; }
.oe-result.ok { background:var(--color-success-bg); color:var(--color-success); }
.oe-result.err { background:var(--color-danger-bg); color:var(--color-danger); }
.oe-err-msg { font-weight:600; margin-top:4px; white-space:pre-wrap; }
.oe-log, .oe-obj { background:var(--surface-card); border-radius:3px; padding:6px 8px; margin-top:4px; font-size:var(--fs-xs); max-height:140px; overflow:auto; white-space:pre-wrap; }
.oe-obj-head { font-weight:600; margin-top:6px; }

/* S1.A.51 — 1С 8.5 (гл. 63): Закладки.
   В 8.5 закладки могут быть только сверху/слева, без рамок;
   активная подсвечивается «маяком» (brand-1, жёлтая полоска снизу). */
.e-tab .e-tab-header { background: transparent !important; border: none !important; }
.e-tab .e-tab-header .e-toolbar-item .e-tab-wrap {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 8px 14px !important;
}
.e-tab .e-tab-header .e-toolbar-item .e-tab-text {
    color: var(--text-secondary) !important;
    font-size:var(--fs-body) !important;
    font-weight: 500 !important;
    text-transform: none !important;
}
.e-tab .e-tab-header .e-toolbar-item.e-active .e-tab-text {
    color: var(--text-primary) !important;
    font-weight: 600 !important;
}
/* Маяк brand-1 под активной закладкой. */
.e-tab .e-tab-header .e-indicator {
    background: var(--brand-1, #FFC107) !important;
    height: 3px !important;
    border-radius: 2px !important;
}
/* Числовой счётчик в заголовке закладки — светло-зелёный овал (гл. 63). */
.synn-tab-badge {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 7px;
    background: var(--color-success-bg);
    color: var(--color-success);
    font-size:var(--fs-xs);
    font-weight: 600;
    border-radius: 10px;
    vertical-align: middle;
}

/* S1.A.43 — Печать (window.print): скрываем UI-шум, оставляем только данные */

@media print {
    .synn-sidebar, .e-sidebar, .synn-cmdbar, .synn-bulk-bar,
    .row-actions, .e-gridpager, .e-toolbar,
    .e-groupdroparea, .e-headercheckbox, .e-rowcell.e-gridchkbox,
    .e-headercell.e-firstcell { display:none !important; }
    body, html { background:var(--surface-card) !important; }
    #main-content { margin:0 !important; padding:0 !important; }
    .e-grid { border:1px solid var(--text-primary) !important; box-shadow:none !important; }
    .e-grid .e-headercell { background:var(--surface-hover) !important; color:var(--text-primary) !important; }
    .e-grid .e-rowcell { border:1px solid var(--border-default) !important; padding:6px 8px !important; }
    a.synn-link-cell { color:var(--text-primary) !important; text-decoration:none !important; }
}
