

/* ======================= */
:root,
html.deltrek-theme-light {
    --bg:#f6f7f9;
    --surface:#ffffff;
    --text:#111827;
    --muted:#6b7280;
    --border:#e5e7eb;
    --primary:#111827;
    --soft:#f3f4f6;
    --surface-2:#f8fafc;
    --surface-elevated:rgba(255,255,255,.94);
    --shadow-soft:0 18px 48px rgba(15,23,42,.12);
    --pwa-overlay:rgba(2,6,23,.48);
    --motion-fast:160ms;
    --motion-base:220ms;
    --motion-slow:320ms;
    --motion-ease:cubic-bezier(.2,.8,.2,1);
    --radius:14px;
    --pwa-safe-top:env(safe-area-inset-top, 0px);
    --pwa-safe-right:env(safe-area-inset-right, 0px);
    --pwa-safe-bottom:env(safe-area-inset-bottom, 0px);
    --pwa-safe-left:env(safe-area-inset-left, 0px);
    --pwa-tabbar-height:58px;
}

html.deltrek-theme-dark,
body.dark{
    color-scheme:dark;
    --bg:#0f172a;
    --surface:#111827;
    --text:#f8fafc;
    --muted:#94a3b8;
    --border:#334155;
    --primary:#e2e8f0;
    --soft:#1e293b;
    --surface-2:#172033;
    --surface-elevated:#111827;
    --shadow-soft:0 12px 28px rgba(2,6,23,.24);
    --pwa-overlay:rgba(2,6,23,.56);
}

body.theme-editorial{
    --bg:#fff8f1;
    --surface:#fffdf9;
    --text:#1f2937;
    --muted:#7c5c52;
    --border:#ead9cf;
    --primary:#8b1e3f;
    --soft:#f8ede5;
    --surface-2:#fff3e8;
    --surface-elevated:rgba(255,253,249,.94);
    --shadow-soft:0 18px 48px rgba(124,92,82,.12);
}

body.theme-neo{
    --bg:#edf2f7;
    --surface:#f5f7fb;
    --text:#20304a;
    --muted:#66778f;
    --border:#d9e1ea;
    --primary:#355c7d;
    --soft:#e8eef5;
    --surface-2:#eef3f8;
    --surface-elevated:rgba(245,247,251,.94);
    --shadow-soft:0 18px 48px rgba(32,48,74,.12);
}

/* Details: плюс вместо стрелки */
details > summary{
    list-style:none;
    cursor:pointer;
}
details > summary::-webkit-details-marker{display:none;}
details > summary::before{
    content:"+";
    display:inline-block;
    width:18px;
    margin-right:6px;
    font-weight:900;
    color:var(--muted);
}
details[open] > summary::before{
    content:"−";
}

body.theme-premium,
body.theme-editorial,
body.theme-neo{
    --card-radius:8px;
}

/* ======================= */

html{
background:var(--bg);
min-height:100%;
overscroll-behavior-y:none;
}

*,
*::before,
*::after{
box-sizing:border-box;
}

body{
margin:0;
min-height:100vh;
min-height:100dvh;
background:var(--bg);
color:var(--text);
font-family:-apple-system,BlinkMacSystemFont,sans-serif;
display:flex;
flex-direction:column;
overflow-y:scroll;
overscroll-behavior-y:none;
touch-action:manipulation;
-webkit-tap-highlight-color:transparent;
transition:background-color var(--motion-base) var(--motion-ease), color var(--motion-base) var(--motion-ease);
}

body > .footer{
flex:0 0 auto;
margin-top:0;
}

.dt-page-loader{position:fixed;top:0;left:0;right:0;height:3px;z-index:16000;pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity .16s ease, transform .16s ease}
.dt-page-loader__panel{display:none}
.dt-page-loader::before{content:"";display:block;width:38%;height:100%;border-radius:0 999px 999px 0;background:linear-gradient(90deg,#2563eb,#22c55e);box-shadow:0 0 18px rgba(37,99,235,.38);transform:translateX(-105%)}

.dt-page-loader.is-active{
opacity:1;
transform:translateY(0);
}

.dt-page-loader.is-active::before{
animation:dt-loader-slide 1.15s cubic-bezier(.4,0,.2,1) infinite;
}

html.deltrek-theme-dark .dt-page-loader::before,
body.dark .dt-page-loader::before{
background:linear-gradient(90deg,#60a5fa,#34d399);
box-shadow:0 0 18px rgba(96,165,250,.42);
}

body.dt-page-busy{
cursor:progress;
}

@keyframes dt-loader-slide{
0%{transform:translateX(-105%);}
55%{transform:translateX(92vw);}
100%{transform:translateX(104vw);}
}
@keyframes dt-loader-orbit{to{transform:rotate(360deg)}}
@keyframes dt-loader-pulse{0%,100%{transform:scale(.92);opacity:.42}50%{transform:scale(1.08);opacity:1}}
@keyframes dt-loader-sweep{0%{transform:translateX(-34vw) rotate(-8deg)}50%{transform:translateX(34vw) rotate(8deg)}100%{transform:translateX(-34vw) rotate(-8deg)}}
@keyframes dt-loader-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}

@media (max-width:860px), (display-mode: standalone){
    html.deltrek-mobile-shell .dt-page-loader,
    html.deltrek-pwa-standalone .dt-page-loader{
        inset:0;
        height:auto;
        display:grid;
        place-items:center;
        padding:calc(var(--pwa-safe-top,0px) + 24px) 22px calc(var(--pwa-safe-bottom,0px) + 24px);
        background:
            radial-gradient(circle at 50% 28%, rgba(37,99,235,.16), transparent 34%),
            radial-gradient(circle at 22% 72%, rgba(16,185,129,.12), transparent 26%),
            linear-gradient(180deg,rgba(248,250,252,.94),rgba(239,246,255,.98));
        backdrop-filter:blur(16px) saturate(150%);
        -webkit-backdrop-filter:blur(16px) saturate(150%);
        transform:none;
    }
    html.deltrek-mobile-shell .dt-page-loader[data-loader-variant="sweep"],
    html.deltrek-pwa-standalone .dt-page-loader[data-loader-variant="sweep"]{
        background:
            linear-gradient(115deg,rgba(37,99,235,.12),transparent 38%),
            radial-gradient(circle at 78% 24%, rgba(139,92,246,.16), transparent 30%),
            linear-gradient(180deg,rgba(248,250,252,.96),rgba(241,245,249,.98));
    }
    html.deltrek-mobile-shell .dt-page-loader[data-loader-variant="dots"],
    html.deltrek-pwa-standalone .dt-page-loader[data-loader-variant="dots"]{
        background:
            radial-gradient(circle at 28% 28%, rgba(16,185,129,.14), transparent 30%),
            radial-gradient(circle at 70% 70%, rgba(37,99,235,.14), transparent 34%),
            linear-gradient(180deg,rgba(255,255,255,.96),rgba(236,253,245,.96));
    }
    html.deltrek-mobile-shell .dt-page-loader::before,
    html.deltrek-pwa-standalone .dt-page-loader::before{
        content:"";
        position:absolute;
        width:132px;
        height:132px;
        border-radius:50%;
        border:2px solid rgba(37,99,235,.16);
        border-top-color:#2563eb;
        border-right-color:#10b981;
        background:transparent;
        box-shadow:0 18px 60px rgba(37,99,235,.18);
        transform:none;
    }
    html.deltrek-mobile-shell .dt-page-loader::after,
    html.deltrek-pwa-standalone .dt-page-loader::after{
        content:"";
        position:absolute;
        width:18px;
        height:18px;
        border-radius:999px;
        background:#2563eb;
        box-shadow:42px 0 #10b981,-42px 0 #8b5cf6;
    }
    html.deltrek-mobile-shell .dt-page-loader[data-loader-variant="sweep"]::before,
    html.deltrek-pwa-standalone .dt-page-loader[data-loader-variant="sweep"]::before{
        width:168px;
        height:76px;
        border:0;
        border-radius:999px;
        background:linear-gradient(90deg,rgba(37,99,235,.12),rgba(16,185,129,.22),rgba(139,92,246,.12));
        box-shadow:0 22px 70px rgba(37,99,235,.18);
    }
    html.deltrek-mobile-shell .dt-page-loader[data-loader-variant="sweep"]::after,
    html.deltrek-pwa-standalone .dt-page-loader[data-loader-variant="sweep"]::after{
        width:62px;
        height:62px;
        background:#fff;
        box-shadow:0 0 0 8px rgba(37,99,235,.08),0 18px 42px rgba(15,23,42,.12);
    }
    html.deltrek-mobile-shell .dt-page-loader[data-loader-variant="dots"]::before,
    html.deltrek-pwa-standalone .dt-page-loader[data-loader-variant="dots"]::before{
        width:150px;
        height:150px;
        border-style:dashed;
    }
    html.deltrek-mobile-shell .dt-page-loader.is-active::before,
    html.deltrek-pwa-standalone .dt-page-loader.is-active::before{animation:dt-loader-orbit 1.25s linear infinite}
    html.deltrek-mobile-shell .dt-page-loader.is-active::after,
    html.deltrek-pwa-standalone .dt-page-loader.is-active::after{animation:dt-loader-pulse 1.15s ease-in-out infinite}
    html.deltrek-mobile-shell .dt-page-loader.is-active[data-loader-variant="sweep"]::before,
    html.deltrek-pwa-standalone .dt-page-loader.is-active[data-loader-variant="sweep"]::before{animation:dt-loader-sweep 2.1s ease-in-out infinite}
    html.deltrek-mobile-shell .dt-page-loader.is-active[data-loader-variant="sweep"]::after,
    html.deltrek-pwa-standalone .dt-page-loader.is-active[data-loader-variant="sweep"]::after{animation:dt-loader-float 1.45s ease-in-out infinite}
    html.deltrek-mobile-shell .dt-page-loader__panel,
    html.deltrek-pwa-standalone .dt-page-loader__panel{
        display:grid;
        justify-items:center;
        gap:8px;
        margin-top:210px;
        color:#0f172a;
        text-align:center;
        font-weight:900;
    }
    html.deltrek-mobile-shell .dt-page-loader__panel b,
    html.deltrek-pwa-standalone .dt-page-loader__panel b{font-size:22px;line-height:1.1}
    html.deltrek-mobile-shell .dt-page-loader__panel span,
    html.deltrek-pwa-standalone .dt-page-loader__panel span{max-width:260px;color:#64748b;font-size:13px;line-height:1.35}
}

/* В PWA навигация показывается одной прямой полосой сверху. Полноэкранная
   круговая заставка перекрывала модалки и могла оставаться после возврата iOS. */
@media (max-width:860px), (display-mode: standalone){
    html.deltrek-mobile-shell .dt-page-loader,
    html.deltrek-pwa-standalone .dt-page-loader{
        inset:0 0 auto 0;
        display:block;
        width:100%;
        height:3px;
        padding:0;
        background:transparent;
        -webkit-backdrop-filter:none;
        backdrop-filter:none;
        transform:translateY(-4px);
    }
    html.deltrek-mobile-shell .dt-page-loader.is-active,
    html.deltrek-pwa-standalone .dt-page-loader.is-active{transform:translateY(0)}
    html.deltrek-mobile-shell .dt-page-loader::before,
    html.deltrek-pwa-standalone .dt-page-loader::before,
    html.deltrek-mobile-shell .dt-page-loader[data-loader-variant]::before,
    html.deltrek-pwa-standalone .dt-page-loader[data-loader-variant]::before{
        position:static;
        display:block;
        width:38%;
        height:100%;
        border:0;
        border-radius:0 999px 999px 0;
        background:linear-gradient(90deg,#2563eb,#22c55e);
        box-shadow:0 0 18px rgba(37,99,235,.38);
        transform:translateX(-105%);
    }
    html.deltrek-mobile-shell .dt-page-loader.is-active::before,
    html.deltrek-pwa-standalone .dt-page-loader.is-active::before,
    html.deltrek-mobile-shell .dt-page-loader.is-active[data-loader-variant]::before,
    html.deltrek-pwa-standalone .dt-page-loader.is-active[data-loader-variant]::before{
        animation:dt-loader-slide 1.15s cubic-bezier(.4,0,.2,1) infinite;
    }
    html.deltrek-mobile-shell .dt-page-loader::after,
    html.deltrek-pwa-standalone .dt-page-loader::after,
    html.deltrek-mobile-shell .dt-page-loader__panel,
    html.deltrek-pwa-standalone .dt-page-loader__panel{display:none!important}
}

@media (prefers-reduced-motion: reduce){
    .dt-page-loader,
    .dt-page-loader::before{
        transition:none !important;
        animation:none !important;
    }
    .dt-page-loader::before{
        transform:translateX(0);
        width:100%;
    }
}

/* ======================= */

.header{
position:sticky;
top:0;
z-index:50;
backdrop-filter:blur(10px);
background:rgba(255,255,255,0.94);
border-bottom:1px solid var(--border);
box-shadow:0 8px 24px rgba(15,23,42,.035);
padding-top:var(--pwa-safe-top);
}

html.deltrek-theme-dark .header,
body.dark .header{
background:rgba(11,18,32,0.85);
}

/* ======================= */

.container{
max-width:none;
margin:0 auto;
padding:8px clamp(12px, 1.4vw, 28px);
width:100%;
}

body > main.container{
flex:1 0 auto;
min-height:0;
}

/* Full-width workspace mode */
body.workspace-full-width .container,
.container.workspace-full{
max-width:none;
padding:8px 24px;
}

/* Реестр 2V: убираем поля только у main, не трогая .header-main — иначе ломается верхнее меню */
body.doc2v-registry-page .container:not(.header-main),
body.doc2v-registry-page main.container{
max-width:none !important;
padding-left:0 !important;
padding-right:0 !important;
padding-top:0 !important;
padding-bottom:0 !important;
width:100% !important;
}

body.doc2v-registry-page.workspace-full-width .container:not(.header-main),
body.doc2v-registry-page.workspace-full-width main.container{
padding:0 !important;
}

body.doc2v-registry-page main.container{
display:flex;
flex-direction:column;
min-height:0;
flex:1 1 auto;
}

body.doc2v-registry-page .footer,
body.doc2v-registry-page #backToTop{
display:none !important;
}

body.doc2v-registry-page{
overflow-x:clip;
}

@media (min-width:1920px){
body.workspace-full-width .container,
.container.workspace-full{
padding:12px 32px;
}
body.doc2v-registry-page .container:not(.header-main),
body.doc2v-registry-page main.container{
padding-left:0 !important;
padding-right:0 !important;
padding-top:0 !important;
padding-bottom:0 !important;
}
}

body.focus-mode .container{
max-width:1680px;
padding:10px 14px;
}

body.focus-mode.workspace-full-width .container{
max-width:none;
}

main.container,
body > .container:not(.header-main),
.container.header-main{
max-width:none !important;
width:100%;
}

main.container > .workspace-page,
main.container > .psychoped-dashboard,
main.container > .cases-page,
main.container > .case-detail,
main.container > .case-form-page{
max-width:none !important;
width:100% !important;
margin-left:0 !important;
margin-right:0 !important;
}

body.focus-mode .nav{
display:none;
}

body.focus-mode .header-main{
grid-template-areas:"brand actions";
grid-template-columns:auto minmax(0, 1fr);
}

.header-main{
display:grid;
grid-template-columns:auto auto minmax(0, 1fr);
grid-template-areas:
    "brand nav actions";
align-items:center;
gap:6px 12px;
width:100%;
max-width:none;
}

body.menu-mode-compact .header-tabs-wrap,
body.menu-mode-ribbon .header-tabs-wrap,
body.menu-mode-hybrid .header-tabs-wrap{
display:block;
max-width:none;
}

body.menu-mode-ribbon .nav,
body.menu-mode-hybrid .nav,
body.menu-mode-compact .nav{
padding:5px 8px;
gap:5px;
flex-wrap:nowrap;
overflow:visible;
}

body.menu-mode-ribbon .nav-link,
body.menu-mode-hybrid .nav-link,
body.menu-mode-compact .nav-link{
font-size:12px;
}

body.menu-mode-ribbon .header-tab-strip,
body.menu-mode-hybrid .header-tab-strip,
body.menu-mode-compact .header-tab-strip{
min-height:0;
box-shadow:none;
}

/* ======================= */

.brand{
font-size:16px;
font-weight:700;
color:inherit;
text-decoration:none;
white-space:nowrap;
display:inline-flex;
align-items:center;
height:36px;
padding:0 10px 0 4px;
border-right:1px solid var(--border);
margin-right:4px;
min-width:0;
overflow:hidden;
text-overflow:ellipsis;
}

.brand-cluster{
grid-area:brand;
display:inline-flex;
align-items:center;
gap:8px;
min-width:0;
max-width:100%;
}
.brand-version-badge{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 7px;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--primary);font-size:10px;font-weight:950;line-height:1;letter-spacing:.02em;white-space:nowrap}
.header-nav-toggle{display:none;width:34px;height:34px;place-items:center;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--muted);cursor:pointer;transition:color .15s ease,background .15s ease,transform .15s ease}.header-nav-toggle:hover{color:var(--text);background:var(--soft)}.header-nav-toggle svg{transition:transform .2s ease}
.header-current-section{display:none;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:12px;font-weight:850}
@media(min-width:861px){.header-nav-toggle{display:grid}body.header-nav-collapsed .header-main{grid-template-columns:max-content minmax(0,1fr)!important;grid-template-rows:auto!important;grid-template-areas:"brand actions"!important;align-items:center!important;min-height:60px!important}body.header-nav-collapsed .header-main>nav.nav{display:none!important;visibility:hidden!important}body.header-nav-collapsed .header-nav-toggle svg{transform:rotate(180deg)}body.header-nav-collapsed .header{min-height:60px!important;box-shadow:0 5px 18px rgba(15,23,42,.045)}body.header-nav-collapsed .top-actions{grid-area:actions!important;justify-self:stretch;margin:0!important}body.header-nav-collapsed .header-current-section{display:inline-block}.header-nav-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--primary) 22%,transparent);outline-offset:2px}}

.beta-menu-badge{
display:inline-flex;
align-items:center;
justify-content:center;
min-height:26px;
padding:0 9px;
border:1px solid color-mix(in srgb, var(--primary) 16%, var(--border) 84%);
border-radius:999px;
background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 96%, #ffffff 4%), color-mix(in srgb, var(--primary) 4%, var(--surface) 96%));
color:var(--text);
font-size:11px;
font-weight:950;
letter-spacing:.02em;
line-height:1;
text-decoration:none;
box-shadow:0 5px 14px rgba(15,23,42,.055);
flex:0 0 auto;
}

.beta-menu-badge:hover{
border-color:color-mix(in srgb, var(--primary) 28%, var(--border) 72%);
box-shadow:0 8px 18px rgba(15,23,42,.08);
}

/* ======================= */
/* 🔥 NAV */

.nav{
grid-area:nav;
display:flex !important;
flex-wrap:nowrap;
gap:5px;
background:var(--surface);
padding:5px 8px;
border-radius:14px;
position:relative;
overflow:visible;
max-width:100%;
width:auto;
align-items:center;
min-width:0;
white-space:nowrap;
border:1px solid color-mix(in srgb, var(--border) 82%, transparent 18%);
justify-content:flex-start;
flex:0 0 auto;
box-shadow:none;
}

.nav::-webkit-scrollbar{display:none}

.nav-item{
position:relative;
display:flex;
align-items:center;
gap:6px;
flex:0 0 auto;
}

.nav-link{
font-size:12px;
color:var(--muted);
padding:0 !important;
width:40px !important;
height:40px !important;
min-width:40px;
flex:0 0 40px !important;
border-radius:12px;
display:inline-flex !important;
align-items:center;
justify-content:center;
gap:0 !important;
transition:background-color .16s ease, color .16s ease, border-color .16s ease;
text-decoration:none;
white-space:nowrap;
font-weight:700;
position:relative;
overflow:visible !important;
border:1px solid transparent;
}
.nav-link:hover{transform:none;}
.nav-link .nav-link-label{
position:absolute !important;
bottom:auto !important;
top:calc(100% + 6px) !important;
left:50% !important;
right:auto !important;
transform:translateX(-50%) translateY(-4px) !important;
background:#111827 !important;
color:#fff !important;
padding:5px 9px !important;
border-radius:6px !important;
font-size:11px !important;
font-weight:600 !important;
white-space:nowrap !important;
opacity:0 !important;
pointer-events:none !important;
transition:opacity .15s ease, transform .15s ease;
z-index:1000;
max-width:none !important;
width:auto !important;
height:auto !important;
overflow:visible !important;
text-overflow:clip !important;
box-shadow:0 6px 18px rgba(15,23,42,.18);
}
.nav-link:hover .nav-link-label,
.nav-item:hover > .nav-anchor-row .nav-link-label{
opacity:1 !important;
transform:translateX(-50%) translateY(0) !important;
}

.nav-link:hover{
background:var(--surface-2);
color:var(--text);
border-color:color-mix(in srgb, var(--border) 88%, var(--primary) 12%);
box-shadow:none;
}

.nav-link.active{
background:color-mix(in srgb, var(--surface) 88%, var(--primary) 12%);
color:var(--text);
border-color:color-mix(in srgb, var(--primary) 20%, var(--border) 80%);
box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--primary) 10%, transparent 90%);
}

.nav-link.active::after{
content:"";
position:absolute;
left:50%;
bottom:5px;
width:14px;
height:2px;
border-radius:999px;
background:color-mix(in srgb, var(--primary) 56%, transparent 44%);
opacity:.75;
transform:translateX(-50%);
}

.nav-icon{
display:inline-flex;
align-items:center;
justify-content:center;
width:24px;
height:24px;
font-size:14px;
line-height:1;
opacity:.95;
border-radius:8px;
color:currentColor;
flex:0 0 auto;
}

.nav-icon .icon{
width:19px;
height:19px;
stroke-width:2;
}

.nav-submenu-toggle{display:none !important;}
.nav-caret{display:none;}

/* 🔥 SUBMENU (PREMIUM) */

.nav-anchor-row{
display:flex;
align-items:center;
gap:6px;
}


.nav-back{
display:none;
align-items:center;
justify-content:center;
gap:8px;
height:34px;
padding:0 12px;
border:none;
border-radius:999px;
background:var(--primary);
color:#fff;
font:inherit;
font-size:13px;
font-weight:700;
cursor:pointer;
flex:0 0 auto;
min-width:max-content;
position:sticky;
left:0;
z-index:5;
box-shadow:0 8px 18px rgba(15,23,42,.12);
}

.nav-back > span:last-child{
white-space:nowrap;
flex:0 0 auto;
}

.nav-back-icon{
position:relative;
display:inline-flex;
width:16px;
height:12px;
flex:0 0 auto;
}

.nav-back-icon::before,
.nav-back-icon::after,
.nav-back-icon span{
content:"";
position:absolute;
left:0;
width:16px;
height:2px;
border-radius:999px;
background:currentColor;
}

.nav-back-icon::before{top:0;}
.nav-back-icon span{top:5px;width:12px;}
.nav-back-icon::after{bottom:0;width:8px;}

.submenu{
position:absolute;
top:calc(100% + 10px);
left:0;
background:linear-gradient(180deg, color-mix(in srgb, var(--surface) 98%, #ffffff 2%), color-mix(in srgb, var(--surface-2) 86%, var(--surface) 14%));
border:1px solid color-mix(in srgb, var(--border) 84%, transparent 16%);
border-radius:16px;
padding:12px;
width:min(560px, calc(100vw - 36px));
display:grid;
grid-template-columns:repeat(2, minmax(0, 1fr));
gap:6px;
box-shadow:0 28px 72px rgba(15,23,42,.16), 0 6px 14px rgba(15,23,42,.06);
opacity:0;
pointer-events:none;
transform:translateY(6px) scale(.98);
transition:opacity .2s ease, transform .22s cubic-bezier(.34,1.56,.64,1);
z-index:60;
}
.submenu::before{
content:'';
position:absolute;
top:-6px;
left:24px;
width:12px;
height:12px;
background:var(--surface);
border-top:1px solid var(--border);
border-left:1px solid var(--border);
transform:rotate(45deg);
}

/* Невидимый мост между иконкой и submenu, чтобы при наведении не закрывалось */
.nav-item.has-children::after{
content:"";
position:absolute;
left:0;
right:0;
top:100%;
height:10px;
}

.submenu-header{
grid-column:1 / -1;
padding:6px 8px 10px;
border-bottom:1px solid var(--border);
margin-bottom:4px;
}

.submenu-title{
font-size:14px;
font-weight:900;
color:var(--text);
}

.submenu-hint{
margin-top:3px;
font-size:12px;
line-height:1.35;
color:var(--muted);
}

.nav-item.is-open .submenu,
.nav-item:hover > .submenu{
opacity:1;
pointer-events:auto;
transform:translateY(0);
}

/* В icon-only режиме скрываем тултип-метку при открытом подменю */
.nav-item.is-open .nav-link-label,
.nav-item:hover > .nav-anchor-row .nav-link-label{
opacity:0 !important;
}

.submenu a{
display:flex;
flex-direction:column;
gap:4px;
padding:10px 12px;
font-size:13px;
border-radius:10px;
color:var(--text);
text-decoration:none;
border:1px solid transparent;
background:transparent;
transition:background .14s ease, transform .14s ease, border-color .14s ease, box-shadow .14s ease;
}

.submenu-link-title{
font-weight:750;
line-height:1.25;
font-size:13px;
word-break:normal;
overflow-wrap:break-word;
}

.submenu-link-meta{
font-size:12px;
line-height:1.35;
color:var(--muted);
word-break:normal;
overflow-wrap:break-word;
}

.nav-caret{
font-size:11px;
opacity:.6;
transition:transform .2s ease, opacity .2s ease;
}

.nav-item.is-open .nav-caret{
transform:rotate(90deg);
opacity:.9;
}

.submenu a:hover{
background:var(--surface);
border-color:color-mix(in srgb, var(--border) 88%, var(--primary) 12%);
box-shadow:0 6px 14px rgba(15,23,42,.045);
transform:translateX(2px);
}
.submenu a.active{
background:color-mix(in srgb, var(--primary) 5%, var(--surface) 95%);
border-color:color-mix(in srgb, var(--primary) 16%, var(--border) 84%);
color:var(--text);
box-shadow:inset 2px 0 0 color-mix(in srgb, var(--primary) 50%, transparent 50%);
}
.submenu-header{
background:linear-gradient(135deg, color-mix(in srgb, var(--primary) 8%, transparent 92%), transparent);
border-radius:10px;
padding:8px 12px 10px;
}

.nav.is-submenu-mode{
justify-content:flex-start;
overflow-x:auto;
}

.nav.is-submenu-mode .nav-back{
display:inline-flex;
}

.nav.is-submenu-mode .nav-item{
display:none;
}

.nav.is-submenu-mode .nav-item.is-open{
display:flex;
align-items:center;
gap:10px;
flex:0 0 auto;
}

.nav.is-submenu-mode .nav-item.is-open .submenu{
position:static;
top:auto;
left:auto;
min-width:unset;
width:auto;
padding:0;
border:none;
background:transparent;
box-shadow:none;
display:grid;
grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
gap:6px;
opacity:1;
pointer-events:auto;
transform:none;
}

.nav.is-submenu-mode .nav-item.is-open .submenu-header{
display:none;
}

.nav.is-submenu-mode .nav-item.is-open .submenu a{
padding:10px 12px;
border-radius:10px;
border:1px solid color-mix(in srgb, var(--border) 84%, transparent 16%);
background:var(--surface);
font-size:13px;
font-weight:750;
}

.nav.is-submenu-mode .nav-item.is-open .submenu-link-meta{
display:none;
}

.nav.is-submenu-mode .nav-item.is-open .submenu a:hover{
background:var(--soft);
}

/* ======================= */

.btn{
background:var(--primary);
color:#fff;
padding:10px 14px;
border-radius:8px;
border:none;
cursor:pointer;
white-space:nowrap;
font-weight:600;
}

.btn-secondary{
background:var(--soft);
padding:9px 12px;
border-radius:8px;
white-space:nowrap;
color:var(--text);
text-decoration:none;
}

.top-actions{
grid-area:actions;
display:flex;
align-items:center;
gap:8px;
flex-wrap:nowrap;
min-width:0;
justify-content:flex-end;
justify-self:end;
width:100%;
padding:4px 6px;
border-radius:10px;
background:rgba(243,244,246,.72);
border:1px solid rgba(17,24,39,.04);
backdrop-filter:blur(10px);
}
.top-actions > *{flex:0 0 auto;}
.top-actions .doc-create-menu{margin-right:4px;padding-right:4px;border-right:1px solid rgba(17,24,39,.08);}
.service-ops-menu{position:relative;display:inline-flex;flex:0 0 auto}
.service-ops-menu>.icon-chip{border-color:transparent!important;box-shadow:none!important;background:transparent!important}
.service-ops-menu .workspace-footer-v2__action{display:inline-flex;align-items:center;gap:6px}
.service-ops-panel{position:fixed;right:112px;bottom:72px;z-index:10080;width:min(380px,calc(100vw - 24px));border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 24px 70px rgba(15,23,42,.18);padding:12px;display:grid;gap:10px}
.service-ops-panel[hidden]{display:none}
.service-ops-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:950}
.service-ops-head span{display:flex;align-items:center;gap:8px}
.service-ops-close{width:28px;height:28px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);display:grid;place-items:center;cursor:pointer}
.service-ops-grid{display:flex;align-items:center;gap:8px}
.service-ops-action{min-width:112px;height:42px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);padding:0 12px;text-align:center;font:inherit;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.service-ops-action:disabled{opacity:.45;cursor:not-allowed}
.service-ops-action span{font-size:12px;line-height:1}
.service-ops-list{display:grid;gap:6px}
.service-ops-item{border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:8px 10px;font-size:12px;line-height:1.3}
.service-ops-item b{display:block;color:var(--text)}
.service-ops-item span{display:block;color:var(--muted);margin-top:2px}
.service-ops-empty{border:1px dashed var(--border);border-radius:8px;padding:10px;color:var(--muted);font-size:12px;font-weight:800;text-align:center}

.top-actions.has-user{
display:flex;
gap:6px;
align-items:center;
justify-content:end;
flex-wrap:nowrap;
overflow:visible;
scrollbar-width:none;
max-width:100%;
min-width:0;
}

.top-actions.has-user::-webkit-scrollbar{display:none}

.top-actions.has-user > *{
min-width:0;
}

.top-actions > a,
.top-actions > button,
.top-actions > .btn-secondary,
.top-actions > .header-user-links{
flex:0 0 auto;
}

.header-user-links{
display:flex;
align-items:center;
justify-content:flex-end;
gap:4px;
white-space:nowrap;
min-width:0;
padding:2px;
border-radius:8px;
background:rgba(255,255,255,.68);
border:1px solid rgba(17,24,39,.05);
max-width:none;
flex:0 0 auto;
}

.header-user-links .btn-secondary{
height:36px;
display:inline-flex;
align-items:center;
justify-content:center;
padding:0 10px;
font-size:13px;
border-radius:8px;
}
.header-profile-link{display:inline-flex!important;align-items:center!important;gap:7px!important;padding-left:6px!important}.header-profile-avatar{width:28px;height:28px;flex:0 0 28px;border-radius:50%;overflow:hidden;display:grid;place-items:center;color:#fff}.header-profile-avatar img{width:100%;height:100%;display:block;object-fit:cover}

.header-logout-link{
font-size:13px;
color:var(--muted);
text-decoration:none;
font-weight:600;
height:36px;
display:inline-flex;
align-items:center;
justify-content:center;
padding:0 10px;
border-radius:8px;
}

.header-logout-link:hover{
color:var(--text);
}

.header-tabs-wrap{
min-width:0;
max-width:min(520px, 34vw);
flex:0 1 520px;
}

.header-tab-strip{
display:flex;
align-items:center;
gap:8px;
min-width:0;
max-width:100%;
padding:3px 5px;
border-radius:8px;
background:rgba(255,255,255,.72);
border:1px solid rgba(17,24,39,.06);
overflow-x:auto;
overflow-y:hidden;
scrollbar-width:none;
box-shadow:inset 0 1px 0 rgba(255,255,255,.55);
}

.header-tab-strip::-webkit-scrollbar{
display:none;
}

.header-tab-link{
display:inline-flex;
align-items:center;
justify-content:flex-start;
gap:8px;
height:32px;
padding:0 12px;
border-radius:8px;
background:transparent;
color:var(--muted);
text-decoration:none;
font-size:12px;
font-weight:700;
white-space:nowrap;
transition:background .18s ease, color .18s ease, transform .18s ease;
}

.header-tab-label{
display:inline-block;
max-width:68px;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
}

.header-tab-link.active .header-tab-label{
max-width:190px;
}

.header-tab-link:not(.active){
padding:0 8px;
}

.header-tab-link:not(.active) .header-tab-pin,
.header-tab-link:not(.active) .header-tab-close{
opacity:.5;
}

.header-tab-link:hover{
background:var(--surface);
color:var(--text);
transform:translateY(-1px);
}

.header-tab-link.active{
background:var(--primary);
color:#fff;
}

.header-tab-close{
display:inline-flex;
align-items:center;
justify-content:center;
width:18px;
height:18px;
border-radius:8px;
background:rgba(17,24,39,.08);
color:inherit;
font-size:12px;
font-weight:700;
text-decoration:none;
opacity:.82;
flex:0 0 auto;
}

.header-tab-link.active .header-tab-close{
background:rgba(255,255,255,.16);
}

.header-tab-close:hover{
opacity:1;
background:rgba(17,24,39,.14);
}

.header-tab-pin{
display:inline-flex;
align-items:center;
justify-content:center;
width:18px;
height:18px;
border-radius:8px;
background:rgba(17,24,39,.06);
color:inherit;
font-size:11px;
font-weight:700;
text-decoration:none;
opacity:.78;
flex:0 0 auto;
}

.header-tab-pin:hover{
opacity:1;
background:rgba(17,24,39,.13);
}

.header-tab-more{
position:relative;
display:inline-flex;
align-items:center;
flex:0 0 auto;
}

.header-tab-more-btn{
height:32px;
padding:0 10px;
border:0;
border-radius:8px;
background:rgba(17,24,39,.06);
color:var(--muted);
font:inherit;
font-size:12px;
font-weight:700;
cursor:pointer;
}

.header-tab-more-menu{
position:absolute;
right:0;
top:calc(100% + 8px);
display:none;
min-width:220px;
max-width:320px;
padding:8px;
border-radius:8px;
background:var(--surface);
border:1px solid var(--border);
box-shadow:0 18px 45px rgba(15,23,42,.13);
z-index:10040;
}

.header-tab-more:hover .header-tab-more-menu,
.header-tab-more:focus-within .header-tab-more-menu{
display:grid;
gap:4px;
}

.header-tab-more-menu a{
display:block;
padding:8px 10px;
border-radius:8px;
color:inherit;
text-decoration:none;
font-size:12px;
font-weight:650;
white-space:nowrap;
overflow:hidden;
text-overflow:ellipsis;
}

.header-tab-more-menu a:hover{
background:var(--soft);
}

.header-tab-empty{
display:inline-flex;
align-items:center;
height:34px;
padding:0 12px;
border-radius:8px;
background:rgba(17,24,39,.04);
color:var(--muted);
font-size:12px;
font-weight:600;
white-space:nowrap;
}

.header-search-wrap{
display:flex;
align-items:center;
gap:8px;
min-width:0;
justify-content:stretch;
position:relative;
flex:1 1 560px;
max-width:min(760px, 48vw);
}

.header-search{
display:flex;
align-items:center;
gap:8px;
min-width:260px;
flex:1 1 560px;
max-width:none;
padding:7px 10px;
border-radius:8px;
background:var(--soft);
border:1px solid transparent;
width:100%;
transition:max-width .25s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
box-shadow:inset 0 1px 0 rgba(255,255,255,.45);
position:relative;
overflow:hidden;
}

.header-search:focus-within{
max-width:none;
background:var(--surface);
border-color:var(--border);
box-shadow:0 14px 28px rgba(15,23,42,.08);
transform:translateY(-1px);
}

.header-search span{
transition:transform .18s ease, color .18s ease, opacity .18s ease;
opacity:.72;
}

.header-search:focus-within span{
transform:translateX(2px) scale(1.06);
color:#2563eb;
opacity:1;
}

.header-search input{
border:none;
background:transparent;
outline:none;
font:inherit;
color:var(--text);
min-width:0;
width:100%;
}

.header-search-ai{
border:1px solid var(--border);
border-radius:8px;
background:var(--surface);
color:var(--text);
font-size:11px;
font-weight:900;
letter-spacing:0;
padding:5px 7px;
cursor:pointer;
box-shadow:0 8px 18px rgba(15,23,42,.08);
}

.header-search-ai:focus-visible{
outline:3px solid rgba(37,99,235,.25);
outline-offset:2px;
}

.header-search-clear{width:27px;height:27px;display:none;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:18px;cursor:pointer}.header-search.has-value .header-search-clear{display:grid}.header-search-clear:hover{background:var(--soft);color:var(--text)}
.header-search-shortcut{flex:0 0 auto;min-width:25px;height:23px;display:grid;place-items:center;border:1px solid var(--border);border-radius:7px;background:var(--surface);color:var(--muted);font-size:11px;font-weight:850;box-shadow:0 1px 2px rgba(15,23,42,.06)}
.header-search-suggestions{position:absolute;z-index:10150;left:0;right:0;top:calc(100% + 9px);display:none;padding:10px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 24px 60px rgba(15,23,42,.16)}.header-search-wrap.is-open .header-search-suggestions{display:block}.header-search-suggestions-title{padding:4px 7px 8px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.header-search-suggestion-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.header-search-suggestion{display:flex;align-items:center;gap:9px;min-height:39px;padding:0 9px;border-radius:10px;color:var(--text);text-decoration:none;font-size:12px;font-weight:800}.header-search-suggestion:hover,.header-search-suggestion:focus-visible{background:var(--soft);outline:0}.header-search-suggestion svg{color:var(--primary)}
.header-search-live{display:grid;gap:3px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border)}.header-search-live[hidden]{display:none}.header-search-live a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;min-height:42px;padding:7px 9px;border-radius:10px;color:var(--text);text-decoration:none}.header-search-live a:hover,.header-search-live a:focus-visible{background:var(--soft);outline:0}.header-search-live b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.header-search-live small{color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase}.header-search-live-state{padding:9px;color:var(--muted);font-size:12px;font-weight:750}

@media(min-width:861px){
.header{border-bottom:1px solid color-mix(in srgb,var(--border) 78%,transparent);background:color-mix(in srgb,var(--surface) 91%,transparent);backdrop-filter:blur(18px) saturate(1.25)}
.brand-cluster{padding-right:5px}.brand{letter-spacing:-.035em}
.nav{gap:3px;padding:4px;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:14px;background:color-mix(in srgb,var(--soft) 72%,transparent)}
.nav-anchor-row{border-radius:11px}.nav-link{min-height:38px;padding-inline:10px;border-radius:11px;transition:background .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.nav-link:hover{background:var(--surface);transform:translateY(-1px);box-shadow:0 5px 14px rgba(15,23,42,.06)}.nav-link.active{background:var(--surface);color:var(--primary);box-shadow:0 6px 18px rgba(37,99,235,.1),inset 0 0 0 1px color-mix(in srgb,var(--primary) 18%,var(--border))}.nav-submenu-toggle{border-radius:9px}
.top-actions{padding:5px 7px;border-radius:14px;background:color-mix(in srgb,var(--soft) 76%,transparent);border-color:color-mix(in srgb,var(--border) 70%,transparent)}
.header-search{min-height:42px;border-radius:13px;background:var(--surface);border-color:color-mix(in srgb,var(--border) 72%,transparent);box-shadow:0 5px 16px rgba(15,23,42,.045)}.header-search:focus-within{border-color:color-mix(in srgb,var(--primary) 42%,var(--border));box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 10%,transparent),0 12px 28px rgba(15,23,42,.08);transform:none}.header-search-ai{height:29px;border-radius:9px;box-shadow:none}
.top-actions .notify-btn{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.top-actions .notify-btn:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--primary) 25%,var(--border))!important;box-shadow:0 7px 17px rgba(15,23,42,.07)}
}

.nav-link-label{
white-space:nowrap;
}

.notify{
position:relative;
flex:0 0 auto;
}

.doc-create-menu{position:relative;display:inline-block;flex:0 0 auto;z-index:10050;}
.pwa-header-menu-btn{
display:none;
align-items:center;
justify-content:center;
width:44px;
height:44px;
padding:0;
border-radius:14px;
border:1px solid var(--border, #e2e8f0);
background:var(--surface, #fff);
color:inherit;
cursor:pointer;
flex-shrink:0;
box-shadow:0 6px 16px rgba(15,23,42,.06);
}
.pwa-header-menu-btn svg{opacity:.92}
.doc-create-trigger .doc-create-trigger-icon{display:none;align-items:center;justify-content:center;}
.doc-create-trigger{cursor:pointer;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;transition:box-shadow .15s ease, background .15s ease;}
.doc-create-trigger{touch-action:manipulation;}
.doc-create-trigger:hover{box-shadow:0 6px 16px rgba(15,23,42,.14);}
.doc-create-trigger .doc-create-caret{transition:transform .2s ease;display:inline-block;font-size:9px;line-height:1;opacity:.85;}
.doc-create-menu.open .doc-create-caret{transform:rotate(180deg);}
.doc-create-dropdown{
position:absolute;
top:calc(100% + 8px);
right:0;
min-width:340px;
background:var(--surface, #fff);
border:1px solid var(--border, #dbe2ea);
border-radius:14px;
box-shadow:0 24px 60px rgba(15,23,42,.18), 0 4px 12px rgba(15,23,42,.06);
display:none;
z-index:10080;
padding:8px;
opacity:0;
transform:translateY(-8px) scale(.97);
transition:opacity .18s ease, transform .18s cubic-bezier(.34,1.56,.64,1);
overflow:hidden;
}
.doc-create-menu.open .doc-create-dropdown{display:block;animation:docCreateIn .22s cubic-bezier(.34,1.56,.64,1) forwards;}
@keyframes docCreateIn{
to{opacity:1;transform:translateY(0) scale(1);}
}
.doc-create-dropdown::before{
content:'';
position:absolute;
top:-6px;
right:24px;
width:12px;
height:12px;
background:var(--surface, #fff);
border-top:1px solid var(--border, #dbe2ea);
border-left:1px solid var(--border, #dbe2ea);
transform:rotate(45deg);
}
.doc-create-dropdown-header{
font-size:11px;
font-weight:800;
letter-spacing:.08em;
text-transform:uppercase;
color:var(--muted, #64748b);
padding:8px 12px 4px;
}
.doc-create-dropdown a{
position:relative;
display:flex;
align-items:flex-start;
gap:12px;
padding:10px 12px;
border-radius:10px;
text-decoration:none;
color:var(--text, #0f172a);
transition:background .14s ease, transform .14s ease;
}
.doc-create-dropdown a:hover{background:var(--soft, #f1f5f9);transform:translateX(2px);}
.doc-create-dropdown a .doc-create-icon{
display:inline-flex;
align-items:center;
justify-content:center;
width:36px;
height:36px;
border-radius:9px;
flex-shrink:0;
background:linear-gradient(135deg, rgba(99,102,241,.12), rgba(99,102,241,.04));
border:1px solid rgba(99,102,241,.12);
color:#111827;
}
.doc-create-dropdown a .doc-create-icon svg{width:18px;height:18px;}
.doc-create-dropdown a[data-doc-create="worker"] .doc-create-icon{background:linear-gradient(135deg, rgba(16,185,129,.12), rgba(16,185,129,.04));border-color:rgba(16,185,129,.14);}
.doc-create-dropdown a[data-doc-create="local_act"] .doc-create-icon{background:linear-gradient(135deg, rgba(245,158,11,.14), rgba(245,158,11,.04));border-color:rgba(245,158,11,.16);}
.doc-create-dropdown a[data-doc-create="board"] .doc-create-icon{background:linear-gradient(135deg, rgba(168,85,247,.14), rgba(168,85,247,.04));border-color:rgba(168,85,247,.16);}
.doc-create-dropdown a strong{display:block;font-size:13px;font-weight:700;line-height:1.3;}
.doc-create-dropdown a span{display:block;font-size:11.5px;color:var(--muted, #64748b);margin-top:2px;line-height:1.4;}

.notify-btn{
position:relative;
display:inline-flex;
align-items:center;
justify-content:center;
width:38px;
height:38px;
border:1px solid var(--border);
border-radius:8px;
background:var(--soft);
color:var(--text);
cursor:pointer;
box-shadow:inset 0 1px 0 rgba(255,255,255,.45);
}
.notify-btn svg{
width:17px;
height:17px;
stroke:currentColor;
stroke-width:2;
fill:none;
stroke-linecap:round;
stroke-linejoin:round;
}

.notify-count{
position:absolute;
top:-4px;
right:-2px;
min-width:18px;
height:18px;
padding:0 5px;
border-radius:8px;
background:#dc2626;
color:#fff;
font-size:11px;
font-weight:700;
display:flex;
align-items:center;
justify-content:center;
}

.notify-menu{
position:fixed;
top:64px;
right:18px;
width:min(440px, 92vw);
max-height:min(78vh, 760px);
padding:12px;
border-radius:18px;
background:var(--surface);
border:1px solid var(--border);
box-shadow:0 18px 40px rgba(15,23,42,.11);
overflow:auto;
opacity:0;
visibility:hidden;
pointer-events:none;
transform:translateY(6px);
transition:opacity .16s ease, transform .16s ease, visibility .16s ease;
z-index:10050;
}

.notify:hover .notify-menu,
.notify:focus-within .notify-menu,
.notify.open .notify-menu,
.notify-menu.open{
opacity:1;
visibility:visible;
pointer-events:auto;
transform:translateY(0);
}

.notify-head{
display:flex;
justify-content:space-between;
gap:10px;
align-items:center;
padding:6px 6px 12px;
font-size:13px;
font-weight:700;
}

.notify-panel{
display:grid;
gap:12px;
}

.notify-section{
display:grid;
gap:8px;
}

.notify-section-title{
font-size:12px;
font-weight:800;
letter-spacing:.06em;
text-transform:uppercase;
color:var(--muted);
padding:0 4px;
}

.notify-list{
display:flex;
flex-direction:column;
gap:8px;
}

.notify-item{
display:block;
padding:10px 12px;
border-radius:12px;
background:var(--soft);
color:inherit;
text-decoration:none;
transition:background-color .16s ease, transform .16s ease;
will-change:transform;
}
.notify-item:hover{
background:color-mix(in srgb, var(--soft) 78%, #ffffff 22%);
transform:translateY(-1px);
}

.notify-item-title{
font-size:13px;
font-weight:700;
}

.notify-item-meta{
margin-top:4px;
font-size:12px;
line-height:1.5;
color:var(--muted);
}

.notify-empty{
padding:12px;
border-radius:12px;
background:var(--soft);
font-size:13px;
color:var(--muted);
}

.notify-discussion{
padding:10px 12px;
border-radius:12px;
background:linear-gradient(180deg, color-mix(in srgb, var(--soft) 90%, #ffffff 10%) 0%, var(--soft) 100%);
border:1px solid color-mix(in srgb, var(--border) 84%, #ffffff 16%);
color:inherit;
text-decoration:none;
display:block;
}

.notify-discussion-fragment{
margin-top:6px;
padding:8px 10px;
border-radius:10px;
background:rgba(255,255,255,.72);
font-size:12px;
line-height:1.45;
color:var(--text);
}

/* ======================= */

.footer{
border-top:1px solid var(--border);
padding:6px 0;
font-size:11.5px;
color:var(--muted);
background:rgba(255,255,255,.92);
backdrop-filter:saturate(140%) blur(6px);
}

.workspace-footer-v2__menu{
position:relative;
display:inline-flex;
}

.workspace-footer-v2__menu-panel{
position:fixed;
right:112px;
bottom:72px;
z-index:10080;
width:min(360px,calc(100vw - 24px));
border:1px solid var(--border);
border-radius:14px;
background:var(--surface);
box-shadow:0 24px 70px rgba(15,23,42,.18);
padding:12px;
display:grid;
gap:10px;
}

.workspace-footer-v2__menu-panel[hidden]{
display:none;
}

.workspace-footer-v2__menu-head{
display:flex;
align-items:center;
justify-content:space-between;
gap:10px;
font-weight:950;
color:var(--text);
}

.workspace-footer-v2__menu-head span{
display:flex;
align-items:center;
gap:8px;
}

.workspace-footer-v2__menu-close{
width:28px;
height:28px;
border:1px solid var(--border);
border-radius:8px;
background:var(--surface);
color:var(--text);
display:grid;
place-items:center;
cursor:pointer;
}

.workspace-footer-v2__menu-grid{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:8px;
}

.workspace-footer-v2__menu-link{
min-height:40px;
border:1px solid var(--border);
border-radius:10px;
background:var(--surface-2);
color:var(--text);
font:inherit;
font-weight:850;
text-decoration:none;
display:inline-flex;
align-items:center;
justify-content:center;
gap:8px;
padding:0 12px;
cursor:pointer;
}

.workspace-footer-v2__menu-link:hover{
background:var(--soft);
}

.workspace-footer-v2__system-card{
border:1px solid var(--border);
border-radius:10px;
background:var(--surface-2);
padding:10px;
display:grid;
gap:4px;
font-size:12px;
line-height:1.35;
color:var(--muted);
}

.workspace-footer-v2__system-card b{
color:var(--text);
font-size:13px;
}

.pwa-safe-brand,
.pwa-document-back{display:none;}
.pwa-tabbar{display:none;}
.pwa-menu-sheet{display:none;}

html.deltrek-theme-dark .header,
html.deltrek-theme-dark .footer,
body.dark .header,
body.dark .footer{
background:var(--surface-elevated);
}

html.deltrek-theme-dark input,
html.deltrek-theme-dark select,
html.deltrek-theme-dark textarea,
html.deltrek-theme-dark .workspace-input,
html.deltrek-theme-dark .workspace-panel,
html.deltrek-theme-dark .workspace-card,
html.deltrek-theme-dark .workspace-table,
html.deltrek-theme-dark .workspace-registry-filter-panel,
html.deltrek-theme-dark .ui-help-button,
html.deltrek-theme-dark .ui-help-popover,
body.dark input,
body.dark select,
body.dark textarea,
body.dark .workspace-input,
body.dark .workspace-panel,
body.dark .workspace-card,
body.dark .workspace-table,
body.dark .workspace-registry-filter-panel,
body.dark .ui-help-button,
body.dark .ui-help-popover{
background:var(--surface) !important;
color:var(--text) !important;
border-color:var(--border) !important;
}

html.deltrek-theme-dark input::placeholder,
html.deltrek-theme-dark textarea::placeholder,
body.dark input::placeholder,
body.dark textarea::placeholder{
color:var(--muted);
}

html.deltrek-theme-dark .workspace-panel-note,
html.deltrek-theme-dark .workspace-subtle,
html.deltrek-theme-dark .workspace-copy,
html.deltrek-theme-dark .notify-item-meta,
body.dark .workspace-panel-note,
body.dark .workspace-subtle,
body.dark .workspace-copy,
body.dark .notify-item-meta{
color:var(--muted) !important;
}

html.deltrek-theme-dark .notify-discussion-fragment,
html.deltrek-theme-dark .header-tab-strip,
html.deltrek-theme-dark .header-tab-overflow,
html.deltrek-theme-dark .top-actions.has-user,
html.deltrek-theme-dark .nav,
body.dark .notify-discussion-fragment,
body.dark .header-tab-strip,
body.dark .header-tab-overflow,
body.dark .top-actions.has-user,
body.dark .nav{
background:var(--surface-2) !important;
border-color:var(--border) !important;
box-shadow:none !important;
}

html.deltrek-theme-dark :is(.workspace-hero,.documents-hero,.page-hero,.workspace-section,.workspace-panel,.workspace-card,.workspace-table,.workspace-registry-filter-panel,.side-rail,.beta-rail,.documents-beta-rail,.tariff-beta-rail,.mycab-modal-panel,.modal-panel,.chat-workspace,.chat-sidebar,.chat-main),
body.dark :is(.workspace-hero,.documents-hero,.page-hero,.workspace-section,.workspace-panel,.workspace-card,.workspace-table,.workspace-registry-filter-panel,.side-rail,.beta-rail,.documents-beta-rail,.tariff-beta-rail,.mycab-modal-panel,.modal-panel,.chat-workspace,.chat-sidebar,.chat-main){
background:var(--surface) !important;
color:var(--text) !important;
border-color:var(--border) !important;
box-shadow:0 8px 22px rgba(2,6,23,.22) !important;
}

html.deltrek-theme-dark :is(.workspace-hero,.documents-hero,.page-hero,.workspace-section,.workspace-panel,.workspace-card,.workspace-table,.side-rail,.beta-rail,.documents-beta-rail,.tariff-beta-rail,.mycab-modal-panel,.modal-panel,.chat-workspace,.chat-sidebar,.chat-main) :is(h1,h2,h3,h4,h5,h6,p,span,small,label,td,th,li,b,strong),
body.dark :is(.workspace-hero,.documents-hero,.page-hero,.workspace-section,.workspace-panel,.workspace-card,.workspace-table,.side-rail,.beta-rail,.documents-beta-rail,.tariff-beta-rail,.mycab-modal-panel,.modal-panel,.chat-workspace,.chat-sidebar,.chat-main) :is(h1,h2,h3,h4,h5,h6,p,span,small,label,td,th,li,b,strong){
color:inherit;
}

html.deltrek-theme-dark :is(.workspace-btn-secondary,.workspace-chip,.workspace-tag,.workspace-tabs,.workspace-filter,.workspace-status,.workspace-pill,.documents-beta-rail a,.documents-beta-rail button,.documents-beta-rail summary,.tariff-beta-rail a,.tariff-beta-rail button,.tariff-beta-rail summary),
body.dark :is(.workspace-btn-secondary,.workspace-chip,.workspace-tag,.workspace-tabs,.workspace-filter,.workspace-status,.workspace-pill,.documents-beta-rail a,.documents-beta-rail button,.documents-beta-rail summary,.tariff-beta-rail a,.tariff-beta-rail button,.tariff-beta-rail summary){
background:var(--surface-2) !important;
color:var(--text) !important;
border-color:var(--border) !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.card,.panel,.page-card,.table-card,.registry-card,.list-card,.stat-card,.metric-card,.summary-card,.tile,.rail,.left-rail,.mycab-card,.mycab-service-launcher,.mycab-overview-card,.modal-card,.modal-content,.workspace-modal,.builder-modal,.profile-modal-card,.announcement-modal,.dt-feedback-card,.dt-feedback-head,.search-card,.search-panel,.cal-card,.cal-panel,.hrji-card,.hrji-panel,.docscan-card,.docscan-panel,.dp-card,.dp-panel,.dp-head,.dp-item,.contingent-card,.contingent-panel,.chat-dialog-card,.chat-thread-card,.chat-message-card):not(.gost-office-document):not(.builder-preview-sheet):not(.builder-visual-page):not(.doc-print-layout):not(.doc-print-sheet):not(.doc-print-delred-page):not(.paid-document-page):not(.order-print-sheet):not(.order-print-page):not(.order-route-print-page):not(.order-attachment-print-page):not(.att-print-page):not(.attendance-print-page):not(.teacher-portfolio-print-page):not(.hr-print-page):not(.dp-a4):not(.a4-sheet):not(.print-sheet):not(.delprint-sheet):not(.delprint-page):not(.document-a4-page),
body.dark:not(.delprint-print-body) :is(.card,.panel,.page-card,.table-card,.registry-card,.list-card,.stat-card,.metric-card,.summary-card,.tile,.rail,.left-rail,.mycab-card,.mycab-service-launcher,.mycab-overview-card,.modal-card,.modal-content,.workspace-modal,.builder-modal,.profile-modal-card,.announcement-modal,.dt-feedback-card,.dt-feedback-head,.search-card,.search-panel,.cal-card,.cal-panel,.hrji-card,.hrji-panel,.docscan-card,.docscan-panel,.dp-card,.dp-panel,.dp-head,.dp-item,.contingent-card,.contingent-panel,.chat-dialog-card,.chat-thread-card,.chat-message-card):not(.gost-office-document):not(.builder-preview-sheet):not(.builder-visual-page):not(.doc-print-layout):not(.doc-print-sheet):not(.doc-print-delred-page):not(.paid-document-page):not(.order-print-sheet):not(.order-print-page):not(.order-route-print-page):not(.order-attachment-print-page):not(.att-print-page):not(.attendance-print-page):not(.teacher-portfolio-print-page):not(.hr-print-page):not(.dp-a4):not(.a4-sheet):not(.print-sheet):not(.delprint-sheet):not(.delprint-page):not(.document-a4-page){
background:var(--surface) !important;
color:var(--text) !important;
border-color:var(--border) !important;
box-shadow:0 8px 22px rgba(2,6,23,.22) !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.card,.panel,.page-card,.table-card,.registry-card,.list-card,.stat-card,.metric-card,.summary-card,.tile,.rail,.left-rail,.mycab-card,.mycab-service-launcher,.mycab-overview-card,.modal-card,.modal-content,.workspace-modal,.builder-modal,.profile-modal-card,.announcement-modal,.dt-feedback-card,.dt-feedback-head,.search-card,.search-panel,.cal-card,.cal-panel,.hrji-card,.hrji-panel,.docscan-card,.docscan-panel,.dp-card,.dp-panel,.dp-head,.dp-item,.contingent-card,.contingent-panel,.chat-dialog-card,.chat-thread-card,.chat-message-card):not(.gost-office-document):not(.builder-preview-sheet):not(.builder-visual-page):not(.doc-print-layout):not(.doc-print-sheet):not(.doc-print-delred-page):not(.paid-document-page):not(.order-print-sheet):not(.order-print-page):not(.order-route-print-page):not(.order-attachment-print-page):not(.att-print-page):not(.attendance-print-page):not(.teacher-portfolio-print-page):not(.hr-print-page):not(.dp-a4):not(.a4-sheet):not(.print-sheet):not(.delprint-sheet):not(.delprint-page):not(.document-a4-page) :is(h1,h2,h3,h4,h5,h6,p,span,small,label,td,th,li,b,strong,em,button,a),
body.dark:not(.delprint-print-body) :is(.card,.panel,.page-card,.table-card,.registry-card,.list-card,.stat-card,.metric-card,.summary-card,.tile,.rail,.left-rail,.mycab-card,.mycab-service-launcher,.mycab-overview-card,.modal-card,.modal-content,.workspace-modal,.builder-modal,.profile-modal-card,.announcement-modal,.dt-feedback-card,.dt-feedback-head,.search-card,.search-panel,.cal-card,.cal-panel,.hrji-card,.hrji-panel,.docscan-card,.docscan-panel,.dp-card,.dp-panel,.dp-head,.dp-item,.contingent-card,.contingent-panel,.chat-dialog-card,.chat-thread-card,.chat-message-card):not(.gost-office-document):not(.builder-preview-sheet):not(.builder-visual-page):not(.doc-print-layout):not(.doc-print-sheet):not(.doc-print-delred-page):not(.paid-document-page):not(.order-print-sheet):not(.order-print-page):not(.order-route-print-page):not(.order-attachment-print-page):not(.att-print-page):not(.attendance-print-page):not(.teacher-portfolio-print-page):not(.hr-print-page):not(.dp-a4):not(.a4-sheet):not(.print-sheet):not(.delprint-sheet):not(.delprint-page):not(.document-a4-page) :is(h1,h2,h3,h4,h5,h6,p,span,small,label,td,th,li,b,strong,em,button,a){
color:inherit;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.muted,.text-muted,.hint,.subtle,.meta,.small,.secondary,.workspace-muted,.mycab-muted,.chat-muted,.cal-muted,.search-muted),
body.dark:not(.delprint-print-body) :is(.muted,.text-muted,.hint,.subtle,.meta,.small,.secondary,.workspace-muted,.mycab-muted,.chat-muted,.cal-muted,.search-muted){
color:var(--muted) !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.table,.data-table,.registry-table,.workspace-table,table):not(.gost-office-document table):not(.doc-print-sheet table):not(.print-sheet table):not(.delprint-sheet table):not(.document-a4-page table),
body.dark:not(.delprint-print-body) :is(.table,.data-table,.registry-table,.workspace-table,table):not(.gost-office-document table):not(.doc-print-sheet table):not(.print-sheet table):not(.delprint-sheet table):not(.document-a4-page table){
color:var(--text);
border-color:var(--border);
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.table,.data-table,.registry-table,.workspace-table,table):not(.gost-office-document table):not(.doc-print-sheet table):not(.print-sheet table):not(.delprint-sheet table):not(.document-a4-page table) :is(th,thead td),
body.dark:not(.delprint-print-body) :is(.table,.data-table,.registry-table,.workspace-table,table):not(.gost-office-document table):not(.doc-print-sheet table):not(.print-sheet table):not(.delprint-sheet table):not(.document-a4-page table) :is(th,thead td){
background:var(--surface-2) !important;
color:var(--muted) !important;
border-color:var(--border) !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.table,.data-table,.registry-table,.workspace-table,table):not(.gost-office-document table):not(.doc-print-sheet table):not(.print-sheet table):not(.delprint-sheet table):not(.document-a4-page table) :is(td,tr),
body.dark:not(.delprint-print-body) :is(.table,.data-table,.registry-table,.workspace-table,table):not(.gost-office-document table):not(.doc-print-sheet table):not(.print-sheet table):not(.delprint-sheet table):not(.document-a4-page table) :is(td,tr){
border-color:var(--border) !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.btn-secondary,.icon-btn,.chip,.pill,.tag,.badge-soft,.action-btn,.ghost-btn,.filter-chip,.tab,.tab-btn,.segmented-control,.segmented-control button,.mycab-chip,.mycab-action,.chat-filter,.chat-tab),
body.dark:not(.delprint-print-body) :is(.btn-secondary,.icon-btn,.chip,.pill,.tag,.badge-soft,.action-btn,.ghost-btn,.filter-chip,.tab,.tab-btn,.segmented-control,.segmented-control button,.mycab-chip,.mycab-action,.chat-filter,.chat-tab){
background:var(--surface-2) !important;
color:var(--text) !important;
border-color:var(--border) !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.btn-primary,.primary-btn,.workspace-btn-primary,.mycab-primary,.chat-send,.pwa-primary),
body.dark:not(.delprint-print-body) :is(.btn-primary,.primary-btn,.workspace-btn-primary,.mycab-primary,.chat-send,.pwa-primary){
background:#f8fafc !important;
color:#111827 !important;
border-color:#f8fafc !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) main.container :is([class*="-card"],[class*="-panel"],[class*="-tile"],[class*="-item"],[class*="-metric"],[class*="-stat"],[class*="-summary"],[class*="-section"],[class*="-hero"],[class*="-rail"],[class*="-list"],[class*="-row"]):not(.doc-preview):not(.document-preview):not(.delprint-preview):not(.print-preview):not(.builder-preview):not(.order-print-preview):not(.gost-office-document):not(.builder-preview-sheet):not(.builder-visual-page):not(.doc-print-layout):not(.doc-print-sheet):not(.doc-print-delred-page):not(.paid-document-page):not(.order-print-sheet):not(.order-print-page):not(.order-route-print-page):not(.order-attachment-print-page):not(.att-print-page):not(.attendance-print-page):not(.teacher-portfolio-print-page):not(.hr-print-page):not(.dp-a4):not(.a4-sheet):not(.print-sheet):not(.delprint-sheet):not(.delprint-page):not(.document-a4-page),
body.dark:not(.delprint-print-body) main.container :is([class*="-card"],[class*="-panel"],[class*="-tile"],[class*="-item"],[class*="-metric"],[class*="-stat"],[class*="-summary"],[class*="-section"],[class*="-hero"],[class*="-rail"],[class*="-list"],[class*="-row"]):not(.doc-preview):not(.document-preview):not(.delprint-preview):not(.print-preview):not(.builder-preview):not(.order-print-preview):not(.gost-office-document):not(.builder-preview-sheet):not(.builder-visual-page):not(.doc-print-layout):not(.doc-print-sheet):not(.doc-print-delred-page):not(.paid-document-page):not(.order-print-sheet):not(.order-print-page):not(.order-route-print-page):not(.order-attachment-print-page):not(.att-print-page):not(.attendance-print-page):not(.teacher-portfolio-print-page):not(.hr-print-page):not(.dp-a4):not(.a4-sheet):not(.print-sheet):not(.delprint-sheet):not(.delprint-page):not(.document-a4-page){
background:var(--surface) !important;
color:var(--text) !important;
border-color:var(--border) !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.mycab-summary-card,.mycab-service-launcher a,.mycab-doc-grid,.mycab-document-queues>div,.mycab-workload-card,.mycab-workload-metrics>div,.mycab-lesson-card,.mycab-class-card,.mycab-class-metrics>div,.mycab-portfolio-card,.mycab-portfolio-section,.mycab-profile-dl>div,.mycab-education-list article,.mycab-block-item,.workspace-row,.workspace-card-link),
body.dark:not(.delprint-print-body) :is(.mycab-summary-card,.mycab-service-launcher a,.mycab-doc-grid,.mycab-document-queues>div,.mycab-workload-card,.mycab-workload-metrics>div,.mycab-lesson-card,.mycab-class-card,.mycab-class-metrics>div,.mycab-portfolio-card,.mycab-portfolio-section,.mycab-profile-dl>div,.mycab-education-list article,.mycab-block-item,.workspace-row,.workspace-card-link){
background:var(--surface) !important;
color:var(--text) !important;
border-color:var(--border) !important;
box-shadow:0 8px 22px rgba(2,6,23,.18) !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.mycab-summary-card em,.mycab-service-launcher em,.mycab-doc-card em,.mycab-workload-head em,.mycab-lesson-card em,.mycab-lesson-card small,.mycab-class-card-head em,.mycab-class-metrics span,.mycab-portfolio-card em,.mycab-profile-dl dt,.mycab-education-list em,.mycab-education-list small,.mycab-block-item em,.workspace-row-meta),
body.dark:not(.delprint-print-body) :is(.mycab-summary-card em,.mycab-service-launcher em,.mycab-doc-card em,.mycab-workload-head em,.mycab-lesson-card em,.mycab-lesson-card small,.mycab-class-card-head em,.mycab-class-metrics span,.mycab-portfolio-card em,.mycab-profile-dl dt,.mycab-education-list em,.mycab-education-list small,.mycab-block-item em,.workspace-row-meta){
color:var(--muted) !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.mycab-summary-card span,.mycab-service-launcher span,.mycab-document-queues span,.mycab-workload-metrics span,.mycab-lesson-card>span,.mycab-class-card-head>div>span,.mycab-portfolio-card>span,.mycab-education-list article>span),
body.dark:not(.delprint-print-body) :is(.mycab-summary-card span,.mycab-service-launcher span,.mycab-document-queues span,.mycab-workload-metrics span,.mycab-lesson-card>span,.mycab-class-card-head>div>span,.mycab-portfolio-card>span,.mycab-education-list article>span){
background:#1e293b !important;
color:#bfdbfe !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) main.container :is([class*="-card"],[class*="-panel"],[class*="-tile"],[class*="-item"],[class*="-metric"],[class*="-stat"],[class*="-summary"],[class*="-section"],[class*="-hero"],[class*="-rail"],[class*="-list"],[class*="-row"]):not(.doc-preview):not(.document-preview):not(.delprint-preview):not(.print-preview):not(.builder-preview):not(.order-print-preview):not(.gost-office-document):not(.builder-preview-sheet):not(.builder-visual-page):not(.doc-print-layout):not(.doc-print-sheet):not(.doc-print-delred-page):not(.paid-document-page):not(.order-print-sheet):not(.order-print-page):not(.order-route-print-page):not(.order-attachment-print-page):not(.att-print-page):not(.attendance-print-page):not(.teacher-portfolio-print-page):not(.hr-print-page):not(.dp-a4):not(.a4-sheet):not(.print-sheet):not(.delprint-sheet):not(.delprint-page):not(.document-a4-page) :is(h1,h2,h3,h4,h5,h6,p,span,small,label,td,th,li,b,strong,em,a),
body.dark:not(.delprint-print-body) main.container :is([class*="-card"],[class*="-panel"],[class*="-tile"],[class*="-item"],[class*="-metric"],[class*="-stat"],[class*="-summary"],[class*="-section"],[class*="-hero"],[class*="-rail"],[class*="-list"],[class*="-row"]):not(.doc-preview):not(.document-preview):not(.delprint-preview):not(.print-preview):not(.builder-preview):not(.order-print-preview):not(.gost-office-document):not(.builder-preview-sheet):not(.builder-visual-page):not(.doc-print-layout):not(.doc-print-sheet):not(.doc-print-delred-page):not(.paid-document-page):not(.order-print-sheet):not(.order-print-page):not(.order-route-print-page):not(.order-attachment-print-page):not(.att-print-page):not(.attendance-print-page):not(.teacher-portfolio-print-page):not(.hr-print-page):not(.dp-a4):not(.a4-sheet):not(.print-sheet):not(.delprint-sheet):not(.delprint-page):not(.document-a4-page) :is(h1,h2,h3,h4,h5,h6,p,span,small,label,td,th,li,b,strong,em,a){
color:inherit;
}

html.deltrek-theme-dark body:not(.delprint-print-body) main.container :is([class*="-card"],[class*="-panel"],[class*="-tile"],[class*="-item"],[class*="-metric"],[class*="-stat"],[class*="-summary"],[class*="-section"],[class*="-hero"],[class*="-rail"],[class*="-list"],[class*="-row"]) :is(.muted,.text-muted,.hint,.subtle,.meta,.small,.secondary,[class*="-muted"],[class*="-meta"],[class*="-hint"],[class*="-subtle"]),
body.dark:not(.delprint-print-body) main.container :is([class*="-card"],[class*="-panel"],[class*="-tile"],[class*="-item"],[class*="-metric"],[class*="-stat"],[class*="-summary"],[class*="-section"],[class*="-hero"],[class*="-rail"],[class*="-list"],[class*="-row"]) :is(.muted,.text-muted,.hint,.subtle,.meta,.small,.secondary,[class*="-muted"],[class*="-meta"],[class*="-hint"],[class*="-subtle"]){
color:var(--muted) !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body),
body.dark:not(.delprint-print-body){
background:#0f172a !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) main.container,
body.dark:not(.delprint-print-body) main.container{
background:#0f172a !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.header,.topbar,.layout-header,.header-tab-strip,.header-tab-overflow,.top-actions.has-user,.nav,.pwa-safe-header,.pwa-menu-sheet,.pwa-menu-sheet-head,.pwa-menu-sheet-list,.pwa-tabbar),
body.dark:not(.delprint-print-body) :is(.header,.topbar,.layout-header,.header-tab-strip,.header-tab-overflow,.top-actions.has-user,.nav,.pwa-safe-header,.pwa-menu-sheet,.pwa-menu-sheet-head,.pwa-menu-sheet-list,.pwa-tabbar){
background:#111827 !important;
background-image:none !important;
border-color:#334155 !important;
box-shadow:none !important;
color:#f8fafc !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.nav-link,.pwa-safe-action,.pwa-tab,.user-pill,.logout-btn,.theme-toggle-btn,.notify-button,.ai-top-button),
body.dark:not(.delprint-print-body) :is(.nav-link,.pwa-safe-action,.pwa-tab,.user-pill,.logout-btn,.theme-toggle-btn,.notify-button,.ai-top-button){
background:#1e293b !important;
border-color:#334155 !important;
color:#e5e7eb !important;
box-shadow:none !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.nav-link.active,.pwa-tab.active,.pwa-safe-action.active),
body.dark:not(.delprint-print-body) :is(.nav-link.active,.pwa-tab.active,.pwa-safe-action.active){
background:#334155 !important;
border-color:#475569 !important;
color:#fff !important;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.workspace-page.chat-workspace,.chat-workspace,.chat-side,.chat-pane,.chat-pane-head,.chat-thread,.chat-bubble.other,.chat-bubble.system,.chat-modal,.chat-broadcast-dialog),
body.dark:not(.delprint-print-body) :is(.workspace-page.chat-workspace,.chat-workspace,.chat-side,.chat-pane,.chat-pane-head,.chat-thread,.chat-bubble.other,.chat-bubble.system,.chat-modal,.chat-broadcast-dialog){
background:#111827 !important;
background-image:none !important;
border-color:#334155 !important;
box-shadow:0 10px 24px rgba(2,6,23,.2) !important;
color:#f8fafc !important;
border-radius:18px;
}

html.deltrek-theme-dark body:not(.delprint-print-body) :is(.chat-thread:hover,.chat-thread.active,.chat-thread.system,.chat-thread.group,.chat-bubble.mine,.chat-service-intro,.chat-link-card,.chat-max-hint,.chat-max-panel,.chat-max-checks,.chat-action-button),
body.dark:not(.delprint-print-body) :is(.chat-thread:hover,.chat-thread.active,.chat-thread.system,.chat-thread.group,.chat-bubble.mine,.chat-service-intro,.chat-link-card,.chat-max-hint,.chat-max-panel,.chat-max-checks,.chat-action-button){
background:#1e293b !important;
background-image:none !important;
border-color:#475569 !important;
color:#f8fafc !important;
box-shadow:none !important;
}

html.deltrek-theme-dark :is(.doc-preview,.document-preview,.delprint-preview,.print-preview,.builder-preview,.order-print-preview),
body.dark :is(.doc-preview,.document-preview,.delprint-preview,.print-preview,.builder-preview,.order-print-preview){
background:#e8edf4 !important;
color:#111827 !important;
color-scheme:light;
}

html.deltrek-theme-dark :is(.gost-office-document,.builder-preview-sheet,.builder-visual-page,.doc-print-layout,.doc-print-sheet,.doc-print-delred-page,.paid-document-page,.order-print-sheet,.order-print-page,.order-route-print-page,.order-attachment-print-page,.att-print-page,.attendance-print-page,.teacher-portfolio-print-page,.hr-print-page,.dp-a4,.a4-sheet,.print-sheet,.delprint-sheet,.delprint-page,.document-a4-page),
body.dark :is(.gost-office-document,.builder-preview-sheet,.builder-visual-page,.doc-print-layout,.doc-print-sheet,.doc-print-delred-page,.paid-document-page,.order-print-sheet,.order-print-page,.order-route-print-page,.order-attachment-print-page,.att-print-page,.attendance-print-page,.teacher-portfolio-print-page,.hr-print-page,.dp-a4,.a4-sheet,.print-sheet,.delprint-sheet,.delprint-page,.document-a4-page){
background:#ffffff !important;
color:#111827 !important;
border-color:#d1d5db !important;
box-shadow:0 18px 42px rgba(2,6,23,.22) !important;
color-scheme:light;
}

html.deltrek-theme-dark :is(.gost-office-document,.builder-preview-sheet,.builder-visual-page,.doc-print-layout,.doc-print-sheet,.doc-print-delred-page,.paid-document-page,.order-print-sheet,.order-print-page,.order-route-print-page,.order-attachment-print-page,.att-print-page,.attendance-print-page,.teacher-portfolio-print-page,.hr-print-page,.dp-a4,.a4-sheet,.print-sheet,.delprint-sheet,.delprint-page,.document-a4-page) :is(h1,h2,h3,h4,h5,h6,p,span,small,label,td,th,li,b,strong,em,div),
body.dark :is(.gost-office-document,.builder-preview-sheet,.builder-visual-page,.doc-print-layout,.doc-print-sheet,.doc-print-delred-page,.paid-document-page,.order-print-sheet,.order-print-page,.order-route-print-page,.order-attachment-print-page,.att-print-page,.attendance-print-page,.teacher-portfolio-print-page,.hr-print-page,.dp-a4,.a4-sheet,.print-sheet,.delprint-sheet,.delprint-page,.document-a4-page) :is(h1,h2,h3,h4,h5,h6,p,span,small,label,td,th,li,b,strong,em,div){
color:inherit !important;
}

html.deltrek-theme-dark :is(.gost-office-document,.builder-preview-sheet,.builder-visual-page,.doc-print-layout,.doc-print-sheet,.doc-print-delred-page,.paid-document-page,.order-print-sheet,.order-print-page,.order-route-print-page,.order-attachment-print-page,.att-print-page,.attendance-print-page,.teacher-portfolio-print-page,.hr-print-page,.dp-a4,.a4-sheet,.print-sheet,.delprint-sheet,.delprint-page,.document-a4-page) :is(table,th,td),
body.dark :is(.gost-office-document,.builder-preview-sheet,.builder-visual-page,.doc-print-layout,.doc-print-sheet,.doc-print-delred-page,.paid-document-page,.order-print-sheet,.order-print-page,.order-route-print-page,.order-attachment-print-page,.att-print-page,.attendance-print-page,.teacher-portfolio-print-page,.hr-print-page,.dp-a4,.a4-sheet,.print-sheet,.delprint-sheet,.delprint-page,.document-a4-page) :is(table,th,td){
border-color:#111827 !important;
}

html.deltrek-theme-dark :is(.gost-office-document,.builder-preview-sheet,.builder-visual-page,.doc-print-layout,.doc-print-sheet,.doc-print-delred-page,.paid-document-page,.order-print-sheet,.order-print-page,.order-route-print-page,.order-attachment-print-page,.att-print-page,.attendance-print-page,.teacher-portfolio-print-page,.hr-print-page,.dp-a4,.a4-sheet,.print-sheet,.delprint-sheet,.delprint-page,.document-a4-page) :is([class*="-card"],[class*="-panel"],[class*="-tile"],[class*="-item"],[class*="-metric"],[class*="-stat"],[class*="-summary"],[class*="-section"],[class*="-hero"],[class*="-rail"],[class*="-list"],[class*="-row"]),
body.dark :is(.gost-office-document,.builder-preview-sheet,.builder-visual-page,.doc-print-layout,.doc-print-sheet,.doc-print-delred-page,.paid-document-page,.order-print-sheet,.order-print-page,.order-route-print-page,.order-attachment-print-page,.att-print-page,.attendance-print-page,.teacher-portfolio-print-page,.hr-print-page,.dp-a4,.a4-sheet,.print-sheet,.delprint-sheet,.delprint-page,.document-a4-page) :is([class*="-card"],[class*="-panel"],[class*="-tile"],[class*="-item"],[class*="-metric"],[class*="-stat"],[class*="-summary"],[class*="-section"],[class*="-hero"],[class*="-rail"],[class*="-list"],[class*="-row"]){
background:transparent !important;
color:inherit !important;
box-shadow:none !important;
}

@media (max-width: 860px), (display-mode: standalone){
    /* Лента разделов — десктопный элемент. На телефоне/PWA она не должна
       появляться второй строкой под компактной навигацией. */
    .header-tab-strip,
    .header-tab-overflow,
    .header-tabs-wrap{
        display:none !important;
    }
    html.deltrek-mobile-shell{
        background:var(--bg);
        width:100%;
        max-width:100vw;
        overflow-x:hidden;
        touch-action:pan-y;
    }
    html.deltrek-mobile-shell body{
        min-height:100dvh;
        min-height:var(--pwa-layout-height, 100dvh);
        padding-top:0;
        padding-bottom:calc(var(--pwa-tabbar-height) + var(--pwa-safe-bottom));
        overflow-x:hidden;
        width:100%;
        max-width:100vw;
        touch-action:pan-y;
    }
    html.deltrek-mobile-shell .container{
        padding-left:max(10px, var(--pwa-safe-left));
        padding-right:max(10px, var(--pwa-safe-right));
    }
    html.deltrek-mobile-shell main.container{
        padding-top:8px;
        padding-bottom:14px;
    }
    html.deltrek-mobile-shell .header{
        display:block !important;
        position:sticky;
        top:0;
        z-index:70;
    }
    /* В PWA уже есть компактная верхняя панель и нижняя навигация. Не
       оставляем под ней десктопную ленту вкладок: она дублирует разделы,
       съедает экран и на iPhone выглядит как второй заголовок. */
    html.deltrek-mobile-shell .header-tab-strip,
    html.deltrek-mobile-shell .header-tab-overflow,
    html.deltrek-mobile-shell .header-tabs-wrap,
    html.deltrek-pwa-standalone .header-tab-strip,
    html.deltrek-pwa-standalone .header-tab-overflow,
    html.deltrek-pwa-standalone .header-tabs-wrap{
        display:none !important;
    }
    html.deltrek-mobile-shell main.container{
        padding-top:8px !important;
    }
    html.deltrek-pwa-standalone body{
        background:var(--bg) !important;
        padding-top:0 !important;
    }
    html.deltrek-pwa-standalone body::before{
        content:"";
        position:fixed;
        inset:0 0 auto 0;
        z-index:9048;
        height:max(var(--pwa-safe-top), 1px);
        background:#f8fafc;
        pointer-events:none;
        transform:translateZ(0);
    }
    html.deltrek-pwa-standalone .header{
        display:none !important;
    }
    html.deltrek-pwa-standalone main.container{
        padding-top:10px !important;
    }
    html.deltrek-pwa-standalone .pwa-safe-brand{
        position:sticky;
        top:0;
        z-index:9050;
        display:grid;
        grid-template-columns:minmax(74px, auto) minmax(0, 1fr) minmax(46px, auto);
        align-items:end;
        gap:6px;
        min-height:calc(var(--pwa-safe-top) + 48px);
        padding:var(--pwa-safe-top) max(10px, var(--pwa-safe-right)) 7px max(10px, var(--pwa-safe-left));
        background:linear-gradient(180deg, color-mix(in srgb, var(--bg) 96%, #fff 4%), var(--bg));
        color:var(--text);
        box-shadow:0 1px 0 color-mix(in srgb, var(--border) 72%, transparent 28%);
    }
    html.deltrek-pwa-standalone .pwa-safe-brand-main{
        min-width:0;
        display:grid;
        justify-items:center;
        gap:2px;
        line-height:1;
    }
    html.deltrek-pwa-standalone .pwa-safe-brand-main b{
        font-size:15px;
        line-height:1;
        font-weight:1000;
        letter-spacing:-.02em;
    }
    html.deltrek-pwa-standalone .pwa-safe-brand-main span{
        max-width:54vw;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
        color:var(--muted);
        font-size:11px;
        font-weight:900;
        text-transform:uppercase;
        letter-spacing:.06em;
    }
    html.deltrek-pwa-standalone .pwa-safe-action{
        appearance:none;
        min-width:40px;
        min-height:38px;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:6px;
        padding:0 10px;
        border:1px solid color-mix(in srgb, var(--border) 84%, transparent 16%);
        border-radius:13px;
        background:color-mix(in srgb, var(--surface-elevated) 94%, transparent 6%);
        color:var(--text);
        box-shadow:0 8px 24px rgba(15,23,42,.07);
        font:inherit;
        font-size:13px;
        font-weight:950;
        cursor:pointer;
        touch-action:manipulation;
    }
    html.deltrek-pwa-standalone .pwa-safe-action span{
        max-width:62px;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
    }
    html.deltrek-pwa-standalone .pwa-safe-action:active{transform:scale(.96);}
    html.deltrek-pwa-standalone .pwa-safe-action:disabled{
        opacity:.38;
        cursor:not-allowed;
        transform:none;
    }
    html.deltrek-pwa-standalone .pwa-safe-menu{
        justify-self:end;
        border-radius:16px;
    }
    html.deltrek-pwa-standalone .pwa-document-back.is-visible{
        display:none !important;
    }
    html.deltrek-pwa-standalone .pwa-menu-link[href*="/schedule/board"],
    html.deltrek-pwa-standalone .pwa-menu-link[href*="/schedule/beta"],
    html.deltrek-pwa-standalone .pwa-menu-link[href*="/schedule/dispatcher"]{
        display:none !important;
    }
    html.deltrek-mobile-shell .footer,
    html.deltrek-mobile-shell .back-to-top{
        display:none !important;
    }
    /* Главное меню перенесено в нижнюю панель (лист «Меню»); верхняя полоса — бренд и действия */
    .header .nav{display:none !important;}
    .header-main{
        grid-template-areas:"brand actions";
        grid-template-columns:minmax(0, 1fr) auto;
        align-items:center;
        padding-top:8px;
        padding-bottom:8px;
        padding-left:max(10px, var(--pwa-safe-left));
        padding-right:max(10px, var(--pwa-safe-right));
    }
    .pwa-header-menu-btn{display:inline-flex;}
    .top-actions.has-user{
        background:transparent !important;
        border:0 !important;
        box-shadow:none !important;
        padding:0 !important;
        gap:10px;
        overflow:visible;
        justify-content:flex-end;
    }
    .top-actions.has-user > .notify-btn.header-mail-btn{
        display:inline-flex !important;
        flex:0 0 44px;
        width:44px !important;
        height:44px !important;
    }
    .top-actions.has-user > .header-tabs-wrap,
    .top-actions.has-user > .header-search-wrap,
    .top-actions.has-user > .notify-btn.header-ack-btn,
    .top-actions.has-user > .notify-btn.header-chat-btn,
    .top-actions.has-user > .notify,
    .top-actions.has-user > .btn-secondary.icon-chip,
    .top-actions.has-user > #themeToggle,
    .top-actions.has-user > #a11yToggle,
    .top-actions.has-user > .header-user-links{display:none !important;}
    .doc-create-trigger .doc-create-trigger-label{display:none;}
    .doc-create-trigger .doc-create-trigger-icon{display:inline-flex;}
    .doc-create-menu .doc-create-trigger{
        width:44px;
        height:44px;
        min-width:44px;
        padding:0;
        justify-content:center;
        border-radius:14px;
        gap:0;
        transition:transform var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease);
        will-change:transform;
    }
    .doc-create-menu .doc-create-trigger:active{transform:scale(.96);}
    body{padding-bottom:calc(var(--pwa-tabbar-height) + var(--pwa-safe-bottom));}
    .pwa-tabbar{
        display:flex;
        position:fixed !important;
        inset:auto 0 0 0 !important;
        z-index:9000;
        background:linear-gradient(180deg, color-mix(in srgb, var(--surface-elevated) 92%, transparent 8%), var(--surface-elevated));
        backdrop-filter:saturate(180%) blur(10px);
        -webkit-backdrop-filter:saturate(180%) blur(10px);
        border-top:1px solid var(--border);
        width:100vw;
        height:calc(var(--pwa-tabbar-height) + var(--pwa-safe-bottom));
        min-height:calc(var(--pwa-tabbar-height) + var(--pwa-safe-bottom));
        max-height:calc(var(--pwa-tabbar-height) + var(--pwa-safe-bottom));
        padding:7px max(8px, var(--pwa-safe-right)) max(2px, var(--pwa-safe-bottom)) max(8px, var(--pwa-safe-left));
        gap:4px;
        justify-content:space-between;
        overflow-x:hidden;
        -webkit-overflow-scrolling:touch;
        scrollbar-width:none;
        transform:translate3d(0,0,0);
        will-change:transform;
        contain:layout paint;
        isolation:isolate;
    }
    html.deltrek-pwa-standalone .pwa-tabbar{
        justify-content:center;
        gap:4px;
    }
    html.deltrek-pwa-standalone .pwa-tabbar .pwa-tab-history{
        display:none !important;
    }
    .pwa-tabbar::-webkit-scrollbar{display:none;}
    .pwa-tab{
        position:relative;
        flex:1 1 0;
        min-width:0;
        max-width:none;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:2px;
        padding:4px 3px;
        border-radius:14px;
        border:1px solid transparent;
        color:inherit;
        text-decoration:none;
        font-size:10px;
        font-weight:850;
        background:transparent;
        cursor:pointer;
        transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease), color var(--motion-fast) var(--motion-ease);
    }
    .pwa-tab:active{transform:scale(.96);}
    .pwa-tab.active,
    .pwa-tab[aria-current="page"]{
        background:color-mix(in srgb, var(--primary) 5%, var(--surface) 95%);
        border-color:color-mix(in srgb, var(--primary) 14%, var(--border) 86%);
        color:var(--text);
    }
    .pwa-tab.is-navigation-pending{
        background:color-mix(in srgb, var(--primary) 9%, var(--surface) 91%);
        border-color:color-mix(in srgb, var(--primary) 24%, var(--border) 76%);
        color:var(--primary);
        transform:scale(.97);
    }
    .pwa-tab.is-navigation-pending::after{
        content:"";
        position:absolute;
        left:22%;
        right:22%;
        bottom:1px;
        height:2px;
        border-radius:999px;
        background:currentColor;
        animation:pwa-tab-loading 720ms ease-in-out infinite alternate;
    }
    @keyframes pwa-tab-loading{
        from{opacity:.38;transform:scaleX(.55);}
        to{opacity:1;transform:scaleX(1);}
    }
    .pwa-tab.pwa-tab-history{
        flex:0 0 40px;
        min-width:40px;
        max-width:40px;
        height:42px;
        font-size:0;
        line-height:1;
        font-weight:900;
        color:#111827;
        background:#f8fafc;
        border-color:#e5e7eb;
        box-shadow:0 6px 18px rgba(15,23,42,.06);
    }
    .pwa-tab.pwa-tab-history svg{width:19px;height:19px;opacity:1;stroke-width:2.4;}
    .pwa-tab.pwa-tab-history:disabled{
        opacity:.38;
        cursor:not-allowed;
        box-shadow:none;
    }
    .pwa-tab svg{opacity:.9}
    .pwa-tab:hover{background:var(--surface-2);border-color:var(--border);}
    .pwa-tab-btn{appearance:none;}
    .top-actions .pwa-header-menu-btn{display:inline-flex !important;}
    .pwa-badge{
        position:absolute;
        top:6px;
        right:18px;
        min-width:18px;
        height:18px;
        padding:0 5px;
        border-radius:999px;
        background:#ef4444;
        color:#fff;
        font-size:10px;
        font-weight:900;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        line-height:1;
        border:2px solid rgba(255,255,255,.9);
    }
    html.deltrek-theme-dark .pwa-badge,
    body.dark .pwa-badge{border-color:rgba(15,23,42,.9);}

    .pwa-menu-sheet{
        display:block;
        position:fixed;
        inset:0;
        z-index:9100;
        background:rgba(15,23,42,.44);
        backdrop-filter:none;
        -webkit-backdrop-filter:none;
        padding:calc(12px + var(--pwa-safe-top)) max(10px, var(--pwa-safe-right)) calc(var(--pwa-tabbar-height) + 10px + var(--pwa-safe-bottom)) max(10px, var(--pwa-safe-left));
        touch-action:auto;
        opacity:0;
        visibility:hidden;
        pointer-events:none;
        transition:opacity var(--motion-base) var(--motion-ease), visibility var(--motion-base) var(--motion-ease);
    }
    .pwa-menu-sheet.is-open{
        opacity:1;
        visibility:visible;
        pointer-events:auto;
    }
    .pwa-menu-sheet[hidden]{display:block;}
    .pwa-menu-sheet > .pwa-menu-sheet-head,
    .pwa-menu-sheet > .pwa-menu-sheet-list{
        max-width:520px;
        margin:0 auto;
    }
    .pwa-menu-sheet-head{
        display:flex;
        align-items:center;
        justify-content:space-between;
        background:var(--surface);
        border:1px solid color-mix(in srgb, var(--border) 82%, transparent 18%);
        border-bottom:0;
        border-radius:22px 22px 0 0;
        padding:18px 18px 14px;
        box-shadow:none;
        opacity:0;
        transform:translate3d(0, 28px, 0) scale(.97);
        transform-origin:50% 100%;
        transition:opacity 360ms var(--motion-ease), transform 420ms cubic-bezier(.16,1,.3,1);
    }
    .pwa-menu-sheet-title{display:grid;gap:2px;font-size:20px;font-weight:1000;letter-spacing:-.03em;}.pwa-menu-sheet-title b{font:inherit}.pwa-menu-sheet-title small{color:var(--muted);font-size:10px;font-weight:750;letter-spacing:0}
    .pwa-menu-sheet-close{
        width:36px;
        height:36px;
        border:1px solid transparent;
        background:var(--surface-2);
        font-size:24px;
        line-height:1;
        cursor:pointer;
        color:inherit;
        padding:0;
        border-radius:999px;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        transition:transform var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);
    }
    .pwa-menu-sheet-close:active{transform:scale(.92);}
    .pwa-menu-sheet-list{
        background:var(--surface);
        border:1px solid color-mix(in srgb, var(--border) 82%, transparent 18%);
        border-top:none;
        border-radius:0 0 22px 22px;
        padding:12px;
        max-height:calc(var(--pwa-visual-height, 100dvh) - var(--pwa-tabbar-height) - var(--pwa-safe-top) - var(--pwa-safe-bottom) - 72px);
        overflow:auto;
        -webkit-overflow-scrolling:touch;
        overscroll-behavior:contain;
        opacity:0;
        transform:translate3d(0, 32px, 0) scale(.97);
        transform-origin:50% 100%;
        box-shadow:none;
        transition:opacity 380ms var(--motion-ease), transform 440ms cubic-bezier(.16,1,.3,1);
    }
    .pwa-menu-sheet.is-open .pwa-menu-sheet-head,
    .pwa-menu-sheet.is-open .pwa-menu-sheet-list{
        opacity:1;
        transform:translate3d(0, 0, 0) scale(1);
    }
    .pwa-menu-sheet-head::before{content:"";display:block;width:42px;height:5px;border-radius:999px;background:color-mix(in srgb, var(--muted) 44%, transparent 56%)}
    html.deltrek-mobile-shell .pwa-sheet-grabber{
        appearance:none;
        position:sticky;
        top:0;
        z-index:8;
        display:grid;
        place-items:center;
        width:100%;
        height:34px;
        min-height:34px;
        margin:-8px 0 4px;
        border:0;
        border-radius:22px 22px 0 0;
        background:linear-gradient(180deg, color-mix(in srgb, var(--surface-elevated) 96%, transparent 4%), color-mix(in srgb, var(--surface-elevated) 82%, transparent 18%));
        cursor:pointer;
        touch-action:none;
    }
    html.deltrek-mobile-shell .pwa-sheet-grabber::before{
        content:"";
        width:46px;
        height:5px;
        border-radius:999px;
        background:color-mix(in srgb, var(--muted) 48%, transparent 52%);
        box-shadow:0 1px 0 rgba(255,255,255,.55);
    }
    .pwa-menu-sheet-head{
        position:relative;
        padding-top:26px;
    }
    .pwa-menu-sheet-head::before{
        position:absolute;
        left:50%;
        top:10px;
        transform:translateX(-50%);
    }
    .pwa-menu-sheet-grabber{position:absolute;z-index:2;top:0;left:50%;width:92px;height:30px;transform:translateX(-50%);border:0;background:transparent;touch-action:none;cursor:grab}.pwa-menu-sheet-grabber:active{cursor:grabbing}
    html.deltrek-mobile-shell .pwa-sheet-card{
        position:relative !important;
        width:min(100%, 760px) !important;
        max-width:calc(100vw - max(20px, var(--pwa-safe-left) + var(--pwa-safe-right))) !important;
        max-height:calc(var(--pwa-visual-height, 100dvh) - var(--pwa-safe-top) - var(--pwa-tabbar-height) - var(--pwa-safe-bottom) - 14px) !important;
        margin:auto auto 0 !important;
        overflow:auto !important;
        -webkit-overflow-scrolling:touch;
        border-radius:24px 24px 0 0 !important;
        overscroll-behavior:contain;
    }
    html.deltrek-mobile-shell .modal-content,
    html.deltrek-mobile-shell .modal-card,
    html.deltrek-mobile-shell .workspace-modal,
    html.deltrek-mobile-shell .builder-modal,
    html.deltrek-mobile-shell .profile-modal-card,
    html.deltrek-mobile-shell .tariff-beta-dialog,
    html.deltrek-mobile-shell .tariff-order-dialog,
    html.deltrek-mobile-shell .mycab-modal-panel,
    html.deltrek-mobile-shell .announcement-modal{
        max-height:calc(var(--pwa-visual-height, 100dvh) - var(--pwa-safe-top) - var(--pwa-tabbar-height) - var(--pwa-safe-bottom) - 14px) !important;
        margin-bottom:0 !important;
        overflow:auto !important;
        -webkit-overflow-scrolling:touch;
    }
    html.deltrek-mobile-shell .modal-content form,
    html.deltrek-mobile-shell .modal-card form,
    html.deltrek-mobile-shell .workspace-modal form,
    html.deltrek-mobile-shell .builder-modal form,
    html.deltrek-mobile-shell .profile-modal-card form,
    html.deltrek-mobile-shell .tariff-beta-dialog form,
    html.deltrek-mobile-shell .tariff-order-dialog form,
    html.deltrek-mobile-shell .mycab-modal-panel form{
        padding-bottom:calc(var(--pwa-safe-bottom) + 18px) !important;
    }
    html.deltrek-mobile-shell .pwa-sheet-grabber{
        position:sticky;
        top:0;
        z-index:6;
        margin:0 auto 12px;
        flex:0 0 auto;
        cursor:grab;
        touch-action:none;
    }
    html.deltrek-mobile-shell .pwa-sheet-card.is-pwa-dragging{
        transition:none !important;
    }
    html.deltrek-mobile-shell .modal:not(.hidden),
    html.deltrek-mobile-shell .business-letter-modal:not([hidden]),
    html.deltrek-mobile-shell .synth-modal:not([hidden]),
    html.deltrek-mobile-shell .edu-synth-modal:not([hidden]),
    html.deltrek-mobile-shell .dt-feedback-modal:not([hidden]){
        align-items:flex-end !important;
        justify-content:center !important;
        padding:max(10px, var(--pwa-safe-top)) max(10px, var(--pwa-safe-right)) calc(var(--pwa-tabbar-height) + var(--pwa-safe-bottom) + 8px) max(10px, var(--pwa-safe-left)) !important;
    }
    html.deltrek-mobile-shell.deltrek-keyboard-open body{
        padding-bottom:var(--pwa-safe-bottom) !important;
    }
    html.deltrek-mobile-shell.deltrek-keyboard-open .pwa-tabbar{
        transform:translateY(calc(100% + var(--pwa-safe-bottom))) !important;
        pointer-events:none !important;
    }
    html.deltrek-mobile-shell.deltrek-keyboard-open .modal:not(.hidden),
    html.deltrek-mobile-shell.deltrek-keyboard-open .business-letter-modal:not([hidden]),
    html.deltrek-mobile-shell.deltrek-keyboard-open .synth-modal:not([hidden]),
    html.deltrek-mobile-shell.deltrek-keyboard-open .edu-synth-modal:not([hidden]),
    html.deltrek-mobile-shell.deltrek-keyboard-open .dt-feedback-modal:not([hidden]){
        padding-bottom:max(8px, var(--pwa-safe-bottom)) !important;
    }
    html.deltrek-mobile-shell :is(iframe, embed, object, canvas, video, img, table){
        max-width:100%;
    }
    html.deltrek-mobile-shell :is(.workspace-page,.workspace-panel,.workspace-card,.workspace-table,.mycab-panel,.mycab-card,.documents-beta-page,.work-documents-page){
        max-width:100%;
        overflow-wrap:anywhere;
    }
    html.deltrek-mobile-shell :is(.workspace-table,.documents-table,.mycab-table,.attendance-table){
        overflow-x:auto;
        -webkit-overflow-scrolling:touch;
    }
    html.deltrek-theme-dark.deltrek-pwa-standalone .pwa-safe-brand,
    html.deltrek-theme-dark.deltrek-pwa-standalone .pwa-tabbar,
    html.deltrek-theme-dark .pwa-menu-sheet-head,
    html.deltrek-theme-dark .pwa-menu-sheet-list,
    body.dark .pwa-menu-sheet-head,
    body.dark .pwa-menu-sheet-list{
        background:color-mix(in srgb, var(--surface) 92%, #020617 8%) !important;
        color:var(--text) !important;
        border-color:var(--border) !important;
    }
    html.deltrek-theme-dark.deltrek-pwa-standalone .pwa-safe-action,
    html.deltrek-theme-dark.deltrek-pwa-standalone .pwa-tab,
    body.dark .pwa-safe-action,
    body.dark .pwa-tab{
        background:color-mix(in srgb, var(--surface-2) 88%, transparent 12%) !important;
        color:var(--text) !important;
        border-color:var(--border) !important;
    }
    html.deltrek-theme-dark .workspace-panel b,
    html.deltrek-theme-dark .workspace-card b,
    html.deltrek-theme-dark .edu-focus-list b,
    html.deltrek-theme-dark .edu-beta-row b,
    body.dark .workspace-panel b,
    body.dark .workspace-card b,
    body.dark .edu-focus-list b,
    body.dark .edu-beta-row b{
        color:var(--text) !important;
    }
    html.deltrek-theme-dark .edu-focus-list span,
    html.deltrek-theme-dark .edu-beta-row span,
    html.deltrek-theme-dark .edu-beta-row small,
    body.dark .edu-focus-list span,
    body.dark .edu-beta-row span,
    body.dark .edu-beta-row small{
        color:var(--muted) !important;
    }
    .pwa-menu-search{
        display:grid;
        grid-template-columns:auto minmax(0,1fr) auto;
        align-items:center;
        gap:8px;
        margin:0 0 12px;
        padding:8px 8px 8px 12px;
        border:1px solid color-mix(in srgb, var(--border) 86%, transparent 14%);
        border-radius:16px;
        background:var(--surface-2);
        color:var(--muted);
        box-shadow:none;
        opacity:0;
        transform:translate3d(0, 8px, 0);
        transition:opacity 320ms var(--motion-ease), transform 320ms cubic-bezier(.16,1,.3,1), border-color var(--motion-fast) var(--motion-ease);
    }
    .pwa-menu-search:focus-within{
        border-color:color-mix(in srgb, var(--primary) 34%, var(--border) 66%);
        box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 12%, transparent 88%);
    }
    .pwa-menu-search input{
        width:100%;
        min-width:0;
        border:0;
        outline:0;
        background:transparent;
        color:var(--text);
        font:inherit;
        font-size:16px;
        font-weight:800;
    }
    .pwa-menu-search input::placeholder{color:var(--muted);}
    .pwa-menu-search button{
        border:0;
        border-radius:12px;
        min-height:34px;
        padding:0 12px;
        background:var(--text);
        color:var(--surface);
        font-size:12px;
        font-weight:950;
        cursor:pointer;
    }
    html.deltrek-theme-dark .pwa-menu-search,
    body.dark .pwa-menu-search{
        background:color-mix(in srgb, var(--surface-2) 88%, #020617 12%);
        border-color:var(--border);
        box-shadow:none;
    }
    .pwa-menu-section{
        display:grid;
        gap:8px;
        margin-bottom:12px;
        padding-bottom:12px;
        border-bottom:1px solid var(--border);
    }
    .pwa-menu-section-title{
        padding:2px 4px;
        color:var(--muted);
        font-size:11px;
        font-weight:900;
        letter-spacing:.08em;
        text-transform:uppercase;
    }
    .pwa-menu-actions{
        display:grid;
        grid-template-columns:repeat(auto-fit, minmax(136px, 1fr));
        gap:10px;
    }
    .pwa-menu-action{
        display:flex;
        align-items:center;
        justify-content:center;
        min-height:48px;
        padding:10px 12px;
        border:1px solid color-mix(in srgb, var(--border) 86%, transparent 14%);
        border-radius:12px;
        background:var(--surface-2);
        color:inherit;
        text-decoration:none;
        font-size:12px;
        font-weight:900;
        cursor:pointer;
        opacity:0;
        transform:translate3d(0, 8px, 0);
        box-shadow:none;
        transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), opacity 320ms var(--motion-ease), transform 320ms cubic-bezier(.16,1,.3,1);
    }
    .pwa-menu-action:hover{border-color:color-mix(in srgb, var(--primary) 22%, var(--border) 78%);box-shadow:none;}
    .pwa-menu-action:active{transform:scale(.975);}
    .pwa-menu-link{
        display:flex;
        align-items:center;
        gap:12px;
        padding:12px 12px;
        border-radius:12px;
        text-decoration:none;
        color:inherit;
        font-weight:850;
        border:1px solid transparent;
        opacity:0;
        transform:translate3d(0, 8px, 0);
        transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), transform 320ms cubic-bezier(.16,1,.3,1), opacity 320ms var(--motion-ease);
    }
    .pwa-menu-branch{
        display:grid;
        gap:6px;
        border:1px solid transparent;
        border-radius:12px;
        margin-bottom:6px;
    }
    .pwa-menu-branch-toggle{
        width:100%;
        display:flex;
        align-items:center;
        gap:12px;
        padding:12px;
        border:1px solid transparent;
        border-radius:12px;
        background:transparent;
        color:inherit;
        font:inherit;
        font-weight:900;
        text-align:left;
        cursor:pointer;
        opacity:0;
        transform:translate3d(0, 8px, 0);
        transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), transform 320ms cubic-bezier(.16,1,.3,1), opacity 320ms var(--motion-ease);
    }
    .pwa-menu-branch-toggle:hover{background:var(--surface-2);border-color:var(--border);}
    .pwa-menu-branch.is-open .pwa-menu-branch-toggle{
        background:color-mix(in srgb, var(--primary) 4%, var(--surface) 96%);
        border-color:color-mix(in srgb, var(--primary) 12%, var(--border) 88%);
    }
    .pwa-menu-branch-caret{
        margin-left:auto;
        color:var(--muted);
        transition:transform var(--motion-fast) var(--motion-ease);
    }
    .pwa-menu-branch.is-open .pwa-menu-branch-caret{transform:rotate(90deg);}
    .pwa-menu-branch-children{
        display:none;
        gap:5px;
        padding:0 0 8px 30px;
    }
    .pwa-menu-branch.is-open .pwa-menu-branch-children{display:grid;}
    .pwa-menu-sheet.is-open .pwa-menu-link,
    .pwa-menu-sheet.is-open .pwa-menu-action,
    .pwa-menu-sheet.is-open .pwa-menu-search,
    .pwa-menu-sheet.is-open .pwa-menu-branch-toggle{
        opacity:1;
        transform:translate3d(0, 0, 0);
    }
    .pwa-menu-sheet.is-open :is(.pwa-menu-action,.pwa-menu-link,.pwa-menu-search,.pwa-menu-branch-toggle){transition-delay:0ms;}
    @media (max-width:420px){
        .pwa-menu-actions{
            grid-template-columns:1fr;
        }
        .pwa-menu-sheet{
            padding-left:max(8px, var(--pwa-safe-left));
            padding-right:max(8px, var(--pwa-safe-right));
        }
        .pwa-menu-sheet-head{
            border-radius:22px 22px 0 0;
        }
        .pwa-menu-sheet-list{
            border-radius:0 0 22px 22px;
            padding:12px;
        }
    }
    .pwa-menu-link:active{transform:scale(.985);}
    .pwa-menu-link:hover{background:var(--surface-2);border-color:var(--border);}
    .pwa-menu-link.child{padding:10px 12px;font-weight:750;opacity:.95}
    .pwa-menu-link.active{
        background:color-mix(in srgb, var(--primary) 4%, var(--surface) 96%);
        border-color:color-mix(in srgb, var(--primary) 14%, var(--border) 86%);
        box-shadow:inset 2px 0 0 color-mix(in srgb, var(--primary) 46%, transparent 54%);
    }
    .pwa-menu-children{margin-top:4px;margin-bottom:6px}
    html.deltrek-pwa-standalone .pwa-menu-sheet > .pwa-menu-sheet-head,
    html.deltrek-pwa-standalone .pwa-menu-sheet > .pwa-menu-sheet-list,
    html.deltrek-mobile-shell .pwa-menu-sheet > .pwa-menu-sheet-head,
    html.deltrek-mobile-shell .pwa-menu-sheet > .pwa-menu-sheet-list{
        max-width:none;
    }
    html.deltrek-mobile-shell .premium-beta-page{
        width:100% !important;
        max-width:none !important;
        overflow-x:hidden !important;
    }
    html.deltrek-mobile-shell .premium-beta-page .premium-shell,
    html.deltrek-mobile-shell .premium-beta-page .premium-current,
    html.deltrek-mobile-shell .premium-beta-page .premium-columns,
    html.deltrek-mobile-shell .premium-beta-page .premium-verify,
    html.deltrek-mobile-shell .premium-beta-page .premium-fund-card,
    html.deltrek-mobile-shell .premium-beta-page .premium-report-grid{
        grid-template-columns:1fr !important;
    }
    html.deltrek-mobile-shell .premium-beta-page .premium-metrics,
    html.deltrek-mobile-shell .premium-beta-page .premium-stage-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    html.deltrek-mobile-shell .premium-beta-page .premium-award-table-wrap,
    html.deltrek-mobile-shell .premium-beta-page .premium-verify-table-wrap,
    html.deltrek-mobile-shell .premium-beta-page .premium-detail-table-wrap{
        max-width:100% !important;
        overflow:auto !important;
        -webkit-overflow-scrolling:touch;
    }
    html.deltrek-mobile-shell .premium-beta-page .premium-drawer{
        padding:max(12px, var(--pwa-safe-top)) max(10px, var(--pwa-safe-right)) calc(var(--pwa-tabbar-height) + var(--pwa-safe-bottom) + 10px) max(10px, var(--pwa-safe-left)) !important;
    }
    html.deltrek-mobile-shell .premium-beta-page .premium-drawer form{
        width:100% !important;
        max-height:calc(100dvh - var(--pwa-tabbar-height) - var(--pwa-safe-bottom) - 26px) !important;
    }
    @media (max-width:420px){
        html.deltrek-mobile-shell .premium-beta-page .premium-metrics,
        html.deltrek-mobile-shell .premium-beta-page .premium-stage-grid{
            grid-template-columns:1fr !important;
        }
    }

    /* PWD/Accessible: на мобильных убираем верхнюю шапку полностью (оставляем только нижнюю панель) */
    body.accessible-mode .header{display:none !important;}
    body.accessible-mode main.container{padding-top:12px !important;}
    /* В PWD-режиме убираем стрелку вверх и историю внизу — мешают крупным элементам */
    body.accessible-mode .back-to-top{display:none !important;}
    body.accessible-mode .pwa-tab-history{display:none !important;}
}

.footer-inner{
max-width:1360px;
margin:0 auto;
display:grid;
grid-template-columns:minmax(0, 1fr) auto;
grid-template-rows:auto auto;
column-gap:18px;
row-gap:2px;
align-items:center;
padding:0 20px;
}

/* Строка 1: слева — заголовок раздела + краткое описание (инлайн); справа — версия и дата */
.footer-row-1-left{
grid-column:1;grid-row:1;
display:flex;align-items:center;gap:8px;min-width:0;
white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.footer-row-1-right{
grid-column:2;grid-row:1;
display:flex;align-items:center;gap:10px;flex-wrap:nowrap;
}
.footer-page-guide-title{
font-size:12px;font-weight:800;color:var(--text);flex:0 0 auto;
}
.footer-guide{
font-size:11.5px;color:var(--muted);min-width:0;
overflow:hidden;text-overflow:ellipsis;
}
.footer-brand{
font-size:12px;font-weight:800;color:var(--text);
}
.footer-meta{
display:flex;align-items:center;gap:4px 10px;color:var(--muted);font-size:11px;
}
.footer-meta span{white-space:nowrap;}
.footer-meta span + span::before{
content:'·';margin-right:8px;color:#cbd5e1;
}

/* Строка 2: слева — кнопки помощи; справа — мелкая системная заметка */
.footer-row-2-left{
grid-column:1;grid-row:2;
display:flex;align-items:center;gap:6px;flex-wrap:wrap;
}
.footer-row-2-right{
grid-column:2;grid-row:2;
font-size:11px;color:var(--muted);text-align:right;
overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:520px;
}
.footer-row-2-left .btn-secondary,
.footer-row-2-left a.btn-secondary{
padding:3px 9px;font-size:11px;font-weight:600;border-radius:6px;
line-height:1.3;
}
.footer-row-2-left a{font-size:11px;color:var(--muted);}
.footer-row-2-left a:hover{color:var(--text);}

.icon-chip{
display:inline-flex;
align-items:center;
justify-content:center;
width:36px;
height:36px;
padding:0;
font-size:17px;
line-height:1;
}

.icon-chip svg{
width:17px;
height:17px;
stroke:currentColor;
stroke-width:2;
fill:none;
stroke-linecap:round;
stroke-linejoin:round;
}

.cookie-banner{
position:fixed;
left:20px;
right:20px;
bottom:20px;
z-index:130;
display:none;
align-items:flex-start;
justify-content:space-between;
gap:14px;
padding:14px 16px;
border-radius:8px;
background:rgba(15,23,42,.96);
color:#fff;
box-shadow:0 24px 60px rgba(15,23,42,.22);
}

.cookie-banner.show{
display:flex;
}

html.deltrek-pwa-standalone .cookie-banner,
html.deltrek-mobile-shell .cookie-banner,
body.deltrek-pwa-standalone .cookie-banner{
display:none!important;
}

.welcome-screen{
position:fixed;
inset:0;
z-index:14050;
display:flex;
align-items:center;
justify-content:center;
padding:24px;
background:
radial-gradient(circle at top left, rgba(245,158,11,.14), transparent 30%),
radial-gradient(circle at bottom right, rgba(59,130,246,.14), transparent 28%),
rgba(248,250,252,.96);
backdrop-filter:blur(12px);
opacity:0;
pointer-events:none;
visibility:hidden;
transition:opacity .45s ease, visibility .45s ease;
}

.welcome-screen.show{
opacity:1;
pointer-events:auto;
visibility:visible;
}

.welcome-card{
position:relative;
max-width:760px;
width:100%;
padding:44px 40px;
border-radius:8px;
background:var(--surface);
border:1px solid var(--border);
box-shadow:0 30px 90px rgba(15,23,42,.12);
text-align:center;
}

.welcome-close{
position:absolute;
top:14px;
right:14px;
z-index:6;
width:36px;
height:36px;
border:1px solid var(--border);
border-radius:999px;
background:var(--surface);
color:var(--text);
font-size:22px;
line-height:1;
cursor:pointer;
}

.welcome-card h1{
margin:14px 0 10px;
font-size:clamp(34px, 5vw, 62px);
letter-spacing:-.06em;
}

.welcome-card p{
margin:0;
font-size:17px;
line-height:1.8;
color:var(--muted);
}

.welcome-orb{
width:96px;
height:96px;
margin:0 auto;
border-radius:8px;
background:radial-gradient(circle at center, rgba(59,130,246,.32), rgba(59,130,246,.08));
animation:welcomePulse 1.8s ease-in-out infinite;
display:grid;
place-items:center;
font-weight:900;
color:#1d4ed8;
letter-spacing:-.04em;
}

.welcome-grid{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
gap:10px;
margin-top:22px;
text-align:left;
}
.welcome-grid span{
padding:10px 12px;
border:1px solid var(--border);
border-radius:10px;
background:var(--soft);
font-size:13px;
font-weight:700;
}

@keyframes welcomePulse{
0%,100%{transform:scale(1)}
50%{transform:scale(1.08)}
}

.welcome-spotlight .welcome-card{
max-width:min(720px,94vw);
max-height:min(84vh,760px);
overflow:auto;
text-align:left;
padding:24px;
border-radius:22px;
border:1px solid color-mix(in srgb,var(--border) 88%,#6366f1 12%);
box-shadow:0 40px 120px rgba(15,23,42,.18),0 0 0 1px rgba(255,255,255,.4) inset;
position:relative;
}
.welcome-spotlight .welcome-card h1{
font-size:clamp(26px,4vw,36px);
letter-spacing:-.04em;
margin:8px 0 6px;
text-align:left;
}
.welcome-spotlight .welcome-card > .workspace-eyebrow{
text-align:left;
font-size:11px;
letter-spacing:.12em;
}
.welcome-spotlight-bg{
position:absolute;
inset:0;
border-radius:22px;
pointer-events:none;
overflow:hidden;
background:
radial-gradient(ellipse 80% 55% at 12% -10%,rgba(99,102,241,.35),transparent 55%),
radial-gradient(circle at 92% 8%,rgba(14,165,233,.22),transparent 42%),
radial-gradient(circle at 50% 120%,rgba(244,114,182,.12),transparent 45%);
opacity:.9;
animation:welcomeSpotBgDrift 14s ease-in-out infinite alternate;
}
@keyframes welcomeSpotBgDrift{
0%{filter:hue-rotate(0deg) saturate(1)}
100%{filter:hue-rotate(18deg) saturate(1.08)}
}
.welcome-spotlight-head{
position:relative;
z-index:1;
margin-bottom:14px;
}
.welcome-spotlight-badge{
display:inline-flex;
align-items:center;
gap:8px;
padding:6px 12px;
border-radius:999px;
font-size:11px;
font-weight:900;
letter-spacing:.08em;
text-transform:uppercase;
background:linear-gradient(90deg,#312e81,#4338ca);
color:#e0e7ff;
box-shadow:0 8px 24px rgba(67,56,202,.35);
animation:welcomeBadgePulse 2.8s ease-in-out infinite;
}
@keyframes welcomeBadgePulse{
0%,100%{transform:translateY(0);opacity:1}
50%{transform:translateY(-2px);opacity:.92}
}
.welcome-spotlight-lead{
position:relative;
z-index:1;
margin:0;
font-size:15px;
line-height:1.55;
color:var(--muted);
max-width:62ch;
}
.welcome-quick-grid{
position:relative;
z-index:1;
display:grid;
grid-template-columns:repeat(3,minmax(0,1fr));
gap:10px;
margin:18px 0 14px;
}
.welcome-quick-card{
border:1px solid var(--border);
border-radius:16px;
background:rgba(255,255,255,.78);
padding:14px;
min-height:104px;
animation:welcomeChipIn .5s ease backwards;
}
.welcome-quick-card:nth-child(2){animation-delay:.08s}
.welcome-quick-card:nth-child(3){animation-delay:.16s}
.welcome-quick-card b{display:block;font-size:15px;margin-bottom:7px;color:var(--text)}
.welcome-quick-card span{display:block;font-size:12px;line-height:1.35;color:var(--muted);font-weight:750}
.welcome-delred-stage{
position:relative;
z-index:1;
margin:18px 0 16px;
padding:18px 16px;
border-radius:18px;
background:linear-gradient(135deg,rgba(15,23,42,.94),rgba(30,41,59,.88));
color:#e2e8f0;
overflow:hidden;
border:1px solid rgba(148,163,184,.25);
}
.welcome-delred-stage::before{
content:'';
position:absolute;
inset:-40% -20%;
background:conic-gradient(from 210deg at 50% 50%,rgba(56,189,248,.15),transparent 40%,rgba(129,140,248,.2),transparent 70%);
animation:welcomeDelredSpin 22s linear infinite;
opacity:.55;
}
@keyframes welcomeDelredSpin{
to{transform:rotate(360deg)}
}
.welcome-delred-inner{position:relative;z-index:1;display:grid;gap:12px}
.welcome-delred-kicker{font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#93c5fd}
.welcome-delred-title{font-size:22px;font-weight:950;line-height:1.15;margin:0;color:#fff}
.welcome-delred-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
gap:10px;
margin-top:4px;
}
.welcome-delred-chip{
padding:10px 11px;
border-radius:12px;
background:rgba(255,255,255,.06);
border:1px solid rgba(148,163,184,.22);
font-size:12px;
font-weight:750;
line-height:1.35;
animation:welcomeChipIn .55s ease backwards;
}
.welcome-delred-chip:nth-child(1){animation-delay:.05s}
.welcome-delred-chip:nth-child(2){animation-delay:.1s}
.welcome-delred-chip:nth-child(3){animation-delay:.15s}
.welcome-delred-chip:nth-child(4){animation-delay:.2s}
.welcome-delred-chip:nth-child(5){animation-delay:.25s}
.welcome-delred-chip:nth-child(6){animation-delay:.3s}
@keyframes welcomeChipIn{
from{opacity:0;transform:translateY(10px) scale(.96)}
to{opacity:1;transform:translateY(0) scale(1)}
}
.welcome-beta-board{
position:relative;
z-index:1;
display:grid;
gap:10px;
margin-top:6px;
}
.welcome-beta-board h2{
margin:0 0 4px;
font-size:14px;
font-weight:900;
letter-spacing:.06em;
text-transform:uppercase;
color:var(--text);
}
.welcome-beta-list{
display:grid;
gap:8px;
margin:0;
padding:0;
list-style:none;
}
.welcome-beta-list li{
display:flex;
gap:10px;
align-items:flex-start;
padding:10px 12px;
border-radius:12px;
background:var(--soft);
border:1px solid var(--border);
font-size:13px;
line-height:1.45;
animation:welcomeChipIn .5s ease backwards;
}
.welcome-beta-list li:nth-child(1){animation-delay:.08s}
.welcome-beta-list li:nth-child(2){animation-delay:.12s}
.welcome-beta-list li:nth-child(3){animation-delay:.16s}
.welcome-beta-list li:nth-child(4){animation-delay:.2s}
.welcome-beta-list li:nth-child(5){animation-delay:.24s}
.welcome-beta-list li strong{flex:0 0 auto;min-width:7.5em;color:#4338ca;font-weight:900}
.welcome-spotlight-actions{
position:relative;
z-index:1;
display:flex;
flex-wrap:wrap;
gap:10px;
margin-top:18px;
align-items:center;
}
.welcome-spotlight-actions a{
text-decoration:none;
}

.welcome-golden-ring{
align-items:center;
background:
radial-gradient(circle at 12% 8%,rgba(251,191,36,.2),transparent 30%),
radial-gradient(circle at 90% 84%,rgba(190,24,93,.12),transparent 34%),
linear-gradient(145deg,#fffaf0 0%,#fdf4e5 48%,#f8eee2 100%);
}
.welcome-golden-ring .welcome-card{
max-width:min(1030px,calc(100vw - 40px));
max-height:calc(100dvh - 40px);
padding:0;
overflow:auto;
overscroll-behavior:contain;
-webkit-overflow-scrolling:touch;
scrollbar-gutter:stable;
border:1px solid rgba(180,83,9,.2);
border-radius:32px;
background:rgba(255,253,248,.98);
box-shadow:0 34px 100px rgba(120,53,15,.2);
}
.welcome-golden-scene{
position:absolute;
inset:0 0 auto auto;
width:48%;
height:58%;
overflow:hidden;
pointer-events:none;
opacity:.78;
}
.golden-orbit{
position:absolute;
right:-70px;
top:-124px;
width:430px;
height:430px;
border:48px solid rgba(217,119,6,.14);
border-radius:50%;
box-shadow:0 0 0 24px rgba(251,191,36,.07),inset 0 0 0 2px rgba(180,83,9,.14);
animation:goldenOrbit 18s linear infinite;
}
.golden-orbit::before,
.golden-orbit::after{
content:'';
position:absolute;
width:18px;
height:18px;
border-radius:50%;
background:#b91c1c;
box-shadow:0 0 0 7px rgba(255,255,255,.82),0 10px 24px rgba(127,29,29,.22);
}
.golden-orbit::before{left:28px;bottom:42px}
.golden-orbit::after{right:22px;top:84px}
.golden-path{
position:absolute;
right:48px;
top:52px;
width:220px;
height:112px;
border:2px dashed rgba(180,83,9,.36);
border-left:0;
border-bottom:0;
border-radius:0 90px 0 0;
transform:rotate(8deg);
}
.golden-path::after{
content:'';
position:absolute;
right:-7px;
bottom:-7px;
width:12px;
height:12px;
border-radius:50%;
background:#d97706;
box-shadow:0 0 0 6px rgba(254,243,199,.9);
}
.welcome-golden-layout{
position:relative;
z-index:1;
display:grid;
grid-template-columns:minmax(0,.88fr) minmax(360px,1.12fr);
gap:20px;
align-items:center;
padding:40px 40px 22px;
}
.welcome-golden-copy,
.welcome-golden-board{
min-width:0;
border:1px solid rgba(180,83,9,.16);
border-radius:24px;
background:rgba(255,255,255,.82);
box-shadow:0 18px 54px rgba(120,53,15,.09);
}
.welcome-golden-copy{padding:28px}
.welcome-golden-board{padding:22px}
.welcome-golden-ring .welcome-card h1{
font-size:clamp(36px,5vw,60px);
line-height:1;
letter-spacing:-.045em;
margin:12px 0;
color:#431407;
overflow-wrap:anywhere;
}
.welcome-golden-ring .welcome-spotlight-badge{
background:linear-gradient(90deg,#991b1b,#b45309);
color:#fff7ed;
box-shadow:0 8px 24px rgba(153,27,27,.2);
}
.welcome-golden-ring .welcome-spotlight-lead{
font-size:16px;
line-height:1.55;
color:#713f12;
}
.welcome-release-card{
display:grid;
gap:7px;
margin-top:22px;
padding:16px;
border-radius:18px;
background:linear-gradient(135deg,#7f1d1d,#9a3412 58%,#b45309);
color:#ffedd5;
box-shadow:0 20px 54px rgba(127,29,29,.2);
}
.welcome-release-card b{
font-size:18px;
color:#fff;
}
.welcome-release-card span{
font-size:13px;
font-weight:800;
color:#fde68a;
}
.welcome-golden-board h2{
margin:18px 0 12px;
font-size:20px;
color:#431407;
}
.welcome-golden-ring .welcome-beta-list li{
background:rgba(255,251,235,.76);
border-color:rgba(217,119,6,.18);
color:#422006;
}
.welcome-golden-ring .welcome-beta-list li strong{
min-width:2em;
color:#b45309;
}
.golden-route{
display:grid;
grid-template-columns:auto 1fr auto 1fr auto 1fr auto;
align-items:center;
gap:8px;
font-size:11px;
font-weight:950;
letter-spacing:.08em;
text-transform:uppercase;
color:#92400e;
}
.golden-route span{
padding:7px 9px;
border-radius:999px;
background:#fffbeb;
border:1px solid #fcd34d;
white-space:nowrap;
}
.golden-route i{
height:2px;
border-radius:999px;
background:linear-gradient(90deg,#f59e0b,#b45309,#991b1b);
transform-origin:left center;
animation:goldenRoute 2.8s ease-in-out infinite;
}
.welcome-golden-ring .welcome-spotlight-actions{
position:relative;
z-index:2;
margin:0;
padding:0 40px 34px;
}
@media(max-width:820px){
    body.welcome-open{overflow:hidden!important;overscroll-behavior:none}
    body.welcome-open .pwa-safe-brand,
    body.welcome-open .pwa-tabbar{display:none!important}
    .welcome-screen{
        align-items:flex-end;
        padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));
        background:rgba(15,23,42,.32);
        backdrop-filter:blur(14px);
        -webkit-backdrop-filter:blur(14px)
    }
    .welcome-golden-ring .welcome-card{
        width:100%;
        max-width:560px;
        height:auto;
        max-height:calc(100dvh - max(20px,env(safe-area-inset-top)) - max(20px,env(safe-area-inset-bottom)));
        border:1px solid rgba(180,83,9,.18);
        border-radius:26px;
        scrollbar-gutter:auto;
        display:grid;
        grid-template-rows:minmax(0,1fr) auto;
        overflow:hidden;
        box-shadow:0 24px 70px rgba(15,23,42,.28)
    }
    .welcome-golden-scene{display:none}
    .welcome-golden-layout{grid-template-columns:1fr;align-content:start;gap:8px;padding:42px 10px 9px;overflow:auto;overscroll-behavior:contain}
    .welcome-golden-copy,.welcome-golden-board{padding:13px;border-radius:17px;box-shadow:none}
    .welcome-golden-ring .workspace-eyebrow{font-size:10px}
    .welcome-golden-ring .welcome-spotlight-badge{font-size:10px;padding:6px 9px}
    .welcome-golden-ring .welcome-card h1{font-size:clamp(27px,8.5vw,38px);padding-right:22px;margin:8px 0}
    .welcome-golden-ring .welcome-spotlight-lead{font-size:12px;line-height:1.38;margin:0}
    .welcome-release-card{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 10px;margin-top:10px;border-radius:13px;box-shadow:none}
    .welcome-release-card b{font-size:13px}
    .welcome-release-card span{font-size:10px}
    .welcome-release-card span:nth-of-type(n+2){display:none}
    .welcome-golden-board h2{font-size:15px;margin:0 0 7px}
    .golden-route{display:none}
    .welcome-golden-ring .welcome-beta-list{gap:5px}
    .welcome-golden-ring .welcome-beta-list li{padding:7px 8px;font-size:11px;line-height:1.25}
    .welcome-golden-ring .welcome-beta-list li:nth-child(n+4){display:none}
    .welcome-golden-ring .welcome-spotlight-actions{position:relative;bottom:auto;display:grid;grid-template-columns:1fr;padding:8px 10px 10px;background:#fffdf8;border-top:1px solid rgba(180,83,9,.14);margin:0}
    .welcome-golden-ring .welcome-spotlight-actions a{width:100%;min-height:42px;justify-content:center;font-size:13px}
    .welcome-golden-ring .welcome-spotlight-actions a:nth-child(3){display:none}
    .welcome-golden-ring .welcome-close{position:absolute;top:9px;right:9px;z-index:4;width:32px;height:32px;background:rgba(255,255,255,.96)}
    .welcome-golden-ring *, .welcome-golden-ring *::before, .welcome-golden-ring *::after{animation:none!important;transition:none!important}
}
@media(prefers-reduced-motion:reduce){
    .welcome-golden-ring *, .welcome-golden-ring *::before, .welcome-golden-ring *::after{animation:none!important;transition:none!important}
}
@keyframes goldenOrbit{to{transform:rotate(360deg)}}
@keyframes goldenRoute{0%{transform:scaleX(.12);opacity:.45}45%,100%{transform:scaleX(1);opacity:1}}

.cookie-banner-copy{
font-size:13px;
line-height:1.6;
max-width:720px;
}

.maintenance-banner{
margin:12px 12px 0;
padding:12px 16px;
border-radius:14px;
background:linear-gradient(135deg,#fff7ed,#fffbeb);
border:1px solid #fed7aa;
color:#7c2d12;
display:flex;
justify-content:space-between;
gap:16px;
align-items:flex-start;
font-size:13px;
line-height:1.5;
}

.maintenance-banner strong{
display:block;
font-size:14px;
margin-bottom:2px;
}

.maintenance-banner-meta{
white-space:nowrap;
font-weight:700;
}

.accessible-mode{
font-size:18px;
line-height:1.65;
}

.accessible-mode .nav-link,
.accessible-mode .workspace-btn,
.accessible-mode .workspace-btn-secondary,
.accessible-mode .btn,
.accessible-mode .btn-secondary{
font-size:15px;
}

.accessible-mode a:focus,
.accessible-mode button:focus,
.accessible-mode input:focus,
.accessible-mode select:focus,
.accessible-mode textarea:focus{
outline:3px solid #2563eb !important;
outline-offset:3px !important;
}

.back-to-top{
position:fixed;
right:22px;
bottom:24px;
z-index:125;
display:inline-flex;
align-items:center;
justify-content:center;
width:46px;
height:46px;
border:none;
border-radius:8px;
background:var(--primary);
color:#fff;
font-size:18px;
box-shadow:0 18px 38px rgba(15,23,42,.18);
cursor:pointer;
opacity:0;
pointer-events:none;
transform:translateY(14px);
transition:opacity .18s ease, transform .18s ease;
}

.back-to-top.show{
opacity:1;
pointer-events:auto;
transform:translateY(0);
}

body.next-workspace-shell .back-to-top{
bottom:72px;
}

@media (max-width: 1180px){
.header-main{
grid-template-columns:auto 1fr;
grid-template-areas:
    "brand nav"
    "actions actions";
align-items:center;
}

.top-actions{
justify-self:stretch;
justify-content:flex-start;
overflow-x:auto;
padding-bottom:2px;
}

.top-actions.has-user{
overflow-x:auto;
align-items:center;
}

.header-tabs-wrap{
order:1;
}

.header-search-wrap{
order:2;
}

.header-search{
width:100%;
max-width:none;
}

.header-search:focus-within{
max-width:none;
}
}

@media (max-width: 760px){
.top-actions.has-user{
display:flex;
flex-wrap:nowrap;
}

.header-user-links{
max-width:none;
}
}

@media (max-width: 760px){
.header{
position:sticky;
top:0;
padding-top:var(--pwa-safe-top);
}

.container{
padding:12px 14px;
}

.header-main{
grid-template-columns:auto 1fr;
grid-template-areas:
    "brand nav"
    "actions actions";
gap:8px;
padding-top:10px;
padding-bottom:10px;
}

.brand{
font-size:18px;
max-width:42vw;
overflow:hidden;
text-overflow:ellipsis;
}

.top-actions{
flex-wrap:nowrap;
gap:8px;
overflow-x:auto;
overflow-y:hidden;
align-items:stretch;
}

.top-actions.has-user{
display:flex;
gap:8px;
padding:6px;
border-radius:14px;
background:rgba(255,255,255,.86);
box-shadow:0 10px 24px rgba(15,23,42,.08);
}

.top-actions .btn,
.top-actions .btn-secondary,
.top-actions .header-logout-link,
.header-user-links .btn-secondary{
height:40px;
min-width:40px;
padding:0 12px;
border-radius:12px;
font-size:12px;
}

.top-actions .doc-create-menu{
margin-right:0;
padding-right:0;
border-right:0;
}

.header-user-links{
background:transparent;
border:0;
padding:0;
gap:6px;
}

.header-search-wrap{
flex:0 0 min(260px, 70vw);
order:2;
}

.header-tabs-wrap{
display:none;
}

.header-user-links{
max-width:none;
justify-content:flex-end;
}

.submenu{
position:static;
opacity:1;
pointer-events:auto;
transform:none;
margin-top:6px;
box-shadow:none;
min-width:unset;
width:auto;
display:none;
grid-template-columns:1fr;
}

.nav-item{
flex-direction:row;
align-items:center;
min-width:max-content;
}

.nav-anchor-row{
width:100%;
justify-content:space-between;
}

.nav-link{
flex:1 1 auto;
}

.nav-item.is-open .submenu{
display:grid;
}

.nav.is-submenu-mode .nav-item.is-open{
flex-direction:column;
align-items:stretch;
width:100%;
}

.nav.is-submenu-mode .nav-item.is-open .submenu{
width:100%;
}

.nav{
width:100%;
border-radius:14px;
padding:6px;
gap:6px;
white-space:nowrap;
overflow-x:auto;
overflow-y:hidden;
background:rgba(255,255,255,.86);
box-shadow:0 10px 24px rgba(15,23,42,.08);
}

.nav-link,
.nav-toggle,
.nav-back{
min-height:40px;
border-radius:12px;
}

.welcome-card{
padding:34px 18px 22px;
}

.welcome-grid{
grid-template-columns:1fr;
}

.welcome-quick-grid{
grid-template-columns:1fr;
}

.cookie-banner{
left:12px;
right:12px;
bottom:12px;
flex-direction:column;
}

.footer{
padding:6px 0 10px;
}

.footer-inner{
grid-template-columns:1fr;
grid-template-rows:auto auto auto auto;
padding:0 14px;
gap:2px 0;
}
.footer-row-1-left,
.footer-row-1-right,
.footer-row-2-left,
.footer-row-2-right{
grid-column:1;
}
.footer-row-1-left{grid-row:1;white-space:normal;}
.footer-row-1-right{grid-row:2;flex-wrap:wrap;}
.footer-row-2-left{grid-row:3;}
.footer-row-2-right{grid-row:4;text-align:left;max-width:none;white-space:normal;}

.back-to-top{
right:14px;
bottom:14px;
}
}

@media (prefers-reduced-motion: reduce){
*,
*::before,
*::after{
animation:none !important;
transition:none !important;
scroll-behavior:auto !important;
}
}

body.page-nav-freeze *,
body.page-nav-freeze *::before,
body.page-nav-freeze *::after{
transition:none !important;
scroll-behavior:auto !important;
}

body.page-nav-freeze{
/* Keep the current page usable while the next response is pending. */
touch-action:auto;
}

.deltrek-password-field{
position:relative;
display:block;
width:100%;
max-width:100%;
}

.deltrek-password-field > input{
width:100%;
padding-right:50px !important;
}

.deltrek-password-eye{
position:absolute;
right:10px;
top:50%;
transform:translateY(-50%);
width:36px;
height:36px;
border:1px solid rgba(148,163,184,.34);
border-radius:12px;
background:rgba(255,255,255,.94);
color:#64748b;
display:inline-flex;
align-items:center;
justify-content:center;
cursor:pointer;
z-index:5;
box-shadow:0 8px 18px rgba(15,23,42,.08);
}

.deltrek-password-eye:hover,
.deltrek-password-eye.is-visible{
color:#111827;
border-color:#94a3b8;
background:#fff;
}

.deltrek-password-eye svg{
width:18px;
height:18px;
pointer-events:none;
}

.deltrek-theme-dark .deltrek-password-eye,
body.dark .deltrek-password-eye{
background:rgba(15,23,42,.96);
border-color:rgba(148,163,184,.42);
color:#cbd5e1;
box-shadow:0 10px 24px rgba(0,0,0,.2);
}

.deltrek-theme-dark .deltrek-password-eye:hover,
.deltrek-theme-dark .deltrek-password-eye.is-visible,
body.dark .deltrek-password-eye:hover,
body.dark .deltrek-password-eye.is-visible{
background:#1e293b;
border-color:#64748b;
color:#f8fafc;
}

@media (prefers-reduced-motion: reduce){
    .pwa-menu-sheet-head,
    .pwa-menu-sheet-list{
        animation:none !important;
    }
    .pwa-tab,
    .pwa-menu-link,
    .doc-create-menu .doc-create-trigger{
        transition:none !important;
    }
}

