/* PCC Intern · Sofort sichtbares Grundgerüst (Skeleton), solange Design und Daten laden. Klein halten! */
html{background:#f3f5f9}
html:not(.css-ready) #login-view,html:not(.css-ready) #dashboard-view{display:none!important}
html:not(.css-ready) .symbol-sprite{position:absolute;width:0;height:0}
html:not(.css-ready) .skip{position:absolute;left:-9999px}
body{margin:0}
#boot-skeleton{position:fixed;inset:0;display:grid;grid-template-columns:244px 1fr;background:#f3f5f9;z-index:5;font-family:system-ui,sans-serif}
html.css-ready body:has(#login-view:not([hidden])) #boot-skeleton,html.css-ready body:has(#dashboard-view:not([hidden])) #boot-skeleton,html.boot-done #boot-skeleton{display:none}
.bs-side{background:#0f2233;padding:24px 16px;display:flex;flex-direction:column;gap:14px}
.bs-side i{display:block;height:12px;border-radius:6px;background:rgba(255,255,255,.09)}
.bs-side i:first-child{height:20px;width:70%;background:rgba(255,255,255,.22);margin-bottom:22px}
.bs-side i:nth-child(odd){width:78%}.bs-side i:nth-child(3n){width:62%}
.bs-main{padding:28px 32px;display:flex;flex-direction:column;gap:18px;overflow:hidden}
.sk,.bs-main i{display:block;border-radius:14px;background:#e4e9f1;position:relative;overflow:hidden}
.sk::after,.bs-main i::after,.sk-block::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:skShine 1.4s ease-in-out infinite}
@keyframes skShine{to{transform:translateX(100%)}}
@media (prefers-reduced-motion:reduce){.sk::after,.bs-main i::after,.sk-block::after{animation:none}}
.bs-top{height:46px;width:40%;border-radius:999px!important}
.bs-eb{height:11px;width:90px}.bs-h1{height:40px;width:min(420px,70%)}.bs-sub{height:13px;width:min(560px,85%)}
.bs-tiles,.sk-tiles{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.bs-tiles i,.sk-tiles i{height:118px;border-radius:20px}
.bs-tiles i:nth-child(1),.sk-tiles i:nth-child(1){background:#e6e1f7}.bs-tiles i:nth-child(2),.sk-tiles i:nth-child(2){background:#dbece5}.bs-tiles i:nth-child(3),.sk-tiles i:nth-child(3){background:#dfe8fb}.bs-tiles i:nth-child(4),.sk-tiles i:nth-child(4){background:#f6e6da}.bs-tiles i:nth-child(5),.sk-tiles i:nth-child(5){background:#f6efd2}
.bs-grid,.sk-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:14px}
.bs-grid i,.sk-grid i{height:300px;border-radius:22px;background:#fff!important;border:1px solid #e6ebf2}
.bs-grid i::before,.sk-grid i::before{content:"";position:absolute;left:22px;right:30%;top:24px;height:14px;border-radius:7px;background:#e8edf4;box-shadow:0 44px 0 -2px #eef2f7,0 80px 0 -2px #eef2f7,0 116px 0 -2px #eef2f7,0 152px 0 -2px #eef2f7}
/* Seiten-Skeleton innerhalb des Dashboards */
.sk-page{display:flex;flex-direction:column;gap:16px;padding-top:4px}
.sk-page .sk{border-radius:14px}
.sk-rows{display:grid;gap:10px}
.sk-rows i{display:block;height:72px;border-radius:18px;background:#fff;border:1px solid #e6ebf2;position:relative;overflow:hidden}
.sk-rows i::before{content:"";position:absolute;left:18px;top:18px;width:36px;height:36px;border-radius:12px;background:#e8edf4;box-shadow:54px -4px 0 -10px #e8edf4}
.sk-rows i::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);animation:skShine 1.4s ease-in-out infinite}
.sk-line{height:14px}.sk-w30{width:30%}.sk-w50{width:50%}.sk-w70{width:70%}
@media (max-width:900px){#boot-skeleton{grid-template-columns:1fr}.bs-side{display:none}.bs-main{padding:18px 16px}.bs-tiles,.sk-tiles{grid-template-columns:repeat(2,1fr)}.bs-tiles i:nth-child(n+5),.sk-tiles i:nth-child(n+5){display:none}.bs-grid,.sk-grid{grid-template-columns:1fr}.bs-grid i:nth-child(2),.sk-grid i:nth-child(2){display:none}}
@media (prefers-color-scheme:dark){html:not([data-theme="light"]) #boot-skeleton{background:#0d1620}html:not([data-theme="light"]) .bs-main i{background:#18263a}html:not([data-theme="light"]) .bs-grid i{background:#142130!important;border-color:#2a3a4d}}
html[data-theme="dark"]{background:#0d1620}
