:root{color-scheme:light;--bg:#f5f8fb;--surface:#ffffff;--surface-tint:#f8fbfd;--surface-muted:#eaf5fa;--brand-soft:#e8f6fc;--brand-soft-strong:#d4ecf7;--text:#172431;--muted:#5f7180;--text-muted:var(--muted);--line:#d7e5ec;--brand:#1379ad;--brand-rgb:19,121,173;--brand-strong:#163954;--brand-strong-rgb:22,57,84;--sky:#38afe4;--green:#2b6f5c;--green-rgb:43,111,92;--accent:#b88a3b;--accent-light:#e5bf68;--gold:#b8860b;--gold-rgb:184,134,11;--crimson:#b22222;--crimson-rgb:178,34,34;--danger:#b4554f;--shadow:0 18px 48px rgba(var(--brand-strong-rgb),0.1);--font-heading:"Be Vietnam Pro","Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-body:"Inter","Be Vietnam Pro",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;--font-serif:"Merriweather",Georgia,"Times New Roman",serif;--text-body-size:14px;--text-body-line-height:1.65;--heading-line-height:1.15;--heading-letter-spacing:0;--site-header-height:0px;--scroll-navbar-height:58px;--admin-sidebar-gap:16px;--admin-sidebar-top:calc(var(--scroll-navbar-height) + var(--admin-sidebar-gap));--nav-dropdown-border-radius:8px;--public-layout-max-width:1240px;--public-layout-gap:40px;--public-sidebar-width:336px}*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{display:flex;min-height:100vh;min-height:100dvh;flex-direction:column;margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--text-body-size);font-weight:400;line-height:var(--text-body-line-height);letter-spacing:0;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body>main{width:100%;flex:1 0 auto}.site-footer,.site-header{flex:0 0 auto}.app-loading{display:grid;min-height:100vh;grid-template-rows:auto 1fr;background:var(--bg);color:var(--text)}.app-loading-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:86px;padding:14px clamp(20px,5vw,64px);border-bottom:1px solid rgba(var(--brand-rgb),.12);background:rgba(255,255,255,.96)}.app-loading-brand{display:flex;min-width:0;align-items:center;gap:12px}.app-loading-brand img{width:54px;height:54px;flex:0 0 auto;object-fit:contain}.app-loading-school,.app-loading-status{display:block;min-width:0}.app-loading-school{overflow:hidden;color:var(--brand-strong);font-family:var(--font-heading);font-size:17px;font-weight:850;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.app-loading-status{margin-top:3px;color:var(--muted);font-size:13px;font-weight:700;line-height:1.35}.app-loading-nav{display:flex;align-items:center;gap:14px}.app-loading-nav span{width:78px;height:12px;border-radius:999px}.app-loading-main{display:grid;width:100%;max-width:1280px;margin:0 auto;grid-gap:28px;gap:28px;padding:24px clamp(20px,5vw,64px) 54px}.app-loading-hero{position:relative;min-height:360px;overflow:hidden;border-radius:8px;background:var(--brand-strong)}.app-loading-hero:before{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(var(--brand-strong-rgb),.78),rgba(var(--brand-strong-rgb),.18) 58%,rgba(var(--brand-strong-rgb),.06));content:""}.app-loading-skeleton{position:relative;display:block;overflow:hidden;border-radius:8px;background:#e6f0f6}.app-loading-skeleton:after{position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.74),transparent);content:"";transform:translateX(-110%);animation:app-loading-shimmer 1.35s ease-in-out infinite}.app-loading-hero-media{position:absolute;inset:0;border-radius:8px;background:linear-gradient(135deg,#bdd9e8,#edf6fa 58%,#ead19a)}.app-loading-hero-content{position:absolute;z-index:2;bottom:34px;left:34px;display:grid;width:min(520px,calc(100% - 68px));grid-gap:12px;gap:12px}.app-loading-hero-content .app-loading-skeleton{background:rgba(255,255,255,.82)}.app-loading-pill{width:118px;height:22px;border-radius:999px}.app-loading-hero-title{width:82%;height:42px}.app-loading-hero-line{width:100%;height:14px;border-radius:999px}.app-loading-hero-line.short{width:66%}.app-loading-section{display:grid;grid-gap:18px;gap:18px}.app-loading-section-heading{display:grid;grid-gap:10px;gap:10px;max-width:420px}.app-loading-heading{width:190px;height:26px}.app-loading-heading-line{width:100%;height:12px;border-radius:999px}.app-loading-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.app-loading-card{display:grid;align-content:start;grid-gap:12px;gap:12px;min-height:166px;padding:14px;border:1px solid #dbe8ef;border-radius:8px;background:#fff;box-shadow:0 12px 30px rgba(var(--brand-strong-rgb),.06)}.app-loading-card-media{height:86px}.app-loading-card-title{width:74%;height:18px}.app-loading-card-line{width:92%;height:12px;border-radius:999px}@keyframes app-loading-shimmer{to{transform:translateX(110%)}}@media (max-width:640px){.app-loading-header{min-height:72px;padding:10px 14px}.app-loading-brand{gap:10px}.app-loading-brand img{width:44px;height:44px}.app-loading-school{max-width:calc(100vw - 84px);font-size:clamp(11.5px,calc(4.73vw - 4px),16px);white-space:nowrap}.app-loading-status{font-size:12px}.app-loading-nav{display:none}.app-loading-main{gap:18px;padding:14px 12px 32px}.app-loading-hero{min-height:210px;aspect-ratio:16/9}.app-loading-hero-content{right:16px;bottom:18px;left:16px;width:auto;gap:9px}.app-loading-pill{width:104px;height:19px}.app-loading-hero-title{width:84%;height:28px}.app-loading-hero-line{height:12px}.app-loading-card-grid{grid-template-columns:1fr;gap:12px}.app-loading-card{min-height:128px;padding:12px}.app-loading-card-media{height:62px}}.navigation-loading-indicator{position:fixed;top:0;right:0;left:0;z-index:10000;height:3px;overflow:visible;opacity:0;pointer-events:none;transition:opacity .14s ease}.navigation-loading-indicator:before{position:absolute;top:0;left:0;width:42%;height:100%;background:linear-gradient(90deg,rgba(var(--brand-rgb),0),var(--accent),var(--brand));content:"";transform:translateX(-110%)}.navigation-loading-indicator.active{opacity:1}.navigation-loading-indicator.active:before{animation:route-loading-slide 1.05s ease-in-out infinite}.navigation-loading-indicator span{position:absolute;top:9px;right:clamp(12px,3vw,28px);padding:6px 10px;border:1px solid rgba(var(--brand-rgb),.18);border-radius:999px;background:rgba(255,255,255,.94);color:var(--brand-strong);font-size:12px;font-weight:850;letter-spacing:0;opacity:0;box-shadow:0 10px 24px rgba(var(--brand-strong-rgb),.12);transform:translateY(-6px);transition:opacity .16s ease,transform .16s ease}.navigation-loading-indicator.active span{opacity:1;transform:translateY(0)}.route-loading{min-height:max(520px,calc(100vh - var(--site-header-height, 0px) - 260px));padding:clamp(18px,4vw,46px) 0 clamp(40px,6vw,72px);background:linear-gradient(180deg,#f5f9fc,#fff 42%)}.route-loading-inner{display:grid;width:min(1180px,calc(100% - 32px));margin:0 auto;grid-gap:18px;gap:18px}.route-loading-status{display:grid;grid-gap:7px;gap:7px;max-width:460px}.route-loading-kicker{color:var(--accent);font-size:13px;font-weight:900;text-transform:uppercase}.route-loading-status strong{color:var(--brand-strong);font-family:var(--font-heading);font-size:clamp(24px,4vw,42px);line-height:1.12}.route-loading-progress{position:relative;width:min(280px,100%);height:4px;overflow:hidden;border-radius:999px;background:rgba(var(--brand-rgb),.12)}.route-loading-progress:before{position:absolute;inset:0 auto 0 0;width:44%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--accent));content:"";transform:translateX(-100%);animation:route-loading-slide 1.05s ease-in-out infinite}.route-loading-hero{position:relative;min-height:clamp(220px,34vw,410px);overflow:hidden;border-radius:8px;background:#eaf4f8}.route-loading-media{position:absolute;inset:0;border-radius:8px;background:linear-gradient(135deg,#c7ddeb,#eff7fb 58%,#ecd49d)}.route-loading-copy{position:absolute;right:clamp(18px,4vw,42px);bottom:clamp(18px,4vw,38px);left:clamp(18px,4vw,42px);z-index:2;display:grid;max-width:620px;grid-gap:12px;gap:12px}.route-loading-copy .app-loading-skeleton{background:rgba(255,255,255,.86)}.route-loading-pill{width:126px;height:22px;border-radius:999px}.route-loading-title{width:min(560px,86%);height:clamp(32px,5vw,48px)}.route-loading-line{width:min(460px,74%);height:14px;border-radius:999px}.route-loading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.route-loading-card{display:grid;grid-gap:12px;gap:12px;min-height:176px;padding:14px;border:1px solid #deebf2;border-radius:8px;background:#fff}.route-loading-card-media{height:92px}.route-loading-card-title{width:76%;height:18px}.route-loading-card-line{width:92%;height:12px;border-radius:999px}@keyframes route-loading-slide{to{transform:translateX(260%)}}@media (max-width:640px){.navigation-loading-indicator span{top:7px;right:10px;padding:5px 9px}.route-loading{min-height:520px;padding:16px 0 34px}.route-loading-inner{width:min(100% - 24px,680px);gap:14px}.route-loading-hero{min-height:210px;aspect-ratio:16/9}.route-loading-grid{grid-template-columns:1fr;gap:12px}}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}[role=button],a,button,summary{touch-action:manipulation}.card-title,.hero-title,.logo-text,.page-title,.section-title,h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:var(--heading-line-height);letter-spacing:var(--heading-letter-spacing)}.hero-title,.page-title,h1{font-weight:800}.section-title,h2{font-weight:700}.card-title,h3{font-weight:600}.alert,.badge,.breadcrumb,.btn,.button,.form-control,.form-label,.menu,.nav,.navbar,.notice,.schedule,.table,.tag,.timetable,button,figcaption,input,li,p,select,small,td,textarea,th{font-family:var(--font-body)}.badge,.btn,.button,.tag,button{font-weight:600;letter-spacing:0}.numeric,.stats,.table,.timetable,table{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.container{width:min(1160px,calc(100% - 32px));margin:0 auto}.actions,.filter-row,.meta-row,.section-head{display:flex;align-items:center}.site-header{position:relative;z-index:50;border-bottom:0;background:rgba(255,255,255,.94);box-shadow:0 12px 34px rgba(var(--brand-strong-rgb),.09)}.scroll-navbar,.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.scroll-navbar{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.95);border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(var(--brand-strong-rgb),.08);opacity:0;transform:translateY(-8px);transition:opacity .22s ease,transform .22s ease;pointer-events:none}.scroll-navbar.visible{opacity:1;transform:translateY(0);pointer-events:auto}.scroll-navbar-inner{width:100%;max-width:none;margin:0;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;grid-gap:18px;gap:18px;min-height:58px;padding:0 18px}.scroll-brand{display:flex;align-items:center;justify-content:flex-start;width:44px;height:44px}.scroll-brand img{width:44px;height:44px;object-fit:contain}.scroll-nav-links{display:flex;flex-wrap:nowrap;justify-content:center;gap:2px;min-width:0;font-size:14px;font-weight:800;line-height:1.2}.scroll-nav-links .nav-item>a{min-height:58px;padding:0 13px}.scroll-nav-links .nav-item--open>a,.scroll-nav-links .nav-item:hover>a{color:var(--brand)}.scroll-navbar-balance{display:none}.scroll-nav-links .nav-dropdown,.scroll-nav-links .nav-flyout{z-index:110}@media (max-width:1180px){.scroll-navbar{display:none}}.header-top{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;grid-gap:10px 22px;gap:10px 22px;width:min(1540px,calc(100% - 32px));padding:12px 40px 10px}.brand{display:flex;align-items:center;justify-self:left;min-width:0;gap:12px;color:var(--brand-strong)}.brand img{flex:0 0 auto;width:67px;height:67px;object-fit:contain}.brand span{min-width:0}.brand strong{display:block;font-family:var(--font-heading);overflow:hidden;color:var(--brand);font-size:clamp(18px,1.7vw,24px);font-weight:850;line-height:1.28;text-overflow:ellipsis;white-space:nowrap}.brand .brand-title-mobile{display:none}.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.header-icon-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line);border-radius:999px;background:var(--surface-tint);color:var(--brand-strong);transition:background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}.header-icon-link:hover{background:var(--brand);color:#fff;box-shadow:0 10px 22px rgba(var(--brand-rgb),.2);transform:translateY(-1px)}.header-bottom{border-top:1px solid rgba(var(--brand-strong-rgb),.18);border-bottom:0;background:#246b94;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 10px 22px rgba(var(--brand-strong-rgb),.12)}.header-nav-inner{display:flex;align-items:center;flex-wrap:nowrap;justify-content:center;min-height:52px;min-width:0;font-size:15px;font-weight:800;line-height:1.2;width:min(1540px,calc(100% - 32px));margin:0 auto}.header-nav-inner .nav-item>a{color:#f4fbfe}.nav-item{position:relative}.admin-nav-link,.nav-item>a{position:relative;display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:0 16px;border-radius:7px;white-space:nowrap;transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.nav-item>a:after{position:absolute;right:14px;bottom:5px;left:14px;height:2px;border-radius:999px;background:var(--gold);content:"";opacity:0;transform:scaleX(.42);transform-origin:center;transition:opacity .16s ease,transform .16s ease}.nav-chevron{width:0;height:0;border-right:4px solid transparent;border-left:4px solid transparent;border-top:5px solid;opacity:.72}.nav-sub-chevron{width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:5px solid;opacity:.72}.mobile-menu{position:relative;display:none;width:auto}.mobile-menu--open{grid-column:auto;width:auto}.mobile-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;min-height:44px;padding:0;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--brand);cursor:pointer;font-weight:800;line-height:1;box-shadow:0 8px 18px rgba(var(--brand-strong-rgb),.05);transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.mobile-menu--open .mobile-menu-trigger,.mobile-menu-trigger:focus-visible,.mobile-menu-trigger:hover{border-color:rgba(var(--brand-rgb),.26);background:var(--brand-soft);color:var(--brand);box-shadow:0 10px 22px rgba(var(--brand-rgb),.1)}.mobile-menu-backdrop:focus-visible,.mobile-menu-close:focus-visible,.mobile-menu-trigger:focus-visible{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}.mobile-menu-trigger-icon,.mobile-menu-trigger-icon:after,.mobile-menu-trigger-icon:before{display:block;width:17px;height:2px;border-radius:999px;background:currentColor;content:""}.mobile-menu-trigger-icon{position:relative}.mobile-menu-trigger-icon:after,.mobile-menu-trigger-icon:before{position:absolute;left:0}.mobile-menu-trigger-icon:before{top:-6px}.mobile-menu-trigger-icon:after{top:6px}.mobile-menu-panel{position:fixed;top:calc(var(--site-header-height) + 10px);right:12px;left:12px;z-index:1000;display:grid;grid-template-rows:minmax(0,1fr);grid-gap:0;gap:0;max-height:calc(100vh - var(--site-header-height) - 22px);padding:10px;border:1px solid #cce0ea;border-radius:12px;background:#fff;box-shadow:0 24px 64px rgba(var(--brand-strong-rgb),.24);overscroll-behavior:contain;animation:mobile-menu-enter .16s ease both}.mobile-menu-backdrop{position:fixed;top:var(--site-header-height);right:0;left:0;z-index:900;width:100vw;height:calc(100dvh - var(--site-header-height));min-height:0;padding:0;border:0;background:rgba(var(--brand-strong-rgb),.28);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-menu-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 4px 10px;border-bottom:1px solid var(--line)}.mobile-menu-panel-head div{display:grid;grid-gap:2px;gap:2px}.mobile-menu-panel-head span,.mobile-menu-quick-links>span{color:var(--accent);font-size:11px;font-weight:900;letter-spacing:0;line-height:1;text-transform:uppercase}.mobile-menu-panel-head strong{color:var(--brand-strong);font-family:var(--font-heading);font-size:22px;line-height:1.1}.mobile-menu-close{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface-tint);color:var(--brand);cursor:pointer;font-weight:850}.mobile-menu-list{display:grid;grid-gap:8px;gap:8px;min-height:0;overflow-y:auto;padding:2px 2px 4px;scrollbar-width:thin}.mobile-menu-group>summary,.mobile-menu-link,.mobile-menu-sublist a{display:flex;align-items:center;min-height:46px;padding:10px 12px;border-radius:8px;background:#f8fcfe;color:#253747;font-weight:800;line-height:1.25;text-align:left}.mobile-menu-group>summary{justify-content:space-between;gap:10px;cursor:pointer;list-style:none}.mobile-menu-group>summary::-webkit-details-marker{display:none}.mobile-menu-close:hover,.mobile-menu-group>summary:hover,.mobile-menu-group[open]>summary,.mobile-menu-link:hover,.mobile-menu-sublist a:hover{background:var(--brand-soft);color:var(--brand)}.mobile-menu-chevron{width:8px;height:8px;flex:0 0 auto;border-right:2px solid;border-bottom:2px solid;opacity:.7;transform:rotate(45deg);transition:transform .16s ease}.mobile-menu-group[open]>summary .mobile-menu-chevron{transform:rotate(-135deg)}.mobile-menu-sublist{display:none;gap:6px;margin-top:6px;margin-left:12px;padding-left:10px;border-left:2px solid var(--brand-soft-strong)}.mobile-menu-group[open]>.mobile-menu-sublist{display:grid}.mobile-menu-sublist a{min-height:44px;background:#fff;color:var(--brand-strong);font-size:13px;font-weight:760}.mobile-menu-quick-links{display:grid;margin-top:6px;padding-top:12px;border-top:1px solid var(--line)}.mobile-menu-quick-links a{display:flex;align-items:center;min-height:44px;padding:9px 12px;border:1px solid #d7e8ef;border-radius:8px;background:var(--brand);color:#fff;font-weight:850}@keyframes mobile-menu-enter{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.admin-nav-link:hover,.nav-item--open>a,.nav-item:hover>a{background:transparent;color:#fff;box-shadow:none}.scroll-nav-links .nav-item--open>a,.scroll-nav-links .nav-item:hover>a{color:var(--brand-strong)}.nav-item--open>a:after,.nav-item:hover>a:after{opacity:1;transform:scaleX(1)}.nav-dropdown,.nav-flyout{position:absolute;z-index:200;display:none;min-width:230px;overflow:visible;border:1px solid #d6e8f0;border-bottom-left-radius:var(--nav-dropdown-border-radius);border-bottom-right-radius:var(--nav-dropdown-border-radius);background:#fff;box-shadow:0 18px 40px rgba(var(--brand-strong-rgb),.14)}.nav-dropdown{top:100%;left:0}.nav-flyout{top:0;left:calc(100% - 1px);z-index:220}.nav-item--open>.nav-dropdown,.nav-subitem--open>.nav-flyout{display:grid}.nav-subitem{position:relative}.nav-flyout .nav-subitem>a,.nav-flyout a,.nav-subitem>a{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:0 14px;border-bottom:1px solid var(--line);white-space:nowrap;font-weight:700;transition:background .16s ease,color .16s ease}.nav-flyout .nav-subitem:last-child>a,.nav-flyout a:last-child,.nav-subitem:last-child>a{border-bottom:none}.nav-flyout .nav-subitem>a:focus,.nav-flyout a:hover,.nav-subitem>a:focus,.nav-subitem>a:hover{background:var(--brand-soft);color:var(--brand)}.nav-flyout .nav-subitem:last-child>a:focus,.nav-flyout .nav-subitem:last-child>a:hover,.nav-flyout a:last-child:hover,.nav-subitem:last-child>a:focus,.nav-subitem:last-child>a:hover{border-bottom-left-radius:var(--nav-dropdown-border-radius);border-bottom-right-radius:var(--nav-dropdown-border-radius)}@media (max-width:1180px){:root{--admin-sidebar-gap:12px}.header-top{grid-template-columns:minmax(0,1fr) auto auto;gap:10px;padding:10px 0}.header-bottom{display:none}.mobile-menu{display:block}.mobile-menu--open .mobile-menu-trigger{margin-left:auto}}.hero{padding:46px 0 38px;background:linear-gradient(180deg,var(--surface-tint) 0,var(--surface-muted) 100%)}.hero-banner{position:relative;overflow:hidden;min-height:545px;background:var(--brand-strong)}.hero-backdrop,.hero-overlay{position:absolute;inset:0}.hero-backdrop{width:100%;height:100%;object-fit:cover}.hero-overlay{background:linear-gradient(90deg,rgba(var(--brand-strong-rgb),.92),rgba(var(--brand-strong-rgb),.62) 48%,rgba(var(--brand-strong-rgb),.18)),linear-gradient(180deg,rgba(var(--brand-strong-rgb),.05),rgba(var(--brand-strong-rgb),.72))}.article-grid,.article-hero-grid,.article-layout,.dashboard-grid,.hero-grid,.page-grid,.split-grid{display:grid;grid-gap:28px;gap:28px}.hero-grid{position:relative;z-index:1;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center}.article-hero-copy h1,.article-main h1,.empty-state h1,.hero-copy h1,.section-head h1{margin:0;color:var(--text);font-size:clamp(32px,4.4vw,50px);line-height:1.08;letter-spacing:0}.hero-copy p,.lead{color:var(--muted);font-size:16px}.hero-banner .hero-copy h1{color:#fff}.hero-banner .hero-copy p{max-width:620px;color:#e8f3f8}.hero-banner .eyebrow{color:var(--accent-light)}.eyebrow{display:inline-block;margin-bottom:10px;color:var(--accent);font-size:12px;font-weight:750;letter-spacing:0;text-transform:uppercase}.actions{gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border:1px solid var(--brand);border-radius:8px;background:var(--brand);color:#fff;cursor:pointer;font-weight:700;line-height:1.2;text-align:center;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.button:hover:not(:disabled){border-color:var(--brand-strong);background:var(--brand-strong);color:#fff;box-shadow:0 9px 18px rgba(var(--brand-rgb),.14);transform:translateY(-1px)}.button:active:not(:disabled){box-shadow:0 4px 10px rgba(var(--brand-rgb),.1);transform:translateY(0)}.button:focus-visible{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}.button:disabled{cursor:not-allowed;opacity:.58;transform:none}.button.secondary{background:#fff;color:var(--brand)}.button.secondary:hover:not(:disabled){border-color:#9fcbe0;background:#f3fbff;color:var(--brand-strong);box-shadow:0 8px 18px rgba(var(--brand-rgb),.1)}.button.secondary.danger-soft{border-color:#ead0cc;background:#fff8f7;color:var(--danger)}.button.secondary.danger-soft:hover:not(:disabled){border-color:#dbaaa4;background:#fff1ef;color:#93423d}.simple-banner{padding:0;background:var(--surface-muted)}.banner-shell{position:relative;max-width:none;overflow:hidden;background:var(--brand-strong);touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none}.banner-shell:after{position:absolute;right:0;bottom:0;left:0;height:1px;background:rgba(255,255,255,.16);content:"";pointer-events:none}.banner-track{position:relative;border:0;border-radius:0;background:var(--brand-strong);box-shadow:none;height:clamp(360px,68vh,720px)}.banner-slide{position:absolute;inset:0;margin:0;overflow:hidden;opacity:0;pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0);transition:opacity .98s ease-in-out;will-change:opacity;z-index:0}.banner-slide.active{opacity:1;pointer-events:auto;z-index:1}.banner-slide:after{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),transparent 38%,rgba(0,0,0,.2)),linear-gradient(90deg,rgba(0,0,0,.12),transparent 34%,rgba(0,0,0,.1));content:"";pointer-events:none}.banner-slide a{display:block;height:100%}.banner-slide img{width:100%;height:100%;object-fit:cover;transition:transform .42s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.banner-slide a:hover img{transform:scale(1.015)}.banner-arrows{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:space-between;padding:0 24px;pointer-events:none}.banner-arrow{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(18,38,54,.42);color:#fff;cursor:pointer;font-family:var(--font-body);font-size:34px;line-height:1;pointer-events:auto;box-shadow:0 12px 26px rgba(0,0,0,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .16s ease,border-color .16s ease,transform .16s ease}.banner-arrow:hover{border-color:rgba(255,255,255,.44);background:rgba(18,38,54,.62);transform:translateY(-1px)}.banner-dots{position:absolute;right:0;bottom:8px;left:0;z-index:4;display:flex;justify-content:center;gap:4px;pointer-events:none}.banner-dots button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:999px;background:transparent;cursor:pointer;pointer-events:auto;transition:transform .18s ease}.banner-dots button:before{width:28px;height:6px;border-radius:999px;background:rgba(255,255,255,.48);box-shadow:0 2px 8px rgba(0,0,0,.32);content:"";transition:background .18s ease,box-shadow .18s ease,transform .18s ease}.banner-dots button.active,.banner-dots button:hover{transform:scaleX(1.08)}.banner-dots button.active:before,.banner-dots button:hover:before{background:#fff}.hero-media{position:relative;overflow:hidden;min-height:320px;border-radius:8px;box-shadow:var(--shadow)}.article-cover,.hero-media img{width:100%;height:100%;object-fit:cover}.hero-media div{position:absolute;right:20px;bottom:20px;left:20px;padding:13px 15px;border-radius:8px;background:rgba(var(--brand-strong-rgb),.88);color:#fff}.hero-media div small,.hero-media div span,.hero-media div strong{display:block}.hero-media div strong{font-family:var(--font-heading);font-weight:700}.hero-media div small,.hero-media div span{color:#dceff5;font-size:13px}.hero-stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:18px}.hero-stats article{padding:14px 16px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:rgba(255,255,255,.12);color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-stats span,.hero-stats strong{display:block}.hero-stats strong{font-size:26px;line-height:1}.section{padding:42px 0}.section.muted{background:var(--surface-muted)}.section-head{justify-content:space-between;gap:20px}.section-head h1,.section-head h2{margin:0}.section-head h2{font-size:18px;line-height:1.2}.section-head.compact{margin-bottom:14px}.section-head a{color:var(--brand);font-weight:700}.section-head.ornate{position:relative;padding-bottom:12px}.section-head.ornate:before{right:0;background:var(--brand)}.section-head.ornate:after,.section-head.ornate:before{position:absolute;bottom:0;left:0;height:3px;border-radius:999px;content:""}.section-head.ornate:after{width:76px;background:var(--gold)}.section-head.ornate h2{font-size:23px;font-weight:800;color:var(--brand)}.section-head h2 .section-title-link{color:inherit;font:inherit;font-weight:inherit}.section-head h2 .section-title-link:hover{color:var(--brand-strong)}.portal-lead-section .section-head.ornate h2{font-size:28px;font-weight:850;line-height:1.12}.section-head.ornate .btn-outline{min-height:44px;padding:0 18px;border-width:2px;background:rgba(255,255,255,.72);border-radius:7px;font-size:14px;font-weight:800;box-shadow:0 6px 14px rgba(var(--brand-rgb),.07)}.section-head.ornate .btn-outline:hover{background:var(--brand);color:#fff;box-shadow:0 8px 16px rgba(var(--brand-rgb),.16)}.btn-outline{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:2px solid var(--brand);border-radius:8px;background:transparent;color:var(--brand);font-weight:700;font-size:13px;box-shadow:0 8px 18px rgba(var(--brand-rgb),0);transition:background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.btn-outline:hover{background:var(--brand);color:#fff;box-shadow:0 10px 20px rgba(var(--brand-rgb),.18);transform:translateY(-1px)}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.card-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-panel,.album,.card,.category-block,.quick-panel,.search-panel,.side-panel,.sidebar-widget,.stat-card,.teacher-card{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 10px 28px rgba(var(--brand-strong-rgb),.06)}.card{overflow:hidden;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.card:hover{border-color:rgba(var(--brand-rgb),.34);box-shadow:0 16px 36px rgba(var(--brand-strong-rgb),.11);transform:translateY(-2px)}.card-media{display:block;overflow:hidden;aspect-ratio:16/10;background:#dce9ef}.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .22s ease}.card:hover .card-media img{transform:scale(1.035)}.card-body{display:grid;grid-gap:10px;gap:10px;padding:15px}.card-body h3,.document-row h3,.teacher-card h3{display:-webkit-box;overflow:hidden;margin:8px 0 6px;font-size:16.5px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.post-card{display:grid;grid-template-rows:auto 1fr;min-height:100%}.post-card .card-body{align-content:start}.post-card .card-body h3,.post-card .card-body p{margin:0}.card-read-more{display:inline-flex;align-items:center;gap:6px;justify-self:start;margin-top:auto;color:var(--brand);font-size:13px;font-weight:850}.card-read-more:after{content:"\2192";font-size:16px;line-height:1;transition:transform .16s ease}.card-read-more:hover:after{transform:translateX(3px)}.album p,.card-body p,.teacher-card p{-webkit-line-clamp:2;line-clamp:2}.album p,.card-body p,.document-row p,.teacher-card p{display:-webkit-box;overflow:hidden;color:var(--muted);-webkit-box-orient:vertical}.document-row p{-webkit-line-clamp:1;line-clamp:1}.meta-row{justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.badge,.chip{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;font-size:12px;font-weight:700}.badge{padding:0 10px;background:var(--brand-soft);color:var(--brand)}.badge.green{background:#eaf6f1;color:var(--green)}.filter-row{flex-wrap:wrap;gap:10px;margin-bottom:24px}.chip{padding:0 12px;border:1px solid var(--line);background:#fff;color:var(--muted)}.chip.active{border-color:var(--brand);background:var(--brand);color:#fff}.public-page{background:linear-gradient(180deg,#f8fcfe 0,var(--bg) 330px),var(--bg)}.public-page>.container{width:min(var(--public-layout-max-width),calc(100% - 48px))}.public-page-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:end;grid-gap:26px;gap:26px;padding:8px 0 28px;margin-bottom:22px;border-bottom:1px solid var(--line)}.public-page-hero h1{max-width:820px;margin:0;color:var(--brand-strong);font-size:clamp(31px,3.6vw,48px);line-height:1.08}.public-page-hero .lead{max-width:720px;margin:12px 0 0}.gallery-page .public-page-stat-grid{margin-top:18px}.gallery-page .public-page-hero{align-items:center}.gallery-page-cover{position:relative;min-height:260px;margin:0;overflow:hidden;border:1px solid #d4e7ef;border-radius:8px;background:var(--brand-strong);box-shadow:0 18px 42px rgba(var(--brand-strong-rgb),.14);aspect-ratio:4/3}.gallery-page-cover img{display:block;width:100%;height:100%;object-fit:cover}.gallery-page-cover figcaption{position:absolute;right:12px;bottom:12px;margin:0;padding:6px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(18,38,54,.44);color:#fff;font-size:12px;font-weight:850;line-height:1;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.public-page-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.public-page-stat-grid div{display:grid;grid-gap:4px;gap:4px;min-width:0;padding:14px;border:1px solid #d9e9f0;border-radius:8px;background:rgba(255,255,255,.88);box-shadow:0 10px 24px rgba(var(--brand-strong-rgb),.06)}.public-page-stat-grid span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-page-stat-grid strong{overflow-wrap:anywhere;color:var(--brand-strong);font-family:var(--font-heading);font-size:20px;font-weight:850;line-height:1.1}.public-page-stat-grid span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.public-filter-row{margin-bottom:26px;padding-bottom:4px}.public-filter-row .chip{min-height:34px;padding:0 14px;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}.public-filter-row .chip:hover{border-color:#9fcbe0;background:#f3fbff;color:var(--brand-strong);box-shadow:0 8px 18px rgba(var(--brand-rgb),.08);transform:translateY(-1px)}.public-filter-row .chip.active:hover{border-color:var(--brand-strong);background:var(--brand-strong);color:#fff}.content-stack{display:grid;grid-gap:16px;gap:16px}.public-page .page-grid{grid-template-columns:minmax(0,1fr) var(--public-sidebar-width);column-gap:var(--public-layout-gap);row-gap:34px}.public-empty{margin:0;padding:18px;border:1px dashed #bdd7e4;border-radius:8px;background:#f8fcfe;color:var(--muted);font-weight:750}.public-page-numbers,.public-pagination,.public-pagination-controls{display:flex;align-items:center;gap:10px}.public-pagination{flex-wrap:wrap;justify-content:space-between;margin-top:4px;padding-top:4px;color:var(--text-muted);font-size:14px;font-weight:850}.public-pagination-controls{justify-content:flex-end}.public-page-button,.public-page-ellipsis,.public-page-number{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;border-radius:8px;font:inherit;font-weight:900;line-height:1}.public-page-button,.public-page-number{border:1px solid var(--line);background:#fff;color:var(--brand-strong);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.public-page-button:hover,.public-page-number:hover{border-color:#9fcbe0;background:#f3fbff;color:var(--brand);box-shadow:0 8px 16px rgba(var(--brand-rgb),.08);transform:translateY(-1px)}.public-page-button.disabled{cursor:not-allowed;opacity:.45}.public-page-number.active,.public-page-number[aria-current=page]{border-color:var(--brand-strong);background:var(--brand-strong);color:#fff}.public-page-ellipsis{min-width:24px;color:var(--text-muted)}.split-grid{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr)}.list-panel{overflow:hidden}.document-row{display:grid;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;grid-gap:16px;gap:16px;padding:14px 16px;margin-bottom:12px;border:1px solid #e8edf0;border-radius:10px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.04);transition:box-shadow .16s ease}.document-row:hover{box-shadow:0 2px 8px rgba(0,0,0,.06);background:#e6f7ff}.document-row:last-child{margin-bottom:0}.document-row-filetype{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid #cae1ec;border-radius:8px;background:linear-gradient(180deg,#f8fcfe,var(--brand-soft));color:var(--brand-strong);font-size:11px;font-weight:900;line-height:1}.document-row-main{display:grid;grid-gap:7px;gap:7px;min-width:0}.document-row-main h3{margin:0}.document-row-main h3 a{transition:color .16s ease}.document-row:hover .document-row-main h3 a{color:var(--brand)}.document-row-main p{font-size:12px;margin:0;width:95%}.document-row-main small{overflow:hidden;color:var(--muted);font-size:12px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.document-row-main .badge{width:-moz-fit-content;width:fit-content;padding:0 8px}.document-row-meta{display:flex;flex-wrap:wrap;gap:6px}.document-row-meta span{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border:1px solid #dbeaf1;border-radius:999px;background:#fff;color:var(--muted);font-size:12px;font-weight:800}.document-row-actions{display:flex;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;gap:8px;font-size:12px}.admin-panel,.album,.category-block,.quick-panel,.search-panel,.side-panel,.sidebar-widget,.stat-card,.teacher-card{padding:18px}.quick-panel{display:grid;align-content:start;grid-gap:12px;gap:12px}.quick-panel h2{margin:0;color:var(--brand-strong);font-size:20px}.quick-panel a{position:relative;padding:11px 34px 11px 12px;border:1px solid var(--line);border-radius:8px;color:var(--brand);background:var(--surface-tint);font-weight:700;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.quick-panel a:after{position:absolute;top:50%;right:12px;color:var(--muted);transform:translateY(-50%);content:"\203A"}.quick-panel a:hover{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 4px 12px rgba(var(--brand-rgb),.1)}.portal-layout{display:grid;grid-template-columns:minmax(0,1fr) var(--public-sidebar-width);align-items:start;grid-gap:var(--public-layout-gap);gap:var(--public-layout-gap)}.portal-lead-section{padding-top:48px;padding-bottom:58px;background:linear-gradient(180deg,#f5fbfe,#fff 230px),#fff}.portal-lead-section .container{width:min(var(--public-layout-max-width),calc(100% - 48px))}.article-aside,.featured-news,.portal-sidebar{display:grid;grid-gap:16px;gap:16px}.featured-news{gap:22px}.portal-sidebar{gap:20px}.article-aside,.portal-sidebar{align-self:start}.featured-story{position:relative;display:grid;grid-template-columns:minmax(320px,1fr) minmax(0,.94fr);overflow:hidden;border:2px solid #c8dfea;border-radius:8px;background:#fff;box-shadow:0 10px 24px rgba(var(--brand-strong-rgb),.055);transition:box-shadow .16s ease,border-color .16s ease,transform .16s ease}.featured-story:before{position:absolute;inset:0 auto 0 0;z-index:2;width:4px;background:linear-gradient(180deg,var(--gold),var(--brand));content:"";pointer-events:none}.featured-story:hover{border-color:rgba(var(--brand-rgb),.42);box-shadow:0 14px 32px rgba(var(--brand-strong-rgb),.1);transform:translateY(-1px)}.featured-story img{width:100%;height:100%;min-height:320px;object-fit:cover;transition:transform .36s ease}.featured-story:hover img{transform:scale(1.025)}.featured-story>div{display:grid;align-content:center;grid-gap:12px;gap:12px;padding:30px 32px}.featured-story h2{margin:0;font-size:25px;line-height:1.34;transition:color .16s ease}.featured-story:hover h2{color:var(--brand)}.featured-story p,.featured-story small{color:var(--muted)}.featured-story p{margin:0;font-size:16px;line-height:1.62;-webkit-line-clamp:3;line-clamp:3}.featured-story p,.latest-list strong,.secondary-news-grid strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.secondary-news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.latest-list a,.secondary-news-grid a{display:grid;grid-gap:15px;gap:15px;padding:14px;border:2px solid #cbdfea;border-radius:8px;background:#fff}.secondary-news-grid a{grid-template-columns:132px minmax(0,1fr);align-items:center;border-color:#c8dfea;box-shadow:0 6px 16px rgba(var(--brand-strong-rgb),.035);transition:box-shadow .16s ease,border-color .16s ease,transform .16s ease}.secondary-news-grid a:hover{border-color:rgba(var(--brand-rgb),.42);box-shadow:0 10px 22px rgba(var(--brand-strong-rgb),.075);transform:translateY(-1px)}.secondary-news-grid img{width:100%;aspect-ratio:4/3;border-radius:7px;object-fit:cover;grid-row:span 2}.latest-list strong,.secondary-news-grid strong{font-size:16px;line-height:1.42;transition:color .16s ease}.latest-list a:hover strong,.secondary-news-grid a:hover strong{color:var(--brand)}.latest-list span,.latest-list time,.secondary-news-grid span{color:var(--muted);font-size:14.5px;font-weight:600}.latest-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.latest-list a{grid-template-columns:1fr;align-content:start;min-height:112px;border-left:4px solid var(--gold);transition:box-shadow .16s ease,border-color .16s ease}.latest-list a:hover{border-color:rgba(var(--brand-rgb),.48);border-left-color:var(--brand);box-shadow:0 4px 16px rgba(var(--brand-strong-rgb),.08)}.category-sections{display:grid;grid-gap:28px;gap:28px;margin-top:26px}.category-block{display:grid;grid-gap:18px;gap:18px}.category-block h2{margin:0;font-size:20px}.category-block-head span{color:var(--muted);font-size:12px;font-weight:800}.sidebar-widget h2{margin:0;display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:3px solid var(--gold);color:var(--brand-strong);font-size:18px;line-height:1.2}.sidebar-widget h2:before{width:8px;height:8px;border-radius:999px;background:var(--brand);box-shadow:0 0 0 4px rgba(var(--brand-rgb),.1);content:""}.category-main{display:grid;grid-template-columns:170px minmax(0,1fr);grid-gap:22px;gap:22px;align-items:stretch}.category-main>div{display:flex;flex-direction:column}.category-main img{width:100%;aspect-ratio:4/3;border-radius:8px;object-fit:cover}.category-main span,.category-main strong{display:block}.category-main strong{font-size:20px;line-height:1.35;transition:color .16s ease}.category-main:hover strong{color:var(--brand)}.category-main p{margin:6px 0 0;color:var(--muted);font-size:16px;line-height:1.58;flex:1 1}.category-main span{margin-top:10px}.category-links{display:grid;grid-gap:0;gap:0}.category-link-card{display:grid;grid-template-columns:auto 1fr;grid-gap:2px 4px;gap:2px 4px;padding:10px 0;border-top:1px solid var(--line);transition:color .16s ease}.chevron{grid-column:1}.category-link-card strong{grid-column:2;grid-row:1}.category-link-card .date{grid-column:2;grid-row:2;color:var(--muted);font-size:13px;font-weight:600}.chevron{grid-row:1;align-self:center}.category-link-card strong{color:var(--muted);font-size:15px;font-weight:500;line-height:1.42;transition:color .16s ease}.category-link-card:hover strong{color:var(--brand);text-decoration:underline;text-underline-offset:3px}.chevron{display:inline-block;width:0;height:0;margin-right:6px;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:5px solid var(--brand);vertical-align:middle}.category-link-card span{color:var(--muted);font-size:13px;font-weight:600}.category-main span{margin-top:6px;color:var(--muted);font-size:14px;font-weight:600}.sidebar-widget>div{display:grid;grid-gap:8px;gap:8px}.sidebar-widget{display:grid;grid-gap:14px;gap:14px;padding:18px;border-color:#d9e8ef;box-shadow:0 8px 22px rgba(var(--brand-strong-rgb),.055)}.sidebar-photo-card{position:relative;display:grid;align-content:end;min-height:210px;overflow:hidden;padding:14px;border-radius:8px;color:#fff;box-shadow:0 12px 28px rgba(var(--brand-strong-rgb),.14);transition:box-shadow .18s ease,transform .18s ease}.sidebar-photo-card:hover{box-shadow:0 16px 34px rgba(var(--brand-strong-rgb),.2);transform:translateY(-1px)}.sidebar-photo-card img,.sidebar-photo-card:after{position:absolute;inset:0}.sidebar-photo-card img{width:100%;height:100%;object-fit:cover;transition:transform .36s ease}.sidebar-photo-card:hover img{transform:scale(1.04)}.sidebar-photo-card:after{content:"";background:linear-gradient(180deg,rgba(var(--brand-strong-rgb),.05),rgba(var(--brand-strong-rgb),.84))}.sidebar-photo-card span,.sidebar-photo-card strong{position:relative;z-index:1}.sidebar-photo-card span{color:var(--accent-light);font-size:13px;font-weight:750}.sidebar-photo-card strong{font-family:var(--font-heading);font-size:20px;line-height:1.22}.document-ticker{overflow:hidden;height:190px;mask-image:linear-gradient(180deg,transparent 0,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 8%,#000 92%,transparent)}.document-ticker-track{animation-name:ticker-up;animation-timing-function:linear;animation-iteration-count:infinite}.document-ticker-track:hover{animation-play-state:paused}.document-ticker-spacer{height:120px}@keyframes ticker-up{0%{transform:translateY(0)}to{transform:translateY(-50%)}}.sidebar-link{display:grid;grid-gap:4px;gap:4px;padding:8px 0;border-bottom:1px solid var(--line);color:var(--brand)}.sidebar-link:hover{text-decoration:underline}.sidebar-link:last-child{border-bottom:0}.sidebar-link strong{display:-webkit-box;overflow:hidden;color:var(--text);font-size:19px;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.sidebar-link.compact{display:grid;grid-gap:3px;gap:3px;padding:10px 9px;border-bottom:0;border-radius:7px;color:var(--brand);font-weight:700;transition:background .16s ease,color .16s ease,transform .16s ease}.sidebar-link.compact:hover{background:#f4fbfe;text-decoration:none;transform:translateX(1px)}.sidebar-link.compact strong{color:var(--brand);font-size:15px;line-height:1.42}.sidebar-link.compact span{color:var(--muted);font-size:14px;font-weight:600}.article-grid,.page-grid{grid-template-columns:minmax(0,1fr) 320px;align-items:start}.article-main,.content-flow{min-width:0}.article-main h1,.content-flow h1{margin:0 0 12px}.prose{color:#233342;font-size:17px;line-height:1.8;letter-spacing:0;text-align:justify;text-align-last:left}.prose,.prose li,.prose ol,.prose ul{font-family:var(--font-serif)}.prose ol,.prose ul{padding-left:1.45em}.prose li::marker{font-family:var(--font-serif)}.article-content,.long-form,.news-detail{font-family:var(--font-serif);font-size:17px;line-height:1.8;letter-spacing:0}.article-content h1,.article-content h2,.article-content h3,.long-form h1,.long-form h2,.long-form h3,.news-detail h1,.news-detail h2,.news-detail h3,.prose h1,.prose h2,.prose h3{font-family:var(--font-heading);line-height:1.2;letter-spacing:0}.mission-quote,.quote,blockquote{font-family:var(--font-serif);font-weight:400;line-height:1.75}.prose img{max-width:100%;height:auto;border-radius:8px}.prose .image-block{display:grid;justify-items:center;margin:26px auto;text-align:center}.prose .image-block img{display:block;width:auto;max-width:100%;object-fit:contain}.embedded-file-main p,.prose figcaption{color:var(--muted);font-family:var(--font-body);font-size:13px;line-height:1.55}.prose figcaption{margin-top:8px;text-align:center}.prose figcaption:empty{display:none}.prose figcaption:has(>br:only-child){display:none}.embedded-file{overflow:hidden;margin:28px 0;border:1px solid #d8e7ee;border-radius:8px;background:#fff;font-family:var(--font-body);box-shadow:0 12px 26px rgba(var(--brand-strong-rgb),.06)}.embedded-file-card{display:grid;grid-template-columns:54px minmax(0,1fr);grid-gap:14px;gap:14px;padding:16px;background:#f8fcfe}.embedded-file-icon{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:8px;background:var(--brand-soft);color:var(--brand-strong);font-size:13px;font-weight:900}.embedded-file-main{min-width:0}.embedded-file-main span,.embedded-file-main strong{display:block}.embedded-file-main strong{overflow-wrap:anywhere;color:var(--brand-strong);font-size:16px;line-height:1.35}.embedded-file-main span{margin-top:3px;color:var(--muted);font-size:13px}.embedded-file-main p{margin:8px 0 0}.attachment-actions,.embedded-file-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.embedded-file-actions a{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border:1px solid #cfe0e8;border-radius:8px;background:#fff;color:var(--brand);font-size:13px;font-weight:800;text-decoration:none;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.embedded-file-actions a:hover{border-color:#9fcbe0;background:#f3fbff;box-shadow:0 7px 14px rgba(var(--brand-rgb),.08);transform:translateY(-1px)}.embedded-file-preview{display:block;width:100%;height:620px;border:0;border-top:1px solid #d8e7ee;background:#f4f8fa}.embedded-file-fallback{padding:14px 16px;border-top:1px solid #d8e7ee;color:var(--muted);font-family:var(--font-body);font-size:14px;line-height:1.6}.embedded-file-fallback p{margin:0}.side-panel img{width:100%;aspect-ratio:4/3;border-radius:8px;object-fit:cover}.article-page{padding:0 0 64px;background:linear-gradient(180deg,#f5fbfd,#fff 390px)}.article-hero{padding:26px 0 34px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#eff8fc,#fff)}.article-shell{width:min(1240px,calc(100% - 48px))}.article-hero-grid{grid-template-columns:minmax(0,1fr) minmax(320px,460px);align-items:center;gap:42px}.article-back-row{display:flex;justify-content:flex-start;margin-bottom:16px}.article-back-link{gap:8px;min-height:44px;padding:0 15px 0 10px;border:1px solid #dce9f0;background:rgba(255,255,255,.86);color:var(--brand-strong);cursor:pointer;font-size:14px;font-weight:850;font-family:inherit;line-height:1;text-decoration:none;box-shadow:0 8px 18px rgba(var(--brand-strong-rgb),.055);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.article-back-link,.article-back-link .back-icon{display:inline-flex;align-items:center;justify-content:center;border-radius:999px}.article-back-link .back-icon{width:24px;height:24px;background:rgba(var(--brand-rgb),.1);color:var(--brand);transition:background .16s ease,color .16s ease,transform .16s ease}.article-back-link .back-icon svg{display:block;flex:0 0 auto;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.7}.article-back-link:hover{border-color:rgba(var(--brand-rgb),.34);background:#fff;color:var(--brand-strong);box-shadow:0 10px 22px rgba(var(--brand-strong-rgb),.085);transform:translateY(-1px)}.article-back-link:hover .back-icon{background:var(--brand);color:#fff;transform:translateX(-1px)}.article-hero-copy{display:grid;align-content:center;grid-gap:14px;gap:14px;min-width:0}.article-hero-copy h1{max-width:960px;color:var(--brand-strong);font-size:clamp(26px,2.7vw,36px);line-height:1.16}.article-meta-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:3px;color:var(--muted);font-size:14px;font-weight:800}.article-meta-row span,.article-meta-row time{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 14px;border:1px solid #dce9f0;border-radius:999px;background:rgba(255,255,255,.8);line-height:18px;white-space:nowrap}.article-meta-row .article-status-pill{border-color:rgba(var(--brand-rgb),.34);background:var(--brand);color:#fff;box-shadow:0 8px 18px rgba(var(--brand-rgb),.14)}.article-tag-row{gap:8px;margin-top:-6px}.article-tag-row a{min-height:36px;padding:0 12px;border-radius:999px;font-size:13px;font-weight:800;line-height:17px}.article-tag-row a:nth-child(6n+1){border-color:#cfe7f4;background:#eef8fd;color:#176d99}.article-tag-row a:nth-child(6n+2){border-color:#cfe9dc;background:#eaf7ef;color:#2f6f4e}.article-tag-row a:nth-child(6n+3){border-color:#f0ddb1;background:#fff6df;color:#886212}.article-tag-row a:nth-child(6n+4){border-color:#ddd4f1;background:#f2effb;color:#5d5295}.article-tag-row a:nth-child(6n+5){border-color:#edcfcf;background:#fff1f1;color:#864a4f}.article-tag-row a:nth-child(6n+6){border-color:#d3dde9;background:#f1f5f9;color:#40566e}.article-cover-frame{overflow:hidden;margin:0;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 14px 34px rgba(var(--brand-strong-rgb),.1)}.article-cover{display:block;width:100%;height:auto;aspect-ratio:4/3;max-height:none;margin:0;border-radius:0;object-fit:cover}.article-layout{grid-template-columns:minmax(0,840px) minmax(320px,348px);align-items:start;column-gap:52px;row-gap:38px;padding-top:34px}.article-main{max-width:840px}.article-main .prose{font-weight:400;line-height:1.84}.article-main .prose>:first-child{margin-top:0}.article-main .prose>p{margin:0 0 18px}.article-empty{padding:20px;border:1px dashed #cfe0e8;border-radius:8px;background:#f8fcfe;color:var(--text-muted)}.article-info-panel{display:grid;grid-gap:14px;gap:14px;padding:18px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 28px rgba(var(--brand-strong-rgb),.06)}.article-info-panel h2,.article-related-panel h2{margin:0;font-size:18px}.article-info-list{display:grid;grid-gap:10px;gap:10px;margin:0}.article-info-list div{display:grid;grid-gap:3px;gap:3px;padding-bottom:10px;border-bottom:1px solid var(--line)}.article-info-list div:last-child{padding-bottom:0;border-bottom:0}.article-info-list dt{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.article-info-list dd{margin:0;color:var(--brand-strong);font-weight:800;line-height:1.35}.article-related-panel{display:grid;grid-gap:12px;gap:12px}.article-side-head{display:grid;grid-gap:4px;gap:4px}.side-panel-empty{margin:0;color:var(--muted);line-height:1.6}.attachment-section{margin-top:32px}.attachment-section h2{margin:0 0 14px}.attachment-card{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.attachment-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-bottom:1px solid var(--line)}.attachment-actions{justify-content:flex-end;margin-top:0}.attachment-head span,.attachment-head strong{display:block}.attachment-head span{color:var(--muted);font-size:13px}.attachment-preview{width:100%;height:560px;border:0;background:#f4f8fa}.image-preview{height:auto;max-height:720px;object-fit:contain}.attachment-fallback{padding:18px;color:var(--muted)}.form-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.form-panel label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-weight:800}.admin-page input,.admin-page select,.admin-page textarea,.form-panel input,.form-panel select,.form-panel textarea,.search-panel input{width:100%;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);outline:none;padding:11px 12px}.admin-page select,.form-panel select{min-height:44px;padding:10px 44px 10px 12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg fill='none' height='18' stroke='%230b6f9f' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.2' viewBox='0 0 24 24' width='18' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E");background-position:right 13px center;background-repeat:no-repeat;background-size:18px;line-height:1.25;text-overflow:ellipsis}.admin-page select:hover,.form-panel select:hover{border-color:#b9d8e7;background-color:#fbfdff}.admin-page select option,.form-panel select option{background:#fff;color:var(--text)}.admin-page input:focus,.admin-page select:focus,.admin-page textarea:focus,.form-panel input:focus,.form-panel select:focus,.form-panel textarea:focus,.search-panel input:focus{border-color:var(--brand)}.form-status,.span-2{grid-column:1/-1}.form-status{margin:0;color:var(--brand);font-weight:800}.search-panel form{display:flex;gap:12px}.public-search-panel{display:grid;grid-gap:14px;gap:14px;margin-bottom:34px;padding:20px;border-color:#d2e7ef;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,252,254,.96)),var(--surface);box-shadow:0 14px 34px rgba(var(--brand-strong-rgb),.08)}.public-search-panel form{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px}.public-search-panel input{min-height:48px;border-color:#c9e1eb;background:#fbfdff;font-size:16px}.public-search-panel p{margin:0;color:var(--muted);font-weight:700}.public-search-panel .button{min-width:118px}.result-section-head{margin-top:30px}.search-result-grid{margin-bottom:4px}.album-stack,.directory-stack{display:grid;grid-gap:22px;gap:22px}.album{display:grid;grid-gap:16px;gap:16px}.album-head,.directory-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.album-head h2,.directory-section-head h2{margin:0;color:var(--brand-strong)}.album-head p{margin:6px 0 0;color:var(--muted)}.album-head>span,.directory-section-head span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid #d9e9f0;border-radius:999px;background:#f8fcfe;color:var(--brand);font-size:12px;font-weight:850;white-space:nowrap}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.gallery-grid figure{overflow:hidden;margin:0;border:1px solid #d8e8f0;border-radius:8px;background:#fff}.gallery-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .22s ease}.gallery-grid figure:hover img{transform:scale(1.035)}.gallery-grid figcaption{margin:0;padding:10px 12px;color:var(--muted);font-size:14px}.directory-section h2{margin:0 0 14px}.directory-section{display:grid;grid-gap:14px;gap:14px}.directory-section h2{margin:0}.directory-grid,.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.teacher-card{display:grid;grid-gap:9px;gap:9px;min-height:154px;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.teacher-card:hover{border-color:rgba(var(--brand-rgb),.3);box-shadow:0 16px 34px rgba(var(--brand-strong-rgb),.1);transform:translateY(-2px)}.teacher-card h3,.teacher-card p{margin:0}.teacher-contact-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.teacher-contact-row a,.teacher-contact-row small{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border:1px solid #d9e9f0;border-radius:999px;background:#f8fcfe;color:var(--brand);font-size:12px;font-weight:850}.teacher-card small{color:var(--brand);font-weight:800}.static-page-grid{align-items:start}.static-content-card{padding:24px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(var(--brand-strong-rgb),.06)}.static-content-card .prose>:first-child{margin-top:0}.prose .school-page-lead{margin:0 0 24px;padding:18px 20px;border:1px solid #d6e9f1;border-left:4px solid var(--brand);border-radius:8px;background:#f8fcfe;color:var(--brand-strong);font-family:var(--font-body);font-size:16px;font-weight:650;line-height:1.7;text-align:left}.prose .school-page-figure{margin:26px 0;overflow:hidden;border:1px solid #d6e9f1;border-radius:8px;background:#fff;box-shadow:0 14px 32px rgba(var(--brand-strong-rgb),.08)}.prose .school-page-figure img{display:block;width:100%;max-height:430px;object-fit:cover;border-radius:0}.prose .school-page-figure figcaption{margin:0;padding:9px 14px 11px;background:#f8fcfe;text-align:left}.prose .school-history-timeline{display:grid;grid-gap:12px;gap:12px;margin:24px 0}.prose .school-history-timeline div{position:relative;display:grid;grid-template-columns:minmax(96px,.22fr) minmax(0,1fr);grid-gap:14px;gap:14px;padding:14px 16px;border:1px solid #d6e9f1;border-radius:8px;background:#f8fcfe;font-family:var(--font-body);line-height:1.55}.prose .school-history-timeline strong{color:var(--brand);font-family:var(--font-heading);font-size:15px;font-weight:850}.prose .school-history-timeline span{color:#2d4051}.prose .school-page-note{margin:24px 0;padding:18px 20px;border-radius:8px;background:var(--brand-strong);color:#eef8fc;font-family:var(--font-body);font-size:16px;font-weight:650;line-height:1.7;text-align:left}.static-form-block{display:grid;grid-gap:14px;gap:14px;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.static-form-block h2{margin:0;color:var(--brand-strong)}.static-side-panel{display:grid;align-self:start;grid-gap:12px;gap:12px}.static-side-panel h2,.static-side-panel p{margin:0}.static-side-links{display:grid;grid-gap:8px;gap:8px;margin-top:4px}.static-side-links a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid #cfe0e8;border-radius:8px;background:#f8fcfe;color:var(--brand);font-weight:850}.static-page--contact .static-content-card{padding:28px;border-color:#d2e7ef;box-shadow:0 14px 34px rgba(var(--brand-strong-rgb),.08)}.static-page--contact .static-form-block{gap:16px;margin-top:0;padding-top:0;border-top:0}.static-page--contact .static-form-block h2{padding-bottom:12px;border-bottom:1px solid #dceaf0;font-size:24px}.static-page--contact .form-panel{gap:16px}.static-page--contact .form-panel input,.static-page--contact .form-panel select,.static-page--contact .form-panel textarea{border-color:#c9e1eb;background-color:#fbfdff}.static-page--contact .form-panel textarea{min-height:150px;resize:vertical}.static-page--contact .static-side-panel{gap:14px;border-color:#d2e7ef;background:linear-gradient(180deg,#fff,#f8fcfe);box-shadow:0 14px 34px rgba(var(--brand-strong-rgb),.08)}.static-page--contact .static-side-panel img{border:1px solid #d9e9f0}.static-page--contact .static-side-links{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-page{min-height:760px;padding:28px 0 54px;background:#eef6fa}.admin-auth-shell{display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,.55fr);align-items:stretch;grid-gap:18px;gap:18px}.admin-auth-copy,.admin-auth-form,.admin-main,.admin-metric,.admin-panel,.admin-sidebar,.admin-user-card{border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 14px 32px rgba(var(--brand-strong-rgb),.07)}.admin-auth-copy{display:grid;align-content:end;min-height:360px;padding:34px;background:linear-gradient(120deg,rgba(var(--brand-rgb),.92),rgba(var(--green-rgb),.78)),url(/image/gioi-thieu-truong-thpt-chuyen-le-quy-don-da-nang.jpg) 50%/cover;color:#fff}.admin-auth-copy h1{margin:0;font-size:clamp(32px,4vw,48px);line-height:1.08}.admin-auth-copy p{max-width:560px;margin:12px 0 0;color:#edf8fc}.admin-auth-copy .eyebrow{color:var(--accent-light)}.admin-session-card{align-content:center}.admin-session-card h2,.admin-session-card p{margin:0}.admin-session-card h2{color:var(--brand-strong);font-size:30px;line-height:1.12}.admin-session-card p{color:var(--muted)}.admin-session-actions{display:flex;flex-wrap:wrap;gap:10px}.admin-form-stack,.admin-page .form-panel,.admin-settings-panel{display:grid;grid-gap:14px;gap:14px}.admin-page .form-panel{grid-template-columns:1fr;padding:22px}.admin-shell{display:grid;grid-template-columns:270px minmax(0,1fr);align-items:start;grid-gap:22px;gap:22px;width:min(1720px,calc(100% - 20px))}.admin-sidebar{position:-webkit-sticky;position:sticky;top:var(--admin-sidebar-top);align-self:start;z-index:1;display:grid;grid-gap:16px;gap:16px;max-height:calc(100vh - var(--admin-sidebar-top) - var(--admin-sidebar-gap));border:1px solid #9fc7da;background:linear-gradient(180deg,#fff,#fbfeff);box-shadow:inset 0 0 0 1px rgba(255,255,255,.88),0 0 0 2px rgba(var(--brand-rgb),.08),0 0 0 5px rgba(var(--brand-rgb),.026),0 18px 40px rgba(var(--brand-strong-rgb),.1);overflow-x:hidden;overflow-y:auto;padding:16px;scrollbar-color:rgba(var(--brand-rgb),.26) transparent;scrollbar-gutter:stable;scrollbar-width:thin}.admin-sidebar::-webkit-scrollbar{width:10px}.admin-sidebar::-webkit-scrollbar-track{background:transparent}.admin-sidebar::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:rgba(var(--brand-rgb),.34);background-clip:content-box}.admin-sidebar::-webkit-scrollbar-thumb:hover{background:rgba(var(--brand-rgb),.46);background-clip:content-box}.admin-brand-panel h1,.admin-panel-head h3,.admin-topbar h2{margin:0}.admin-brand-panel h1{color:var(--brand-strong);font-size:25px;line-height:1.12}.admin-brand-panel p{margin:8px 0 0;color:var(--muted);font-weight:750}.admin-section-nav{display:grid;grid-gap:8px;gap:8px}.admin-section-group{display:grid;grid-gap:6px;gap:6px}.admin-section-group+.admin-section-group{margin-top:8px;padding-top:12px;border-top:1px solid var(--line)}.admin-section-nav .admin-section-group-title{padding:0 4px;color:var(--muted);font-size:11px;font-weight:900;letter-spacing:0;line-height:1.2;text-transform:uppercase}.admin-section-nav a,.admin-section-nav button{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;width:100%;min-height:50px;padding:0 12px;border:1px solid transparent;border-radius:8px;background:var(--surface-tint);color:var(--brand-strong);cursor:pointer;text-align:left;text-decoration:none;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.admin-section-nav a:hover,.admin-section-nav button:hover{box-shadow:0 8px 16px rgba(var(--brand-rgb),.08);transform:translateY(-1px)}.admin-section-nav a.active,.admin-section-nav a:hover,.admin-section-nav button.active,.admin-section-nav button:hover{border-color:rgba(var(--brand-rgb),.22);background:var(--brand-soft);color:var(--brand)}.admin-section-nav a:active,.admin-section-nav button:active{box-shadow:none;transform:translateY(0)}.admin-section-nav span{overflow:hidden;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.admin-section-nav small{color:var(--muted);font-size:12px;font-weight:800}.admin-user-card{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;grid-gap:10px;gap:10px;padding:12px;border:1px solid #d8e9f1;border-radius:8px;background:linear-gradient(135deg,rgba(var(--brand-rgb),.08),rgba(20,148,133,.08)),#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.78)}.admin-user-card div{min-width:0;justify-self:stretch;padding-right:2px;text-align:center}.admin-empty,.admin-record span,.admin-user-card .admin-user-kicker,.admin-user-card small{color:var(--muted)}.admin-user-avatar{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid rgba(var(--brand-rgb),.22);border-radius:8px;background:linear-gradient(135deg,var(--brand),var(--brand-strong));color:#fff;font-size:14px;font-weight:950}.admin-user-kicker{display:block;margin-bottom:2px;font-size:10px;font-weight:900;letter-spacing:0;text-transform:uppercase}.admin-empty-state{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;grid-gap:10px;gap:10px;min-height:58px;padding:12px;border:1px dashed #bed8e5;border-radius:8px;background:#f8fcfe;color:var(--muted)}.admin-empty-state span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #d9e9f0;border-radius:8px;background:#fff;color:var(--brand);font-size:14px;font-weight:950;line-height:1}.admin-empty-state p{margin:0;font-size:13px;font-weight:800;line-height:1.45}.document-folder-grid .admin-empty-state,.gallery-admin-grid .admin-empty-state{grid-column:1/-1}.admin-user-card strong{color:var(--brand-strong);font-size:13px;line-height:1.25}.admin-user-card small,.admin-user-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-card small{margin-top:2px;font-size:11px;font-weight:750}.admin-logout-button{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:42px;border:1px solid #e5c8c4;border-radius:8px;background:#fff6f5;color:var(--danger);cursor:pointer;font-weight:900;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.admin-logout-button:hover{border-color:var(--danger);background:var(--danger);color:#fff;box-shadow:0 9px 18px rgba(178,64,56,.14);transform:translateY(-1px)}.admin-logout-button:active{box-shadow:none;transform:translateY(0)}.admin-main{position:relative;display:grid;grid-gap:18px;gap:18px;min-width:0;padding:22px;animation:admin-page-enter .22s ease both}.admin-main>.account-manager-workspace,.admin-main>.admin-overview,.admin-main>.appearance-panel,.admin-main>.document-manager-workspace,.admin-main>.gallery-manager-workspace,.admin-main>.menu-editor,.admin-main>.post-manager-workspace,.admin-main>.role-manager-workspace{animation:admin-content-enter .26s ease both}.admin-filter-bar,.admin-panel-head,.admin-record,.admin-record-actions,.admin-topbar,.admin-topbar-actions{display:flex;align-items:center}.admin-topbar{justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.admin-topbar h2{color:var(--brand-strong);font-size:28px;line-height:1.1}.admin-record-actions,.admin-topbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:16px;min-width:0}.admin-new-post-button{border-color:var(--brand);background:var(--brand);color:#fff;box-shadow:0 10px 22px rgba(var(--brand-rgb),.18)}.admin-new-post-button:hover{border-color:var(--brand-strong);background:var(--brand-strong);box-shadow:0 12px 22px rgba(var(--brand-rgb),.18)}.danger-button{border-color:#efd2cf!important;background:#fff5f4!important;color:var(--danger)!important}.danger-button:focus-visible,.danger-button:hover{border-color:var(--danger)!important;background:var(--danger)!important;color:#fff!important}.admin-topbar-actions .admin-new-post-button{text-decoration:none}.admin-sync-button{width:44px;min-width:44px;padding:0}.admin-icon{width:18px;height:18px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.admin-filter-menu{position:relative;z-index:12}.admin-filter-button{gap:8px}.admin-filter-button.active{border-color:var(--brand);background:#eef8fd;color:var(--brand)}.department-create-button.active{border-color:var(--brand-strong);background:var(--brand-strong)}.department-create-panel{width:min(380px,calc(100vw - 32px))}.admin-filter-button small{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;border-radius:999px;background:var(--brand);color:#fff;font-size:12px;line-height:1}.account-search-menu{flex:0 0 auto;width:auto}.account-search-button{width:44px;min-width:44px;padding:0;gap:0}.account-search-button.active{width:auto;min-width:58px;padding:0 10px;gap:6px}.account-search-button .admin-icon{width:19px;height:19px}.admin-filter-backdrop{position:fixed;inset:0;z-index:24;border:0;background:rgba(var(--brand-strong-rgb),.12);cursor:default}.admin-filter-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:25;display:grid;grid-gap:16px;gap:16px;width:min(480px,calc(100vw - 32px));padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:visible;box-shadow:0 24px 56px rgba(var(--brand-strong-rgb),.18);transform-origin:top right;animation:admin-popover-enter .16s ease both}.admin-filter-panel-actions,.admin-filter-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-filter-panel-head strong{color:var(--brand-strong);font-family:var(--font-heading);font-size:22px;line-height:1.1}.admin-post-filters{display:grid;grid-gap:12px;gap:12px}.admin-post-filters label{display:grid;grid-gap:6px;gap:6px;color:var(--text-muted);font-size:13px;font-weight:850}.admin-post-filters input,.admin-post-filters select{width:100%;min-width:0;min-height:44px;height:auto;font-size:14px}.admin-post-filters select{padding-right:44px}.admin-filter-panel-actions{justify-content:flex-end}.admin-notice{margin:0;padding:11px 12px;border:1px solid #c7e2ee;border-radius:8px;background:#f2fbff;color:var(--brand);font-weight:800}.admin-notice.success{border-color:#c8e4d9;background:#effaf5;color:var(--green)}.admin-notice.danger{border-color:#efd2cf;background:#fff5f4;color:var(--danger)}.admin-loading-bar{overflow:hidden;height:4px;border-radius:999px;background:var(--brand-soft-strong)}.admin-loading-bar:after{display:block;width:38%;height:100%;border-radius:inherit;background:var(--brand);animation:admin-loading 1.1s ease-in-out infinite;content:""}@keyframes admin-loading{0%{transform:translateX(-110%)}to{transform:translateX(280%)}}@keyframes admin-page-enter{0%{opacity:.86}to{opacity:1}}@keyframes admin-content-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes admin-popover-enter{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes admin-item-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.admin-content-layout,.admin-dashboard-grid,.admin-overview,.admin-record-list,.admin-settings-panel,.menu-editor{display:grid;grid-gap:14px;gap:14px}.admin-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:10px;gap:10px}.admin-metric{padding:14px}.admin-metric span,.mini-badge,.status-pill{font-size:12px;font-weight:850}.admin-metric span{display:block;color:var(--muted)}.admin-metric strong{display:block;margin-top:10px;color:var(--brand);font-size:32px;line-height:1}.admin-metric.green strong{color:var(--green)}.admin-metric.amber strong{color:var(--accent)}.admin-metric.red strong{color:var(--danger)}.admin-overview-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.admin-overview-actions button{display:grid;grid-gap:5px;gap:5px;min-width:0;min-height:92px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff;color:inherit;cursor:pointer;text-align:left;box-shadow:0 10px 28px rgba(var(--brand-strong-rgb),.05);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.admin-overview-actions button:focus-visible,.admin-overview-actions button:hover{border-color:rgba(var(--brand-rgb),.3);background:#f3fbff;box-shadow:0 14px 30px rgba(var(--brand-rgb),.1);transform:translateY(-1px)}.admin-overview-actions button:focus-visible{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}.admin-overview-actions small,.admin-overview-actions span,.admin-overview-actions strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-overview-actions span{color:var(--muted);font-size:12px;font-weight:850}.admin-overview-actions strong{color:var(--brand-strong);font-family:var(--font-heading);font-size:18px;line-height:1.15}.admin-overview-actions small{color:var(--brand);font-size:12px;font-weight:800}.admin-mini-stats{display:flex;flex-wrap:wrap;gap:8px}.admin-mini-stats span{display:inline-flex;align-items:center;min-height:34px;max-width:100%;padding:0 11px;border:1px solid #d9e9f0;border-radius:999px;background:#f8fcfe;color:var(--muted);font-size:12px;font-weight:850;line-height:1.2;white-space:nowrap}.admin-mini-stats strong{margin-right:5px;color:var(--brand-strong);font-size:13px;font-weight:950}.admin-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard-grid .wide{grid-column:1/-1}.admin-panel{min-width:0;padding:16px}.admin-panel-head{justify-content:space-between;gap:14px;min-height:34px}.admin-panel-head h3{color:var(--brand-strong);font-size:18px;line-height:1.2}.text-button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:7px;background:transparent;color:var(--brand);cursor:pointer;min-height:36px;padding:0 6px;font-weight:850;transition:background .16s ease,color .16s ease,transform .16s ease,-webkit-text-decoration-color .16s ease;transition:background .16s ease,color .16s ease,text-decoration-color .16s ease,transform .16s ease;transition:background .16s ease,color .16s ease,text-decoration-color .16s ease,transform .16s ease,-webkit-text-decoration-color .16s ease}.text-button:hover{color:var(--brand-strong);text-decoration:underline;-webkit-text-decoration-color:rgba(var(--brand-rgb),.36);text-decoration-color:rgba(var(--brand-rgb),.36);text-underline-offset:4px;transform:translateY(-1px)}.text-button:active{transform:translateY(0)}.text-button:focus-visible{outline:3px solid rgba(var(--brand-rgb),.16);outline-offset:2px}.text-button.danger{color:var(--danger);font-size:14px}.text-button.danger:hover{color:#8f2f29;-webkit-text-decoration-color:rgba(178,64,56,.36);text-decoration-color:rgba(178,64,56,.36)}.admin-record{justify-content:space-between;gap:12px;width:100%;min-width:0;max-width:100%;min-height:58px;padding:11px 0;border-bottom:1px solid var(--line)}.account-list-record,.admin-record-list>.admin-record,.document-folder-card,.gallery-admin-card,.role-option-list button{animation:admin-item-enter .22s ease both}.admin-record:not(.post-list-record):last-child{border-bottom:0}.admin-clickable-record{cursor:pointer}.admin-clickable-record:focus-visible,.admin-clickable-record:hover{background:#f8fcfe}.admin-clickable-record:focus-visible{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}.admin-record>div:first-child{flex:1 1 auto;min-width:0;max-width:100%}.admin-record-actions{flex:0 0 auto;flex-wrap:wrap}.admin-record span,.admin-record strong{display:block}.admin-record strong{overflow:hidden;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.admin-record span{font-size:13px}.admin-record-preview{display:-webkit-box;overflow:hidden;margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.mini-badge,.status-pill{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:0 9px;border-radius:999px;white-space:nowrap}.status-pill.published{background:#eaf6f1;color:var(--green)}.status-pill.draft{background:#fff4df;color:#866017}.mini-badge{background:#f4ead7;color:#7d5a19}.admin-content-layout{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);align-items:start}.admin-single-column-workspace{grid-template-columns:1fr}.admin-single-column-workspace>.document-editor-panel,.admin-single-column-workspace>.gallery-editor-panel,.admin-single-column-workspace>.role-editor-panel{width:min(980px,100%);justify-self:center}.admin-single-column-workspace>.document-composer-shell,.admin-single-column-workspace>.document-editor-panel-clean{width:100%;justify-self:stretch}.admin-single-column-workspace .role-directory-panel{position:static}.admin-single-column-workspace .gallery-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-editor-panel,.admin-settings-panel{align-content:start}.admin-form-grid,.admin-settings-layout,.admin-upload-grid{display:grid;grid-gap:14px;gap:14px}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-contact-grid{display:grid;grid-template-columns:1fr minmax(260px,.6fr);grid-gap:24px;gap:24px}.admin-settings-layout{grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);align-items:start}.admin-field,.admin-page label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-weight:850}.admin-field-label{display:block}.admin-upload-control{position:relative;display:inline-flex;align-items:center;justify-self:start;min-height:50px;padding:8px;border:1px solid #d3e4ed;border-radius:8px;background:#fff}.admin-upload-native{position:absolute;width:1px;height:1px;min-height:1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);opacity:0;white-space:nowrap}.admin-upload-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 13px;border:1px solid rgba(var(--brand-rgb),.28);border-radius:7px;background:#eef8fd;color:var(--brand);cursor:pointer;font-weight:900;line-height:1;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.admin-upload-button:focus-visible,.admin-upload-button:hover{border-color:var(--brand);background:var(--brand);color:#fff;box-shadow:0 8px 16px rgba(var(--brand-rgb),.12)}.admin-upload-native:focus-visible+.admin-upload-button{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}.admin-topbar-actions .admin-upload-control{min-height:44px;padding:4px}.admin-page input[type=file]{min-height:50px;padding:8px;color:var(--text-muted);font-weight:800}.admin-page input[type=file]::-webkit-file-upload-button{min-height:34px;margin-right:12px;padding:0 13px;border:1px solid rgba(var(--brand-rgb),.28);border-radius:7px;background:#eef8fd;color:var(--brand);cursor:pointer;font:inherit;font-weight:900;-webkit-transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.admin-page input[type=file]::file-selector-button{min-height:34px;margin-right:12px;padding:0 13px;border:1px solid rgba(var(--brand-rgb),.28);border-radius:7px;background:#eef8fd;color:var(--brand);cursor:pointer;font:inherit;font-weight:900;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.admin-page input[type=file]::-webkit-file-upload-button:hover{border-color:var(--brand);background:var(--brand);color:#fff;box-shadow:0 8px 16px rgba(var(--brand-rgb),.12)}.admin-page input[type=file]::file-selector-button:hover{border-color:var(--brand);background:var(--brand);color:#fff;box-shadow:0 8px 16px rgba(var(--brand-rgb),.12)}.checkbox-label{display:flex!important;align-items:center;grid-template-columns:none!important;gap:8px}.checkbox-label input{width:auto}.admin-check{align-self:end;min-height:44px}.admin-banner-preview,.admin-cover-preview,.admin-preview-panel{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface-tint)}.admin-cover-preview img{width:100%;aspect-ratio:16/9;object-fit:cover}.admin-cover-preview small{display:block;padding:8px 10px;color:var(--muted);overflow-wrap:anywhere}.admin-preview-panel{display:grid;grid-gap:12px;gap:12px;padding:12px}.appearance-panel{gap:18px}.admin-settings-section{display:grid;grid-gap:14px;gap:14px;padding-top:16px;border-top:1px solid var(--line)}.admin-form-stack .admin-settings-section:first-child{padding-top:0;border-top:0}.admin-settings-section h4{margin:0;color:var(--brand-strong);font-family:var(--font-heading);font-size:16px;line-height:1.2}.admin-banner-preview{position:relative;min-height:220px;color:#fff}.admin-banner-preview img{width:100%;height:100%;min-height:220px;object-fit:cover}.admin-banner-preview:after{position:absolute;inset:0;background:linear-gradient(180deg,rgba(var(--brand-strong-rgb),.05),rgba(var(--brand-strong-rgb),.74));content:""}.admin-banner-preview div{position:absolute;z-index:1;right:14px;bottom:14px;left:14px}.admin-banner-preview span,.admin-banner-preview strong{display:block}.admin-banner-preview strong{font-family:var(--font-heading);font-size:22px;line-height:1.16}.admin-banner-preview span{margin-top:8px;color:var(--accent-light);font-weight:850}.admin-preview-meta{display:flex;flex-wrap:wrap;gap:8px}.admin-preview-meta span,.admin-settings-health span{display:inline-flex;align-items:center;min-height:30px;max-width:100%;padding:0 10px;border:1px solid #d9e9f0;border-radius:999px;background:#f8fcfe;color:var(--brand-strong);font-size:12px;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-settings-health{display:grid;grid-gap:8px;gap:8px}.admin-settings-health span{justify-content:space-between;min-height:42px;border-radius:8px;background:#fff;white-space:normal}.admin-settings-health strong{margin-right:8px;color:var(--brand-strong)}.banner-manager-panel{gap:16px}.banner-manager-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:16px;gap:16px;padding:14px 16px;border:1px solid #d9e9f0;border-left:4px solid var(--brand);border-radius:8px;background:#f8fcfe}.admin-kicker{display:inline-flex;margin-bottom:6px;color:var(--accent);font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.banner-manager-hero h4{margin:0;color:var(--brand-strong);font-family:var(--font-heading);font-size:21px;line-height:1.15}.banner-manager-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.banner-manager-actions .admin-upload-control{min-height:44px;padding:0;border:0;background:transparent}.banner-manager-actions .admin-upload-button{min-height:42px;padding:0 15px;border-color:var(--brand);background:var(--brand);color:#fff}.banner-manager-actions .admin-upload-button:focus-visible,.banner-manager-actions .admin-upload-button:hover{border-color:var(--brand-strong);background:var(--brand-strong)}.banner-manager-layout{display:grid;grid-template-columns:minmax(300px,.48fr) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.banner-editor-panel,.banner-list-panel{display:grid;grid-gap:12px;gap:12px;min-width:0;padding:16px;border:1px solid #dbeaf0;border-radius:8px;background:#fff}.banner-admin-list{display:grid;grid-gap:10px;gap:10px}.banner-admin-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:10px;gap:10px;padding:9px;border:1px solid #e0edf3;border-radius:8px;background:#fff;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.banner-admin-card.active{border-color:rgba(var(--brand-rgb),.5);background:#eef8fd;box-shadow:0 12px 24px rgba(var(--brand-rgb),.12)}.banner-admin-card.inactive{background:#fbfbf8}.banner-admin-card-main{display:grid;grid-template-columns:86px minmax(0,1fr);align-items:center;grid-gap:10px;gap:10px;min-width:0;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.banner-admin-card-main img,.banner-thumb-empty{width:86px;aspect-ratio:16/9;border:1px solid #d5e7ef;border-radius:7px;background:#edf7fb}.banner-admin-card-main img{object-fit:cover}.banner-thumb-empty{display:inline-flex;align-items:center;justify-content:center;color:var(--muted);font-size:12px;font-weight:900}.banner-admin-card-main small,.banner-admin-card-main strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.banner-admin-card-main strong{color:var(--brand-strong);font-weight:900}.banner-admin-card-main small{margin-top:4px;color:var(--muted);font-size:12px;font-weight:750}.banner-admin-card-actions{display:flex;gap:6px}.banner-admin-card-actions button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid #d8e8ef;border-radius:7px;background:#fff;color:var(--brand);cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.banner-admin-card-actions button:focus-visible:not(:disabled),.banner-admin-card-actions button:hover:not(:disabled){border-color:var(--brand);background:var(--brand);color:#fff}.banner-admin-card-actions button:disabled{cursor:not-allowed;opacity:.42}.banner-editor-panel{align-content:start}.banner-editor-preview{min-height:280px;background:linear-gradient(135deg,#e8f4f8,#f7fbfd 54%,#fff1dc)}.banner-editor-preview img{min-height:280px}.banner-editor-fields{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;grid-gap:12px;gap:12px}.banner-editor-fields label:not(.checkbox-label){display:grid;grid-gap:8px;gap:8px}.banner-editor-fields input[inputmode=url],.banner-editor-fields input[type=url]{min-height:56px;padding:0 16px;font-size:15px;font-weight:850;line-height:1}.banner-editor-toggle{display:inline-flex!important;align-items:center;justify-content:center;justify-self:start;gap:10px;min-height:56px;padding:0 18px;border:1px solid #dcebf1;border-radius:8px;background:#f8fcfe;color:var(--brand-strong);font-size:15px;font-weight:850;line-height:1}.banner-editor-toggle input{width:18px;height:18px;margin:0;flex:0 0 auto}.appearance-panel>.actions,.banner-manager-form-actions{display:flex;justify-content:flex-end}.banner-manager-form-actions{margin-top:4px}.admin-sticky-form-actions{position:-webkit-sticky;position:sticky;bottom:12px;z-index:6;justify-content:flex-end;margin:12px 0 0;padding:10px;border:1px solid rgba(215,229,236,.9);border-radius:8px;background:rgba(255,255,255,.92);box-shadow:0 16px 34px rgba(var(--brand-strong-rgb),.1);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.admin-sticky-form-actions .button{min-width:132px}.admin-filter-bar{gap:10px}.admin-filter-bar input{min-width:0;flex:1 1}.admin-filter-bar select{flex:0 1 190px;width:auto;min-width:170px;max-width:100%}.attachment-admin-list,.attachment-drop-zone{display:grid;grid-gap:10px;gap:10px}.attachment-drop-zone{align-content:center;justify-items:center;min-height:240px;padding:24px;border:1.5px dashed #a9ccdc;border-radius:8px;background:linear-gradient(180deg,#f8fcfe,#eef8fc);color:var(--muted);text-align:center;aspect-ratio:1/1;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.attachment-drop-zone.active{border-color:var(--brand);background:#edf8fd;color:var(--brand);box-shadow:inset 0 0 0 1px rgba(var(--brand-rgb),.2),0 12px 28px rgba(var(--brand-rgb),.12)}.attachment-drop-zone strong{max-width:220px;color:var(--brand-strong);font-family:var(--font-heading);font-size:16px;font-weight:850;line-height:1.25}.attachment-drop-zone span{max-width:230px;color:var(--muted);font-size:13px;font-weight:650;line-height:1.5}.compose-cover-preview{display:grid;grid-gap:7px;gap:7px}.attachment-admin-card{display:grid;grid-template-columns:46px minmax(0,1fr);grid-gap:10px;gap:10px;max-width:100%;padding:9px;border:1px solid #d9e9f0;border-radius:8px;background:#f8fcfe;color:var(--brand-strong);font-size:13px;font-weight:850}.attachment-admin-card img,.attachment-file-icon{width:46px;height:46px;border-radius:7px}.attachment-admin-card img{object-fit:cover}.attachment-file-icon{display:inline-flex;align-items:center;justify-content:center;background:#edf7fb;color:var(--brand)}.attachment-file-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.attachment-admin-card small,.attachment-admin-card span,.attachment-admin-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-admin-card small,.attachment-admin-card span{color:var(--muted);font-size:12px}.attachment-admin-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px}.attachment-admin-actions button,.attachment-admin-list button{border:1px solid #d8e8ef;border-radius:6px;background:#fff;color:var(--brand);cursor:pointer;font-size:12px;font-weight:850;transition:background .16s ease,color .16s ease,transform .16s ease}.attachment-admin-actions button:hover,.attachment-admin-list button:hover{background:#eef8fd;color:var(--brand-strong);transform:translateY(-1px)}.attachment-admin-actions button:disabled{cursor:not-allowed;opacity:.46;transform:none}.attachment-admin-actions button.danger{border-color:#efd2cf;color:var(--danger)}.attachment-admin-actions button.danger:hover{background:#fff1ef;color:#8f2f29}.attachment-admin-actions button:active,.attachment-admin-list button:active{transform:translateY(0)}.document-manager-workspace{align-items:start;grid-template-columns:minmax(0,1.12fr) minmax(340px,.72fr)}.document-editor-panel,.document-manager-list{display:grid;grid-gap:14px;gap:14px}.document-mini-stats span:nth-child(2) strong{color:var(--green)}.document-mini-stats span:nth-child(3) strong{color:var(--accent)}.document-editor-summary,.gallery-editor-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.gallery-editor-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.document-editor-summary span,.gallery-editor-summary span{display:grid;grid-gap:4px;gap:4px;min-width:0;padding:10px 11px;border:1px solid #d9e9f0;border-radius:8px;background:#f8fcfe;color:var(--muted);font-size:12px;font-weight:800}.document-editor-summary strong,.gallery-editor-summary strong{overflow:hidden;color:var(--brand-strong);font-size:13px;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.document-folder-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.document-folder-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;grid-gap:8px;gap:8px;min-height:78px;padding:13px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--brand-strong);text-align:left;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.document-folder-card>button:first-child{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;grid-gap:12px;gap:12px;min-width:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.document-folder-card:focus-visible,.document-folder-card:hover{border-color:rgba(var(--brand-rgb),.28);background:#f4fbfe;box-shadow:0 10px 22px rgba(var(--brand-rgb),.1);transform:translateY(-1px)}.document-folder-card:focus-visible{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}.document-folder-card:focus-within{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}.document-folder-delete{align-self:center;min-height:34px;padding:0 10px;border:1px solid #efd2cf;border-radius:7px;background:#fff5f4;color:var(--danger);cursor:pointer;font-size:12px;font-weight:850}.document-category-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;grid-gap:10px;gap:10px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-tint)}.document-category-tools label{display:grid;grid-gap:6px;gap:6px;color:var(--brand-strong);font-size:13px;font-weight:850}.document-category-tools input{height:44px;width:100%}.document-category-tools .button{align-self:end;height:44px;min-height:44px;padding-inline:22px;white-space:nowrap}.document-folder-card .folder-icon{width:42px;height:42px;padding:8px;border:1px solid #d9e9f0;border-radius:8px;background:#eef8fd;color:var(--brand)}.document-folder-card small,.document-folder-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-folder-title{display:flex;align-items:flex-start;min-width:0}.document-folder-card strong{min-width:0;line-height:1.25}.department-folder-star{display:inline-flex;margin-left:4px;color:var(--accent);font-size:9px;line-height:1;vertical-align:super}.document-folder-card small{margin-top:4px;color:var(--muted);font-size:12px;font-weight:800}.document-folder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-tint);margin-bottom:12px}.document-folder-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.document-folder-head small,.document-folder-head strong{display:block}.document-folder-head strong{color:var(--brand-strong);font-size:18px;line-height:1.25}.document-folder-head small{margin-top:3px;color:var(--muted);font-size:14px;font-weight:800}.document-folder-head button{font-size:14px}.document-filter-bar{display:grid;grid-template-columns:minmax(220px,1fr) repeat(3,minmax(150px,.55fr)) minmax(150px,.55fr) auto;align-items:stretch}.document-filter-bar input{width:100%;min-width:220px}.document-filter-bar select{width:100%}.document-filter-bar .button{min-height:42px}.document-list-record{grid-template-columns:minmax(0,.82fr) minmax(300px,auto)}.document-list-meta{flex-wrap:wrap}.document-list-badges{justify-content:flex-end}.post-list-action-pill{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 12px;border:1px solid #d3dde9;border-radius:999px;background:#fff;color:var(--brand);font-size:13px;font-weight:850;line-height:18px;text-decoration:none;white-space:nowrap;transition:background .16s ease,border-color .16s ease,color .16s ease}.post-list-action-pill:focus-visible,.post-list-action-pill:hover{border-color:#9fcbe0;background:#f3fbff;color:var(--brand-strong)}.document-file-preview{display:grid;grid-gap:3px;gap:3px;padding:11px 12px;border:1px solid #d9e9f0;border-radius:8px;background:#f8fcfe;color:var(--brand);text-decoration:none}.document-file-preview span{overflow:hidden;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.document-file-preview small{overflow-wrap:anywhere;color:var(--muted)}.document-form-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:14px;border-top:1px solid var(--line)}.document-form-actions .button{min-width:132px}.document-form-submit{margin-left:auto}@media (max-width:1180px){.document-manager-workspace,.role-manager-grid{grid-template-columns:1fr}.role-directory-panel{position:static}.document-filter-bar,.document-folder-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.document-filter-bar .button{width:100%}}.admin-menu-table{overflow-x:auto}.compact-check{justify-content:center}.menu-editor>.admin-panel-head{align-items:center}.menu-tree-header{grid-template-columns:minmax(230px,1fr) minmax(220px,1fr) 76px 132px;padding:0 10px 4px 94px;font-size:12px;font-weight:850}.menu-tree-item{grid-template-columns:74px minmax(230px,1fr) minmax(220px,1fr) 76px 132px;min-height:58px;padding:10px;border:1px solid var(--line)}.menu-tree-item[data-depth="0"]{font-weight:750}.menu-tree-item[data-depth="1"]{border-left:4px solid var(--brand)}.menu-tree-item[data-depth="2"]{border-left:7px solid #9fb2be}.menu-tree-item:hover{border-color:#d7e7ef;background:#f1f9fd;box-shadow:0 10px 22px rgba(var(--brand-rgb),.08)}.menu-tree-item--dragging-source{opacity:.4}.menu-tree-item.drop-before{box-shadow:0 -2px 0 0 var(--brand)}.menu-tree-item.drop-after{box-shadow:0 2px 0 0 var(--brand)}.menu-tree-item.drop-child{outline-offset:-2px}.menu-tree-indent{gap:4px}.menu-tree-grip{font-size:20px}.menu-tree-grip,.menu-tree-level{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;-webkit-user-select:none;-moz-user-select:none;user-select:none;line-height:1}.menu-tree-level{border:1px solid #d9e9f0;border-radius:999px;background:#fff;color:var(--brand);font-size:11px;font-weight:900}.menu-tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:1px solid transparent;border-radius:6px;background:#f8fcfe;font-size:16px;color:var(--muted);flex-shrink:0}.menu-tree-item input{padding:8px 10px;font-size:13px}.menu-tree-item .checkbox-label,.menu-tree-item input{border:1px solid var(--line);border-radius:7px;min-height:38px}.menu-tree-item .checkbox-label{display:flex;align-items:center;justify-content:center;width:100%;height:38px;background:#fff}.menu-tree-item .text-button{justify-self:end}.menu-mini-stats{padding:2px 0 4px}.menu-tree-actions{gap:6px}.menu-tree-actions .text-button{min-height:30px;padding:0 6px}@media (max-width:640px){.menu-editor-actions,.menu-editor>.admin-panel-head{align-items:stretch;flex-direction:column}.menu-editor-actions,.menu-editor-actions .button{width:100%}.menu-tree-header{display:none}.menu-tree-item{grid-template-columns:1fr}.menu-tree-actions,.menu-tree-href,.menu-tree-item .checkbox-label,.menu-tree-item .text-button,.menu-tree-label{width:100%;justify-self:stretch}.menu-tree-actions{justify-content:flex-start}}.admin-empty{margin:0;padding:12px 0;font-weight:750}.compose-editor-panel,.compose-publish-panel,.post-composer-shell,.post-composer-side,.post-manager-workspace{display:grid;grid-gap:16px;gap:16px}.post-manager-workspace{grid-template-columns:1fr;align-items:start;gap:18px}.post-editor-page{min-height:760px;padding:18px 0 48px;background:linear-gradient(180deg,#f5fbfd 0,#edf7fb 260px,var(--bg) 100%)}.post-editor-container{display:grid;grid-gap:18px;gap:18px;width:min(1360px,calc(100% - 32px))}.post-editor-topbar{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 360px;align-items:center;grid-gap:18px;gap:18px}.post-editor-titlebar{display:grid;grid-column:1/-1;grid-template-columns:minmax(0,1fr) 360px;align-items:center;grid-gap:18px;gap:18px;min-width:0;padding:18px;border:1px solid #d9e7ee;border-radius:8px;background:rgba(255,255,255,.94);box-shadow:0 8px 22px rgba(var(--brand-strong-rgb),.07);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.post-editor-title-field{display:grid;grid-gap:7px;gap:7px;min-width:0}.post-editor-title-label{color:var(--brand-strong);font-size:14px;font-weight:850;line-height:1}.post-editor-topbar .post-editor-title-input{display:block;width:100%;min-width:0;min-height:42px;max-height:calc((18px * 1.3 * 2) + 22px);padding:9px 11px;border:1px solid #dce9f0;border-radius:8px;background:#fbfdff;color:var(--brand-strong);font-family:var(--font-body);font-size:18px;font-weight:750;line-height:1.3;outline:none;overflow:hidden;resize:none}.post-editor-actions{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;align-self:center;justify-content:flex-end}.post-editor-actions .button{width:auto;min-width:0;min-height:40px;padding:8px 14px;font-size:14px}.post-editor-action-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;min-height:40px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--brand-strong);cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.post-editor-action-icon:focus-visible,.post-editor-action-icon:hover:not(:disabled){border-color:#c8d2d8;background:#f5f7f8;color:var(--text)}.post-editor-action-icon.danger{border-color:#e5c2c2;color:#9b3a3a}.post-editor-action-icon.danger:focus-visible,.post-editor-action-icon.danger:hover:not(:disabled){border-color:#d59a9a;background:#fff4f4;color:#7f2525}.post-editor-action-icon:disabled{cursor:not-allowed;opacity:.58}.post-editor-action-svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.post-composer-side,.post-manager-list{scrollbar-gutter:stable}.post-manager-list{overflow:visible}.post-manager-list .admin-panel-head{padding-bottom:10px}.post-manager-list .admin-filter-bar{display:none}.post-manager-list .admin-record-list{grid-template-columns:1fr;gap:14px;margin-bottom:22px;padding-bottom:8px}.post-list-record{display:grid;grid-template-columns:minmax(0,.82fr) minmax(220px,auto);align-items:center;grid-gap:16px;gap:16px;min-height:70px;padding:16px 18px;border:1px solid var(--line);border-radius:8px;cursor:pointer;transition:background .16s ease,border-color .16s ease}.post-list-record.draft{border-color:#ead79a;background:#fff9e8}.post-list-record:focus-visible,.post-list-record:hover{border-color:#d7e7ef;background:#f1f9fd}.post-list-record.draft:focus-visible,.post-list-record.draft:hover{border-color:#dfc572;background:#fff1c9}.post-list-record:focus-visible{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}.post-list-main{display:grid;grid-gap:6px;gap:6px;min-width:0}.post-manager-list .post-list-main strong{display:-webkit-box;overflow:hidden;color:var(--brand-strong);line-height:1.32;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.post-list-main span{display:flex;align-items:center;gap:9px;min-width:0;color:var(--text-muted);line-height:1.3}.post-list-main span small{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font:inherit}.post-list-main span small:before{width:4px;height:4px;border-radius:999px;background:#b8cad4;content:""}.post-list-main .post-list-meta small:before{display:none}.post-list-badges{display:flex;align-items:center;align-content:center;flex-wrap:wrap;justify-content:flex-end;gap:6px;min-width:0}.post-list-badges .post-list-pill{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box;min-height:34px;padding:7px 14px;border:1px solid transparent;border-radius:999px;font-family:var(--font-body);font-size:13px;font-weight:800;line-height:18px;letter-spacing:0;white-space:nowrap;box-shadow:inset 0 0 0 1px rgba(255,255,255,.34)}.catalog-badge{flex:0 1 auto;max-width:220px}.post-list-badges .status-pill{flex:0 0 auto}.post-list-badges .status-pill.published{border-color:#cfe9dc;background:#eaf7ef;color:#2f6f4e}.post-list-badges .status-pill.draft{border-color:#f0ddb1;background:#fff6df;color:#886212}.post-list-badges .pinned-pill{flex:0 0 auto;border-color:#cfe7f4;background:#eef8fd;color:#176d99}.post-list-badges .post-list-pill-text{display:block;overflow:hidden;max-width:100%;height:18px;line-height:18px;text-overflow:ellipsis;white-space:nowrap}.post-list-delete-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:40px;height:40px;min-height:40px;padding:0;border:0;border-radius:7px;background:#fff;box-shadow:inset 0 0 0 1px #e5c2c2;color:#9b3a3a;cursor:pointer;transition:background .16s ease,box-shadow .16s ease,color .16s ease}.post-list-badges .status-pill+.post-list-delete-button{margin-left:4px}.post-list-delete-button .admin-icon{width:14px;height:14px}.post-list-delete-button:focus-visible,.post-list-delete-button:hover{background:#fff4f4;box-shadow:inset 0 0 0 1px #d59a9a;color:#7f2525}.catalog-theme-1{background:#eaf6fb;border-color:#c7e5f1;color:#286a86}.catalog-theme-2{background:#edf7ef;border-color:#cde8d5;color:#386a4f}.catalog-theme-3{background:#fff4db;border-color:#eedaa4;color:#7a5b13}.catalog-theme-4{background:#f0eefb;border-color:#d9d3f1;color:#584e9a}.catalog-theme-5{background:#fceef1;border-color:#f0ccd4;color:#8a3d52}.catalog-theme-6{background:#eaf4ff;border-color:#c9ddf6;color:#315f9b}.catalog-theme-7{background:#eef8f7;border-color:#cde7e4;color:#2c6b68}.catalog-theme-8{background:#fff0e6;border-color:#edcdb8;color:#8a5633}.catalog-theme-9{background:#f3f6e8;border-color:#dce7b9;color:#63732c}.catalog-theme-10{background:#eef2f7;border-color:#d3dde9;color:#41566e}.catalog-theme-11{background:#eaf8ef;border-color:#c8ead6;color:#24704b}.catalog-theme-12{background:#f5edff;border-color:#decdf2;color:#6b4695}.catalog-theme-13{background:#eef7ff;border-color:#cce4f7;color:#2d678e}.catalog-theme-14{background:#fff7e8;border-color:#ecd9ad;color:#806018}.catalog-theme-15{background:#f7eeee;border-color:#e4cece;color:#80484b}.catalog-theme-16{background:#edf8fb;border-color:#cae7ef;color:#25697b}.catalog-theme-17{background:#f2f7ec;border-color:#d6e6c7;color:#52723d}.catalog-theme-18{background:#f9f0fb;border-color:#e6cfed;color:#7a4785}.catalog-theme-19{background:#eef3ff;border-color:#cedcf5;color:#405f9a}.catalog-theme-20{background:#f5f2ea;border-color:#ded5bf;color:#67583c}.admin-pagination,.admin-pagination-controls{display:flex;align-items:center;gap:10px}.admin-pagination{flex-wrap:wrap;justify-content:space-between;margin-top:18px;padding-top:2px;color:var(--text-muted);font-size:14px;font-weight:850}.admin-pagination-controls{justify-content:flex-end}.admin-page-jump,.admin-pagination-controls button{min-height:44px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--brand-strong);font:inherit;font-weight:850}.admin-pagination-controls button{display:inline-flex;align-items:center;justify-content:center;width:44px;padding:0;cursor:pointer;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease,transform .16s ease}.admin-pagination-controls button:hover:not(:disabled){border-color:#9fcbe0;background:#f3fbff;color:var(--brand);box-shadow:0 8px 16px rgba(var(--brand-rgb),.08);transform:translateY(-1px)}.admin-pagination-controls button:active:not(:disabled){box-shadow:none;transform:translateY(0)}.admin-pagination-controls button:focus-visible{outline:3px solid rgba(var(--brand-rgb),.16);outline-offset:2px}.admin-page-jump{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:174px;min-height:42px;padding:0 10px;color:var(--text-muted)}.admin-page .admin-page-jump{display:inline-flex;grid-template-columns:none}.admin-page-jump input{width:54px;min-height:30px;padding:0 8px;border:1px solid #d6e3ea;border-radius:7px;background:#f8fcfe;color:var(--brand-strong);font:inherit;font-weight:900;text-align:center}.admin-page-jump input,.admin-page-jump span{display:inline-flex;align-items:center;height:30px;line-height:1}.admin-page-jump input:focus{border-color:var(--brand);outline:3px solid rgba(var(--brand-rgb),.14)}.admin-pagination-controls button:disabled{cursor:not-allowed;opacity:.45}.post-composer-shell{grid-template-columns:minmax(0,1fr) 360px;align-items:stretch;gap:18px;min-width:0}.post-composer-editor,.post-composer-side{min-width:0}.post-composer-side{position:static;display:flex;flex-direction:column;gap:14px}.post-composer-editor,.post-composer-side{height:100%}.post-composer-side>.compose-publish-panel:last-child{flex:1 1}.compose-editor-panel,.compose-publish-panel{border:1px solid #d9e7ee;border-radius:8px;background:#fff;box-shadow:0 12px 28px rgba(var(--brand-strong-rgb),.06)}.compose-editor-panel{align-content:start;gap:14px;padding:18px}.compose-preview-head,.compose-preview-tabs{display:flex;align-items:center}.compose-editor{width:100%;min-width:0;border:0;outline:none;color:var(--text)}.compose-editor::placeholder,.post-editor-topbar .post-editor-title-input::placeholder{color:#8ca0ad}.compose-toolbar{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;overflow-x:auto;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff;scrollbar-width:thin}.compose-toolbar-group{display:flex;align-items:center;flex:0 0 auto;flex-wrap:nowrap;gap:7px;min-width:0;padding-right:8px;border-right:1px solid #e2e8ec}.compose-toolbar-group:last-child{padding-right:0;border-right:0}.compose-toolbar button,.compose-toolbar select{min-height:35px;border:1px solid var(--line);border-radius:7px;background:#fbfcfd;color:var(--text);font-size:15px;white-space:nowrap}.compose-preview-tabs button,.compose-toolbar button,.compose-toolbar select{cursor:pointer;font-weight:850;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease}.compose-preview-tabs button{min-height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--brand-strong)}.compose-toolbar button{display:inline-flex;align-items:center;justify-content:center;width:37px;min-width:37px;padding:0;font-family:var(--font-body);line-height:1}.compose-toolbar .italic-tool{font-style:italic}.compose-toolbar .underline-tool{text-decoration:underline;text-underline-offset:3px}.compose-tool-icon{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.compose-toolbar select{flex:0 0 auto;width:auto;min-width:0;height:35px;padding:0 28px 0 10px;font:inherit;font-size:14px;font-weight:800}.compose-toolbar .block-select{width:132px}.compose-toolbar .size-select{width:102px}.compose-toolbar .align-select{width:98px}.compose-toolbar button:hover,.compose-toolbar select:focus,.compose-toolbar select:hover{border-color:#c8d2d8;background:#f2f4f6;color:var(--text)}.compose-toolbar button.active{border-color:#9aa7af;background:#e8ecef;color:#111820;box-shadow:inset 0 1px 2px rgba(17,24,32,.12)}.compose-preview-tabs button.active,.compose-preview-tabs button:hover{border-color:rgba(var(--brand-rgb),.26);background:var(--brand-soft);color:var(--brand)}.compose-preview-tabs button:hover{box-shadow:0 5px 12px rgba(var(--brand-rgb),.07)}.compose-preview-tabs button:active,.compose-toolbar button:active{background:#eceff2;box-shadow:none}.hidden-input{display:none}.compose-editor{min-height:620px;resize:vertical;overflow:auto;padding:24px;border:1px solid #dce9f0;border-radius:8px;background:#fff;font-family:var(--font-body);font-size:15px;line-height:1.78}.rich-editor{max-height:none;font-family:var(--font-serif);font-size:17px;line-height:1.76;text-align:justify;text-align-last:left;white-space:normal}.rich-editor:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.1)}.rich-editor:empty:before{color:#8ca0ad;content:attr(data-placeholder);pointer-events:none}.rich-editor blockquote,.rich-editor figure,.rich-editor h2,.rich-editor h3,.rich-editor ol,.rich-editor p,.rich-editor ul{margin-top:0}.rich-editor h2,.rich-editor h3{font-family:var(--font-heading);color:var(--brand-strong);line-height:1.2}.rich-editor h2{margin-bottom:10px;font-size:24px}.rich-editor h3{margin-bottom:8px;font-size:20px}.rich-editor li,.rich-editor p{font-family:var(--font-serif);margin-bottom:12px}.rich-editor ol,.rich-editor ul{font-family:var(--font-serif);padding-left:1.45em}.rich-editor li::marker{font-family:var(--font-serif)}.rich-editor blockquote{font-family:var(--font-serif);margin-bottom:14px;padding:12px 14px;border-left:4px solid var(--brand);background:var(--brand-soft);color:var(--brand-strong);font-weight:750}.rich-editor img{display:block;max-width:100%;height:auto;margin-inline:auto;border-radius:8px}.rich-editor .image-block{display:grid;justify-items:center;margin:24px auto;text-align:center}.rich-editor .image-block img{width:auto;max-width:100%;object-fit:contain}.rich-editor .image-block figcaption{width:min(100%,720px);min-height:30px;padding:6px 10px;border-radius:6px;background:#f7f9fa;cursor:text;text-align:center}.rich-editor figcaption{margin-top:6px;color:var(--muted);font-size:13px;text-align:center}.rich-editor figcaption:empty:before{color:#8ca0ad;content:"Nhập chú thích ảnh";pointer-events:none}.rich-editor figcaption:has(>br:only-child):before{color:#8ca0ad;content:"Nhập chú thích ảnh";pointer-events:none}.prose font[size="2"],.rich-editor font[size="2"]{font-size:.9em}.prose font[size="3"],.rich-editor font[size="3"]{font-size:1em}.prose font[size="4"],.rich-editor font[size="4"]{font-size:1.15em}.prose font[size="5"],.rich-editor font[size="5"]{font-size:1.3em}.prose [align=center],.prose [style*="text-align: center"],.rich-editor [align=center],.rich-editor [style*="text-align: center"]{text-align-last:center}.prose [align=right],.prose [style*="text-align: right"],.rich-editor [align=right],.rich-editor [style*="text-align: right"]{text-align-last:right}.prose [align=justify],.prose [align=left],.prose [style*="text-align: justify"],.prose [style*="text-align: left"],.rich-editor [align=justify],.rich-editor [align=left],.rich-editor [style*="text-align: justify"],.rich-editor [style*="text-align: left"]{text-align-last:left}.prose a,.rich-editor a{color:var(--brand);text-decoration:underline;text-underline-offset:2px}.compose-html-details{border:1px solid var(--line);border-radius:8px;background:var(--surface-tint)}.compose-html-details summary{padding:10px 12px;color:var(--brand-strong);cursor:pointer;font-weight:850}.compose-html-details textarea{width:calc(100% - 24px);min-height:180px;margin:0 12px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font-family:Consolas,Courier New,monospace;font-size:13px;line-height:1.6;outline:none;padding:12px}.compose-publish-panel{align-content:start;gap:14px;padding:16px}.compose-panel-heading{display:flex;justify-content:space-between;gap:12px}.compose-panel-heading h2,.compose-panel-heading p{margin:0}.compose-panel-heading h2{margin:0;color:var(--brand-strong);font-size:19px}.compose-panel-heading p{margin-top:4px;color:var(--muted);font-size:13px;font-weight:650;line-height:1.45}.compose-publish-panel label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-weight:850}.compose-publish-panel input,.compose-publish-panel select{width:100%;min-width:0;border:1px solid #dce9f0;border-radius:8px;background-color:#fff;color:var(--text);outline:none;padding:11px 12px}.compose-publish-panel select{padding-right:42px}.compose-publish-panel input[type=file]{background-image:none;padding:9px}.compose-publish-panel input:focus,.compose-publish-panel select:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.1)}.compose-publish-panel .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.compose-publish-panel .admin-form-grid{grid-template-columns:1fr;gap:12px}.compose-publish-panel .admin-check{align-self:stretch;justify-content:flex-start;gap:12px;min-height:auto;color:var(--text);font-size:15px;line-height:1.35}.compose-publish-panel .checkbox-label input{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:grid;flex:0 0 auto;place-items:center;width:22px;height:22px;margin:0;border:1.5px solid #b9cfdd;border-radius:6px;background:#fff;cursor:pointer;padding:0;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.compose-publish-panel .checkbox-label input:before{width:11px;height:7px;border-bottom:2.2px solid #fff;border-left:2.2px solid #fff;content:"";opacity:0;transform:rotate(-45deg) translate(1px,-1px)}.compose-publish-panel .checkbox-label input:checked{border-color:var(--brand);background:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.12)}.compose-publish-panel .checkbox-label input:checked:before{opacity:1}.compose-publish-panel .checkbox-label input:focus-visible{outline:2px solid rgba(var(--brand-rgb),.34);outline-offset:2px}.compose-field-hint{margin:-4px 0 0;color:var(--muted);font-size:12px;line-height:1.45;text-align:justify;text-align-last:left}.compose-publish-panel .button{width:100%;padding-inline:10px}.compose-status-pill{display:inline-flex;align-items:center;justify-content:center;align-self:center;min-height:34px;padding:0 13px;border-radius:999px;font-size:13px;font-weight:850;white-space:nowrap}.compose-status-panel .compose-panel-heading{align-items:center}.compose-status-panel .compose-panel-heading h2{line-height:34px}.compose-status-panel .compose-field-hint{margin-top:2px;padding-top:2px}.compose-status-pill.draft{background:#fff6dd;color:#8a6400}.compose-status-pill.published{background:#eaf7ef;color:#386a4f}.compose-cover-thumb{width:100%;aspect-ratio:16/9;border-radius:8px;object-fit:cover}.compose-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.compose-preview-actions,.compose-preview-tabs{display:flex;align-items:center;gap:8px}.compose-preview-tabs button{padding:0 12px}.compose-preview-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:24px;background:rgba(16,29,40,.46)}.compose-preview-dialog{display:grid;grid-gap:16px;gap:16px;width:min(920px,100%);max-height:min(720px,calc(100vh - 48px));overflow:auto;padding:18px;border:1px solid #d9e7ee;border-radius:8px;background:#fff;box-shadow:0 24px 70px rgba(var(--brand-strong-rgb),.22)}.compose-preview-dialog.card-mode{width:min(430px,100%)}.compose-preview-dialog.article-mode{width:min(920px,100%)}.preview-close-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--brand-strong);cursor:pointer;font-size:17px;font-weight:850}.post-article-preview{max-width:920px;margin:0 auto;min-width:0}.post-article-preview h1{margin:12px 0 8px;overflow:hidden;display:-webkit-box;color:var(--brand-strong);font-size:21px;line-height:1.18;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.post-article-preview>img{width:100%;max-height:440px;margin:14px 0;border-radius:8px;object-fit:cover}.post-article-preview .prose{padding-right:4px;font-size:14px;line-height:1.68}.post-article-preview .prose img{width:100%;height:auto}.post-article-preview .prose figure{margin:16px 0}.post-article-preview .prose figcaption{margin-top:6px;color:var(--muted);font-size:13px}.compose-card-preview{display:grid;grid-template-columns:1fr;justify-self:center;overflow:hidden;width:min(360px,100%);border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:0 10px 28px rgba(var(--brand-strong-rgb),.06)}.compose-card-preview img{width:100%;height:auto;min-height:0;aspect-ratio:16/10;object-fit:cover}.compose-card-preview div{display:grid;align-content:start;grid-gap:8px;gap:8px;padding:14px}.compose-card-preview .badge{justify-self:start;width:-moz-fit-content;width:fit-content;max-width:100%}.compose-card-preview h3{margin:0;overflow:hidden;display:-webkit-box;color:var(--brand-strong);font-size:16.5px;line-height:1.35;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.empty,.empty-state{color:var(--muted)}.empty-state{text-align:center}.site-footer{padding:30px 0;background:var(--brand-strong);color:#edf7fb}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-gap:24px;gap:24px}.footer-school-name{display:block;margin-bottom:12px;font-size:18px}.footer-contact{display:grid;align-content:start;grid-gap:6px;gap:6px}.footer-contact p span{font-weight:600}.site-footer p{margin:0;color:#cfe0e9}@media (max-width:1240px){.admin-topbar{flex-direction:column}.admin-topbar-actions{justify-content:flex-start;width:100%}.post-composer-shell,.post-editor-titlebar,.post-editor-topbar{grid-template-columns:1fr}.post-editor-actions{justify-content:flex-start}.post-composer-side{position:static;max-height:none;overflow:visible;padding-right:0}}@media (max-width:900px){.admin-auth-shell,.admin-content-layout,.admin-dashboard-grid,.admin-form-grid.three,.admin-settings-layout,.admin-shell,.admin-two-col,.article-grid,.article-hero-grid,.article-layout,.dashboard-grid,.footer-grid,.hero-grid,.page-grid,.portal-layout,.post-composer-shell,.post-manager-workspace,.split-grid{grid-template-columns:1fr}.card-grid,.card-grid.two-col,.category-block-grid,.directory-grid,.gallery-grid,.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-bottom{display:none}.mobile-menu{display:block}.mobile-menu,.mobile-menu--open .mobile-menu-trigger{margin-left:auto}.nav-item{position:static}.nav-dropdown,.nav-flyout{position:static;width:100%;box-shadow:none}.admin-sidebar{position:static;order:2;max-height:none;overflow:visible}.admin-main{order:1}.admin-section-nav{grid-template-columns:repeat(5,minmax(0,1fr))}.admin-metrics,.admin-overview-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.post-manager-list{position:static;max-height:none;overflow:visible}.post-editor-topbar,.post-manager-list .admin-record-list{grid-template-columns:1fr}.post-editor-topbar{align-items:center}.post-editor-titlebar{grid-template-columns:1fr}.post-editor-actions{justify-content:flex-start}.featured-story{display:block;grid-template-columns:1fr}.portal-sidebar{position:static;max-height:none;overflow:visible;padding-right:0}.latest-list,.latest-list a{grid-template-columns:1fr}.banner-track{height:clamp(310px,48vh,520px)}.banner-slide{aspect-ratio:16/5;min-height:310px}.public-page-hero{grid-template-columns:1fr;align-items:start}.public-page .page-grid{grid-template-columns:1fr;gap:28px}.article-aside,.static-side-panel{position:static}}@media (max-width:640px){.container{width:min(100% - 24px,1160px)}.public-page>.container{width:min(100% - 24px,var(--public-layout-max-width))}.portal-lead-section{padding-top:34px;padding-bottom:44px}.portal-lead-section .container{width:min(100% - 24px,var(--public-layout-max-width))}.portal-lead-section .section-head.ornate h2{font-size:25px}.category-block .section-head.ornate .btn-outline{display:none}.featured-story img{display:block;width:100%;height:auto;min-height:0;aspect-ratio:16/10;object-fit:cover}.featured-story>div{position:relative;z-index:1;gap:10px;padding:16px;background:#fff}.featured-story h2{font-size:19px;line-height:1.28}.featured-story p{font-size:14px;line-height:1.5;-webkit-line-clamp:2;line-clamp:2}.featured-story small{font-size:13px}.header-top{grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;width:100%;min-height:58px;padding:7px 12px}.brand{grid-column:2;grid-row:1;justify-self:center;justify-content:center;width:min(100%,198px);gap:7px;text-align:left}.brand img{width:46px;height:46px;padding:2px;border:1.5px solid rgba(var(--brand-rgb),.24);border-radius:999px;background:linear-gradient(180deg,#fff,var(--brand-soft));box-shadow:0 7px 18px rgba(var(--brand-strong-rgb),.12)}.brand span{flex:0 1 auto;min-width:0;overflow:visible}.brand .brand-title-desktop{display:none}.brand .brand-title-mobile{display:block;overflow:visible;color:var(--brand-strong);font-family:var(--font-heading);font-size:clamp(18px,4.9vw,21px);font-weight:760;letter-spacing:0;line-height:1.18;text-overflow:ellipsis;white-space:nowrap}.header-actions{grid-column:3;grid-row:1;justify-content:flex-end;gap:0}.header-actions .header-icon-link:not(:first-child){display:none}.header-icon-link{width:44px;height:44px;border-color:transparent;background:transparent;color:var(--brand-strong)}.mobile-menu,.mobile-menu--open{grid-column:1;grid-row:1;justify-self:start;margin-left:0}.mobile-menu--open .mobile-menu-trigger{margin-left:0}.mobile-menu-trigger{border-color:transparent;background:transparent;color:var(--brand-strong);box-shadow:none}.document-row,.search-panel form,.section-head{align-items:flex-start;flex-direction:column}.featured-news>.section-head.ornate{width:100%;align-items:center;flex-direction:row;justify-content:space-between;gap:10px}.featured-news>.section-head.ornate>div{min-width:0}.featured-news>.section-head.ornate h2{white-space:nowrap}.featured-news>.section-head.ornate .btn-outline{flex:0 0 auto;min-height:38px;padding:0 12px;font-size:13px;white-space:nowrap}.public-page-hero{gap:14px;padding:0 0 16px;margin-bottom:16px}.public-page-hero h1{font-size:clamp(28px,9vw,36px);line-height:1.05}.public-page-hero .eyebrow{font-size:13px}.public-page-hero .lead{margin-top:8px;font-size:15px}.gallery-page .public-page-stat-grid,.public-page-stat-grid,.static-page-hero .public-page-stat-grid,.teachers-page .public-page-stat-grid{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.public-page-stat-grid div{min-width:0;padding:9px}.public-page-stat-grid strong{font-size:17px}.public-page-stat-grid span{font-size:10px;white-space:normal}.gallery-page .public-page-stat-grid,.static-page-hero .public-page-stat-grid,.teachers-page .public-page-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-search-panel form{grid-template-columns:1fr}.public-search-panel{gap:12px;padding:14px}.public-search-panel .button{width:100%}.static-page--contact .static-content-card{padding:18px}.prose .school-page-lead,.prose .school-page-note{padding:15px 16px}.prose .school-history-timeline div{grid-template-columns:1fr;gap:6px;padding:13px 14px}.prose .school-page-figure img{max-height:320px}.static-page--contact .static-form-block h2{font-size:21px}.static-page--contact .static-side-links{grid-template-columns:1fr}.public-filter-row{flex-wrap:nowrap;gap:7px;margin-bottom:18px;overflow-x:auto;padding-bottom:6px;scrollbar-width:none}.public-filter-row::-webkit-scrollbar{display:none}.public-filter-row .chip{flex:0 0 auto;min-height:32px;padding:0 12px;font-size:14px}.public-pagination{align-items:stretch}.public-pagination-controls{width:100%;justify-content:space-between;gap:8px}.public-page-numbers{flex:1 1;justify-content:center;min-width:0;gap:6px}.public-page-button,.public-page-number{min-width:36px;height:38px}.public-page-ellipsis{min-width:14px}.document-row{grid-template-columns:1fr}.document-row-filetype{width:auto;min-width:52px}.album-head,.directory-section-head{flex-direction:column}.document-row-actions{justify-content:flex-start;width:100%}.hero{padding-top:34px}.article-main h1,.empty-state h1,.hero-copy h1,.section-head h1{font-size:34px}.article-hero-copy h1{font-size:26px}.article-hero{padding:22px 0 24px}.article-layout{padding-top:24px}.hero-media{min-height:260px}.simple-banner{padding:0}.banner-shell,.simple-banner{background:#fff}.banner-track{aspect-ratio:16/9;height:auto}.banner-slide{height:100%;min-height:0;aspect-ratio:auto}.banner-arrows{display:none}.banner-arrow{width:44px;height:44px;border:0;background:transparent;box-shadow:none;font-size:28px}.banner-arrow span{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(18,38,54,.42);box-shadow:0 10px 22px rgba(0,0,0,.16);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.banner-dots{right:auto;bottom:10px;left:50%;max-width:min(220px,calc(100vw - 112px));justify-content:flex-start;gap:3px;overflow-x:auto;padding:5px 7px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(18,38,54,.28);box-shadow:0 10px 24px rgba(0,0,0,.14);pointer-events:auto;scrollbar-width:none;transform:translateX(-50%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.banner-dots::-webkit-scrollbar{display:none}.banner-dots button{width:18px;height:18px;flex:0 0 18px;padding:0}.banner-dots button:before{width:6px;height:6px;background:rgba(255,255,255,.58);box-shadow:none}.banner-dots button.active,.banner-dots button:hover{transform:none}.banner-dots button.active:before,.banner-dots button:hover:before{width:15px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.22)}.admin-form-grid,.admin-form-grid.three,.card-grid,.card-grid.two-col,.category-block-grid,.compose-card-preview,.directory-grid,.form-panel,.form-row,.gallery-grid,.hero-stats,.secondary-news-grid,.stat-grid{grid-template-columns:1fr}.post-card{min-height:0}.post-card .card-media{aspect-ratio:16/10}.post-card .card-body{gap:9px;padding:14px}.post-card .card-body h3{font-size:18px;line-height:1.32;-webkit-line-clamp:3;line-clamp:3}.post-card .card-body p{font-size:14px;line-height:1.5;-webkit-line-clamp:2;line-clamp:2}.admin-auth-copy{min-height:260px;padding:24px}.admin-main,.admin-panel,.admin-sidebar{padding:14px}.admin-sidebar{order:1}.admin-main{order:2}.admin-filter-bar,.admin-record:not(.post-list-record),.admin-topbar{align-items:flex-start;flex-direction:column}.admin-record-actions,.admin-topbar-actions{justify-content:flex-start;gap:8px}.admin-filter-button,.admin-filter-menu,.admin-pagination,.admin-pagination-controls{width:100%}.admin-filter-panel{position:fixed;top:calc(var(--site-header-height) + 12px);right:12px;left:12px;width:auto;max-height:calc(100vh - var(--site-header-height) - 28px);overflow-x:visible;overflow-y:auto;padding-bottom:18px}.admin-pagination-controls{align-items:stretch;flex-direction:column}.admin-page-jump,.admin-pagination-controls button,.admin-topbar-actions .button{width:100%}.admin-topbar-actions .admin-sync-button{align-self:flex-end;margin-left:auto;width:44px;min-width:44px}.admin-sticky-form-actions{align-items:stretch;flex-direction:column;bottom:8px}.admin-sticky-form-actions .button{width:100%}.text-button{min-height:44px;padding:0 10px}.account-delete-button,.document-folder-delete,.gallery-delete-button,.post-list-delete-button,.role-delete-button,.teacher-delete-button{width:44px;height:44px;min-height:44px}.account-tool-switch button,.admin-upload-button,.appearance-route-picker button,.banner-admin-card-actions button,.dashboard-health-row button,.gallery-image-actions .text-button,.menu-tree-toggle,.role-option-list button,.tag-remove-button{min-height:44px}.admin-section-nav{align-items:start;grid-template-columns:1fr;gap:10px}.admin-section-group{align-items:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-section-group+.admin-section-group{margin-top:0;padding-top:12px}.admin-section-nav .admin-section-group-title{grid-column:1/-1;padding:0}.admin-section-group:first-child a,.admin-section-group:first-child button{grid-column:1/-1}.admin-section-nav a,.admin-section-nav button{grid-template-columns:minmax(0,1fr);align-content:center;min-height:52px;gap:2px}.admin-section-nav span{white-space:normal}.admin-section-nav small{display:none}.admin-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-overview-actions{grid-template-columns:1fr}.admin-filter-bar input,.admin-filter-bar select,.document-filter-bar .button{width:100%}.document-category-tools,.document-filter-bar,.document-folder-grid{grid-template-columns:1fr}.document-folder-head{align-items:flex-start;flex-direction:column}.admin-record:not(.post-list-record) strong{white-space:normal}.post-list-record{grid-template-columns:1fr;gap:10px;align-items:flex-start}.post-list-main span{align-items:flex-start;flex-direction:column;gap:4px}.post-list-main span small:before{display:none}.post-list-badges{justify-content:flex-start}.compose-editor-panel,.compose-publish-panel{padding:14px}.post-editor-topbar .post-editor-title-input{font-size:16px}.post-editor-page{padding-top:18px}.post-editor-topbar{gap:12px}.post-editor-titlebar{gap:12px;padding:14px}.compose-editor{min-height:380px;padding:14px}.compose-preview-head{align-items:flex-start;flex-direction:column}.embedded-file-card{grid-template-columns:1fr}.attachment-preview,.embedded-file-preview{height:360px}.attachment-head{align-items:flex-start;flex-direction:column}.attachment-actions{justify-content:flex-start;width:100%}.compose-publish-panel .actions{grid-template-columns:1fr}.compose-card-preview div{padding:14px}.brand{min-width:0}.category-main{grid-template-columns:1fr}.hero-banner{min-height:auto}.secondary-news-grid a{grid-template-columns:104px minmax(0,1fr)}}.brand small{display:block;overflow:hidden;margin-top:3px;color:var(--muted);font-size:12px;font-weight:750;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.article-tag-row,.post-tag-row{display:flex;flex-wrap:wrap;gap:7px}.post-tag-row a{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border:1px solid #d9e9f0;border-radius:999px;background:#f8fcfe;color:var(--green);font-size:12px;font-weight:850}.post-tag-row.article-tag-row{gap:8px;margin-top:-6px}.post-tag-row.article-tag-row a{justify-content:center;min-height:32px;padding:0 12px;font-size:13px;font-weight:800;line-height:17px;white-space:nowrap}.single-category-story{display:grid;grid-template-columns:minmax(260px,.95fr) minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 12px 32px rgba(var(--brand-strong-rgb),.07);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.single-category-story:hover{border-color:rgba(var(--brand-rgb),.32);box-shadow:0 18px 42px rgba(var(--brand-strong-rgb),.12);transform:translateY(-2px)}.single-category-story img{width:100%;height:100%;min-height:320px;object-fit:cover;transition:transform .22s ease}.single-category-story:hover img{transform:scale(1.025)}.single-category-story>div{display:grid;align-content:center;grid-gap:12px;gap:12px;padding:24px}.single-category-story h2{margin:0;font-size:28px}.single-category-story p{margin:0;color:var(--muted)}.gallery-page .public-page-stat-grid,.static-page-hero .public-page-stat-grid,.teachers-page .public-page-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tag-filter-row{margin-top:-10px}.bulk-import-panel,.compose-tag-editor,.gallery-image-editor-list,.permission-editor{display:grid;grid-gap:12px;gap:12px}.gallery-image-editor-list>.compose-field-hint{margin:0;padding:10px 12px;border:1px dashed #bed8e5;border-radius:8px;background:#f8fcfe;text-align:left}.compose-panel-heading.compact{align-items:center}.compose-panel-heading.compact h2{font-size:15px}.compose-panel-heading.compact span{color:var(--muted);font-size:12px;font-weight:850}.tag-input-row span{display:grid;grid-template-columns:minmax(0,1fr) 34px;grid-gap:6px;gap:6px}.tag-remove-button{border:1px solid #efd2cf;border-radius:7px;background:#fff5f4;color:var(--danger);cursor:pointer;font-weight:850}.account-manager-workspace,.gallery-manager-workspace{align-items:start}.account-manager-workspace{grid-template-columns:minmax(0,1fr)}.account-directory-panel,.account-tools-column{display:grid;grid-gap:14px;gap:14px}.account-tools-column{max-width:1080px}.account-panel-head{display:grid;grid-gap:12px;gap:12px}.account-panel-head .admin-panel-head{min-height:auto}.account-list-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;justify-content:space-between}.account-search-menu,.account-search-menu .account-search-button{width:auto}.account-search-menu .account-search-button:not(.active){width:44px}.account-editor-panel,.account-permission-panel,.account-status-card{display:grid;grid-gap:14px;gap:14px}.account-editor-page .post-editor-container{width:min(1240px,calc(100% - 32px))}.account-editor-page .post-editor-titlebar{grid-template-columns:minmax(0,1fr) auto;align-items:end}.account-editor-page .post-editor-title-input{min-height:50px;padding:11px 13px;background:#fff;font-size:20px}.account-editor-shell{grid-template-columns:minmax(0,1fr) 360px;align-items:start}.account-editor-side{min-width:0}.account-editor-main{gap:16px;padding:16px;background:linear-gradient(180deg,#fff,#f8fcfe)}.account-form-card{display:grid;grid-gap:14px;gap:14px;padding:16px;border:1px solid #dce9f0;border-radius:8px;background:#fff}.account-form-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #e5eef4}.account-form-heading h2{margin:0;color:var(--brand-strong);font-size:17px;line-height:1.25}.account-form-card .admin-form-grid{gap:12px}.account-role-grid{grid-template-columns:minmax(0,1fr)}.account-form-card input,.account-form-card select{min-height:46px;background-color:#fbfdff}.account-password-row{align-items:end}.account-active-check{align-self:end;justify-content:flex-start;min-height:46px;padding:0 12px;border:1px solid #dce9f0;border-radius:8px;background:#f8fcfe;color:var(--brand-strong)}.account-permission-collapsible{overflow:hidden;padding:0}.account-extra-permission-details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:74px;padding:16px;color:var(--brand-strong);cursor:pointer;list-style:none}.account-extra-permission-details summary::-webkit-details-marker{display:none}.account-extra-permission-details summary h2,.account-extra-permission-details summary p{margin:0}.account-extra-permission-details summary h2{font-size:16px;line-height:1.25}.account-extra-permission-details summary p{margin-top:4px;color:var(--muted);font-size:12px;font-weight:750;line-height:1.35}.account-extra-permission-details summary>span{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;border:1px solid #d6e6ee;border-radius:999px;background:#f8fcfe;color:var(--brand);font-size:12px;font-weight:850;white-space:nowrap}.account-extra-permission-details summary:after{content:"";width:9px;height:9px;border-right:2px solid var(--brand);border-bottom:2px solid var(--brand);transform:rotate(45deg);transition:transform .16s ease}.account-extra-permission-details[open] summary:after{transform:rotate(-135deg)}.account-extra-permission-details[open] summary{border-bottom:1px solid #e5eef4}.account-extra-permission-body{display:grid;grid-gap:12px;gap:12px;padding:14px 16px 16px}.account-import-title{margin:0;color:var(--brand-strong);font-family:var(--font-body);font-size:28px;line-height:1.15}.account-import-shell textarea{min-height:260px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;line-height:1.55}.bulk-import-count{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;border-radius:999px;background:#eef8fd;color:var(--brand);font-size:12px;font-weight:850;white-space:nowrap}.bulk-result-list{display:grid;grid-gap:8px;gap:8px}.bulk-result-list span{display:block;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted);color:var(--text-muted);font-size:13px;font-weight:750;line-height:1.35}.bulk-preview-list{display:grid;grid-gap:8px;gap:8px}.bulk-preview-list article{display:grid;grid-gap:4px;gap:4px;min-width:0;padding:10px;border:1px solid #dbe6ee;border-radius:8px;background:#f8fbfd}.bulk-preview-list small,.bulk-preview-list span,.bulk-preview-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bulk-preview-list strong{color:var(--brand-strong);font-size:13px;line-height:1.3}.bulk-preview-list span{color:var(--muted);font-size:12px;font-weight:750}.bulk-preview-list small{justify-self:start;min-height:24px;padding:4px 8px;border:1px solid #d9e9f0;border-radius:999px;background:#fff;color:var(--brand);font-size:11px;font-weight:850;line-height:1.2}.account-permission-heading{align-items:flex-start}.account-permission-heading p{margin:4px 0 0;color:var(--muted);font-size:13px;font-weight:750;line-height:1.35}.account-editor-summary{display:grid;grid-gap:8px;gap:8px}.account-profile-card{display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;grid-gap:12px;gap:12px;padding:12px;border:1px solid #d9e9f0;border-radius:8px;background:linear-gradient(180deg,#f8fcfe,#fff)}.account-profile-card>span{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border:1px solid #cfe4ee;border-radius:8px;background:var(--brand-soft);color:var(--brand-strong);font-size:15px;font-weight:950}.account-profile-card div{display:grid;grid-gap:3px;gap:3px;min-width:0}.account-profile-card small,.account-profile-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-profile-card strong{color:var(--brand-strong);font-size:15px;line-height:1.25}.account-profile-card small{color:var(--muted);font-size:12px;font-weight:850}.account-editor-summary span{display:grid;grid-gap:3px;gap:3px;min-width:0;padding:10px 11px;border:1px solid #dbe6ee;border-radius:8px;background:#f8fbfd;color:var(--muted);font-size:12px;font-weight:800}.account-editor-summary strong{overflow:hidden;color:var(--brand-strong);font-size:13px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.extra-permission-editor{align-items:start;grid-template-columns:1fr;max-height:440px;overflow-y:auto;padding-right:3px}.extra-permission-editor .permission-group{background:#fff}.extra-permission-editor .permission-check{min-height:42px;padding:8px 10px;border:1px solid transparent;border-radius:8px;background:rgba(var(--brand-rgb),.04)}.extra-permission-editor .permission-check:has(input:checked){border-color:rgba(var(--brand-rgb),.28);background:#f5fbfd}.permission-empty{grid-column:1/-1;margin:0;padding:14px;border:1px dashed #cbd8e4;border-radius:8px;background:var(--surface-muted);color:var(--muted);font-size:13px;font-weight:750}.inherited-permission-details{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.inherited-permission-details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;padding:10px 14px;color:var(--text);cursor:pointer;font-size:13px;font-weight:850;list-style:none}.inherited-permission-details summary::-webkit-details-marker{display:none}.inherited-permission-details summary strong{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:26px;padding:0 9px;border-radius:999px;background:#fff;color:var(--brand-strong);font-size:12px;line-height:1}.inherited-permission-grid{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px;padding:0 12px 12px}.inherited-permission-group{display:grid;grid-gap:8px;gap:8px;padding:10px;border:1px solid #dbe6ee;border-radius:8px;background:#fff}.inherited-permission-group h3{margin:0;color:var(--brand-strong);font-size:12px;font-weight:850}.inherited-permission-group div{display:flex;flex-wrap:wrap;gap:6px}.inherited-permission-group span{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid #dce7ef;border-radius:999px;background:#f8fbfd;color:#52677b;font-size:12px;font-weight:750;line-height:1.2}.role-manager-workspace{display:grid;grid-gap:14px;gap:14px;max-width:none}.role-manager-grid{grid-template-columns:minmax(300px,.44fr) minmax(0,.56fr);align-items:start}.role-directory-panel,.role-editor-panel{align-content:start}.role-directory-panel{position:-webkit-sticky;position:sticky;top:calc(var(--admin-sidebar-top) + 8px)}.role-mini-stats span:nth-child(2) strong{color:var(--accent)}.role-mini-stats span:nth-child(3) strong{color:var(--green)}.account-tool-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:4px;gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.account-tool-switch button{min-width:0;min-height:38px;border:0;border-radius:7px;background:transparent;color:var(--muted);cursor:pointer;font-weight:850}.account-tool-switch button.active{background:#fff;color:var(--brand-strong);box-shadow:0 8px 22px rgba(var(--brand-strong-rgb),.08)}.account-record-list{grid-template-columns:1fr;gap:14px}.account-mini-stats span:nth-child(2) strong{color:var(--green)}.account-mini-stats span:nth-child(3) strong{color:var(--accent)}.account-list-record{display:grid;grid-template-columns:minmax(0,.9fr) minmax(260px,auto);align-items:center;grid-gap:16px;gap:16px;min-height:70px;padding:16px 18px;border:1px solid var(--line);border-radius:8px;cursor:pointer;transition:background .16s ease,border-color .16s ease}.account-list-record.inactive{border-color:#f0ddb1;background:#fff9e8}.account-list-record:focus-visible,.account-list-record:hover{border-color:#d7e7ef;background:#f1f9fd}.account-list-record.inactive:focus-visible,.account-list-record.inactive:hover{border-color:#dfc572;background:#fff1c9}.account-list-record:focus-visible{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}.account-list-main{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;grid-gap:6px;gap:6px;min-width:0}.account-avatar{display:inline-flex!important;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #cfe4ee;border-radius:8px;background:linear-gradient(180deg,#f8fcfe,var(--brand-soft));color:var(--brand-strong)!important;font-size:13px!important;font-weight:950;line-height:1}.account-list-main strong{display:-webkit-box;overflow:hidden;color:var(--brand-strong);line-height:1.32;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.account-list-main span{display:flex;align-items:center;flex-wrap:wrap;gap:9px;min-width:0;color:var(--text-muted);line-height:1.3}.account-list-main span small{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font:inherit}.account-list-main span small+small:before{width:4px;height:4px;border-radius:999px;background:#b8cad4;content:""}.account-list-badges{display:flex;align-items:center;align-content:center;flex-wrap:wrap;justify-content:flex-end;gap:6px;min-width:0}.account-list-badges .post-list-pill{display:inline-flex;align-items:center;justify-content:center;overflow:hidden;box-sizing:border-box;min-height:34px;padding:7px 14px;border:1px solid transparent;border-radius:999px;font-family:var(--font-body);font-size:13px;font-weight:800;line-height:18px;letter-spacing:0;white-space:nowrap}.account-context-pill{max-width:180px;border-color:#d3dde9!important;background:#eef2f7;color:#41566e}.permission-group{display:grid;grid-gap:8px;gap:8px;margin:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-tint)}.permission-group legend{display:flex;align-items:center;justify-content:space-between;gap:10px;width:calc(100% - 12px);padding:0 6px;color:var(--brand-strong);font-size:13px;font-weight:850}.permission-group legend strong{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:999px;background:#fff;color:var(--brand);font-size:11px;line-height:1}.permission-check{align-items:flex-start}.permission-check small,.permission-check span,.permission-check strong{display:block}.permission-check small{color:var(--muted);font-size:11px;font-weight:750}.role-editor-form,.role-manager-panel{display:grid;grid-gap:14px;gap:14px}.role-editor-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-top:14px;border-top:1px solid var(--line)}.role-editor-actions .button{min-width:132px}.role-editor-actions .button[type=submit]{margin-left:auto}.role-option-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.role-option-list button{min-width:0;min-height:72px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:inherit;cursor:pointer;text-align:left;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.role-option-list button:focus-visible,.role-option-list button:hover{border-color:#d7e7ef;background:#f1f9fd;box-shadow:0 10px 22px rgba(var(--brand-rgb),.08);transform:translateY(-1px)}.role-option-list button.active{border-color:var(--brand);background:var(--surface-tint);box-shadow:inset 0 0 0 1px rgba(var(--brand-rgb),.16)}.role-option-list button.system-role{opacity:1}.role-option-list small,.role-option-list span,.role-option-list strong{display:block}.role-option-list strong{font-size:13px}.role-option-list small{color:var(--muted);font-size:11px;font-weight:750}.compact-permissions{grid-template-columns:repeat(2,minmax(0,1fr))}.role-permission-editor{align-items:stretch;gap:12px}.role-permission-group{align-content:start;gap:9px;min-height:100%;padding:13px;background:#fff}.role-permission-group legend{width:100%;padding:0}.role-permission-check{align-items:center;min-height:58px;padding:10px;border:1px solid #e2edf3;border-radius:8px;background:#f8fcfe;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.role-permission-check:has(input:checked){border-color:rgba(var(--brand-rgb),.3);background:#f1f9fd;box-shadow:inset 3px 0 0 rgba(var(--brand-rgb),.48)}.role-permission-check strong{color:var(--brand-strong);font-size:13px;line-height:1.3}.role-permission-check small{margin-top:3px;color:#66798a;line-height:1.25;overflow-wrap:anywhere}.gallery-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.gallery-mini-stats span:nth-child(2) strong{color:var(--green)}.gallery-mini-stats span:nth-child(3) strong{color:var(--accent)}.gallery-admin-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.gallery-admin-card:focus-within,.gallery-admin-card:hover{border-color:#d7e7ef;background:#f1f9fd;box-shadow:0 10px 22px rgba(var(--brand-rgb),.08);transform:translateY(-1px)}.gallery-admin-card.active{border-color:var(--brand);background:#f3fbff;box-shadow:inset 0 0 0 1px rgba(var(--brand-rgb),.14)}.gallery-admin-card>button:first-child{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;grid-gap:10px;gap:10px;min-width:0;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.gallery-admin-card>button:first-child:disabled{cursor:default}.gallery-admin-card img{width:100%;aspect-ratio:4/3;border-radius:7px;background:var(--surface-muted);object-fit:cover}.gallery-admin-card em,.gallery-admin-card small,.gallery-admin-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gallery-admin-card small{color:var(--muted);font-size:12px;font-weight:750}.gallery-admin-card em{margin-top:5px;color:#63788c;font-size:12px;font-style:normal;font-weight:700}.gallery-delete-button{align-self:center}.gallery-image-editor{display:grid;grid-template-columns:86px minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface-tint)}.gallery-image-editor img{width:86px;aspect-ratio:4/3;border-radius:7px;object-fit:cover}.gallery-image-editor div{display:grid;grid-gap:8px;gap:8px}.gallery-image-actions{display:flex!important;flex-wrap:wrap;justify-content:flex-end;gap:6px}.gallery-image-actions .text-button{min-height:30px;padding:0 6px;font-size:12px}.gallery-image-actions .text-button:disabled{color:#9aabb9;cursor:not-allowed;text-decoration:none;transform:none}.department-manager-workspace,.feedback-manager-workspace,.file-manager-workspace,.teacher-manager-workspace{align-items:start}.department-list-panel,.feedback-list-panel,.file-list-panel,.teacher-editor-panel,.teacher-list-panel{display:grid;grid-gap:14px;gap:14px}.feedback-panel-head{align-items:center;flex-wrap:wrap}.admin-inline-search{display:grid!important;grid-template-columns:18px minmax(180px,260px);align-items:center;grid-gap:8px;gap:8px;min-height:42px;padding:0 11px;border:1px solid #d9e9f0;border-radius:8px;background:#f8fcfe;color:var(--brand)}.admin-inline-search input{min-height:36px;padding:0;border:0;background:transparent;box-shadow:none;font-size:13px}.admin-inline-search input:focus{outline:0}.admin-inline-search .admin-icon{width:17px;height:17px}.department-record-list,.feedback-list,.file-record-list{display:grid;grid-gap:10px;gap:10px}.department-record-list{grid-template-columns:repeat(3,minmax(0,1fr))}.feedback-list{margin-bottom:0;padding-bottom:0}.feedback-list-panel{gap:12px}.feedback-list-record{grid-template-columns:minmax(0,1fr) minmax(170px,auto);gap:14px;min-height:70px;padding:13px 16px;cursor:pointer}.feedback-list-main{gap:5px}.post-manager-list .feedback-list-main strong{display:block;white-space:nowrap;-webkit-line-clamp:unset;line-clamp:unset}.feedback-list-meta{flex-wrap:wrap;gap:4px 10px}.feedback-list-meta a{display:inline-flex;overflow:hidden;max-width:min(360px,100%);color:var(--muted);font:inherit;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.feedback-list-meta a:focus-visible,.feedback-list-meta a:hover{color:var(--brand);text-decoration:underline;text-underline-offset:3px}.feedback-list-badges{align-self:start;padding-top:1px}.feedback-list-badges .catalog-badge{max-width:180px}.feedback-detail-overlay{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px}.feedback-detail-backdrop{position:absolute;inset:0;border:0;background:rgba(var(--brand-strong-rgb),.2);cursor:default}.feedback-detail-panel{position:relative;z-index:1;display:grid;width:min(744px,calc(100vw - 40px));max-height:min(780px,calc(100vh - 48px));padding:0;border:1px solid #d9e9f0;border-radius:8px;background:linear-gradient(180deg,#fff,#fbfdff);overflow:hidden;box-shadow:0 28px 72px rgba(var(--brand-strong-rgb),.22);animation:admin-content-enter .18s ease both}.feedback-detail-head{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:start;padding:18px 18px 14px;border-bottom:1px solid #dce8ef}.feedback-detail-head h3{margin:4px 0 0;color:var(--brand-strong);font-size:24px;line-height:1.2}.feedback-detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;padding:14px 18px;border-bottom:1px solid #e6eef4;background:#f8fcfe}.feedback-detail-meta article{display:grid;grid-gap:5px;gap:5px;min-width:0;padding:10px;border:1px solid #dce8ef;border-radius:8px;background:#fff}.feedback-detail-meta span{overflow:hidden;margin:0;color:var(--muted);font-size:11px;font-weight:850;line-height:1.2;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.feedback-detail-meta a,.feedback-detail-meta strong{overflow:hidden;color:var(--brand-strong);font-size:13px;font-weight:850;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.feedback-detail-meta a{color:var(--brand);text-decoration:none}.feedback-detail-meta a:focus-visible,.feedback-detail-meta a:hover{text-decoration:underline;text-underline-offset:3px}.feedback-detail-body{max-height:430px;margin:18px;padding:16px;border:1px solid #dce8ef;border-radius:8px;background:#fff;overflow:auto}.feedback-detail-body p{margin:0;color:var(--text);font-size:15px;font-weight:650;line-height:1.65;white-space:pre-wrap}.department-record,.feedback-card,.file-record{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:12px;gap:12px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fff;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.department-record:focus-within,.department-record:hover,.feedback-card:hover,.file-record:hover{border-color:#d7e7ef;background:#f8fcfe;box-shadow:0 10px 22px rgba(var(--brand-rgb),.07);transform:translateY(-1px)}.feedback-card-main,.file-record-main{display:grid;grid-gap:9px;gap:9px;min-width:0}.department-record.active{border-color:var(--brand);background:#f3fbff;box-shadow:inset 0 0 0 1px rgba(var(--brand-rgb),.14)}.department-record>button:first-child{display:grid;min-width:0;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.department-record>button:first-child:disabled{cursor:default}.department-record small,.department-record span,.department-record strong{display:block;min-width:0}.department-record strong{overflow:hidden;color:var(--brand-strong);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.department-record small{margin-top:4px;color:var(--muted);font-size:12px;font-weight:750;line-height:1.4}.department-record .post-list-delete-button:disabled{cursor:not-allowed;opacity:.42;transform:none}.feedback-card-head{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;grid-gap:10px;gap:10px;min-width:0}.feedback-avatar,.teacher-avatar{display:inline-flex;align-items:center;justify-content:center;border:1px solid #cfe4ee;border-radius:8px;background:linear-gradient(180deg,#f8fcfe,var(--brand-soft));color:var(--brand-strong);font-weight:950;line-height:1}.feedback-avatar{width:44px;height:44px;font-size:13px}.feedback-card p,.feedback-card span,.feedback-card strong,.file-record small,.file-record span,.file-record strong{min-width:0}.feedback-card strong,.file-record strong{overflow:hidden;color:var(--brand-strong);text-overflow:ellipsis;white-space:nowrap}.feedback-card span,.file-record small,.file-record span{color:var(--muted);font-size:12px;font-weight:750;line-height:1.4}.feedback-card p{display:-webkit-box;overflow:hidden;margin:0;color:var(--text);font-size:14px;font-weight:650;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3}.feedback-contact-row,.teacher-admin-contact{display:flex;flex-wrap:wrap;gap:7px}.feedback-contact-row a,.teacher-admin-contact a{display:inline-flex;align-items:center;min-height:28px;max-width:100%;padding:0 9px;border:1px solid #d9e9f0;border-radius:999px;background:#f8fcfe;color:var(--brand);font-size:12px;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.teacher-admin-grid .admin-empty-state{grid-column:1/-1}.teacher-admin-card{position:relative;display:grid;grid-gap:10px;gap:10px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.teacher-admin-card:focus-within,.teacher-admin-card:hover{border-color:#d7e7ef;background:#f8fcfe;box-shadow:0 10px 22px rgba(var(--brand-rgb),.07);transform:translateY(-1px)}.teacher-admin-card.active{border-color:var(--brand);background:#f3fbff;box-shadow:inset 0 0 0 1px rgba(var(--brand-rgb),.14)}.teacher-admin-card>button:first-child{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;grid-gap:10px;gap:10px;min-width:0;padding:0 42px 0 0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.teacher-admin-card>button:first-child:disabled{cursor:default}.teacher-avatar{width:46px;height:46px;font-size:13px}.teacher-admin-card small,.teacher-admin-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-admin-card strong{color:var(--brand-strong)}.teacher-admin-card small{color:var(--muted);font-size:12px;font-weight:750}.teacher-delete-button{position:absolute;top:12px;right:12px}.teacher-department-strip{display:flex;flex-wrap:wrap;gap:7px}.teacher-department-strip span{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border:1px solid #d9e9f0;border-radius:999px;background:#f8fcfe;color:var(--muted);font-size:12px;font-weight:850}.file-panel-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px}.file-record{grid-template-columns:58px minmax(0,1fr) auto}.file-record-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid #cfe4ee;border-radius:8px;background:#eef8fd;color:var(--brand-strong);font-size:12px;font-weight:950}.file-record-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.file-record-actions .post-list-delete-button:disabled{cursor:not-allowed;opacity:.42;transform:none}.role-option-list{align-items:stretch}.role-option-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;min-height:72px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.role-option-card:focus-within,.role-option-card:hover{border-color:#d7e7ef;background:#f1f9fd;box-shadow:0 10px 22px rgba(var(--brand-rgb),.08);transform:translateY(-1px)}.role-option-card.active{border-color:var(--brand);background:var(--surface-tint);box-shadow:inset 0 0 0 1px rgba(var(--brand-rgb),.16)}.role-option-card.system-role{opacity:1}.role-option-card>button:first-child{min-width:0;min-height:50px;padding:0;border:0;background:transparent;color:inherit;cursor:pointer;text-align:left}.role-option-card>button:first-child:focus-visible,.role-option-card>button:first-child:hover{border:0;background:transparent;box-shadow:none;transform:none}.role-option-card small,.role-option-card span,.role-option-card strong{display:block}.role-option-card strong{color:var(--brand-strong);font-size:13px}.role-option-card small,.role-option-card strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-option-card small{color:var(--muted);font-size:11px;font-weight:750}.account-delete-button,.role-delete-button{flex:0 0 auto}.role-option-card .post-list-delete-button{width:36px;min-width:36px;height:36px;min-height:36px;padding:0;border-color:#efd2cf;border-radius:999px;background:#fff5f4;color:var(--danger);text-align:center}.admin-stats-menu{position:relative;flex:0 0 auto}.admin-stats-button{width:44px;min-width:44px;padding:0}.admin-stats-button.active{border-color:rgba(var(--brand-rgb),.42);background:#eef8fd;color:var(--brand-strong)}.admin-stats-popover{position:absolute;z-index:40;top:calc(100% + 10px);right:0;display:grid;grid-gap:12px;gap:12px;width:min(360px,calc(100vw - 28px));padding:14px;border:1px solid #d9e9f0;border-radius:8px;background:rgba(255,255,255,.98);box-shadow:0 18px 44px rgba(var(--brand-strong-rgb),.14);animation:admin-content-enter .18s ease both}.admin-stats-popover-head{display:grid;grid-gap:3px;gap:3px}.admin-stats-popover-head strong{color:var(--brand-strong);font-size:14px;line-height:1.25}.admin-stats-popover-head span{color:var(--muted);font-size:12px;font-weight:750;line-height:1.4}.admin-stats-popover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.admin-stats-popover-card{display:grid;grid-gap:6px;gap:6px;min-width:0;padding:11px;border:1px solid #dce8ef;border-radius:8px;background:#f8fcfe}.admin-stats-popover-card span{overflow:hidden;color:var(--muted);font-size:11px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.admin-stats-popover-card strong{overflow:hidden;color:var(--brand-strong);font-size:20px;line-height:1;text-overflow:ellipsis;white-space:nowrap}.admin-stats-popover-card.green strong{color:var(--green)}.admin-stats-popover-card.amber strong{color:var(--accent)}.admin-stats-popover-card.red strong{color:var(--danger)}.dashboard-hero-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.62fr);grid-gap:16px;gap:16px;align-items:stretch;padding:18px;border:1px solid #d9e9f0;border-radius:8px;background:linear-gradient(180deg,#f8fcfe,#fff)}.dashboard-hero-panel h3{margin:4px 0 0;color:var(--brand-strong);font-family:var(--font-body);font-size:22px;line-height:1.18}.dashboard-hero-panel p{max-width:620px;margin:8px 0 0;color:var(--muted);font-size:14px;font-weight:750;line-height:1.55}.dashboard-health-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.dashboard-health-row button{display:grid;align-content:center;grid-gap:6px;gap:6px;min-width:0;min-height:88px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:inherit;cursor:pointer;text-align:left;transition:background .16s ease,border-color .16s ease,transform .16s ease}.dashboard-health-row button:focus-visible,.dashboard-health-row button:hover{border-color:rgba(var(--brand-rgb),.32);background:#f3fbff;transform:translateY(-1px)}.dashboard-health-row button:focus-visible{outline:3px solid rgba(var(--brand-rgb),.18);outline-offset:2px}.dashboard-health-row span,.dashboard-stat-card span{color:var(--muted);font-size:12px;font-weight:850}.dashboard-health-row strong{color:var(--brand-strong);font-size:22px;line-height:1}.dashboard-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.dashboard-stat-card{display:grid;grid-gap:10px;gap:10px;min-width:0;padding:15px;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 28px rgba(var(--brand-strong-rgb),.05)}.dashboard-stat-card strong{color:var(--brand-strong);font-size:30px;line-height:1}.dashboard-stat-card.green strong{color:var(--green)}.dashboard-stat-card.amber strong{color:var(--accent)}.dashboard-stat-card.red strong{color:var(--danger)}.dashboard-clean-grid{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)}.dashboard-record-list{gap:2px}.dashboard-clean-grid .admin-record{align-items:center;height:68px;min-height:68px;padding:9px 0;overflow:hidden}.dashboard-post-title{max-width:92%}.document-editor-panel-clean{gap:16px}.document-composer-shell{align-items:start}.document-composer-main{min-height:0}.document-composer-main label{display:grid;grid-gap:8px;gap:8px;color:var(--muted);font-weight:850}.document-composer-main textarea{height:176px;width:100%;min-height:176px;padding:16px;border:1px solid #dce9f0;border-radius:8px;background:#fff;color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.65;outline:none;resize:vertical}.document-composer-main textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.1)}.document-upload-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:14px;gap:14px;min-height:152px;padding:18px;border:1.5px dashed #b9d5e3;border-radius:8px;background:linear-gradient(180deg,#f8fcfe,#fff);transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.document-upload-card.active{border-color:var(--brand);background:#eef8fd;box-shadow:0 0 0 3px rgba(var(--brand-rgb),.1)}.document-upload-card.has-file{border-style:solid}.document-upload-card-main{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;grid-gap:14px;gap:14px;min-width:0}.document-upload-icon{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border:1px solid #cfe4ee;border-radius:8px;background:#eef8fd;color:var(--brand-strong)}.document-file-icon{width:28px;height:28px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.document-upload-card-main span,.document-upload-card-main strong{display:block;min-width:0}.document-upload-card-main strong{overflow:hidden;color:var(--brand-strong);font-size:18px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.document-upload-card-main span{margin-top:5px;color:var(--muted);font-size:13px;font-weight:750;line-height:1.45}.document-upload-card-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:9px}.document-upload-card .admin-upload-control{min-height:44px;padding:4px}.document-file-open-button{min-height:44px;padding-inline:14px}.document-composer-actions{margin-top:2px}.document-reset-button{width:100%}.document-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.44fr);grid-gap:16px;gap:16px;align-items:start}.document-editor-main-fields,.document-file-card{display:grid;grid-gap:14px;gap:14px;min-width:0}.document-title-field input{min-height:50px;font-size:16px;font-weight:850}.document-file-card{padding:14px;border:1px solid #d9e9f0;border-radius:8px;background:linear-gradient(180deg,#f8fcfe,#fff)}.document-file-card>div:first-child{display:grid;grid-gap:4px;gap:4px}.document-file-card>div:first-child strong{color:var(--brand-strong);font-size:15px}.document-file-card>div:first-child span,.document-file-empty{color:var(--muted);font-size:12px;font-weight:750;line-height:1.45}.document-file-empty{margin:0;padding:11px 12px;border:1px dashed #c8dbe5;border-radius:8px;background:#fff}.account-list-record,.admin-record-list>.admin-record.account-list-record:last-child{border-bottom:1px solid var(--line)}.admin-record-list>.admin-record:not(.post-list-record):not(.account-list-record):last-child{border-bottom:0}.gallery-empty-showcase{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.5fr) auto;align-items:center;grid-gap:14px;gap:14px;padding:16px;border:1px dashed #c8dbe5;border-radius:8px;background:#f8fcfe}.gallery-empty-showcase span,.gallery-empty-showcase strong{display:block}.gallery-empty-showcase strong{color:var(--brand-strong);font-size:15px}.gallery-empty-showcase span{margin-top:4px;color:var(--muted);font-size:13px;font-weight:750;line-height:1.45}.gallery-sample-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px}.gallery-sample-preview img{width:100%;aspect-ratio:4/3;border-radius:7px;object-fit:cover}.gallery-sample-strip{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #d9e9f0;border-radius:8px;background:#f8fcfe}.gallery-sample-strip span{color:var(--muted);font-size:12px;font-weight:850}.gallery-editor-panel{gap:16px}.gallery-editor-hero{display:grid;grid-template-columns:minmax(220px,.46fr) minmax(0,1fr);grid-gap:14px;gap:14px;align-items:stretch;padding:12px;border:1px solid #d9e9f0;border-radius:8px;background:linear-gradient(180deg,#f8fcfe,#fff)}.gallery-editor-cover,.gallery-editor-cover-empty{overflow:hidden;min-height:180px;border-radius:8px;background:#eef5f8}.gallery-editor-cover img{width:100%;height:100%;min-height:180px;object-fit:cover}.gallery-editor-cover-empty{display:grid;place-items:center;border:1px dashed #bed8e5;color:var(--brand);font-size:20px;font-weight:950}.gallery-editor-intro{display:grid;align-content:center;grid-gap:9px;gap:9px;min-width:0}.gallery-editor-intro strong{overflow:hidden;color:var(--brand-strong);font-size:24px;line-height:1.18;text-overflow:ellipsis;white-space:nowrap}.gallery-editor-intro small{color:var(--muted);font-size:13px;font-weight:850}.gallery-editor-quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.gallery-editor-fields,.gallery-editor-layout{display:grid;grid-gap:14px;gap:14px}.gallery-editor-layout{grid-template-columns:minmax(260px,.44fr) minmax(0,1fr);align-items:start}.menu-editor{gap:16px;overflow:hidden}.menu-editor-head{align-items:flex-start;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.menu-editor-title{display:grid;grid-gap:5px;gap:5px;min-width:0}.menu-editor-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.menu-tree-shell{display:grid;grid-gap:8px;gap:8px;padding:10px;border:1px solid #d9e9f0;border-radius:8px;background:#f7fbfd;overflow-x:auto}.menu-tree-header{display:grid;grid-template-columns:132px minmax(220px,1.12fr) minmax(220px,.95fr) 108px minmax(146px,auto);align-items:center;grid-gap:10px;gap:10px;min-width:980px;padding:0 12px 2px;color:var(--muted);font-size:11px;font-weight:900;letter-spacing:0;text-transform:uppercase}.menu-tree-list{display:grid;grid-gap:8px;gap:8px;min-width:980px}.menu-tree-item{--menu-level-color:#2f86b4;--menu-level-soft:#f5fbfe;--menu-level-border:#b8d8e8;--menu-level-border-hover:#8dbfd6;display:grid;grid-template-columns:132px minmax(220px,1.12fr) minmax(220px,.95fr) 108px minmax(146px,auto);align-items:center;grid-gap:10px;gap:10px;height:64px;min-height:64px;padding:10px 12px;border:1px solid var(--menu-level-border);border-left-width:6px;border-radius:8px;background:#fff;box-shadow:0 8px 18px rgba(var(--brand-strong-rgb),.045);cursor:default;touch-action:none;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.menu-tree-item[data-depth="0"]{background:#fbfdfe}.menu-tree-item[data-depth="0"],.menu-tree-item[data-depth="1"]{border-color:var(--menu-level-border);border-left-color:var(--menu-level-border);border-left-width:6px}.menu-tree-item[data-depth="1"]{--menu-level-color:#4f8d78;--menu-level-soft:#f7fcfa;--menu-level-border:#c4e2d5;--menu-level-border-hover:#96c9b3;background:#fcfffd}.menu-tree-item[data-depth="2"]{--menu-level-color:#a98239;--menu-level-soft:#fffaf0;--menu-level-border:#e3d0a7;--menu-level-border-hover:#cdb06e;border-color:var(--menu-level-border);border-left-color:var(--menu-level-border);border-left-width:6px;background:#fffefb}.menu-tree-item:hover{border-color:var(--menu-level-border-hover);background:var(--menu-level-soft);box-shadow:0 12px 24px rgba(var(--brand-strong-rgb),.075);transform:translateY(-1px)}.menu-tree-item--dragging-source{opacity:.52;cursor:-webkit-grabbing;cursor:grabbing}.menu-tree-item.drop-before{box-shadow:0 -3px 0 0 var(--brand),0 12px 24px rgba(var(--brand-strong-rgb),.075)}.menu-tree-item.drop-after{box-shadow:0 3px 0 0 var(--brand),0 12px 24px rgba(var(--brand-strong-rgb),.075)}.menu-tree-item.drop-child{outline:2px dashed var(--brand);outline-offset:-5px}.menu-tree-card-foot,.menu-tree-card-head{display:contents}.menu-tree-indent{display:flex;align-items:center;gap:6px;min-width:0;min-height:42px}.menu-tree-grip,.menu-tree-node-icon,.menu-tree-toggle{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;flex:0 0 28px}.menu-tree-grip{color:var(--muted);cursor:-webkit-grab;cursor:grab}.menu-tree-actions svg,.menu-tree-grip svg,.menu-tree-node-icon svg,.menu-tree-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.menu-tree-node-icon{border:1px solid var(--menu-level-border);border-radius:8px;background:var(--menu-level-soft);color:var(--menu-level-color)}.menu-tree-item:hover .menu-tree-node-icon{border-color:var(--menu-level-border-hover)}.menu-tree-toggle{border:1px solid #d9e9f0;border-radius:8px;background:#fff;color:var(--brand-strong);cursor:pointer;padding:0}.menu-tree-toggle:hover{border-color:rgba(var(--brand-rgb),.34);background:#eef8fd}.menu-tree-toggle--empty{visibility:hidden}.menu-tree-field{display:grid;grid-gap:5px;gap:5px;min-width:0}.menu-tree-field-label{display:none}.menu-tree-item input{width:100%;min-width:0;min-height:42px;padding:8px 11px;border:1px solid #d9e9f0;border-radius:8px;background:#fff;color:var(--text);font-size:14px;outline:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.menu-tree-label{font-weight:850}.menu-tree-item input:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.11)}.menu-visibility-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;justify-self:center;width:58px;min-width:58px;min-height:42px;padding:0 10px;border:1px solid #d9e9f0;border-radius:999px;background:#fff;color:var(--brand-strong);cursor:pointer;font-size:12px;font-weight:850}.menu-visibility-toggle input{width:15px;min-width:15px;height:15px;min-height:15px;padding:0;accent-color:var(--brand)}.menu-visibility-toggle span{line-height:1}.menu-tree-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;min-width:0}.menu-tree-actions .text-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;padding:0 8px;border-radius:7px;font-size:13px;white-space:nowrap}.appearance-brief-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:16px;gap:16px;padding:16px;border:1px solid #d9e9f0;border-radius:8px;background:linear-gradient(180deg,#f8fcfe,#fff)}.appearance-brief-panel h3{margin:4px 0 0;color:var(--brand-strong);font-family:var(--font-body);font-size:20px;line-height:1.2}.appearance-brief-panel p{margin:7px 0 0;color:var(--muted);font-size:13px;font-weight:750;line-height:1.5}.appearance-completion{display:grid;place-items:center;min-width:112px;min-height:84px;padding:12px;border:1px solid #d9e9f0;border-radius:8px;background:#fff}.appearance-completion strong{color:var(--brand-strong);font-size:24px;line-height:1}.appearance-completion span{color:var(--muted);font-size:12px;font-weight:850}.appearance-menu-preview,.appearance-route-picker{display:flex;flex-wrap:wrap;gap:7px}.appearance-menu-preview span,.appearance-route-picker button{display:inline-flex;align-items:center;min-height:30px;max-width:100%;padding:0 10px;border:1px solid #d9e9f0;border-radius:999px;background:#f8fcfe;color:var(--brand-strong);font-size:12px;font-weight:850;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appearance-route-picker button{cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease}.appearance-menu-preview span.active,.appearance-route-picker button.active,.appearance-route-picker button:hover{border-color:rgba(var(--brand-rgb),.32);background:#eef8fd;color:var(--brand)}.appearance-menu-preview{padding:10px;border:1px solid #d9e9f0;border-radius:8px;background:#fff}.admin-banner-preview div span:first-child{justify-self:start;min-height:24px;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.85);color:var(--brand-strong);font-size:12px;font-weight:950}.admin-banner-preview div span:last-child{justify-self:start}@media (max-width:980px){.appearance-brief-panel,.banner-manager-hero,.banner-manager-layout,.dashboard-clean-grid,.dashboard-hero-panel,.department-manager-workspace,.document-editor-layout,.gallery-editor-hero,.gallery-editor-layout,.gallery-empty-showcase,.teacher-manager-workspace{grid-template-columns:1fr}.dashboard-health-row,.dashboard-stat-grid,.department-record-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.admin-stats-menu{width:auto}.admin-stats-button,.admin-topbar-actions .admin-stats-button{width:44px;min-width:44px}.admin-stats-popover{position:fixed;top:calc(var(--site-header-height) + 12px);right:12px;left:12px;width:auto;max-height:calc(100vh - var(--site-header-height) - 28px);overflow-y:auto}.admin-stats-popover-grid,.dashboard-health-row,.dashboard-stat-grid{grid-template-columns:1fr}.menu-editor-actions,.menu-editor-head{align-items:stretch;flex-direction:column}.menu-editor-actions,.menu-editor-actions .button{width:100%}.feedback-detail-panel{width:min(420px,calc(100vw - 24px));max-height:calc(100vh - 32px)}.department-record-list,.feedback-detail-head,.feedback-detail-meta{grid-template-columns:1fr}.gallery-empty-showcase .button{width:100%}.department-record,.document-upload-card,.feedback-card,.file-record,.gallery-editor-quick-actions{grid-template-columns:1fr}.document-upload-card-actions{justify-content:stretch}.banner-manager-actions .admin-upload-control,.banner-manager-actions .button,.document-upload-card-actions .admin-upload-button,.document-upload-card-actions .admin-upload-control,.document-upload-card-actions .button,.gallery-editor-quick-actions .admin-upload-control,.gallery-editor-quick-actions .button{width:100%}.banner-manager-actions{justify-content:stretch}.banner-manager-actions .admin-upload-button{width:100%}.banner-admin-card{grid-template-columns:1fr}.banner-admin-card-actions{display:grid;grid-template-columns:repeat(3,1fr)}.banner-admin-card-actions button{width:100%}.banner-editor-fields{grid-template-columns:1fr}.admin-inline-search{width:100%;grid-template-columns:18px minmax(0,1fr)}.file-panel-actions{display:grid;width:100%}}@media (max-width:900px){.gallery-image-editor,.single-category-story{grid-template-columns:1fr}.single-category-story{display:block}.single-category-story img{display:block;height:auto;min-height:0;aspect-ratio:16/10}.single-category-story>div{position:relative;z-index:1;padding:18px;background:#fff}.single-category-story h2{font-size:clamp(20px,5.8vw,24px);line-height:1.24}.menu-tree-shell{padding:0;border:0;background:transparent;overflow-x:visible}.menu-tree-header{display:none}.menu-tree-list{min-width:0}.menu-tree-item{grid-template-columns:1fr;gap:10px;min-width:0;height:auto;min-height:0;padding:12px;touch-action:pan-y}.menu-tree-card-head{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}.menu-tree-card-foot{display:grid;grid-template-columns:minmax(92px,.58fr) minmax(0,1fr);align-items:center;justify-content:stretch;grid-gap:10px;gap:10px;padding-left:0}.menu-tree-indent{padding-left:0!important}.menu-tree-field-label{display:block;color:var(--muted);font-size:12px;font-weight:850;line-height:1}.menu-tree-item[data-depth="1"]{margin-left:14px;width:calc(100% - 14px)}.menu-tree-item[data-depth="2"]{margin-left:28px;width:calc(100% - 28px)}.menu-tree-actions,.menu-tree-actions .text-button,.menu-visibility-toggle{width:100%}.menu-tree-actions .text-button,.menu-tree-toggle,.menu-visibility-toggle{min-height:44px}.menu-tree-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(88px,1fr));justify-content:stretch}.account-list-record,.account-tool-switch,.admin-single-column-workspace .gallery-admin-grid,.file-record,.gallery-admin-grid,.role-option-list,.teacher-admin-grid{grid-template-columns:1fr}.file-record-actions{justify-content:flex-start}.gallery-admin-card>button:first-child{grid-template-columns:82px minmax(0,1fr)}.account-list-badges{justify-content:flex-start}.compact-permissions,.document-editor-summary,.gallery-editor-summary,.inherited-permission-grid{grid-template-columns:1fr}.single-category-story img{min-height:220px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}