/* UX layer: the temporary D01 palette and all server-rendered fallbacks are retained. */
[hidden]{display:none!important}
.demo-site :focus-visible{outline:3px solid #9b6600;outline-offset:3px}
.demo-site button,.demo-site .button,.demo-site summary{min-height:44px}
.demo-site summary{cursor:pointer;align-content:center}
.demo-site input:not([type=checkbox]):not([type=hidden]),.demo-site select{min-height:44px;max-width:100%}
.demo-site textarea{max-width:100%}
.demo-site input[type=checkbox]{width:20px;height:20px;flex-shrink:0}
.demo-site a,.demo-site label,.demo-site h1,.demo-site h2{overflow-wrap:anywhere}
.mobile-toggle,[data-panel-close]{display:none}
.demo-site #wrp{display:flex;flex-direction:column;gap:24px;min-height:0}
.demo-site #cntbl{order:0;width:100%;box-sizing:border-box}
.demo-site #menbl{order:1;width:100%;max-width:none}
.demo-site #menbl nav{background:var(--demo-soft);border-radius:6px}
.demo-site #menbl li{position:relative}
.demo-site #menbl li>a{padding-right:54px}
.demo-site #menbl [data-menu-toggle]{position:absolute;right:0;top:0;min-width:44px;padding:6px}
.demo-navigation{position:relative;align-items:center}
.demo-navigation>a,.nav-group>a{padding:10px 0}
.nav-group{position:relative;display:flex;align-items:center;gap:2px}
.demo-site .nav-group button{background:transparent;color:var(--demo-accent);border:0;padding:4px;min-width:32px}
.nav-group ul{position:absolute;top:100%;left:0;z-index:20;background:white;padding:12px;list-style:none;box-shadow:0 6px 24px #30223825;width:280px;max-width:calc(100vw - 40px)}
.nav-group:last-child ul{left:auto;right:0}
.nav-group ul a{display:block;padding:10px}
.demo-site [aria-current=page]{font-weight:bold;text-decoration:underline;text-underline-offset:5px}
.demo-site #banbar{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.demo-site #banbar a{padding:16px;border:1px solid var(--demo-line);border-radius:4px}
.demo-site .news-date{white-space:nowrap}
.demo-site.admin-site{overflow:visible}
.demo-site .admin-header{align-items:flex-start;padding:16px 24px}
.demo-site .admin-header nav{flex:1;align-items:center}
.demo-site .admin-header nav>a{padding:6px 0;min-height:32px;align-content:center}
.demo-site .admin-shell{height:auto;min-height:70vh;grid-template-columns:minmax(0,1fr);overflow:visible;align-items:start}
.demo-site .admin-shell.has-tree{grid-template-columns:280px minmax(0,1fr)}
.demo-site .admin-sidebar{position:sticky;top:0;max-height:100dvh;overflow:auto;padding-bottom:12px}
.demo-site .admin-workspace{overflow:visible;min-width:0;padding:24px}
.demo-site .admin-savebar{top:0;flex-wrap:wrap;z-index:5;padding:12px;gap:10px;background:#fff;border:1px solid var(--demo-line);border-radius:4px}
.demo-site .admin-savebar [data-form-state]{margin-left:auto;font-size:13px;color:#5c4b64}
.demo-site .admin-workspace h2{font-size:22px;margin:24px 0 16px}
.demo-site .admin-properties label,.demo-site .fieldgrid label{gap:6px;line-height:1.5}
.demo-site .fieldgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.demo-site .fieldgrid label small{font-weight:normal;color:#6c5e74}
.demo-site .company-toc{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.demo-site .company-toc a{padding:10px;border:1px solid var(--demo-line);border-radius:4px}
.demo-site details[id]{scroll-margin-top:90px}
.demo-site .danger-zone{border:1px solid #c2918d;margin:24px 0}
.demo-site .danger-zone>summary{color:#8b2421;background:#fff2f0!important}
.demo-site .danger-zone button{background:#8b2421;border-color:#8b2421}
.demo-site .save-success{padding:16px;background:#edf5ed;border-left:3px solid #32623e}
.demo-site [data-client-errors] a{display:block;margin:8px 0}
.demo-site .work-filters{display:flex;flex-wrap:wrap;align-items:end;gap:16px;padding:16px;background:var(--demo-soft)}
.demo-site .work-filters label{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.demo-site .work-filters label:first-child{flex:1 1 260px}
.demo-site .work-filters input[type=search]{width:100%}
.demo-site .work-filters p{flex-basis:100%;margin:0}
.demo-site .work-option{display:flex;gap:12px;align-items:flex-start;padding:12px 8px;border-bottom:1px solid var(--demo-line);min-height:44px;box-sizing:border-box;font-weight:normal;line-height:1.5}
.demo-site .work-option input{margin-top:2px}
.demo-site .work-options{margin-bottom:16px}
.demo-site .tree-more{margin-left:auto;padding:0 6px;min-width:32px;min-height:32px;background:transparent;color:var(--demo-accent);border:0}
.demo-site .object-tree summary,.demo-site .tree-leaf{display:flex;align-items:center;gap:4px;min-height:40px}
.demo-site .object-tree a{min-width:0;flex:1}
.demo-site .tree-context-menu{max-width:calc(100vw - 20px);z-index:40}
.demo-site .tree-context-menu a{padding:12px}
.demo-site .children-table{table-layout:auto;width:100%}
.demo-site .children-table th:first-child{width:65px}
.demo-site .children-table th:nth-child(2){width:45%}
.demo-site .children-table td:last-child{min-width:90px}
.demo-site .row-actions summary{background:transparent!important;padding:8px!important}
.demo-site .row-actions a{display:block;padding:8px}
.demo-site #bulk-form{position:sticky;bottom:0;background:var(--demo-soft);border:1px solid var(--demo-line);padding:16px;z-index:4}
.demo-site .admin-actions>a.button:not(:first-child),.demo-site .children-selection button{background:var(--demo-soft);color:var(--demo-accent);border-color:var(--demo-line)}
.demo-site .return-list{display:inline-block;margin-bottom:16px}
.demo-site .admin-workspace table:not(.children-table){max-width:100%}
@media(max-width:1100px){.demo-site .admin-shell.has-tree{grid-template-columns:240px minmax(0,1fr)}}
@media(max-width:900px){
 .ux-ready .mobile-toggle{display:inline-flex;align-items:center;justify-content:center;margin:8px 16px}
 .ux-ready #site-navigation,.ux-ready #admin-navigation,.ux-ready #admin-tree-panel{display:none}
 .ux-ready .panel-open#site-navigation,.ux-ready .panel-open#admin-navigation,.ux-ready .panel-open#admin-tree-panel{display:flex;position:fixed;inset:0 0 0 auto;z-index:50;width:min(380px,100%);height:100dvh;max-height:100dvh;box-sizing:border-box;overflow:auto;flex-direction:column;align-items:stretch;gap:4px;padding:16px;background:#fff;box-shadow:-10px 0 40px #30223835;margin:0}
 .ux-ready .panel-open [data-panel-close]{display:block;align-self:flex-end}
 .panel-visible{overflow:hidden!important}
 .demo-site .admin-shell.has-tree{display:block}
 .demo-site .admin-sidebar{position:static;max-height:none}
 .demo-site .admin-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;gap:12px}
 .demo-site .admin-header nav{margin:0}
 .demo-site .admin-header .mobile-toggle{margin:0}
 .demo-site .nav-group{flex-wrap:wrap;justify-content:space-between}
 .demo-site .nav-group ul{position:static;flex-basis:100%;width:auto;box-shadow:none;padding:0 12px}
 .demo-site .nav-group>a,.demo-site .admin-header nav>a{min-height:44px;align-content:center}
 .demo-site .nav-group button,.demo-site .tree-more{min-width:44px;min-height:44px}
 .demo-site #header{padding:16px;gap:12px}
 .demo-site #header .brand{flex-basis:55%;min-width:0}
 .demo-site #header .brand img{max-width:100%;height:auto}
 .demo-site .demo-account{font-size:12px}
 .demo-site #wrp{padding:0 16px;margin:20px 0}
 .demo-site #cntbl{padding:20px 16px}
 .demo-hero-inner{padding:24px 16px 16px}
 .demo-site .demo-hero h1{font-size:32px;margin:12px 0}
 .demo-site .demo-hero h1 br{display:none}
 .demo-services{margin-top:20px;gap:8px}
 .demo-services a{padding:14px 12px}
 .demo-services strong{font-size:16px}
 .demo-services span{margin-bottom:4px}
 .demo-service-top{margin-bottom:10px}
 .demo-site .demo-caption{margin-top:8px}
 .demo-site .admin-workspace{padding:16px}
 .demo-site .admin-workspace h1{font-size:26px}
 .demo-site .fieldgrid{grid-template-columns:1fr}
 .demo-site .children-table,.demo-site .children-table tbody{display:block}
 .demo-site .children-table thead{display:none}
 .demo-site .children-table tr{display:block;border:1px solid var(--demo-line);border-radius:6px;margin:12px 0;padding:8px}
 .demo-site .children-table td{display:flex;gap:12px;border:0;padding:8px;min-width:0!important;white-space:normal;align-items:flex-start}
 .demo-site .children-table td::before{content:attr(data-label);flex:0 0 82px;font-weight:bold}
 .demo-site .children-table td[data-label=Материал]{flex-wrap:wrap}
 .demo-site .children-table td[data-label=Материал]>a{flex:1;min-width:0}
 .demo-site .children-table-scroll{overflow:visible}
 .demo-site .admin-properties{grid-template-columns:1fr}
 .demo-site .admin-properties>label{grid-column:1!important;max-width:100%}
 .demo-site .admin-filters{display:flex;flex-direction:column;align-items:stretch}
 .demo-site .admin-filters>label{width:100%}
 .demo-site .admin-actions{flex-wrap:wrap;gap:12px}
 .demo-site .admin-savebar{position:sticky;top:0}
 .demo-site .admin-savebar [data-form-state]{flex-basis:100%;margin:0}
 .demo-site .admin-workspace .table-scroll,.demo-site .media-files{overflow-x:auto;display:block}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.demo-site .active-ancestor>a{font-weight:bold;border-bottom:2px solid var(--demo-accent)} .document-meta{display:block;color:#625768;margin-top:6px;font-size:13px}
.demo-site .fieldgrid{display:grid}
.demo-site .fieldgrid>label{display:flex;flex-direction:column;gap:6px}
.demo-site .profile-card input:not([type=checkbox]){font-size:14px;padding:10px}
@media(max-width:900px){.demo-site .legacy-properties>label{grid-template-columns:1fr}.demo-site .legacy-properties small{grid-column:1}.demo-site .legacy-properties .check-property{padding-left:0}.demo-site .admin-workspace table:not(.children-table){display:block;overflow-x:auto}.demo-site .admin-brand{white-space:normal}}
@media(max-width:900px){.demo-site .demo-hero h1{font-size:28px;line-height:1.12}.demo-site .demo-hero .demo-eyebrow{font-size:11px}.demo-site .demo-hero p{font-size:14px}.demo-services a{padding:12px 10px}.demo-services small{font-size:12px}.demo-service-top{margin-bottom:6px}.demo-site .demo-hero .demo-caption{font-size:10px}}
.demo-site .admin-actions>a.button.secondary{background:var(--demo-soft);color:var(--demo-accent);border-color:var(--demo-line)}
.demo-site .admin-actions>a.button.primary{background:var(--demo-accent);color:#fff;border-color:var(--demo-accent)}
.retention-note{padding:16px;background:var(--demo-soft);border-left:3px solid var(--demo-accent)}
.panel-backdrop{position:fixed;inset:0;z-index:49;background:#30223866}
