/* Content-shaped shimmer, shown only when loading has become noticeable. */
.chapter-loader { --sk-base:#ebe5f1;--sk-light:#faf6fc;--sk-border:#dcd1e6;--sk-ink:#6c567b; padding:28px; min-height:380px; font-family:'Segoe UI',Arial,sans-serif; animation:sk-appear .2s ease both; }
.sk-mint { --sk-base:#dce9df;--sk-light:#f2f8f0;--sk-border:#bed4c5;--sk-ink:#38604f; }
.sk-peach { --sk-base:#f1e0d4;--sk-light:#fff7ee;--sk-border:#dfc5b2;--sk-ink:#8d543b; }
.sk-rose { --sk-base:#efdee5;--sk-light:#fff5f7;--sk-border:#dfbdcc;--sk-ink:#86576b; }
.sk-sand { --sk-base:#ecdcc7;--sk-light:#fff7e8;--sk-border:#d4b795;--sk-ink:#865837; }
.sk-layout { max-width:900px;margin:0 auto;padding:22px;border:1px solid var(--sk-border);border-radius:18px;background:color-mix(in srgb,var(--sk-light) 70%,transparent); }
.sk-shimmer { background:var(--sk-base);position:relative;overflow:hidden; }
.sk-shimmer::after { content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,var(--sk-light) 50%,transparent 80%);transform:translateX(-100%);animation:sk-sweep 1.8s ease-in-out infinite; }
.sk-banner { height:130px;border-radius:12px;display:flex;align-items:flex-end;padding:17px; }
.sk-kicker { position:relative;z-index:1;color:var(--sk-ink);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase; }
.sk-profile { display:flex;gap:20px;align-items:center;margin:22px 0; }
.sk-avatar { width:64px;height:64px;flex-shrink:0;border-radius:50%; }
.sk-profile>div { flex:1;max-width:440px; }
.sk-line { display:block;height:10px;border-radius:5px;width:100%;margin:10px 0; }
.sk-line-long { width:86%; }.sk-line-medium { width:65%; }.sk-line-short { width:39%; }
.sk-divider { height:16px;border-radius:6px;margin-bottom:22px; }
.sk-body { display:grid;grid-template-columns:1fr 180px;gap:26px;align-items:start; }
.sk-copy { padding-top:4px; }.sk-tile { height:72px;border-radius:10px; }
.sk-caption { color:var(--sk-ink);font-size:11px;line-height:1.6;margin:24px 0 0; }
#app>.chapter-loader { min-height:100vh;display:grid;align-items:center;animation:sk-appear .2s .9s both; }
html[data-transport='local'] #app>.chapter-loader { display:none; }
[data-theme='dark'] .chapter-loader { --sk-base:#353743;--sk-light:#484555;--sk-border:#575364;--sk-ink:#d0bde0; }
[data-theme='dark'] .sk-mint { --sk-base:#2b4039;--sk-light:#3f5b4c;--sk-border:#547666;--sk-ink:#b9d4c1; }
[data-theme='dark'] .sk-sand,[data-theme='dark'] .sk-peach { --sk-base:#48392f;--sk-light:#655040;--sk-border:#86664b;--sk-ink:#e4c49c; }
[data-theme='dark'] .sk-rose { --sk-base:#44303b;--sk-light:#614553;--sk-border:#805b6e;--sk-ink:#e7bbce; }
@keyframes sk-sweep { to { transform:translateX(100%); } }
@keyframes sk-appear { from { opacity:0; } to { opacity:1; } }
@media(max-width:600px) { .chapter-loader{padding:15px 0;min-height:330px}.sk-layout{padding:16px;border-radius:13px}.sk-banner{height:110px}.sk-profile{gap:15px}.sk-avatar{height:52px;width:52px}.sk-body{grid-template-columns:1fr}.sk-tile{display:none}.sk-kicker{font-size:9px} }
@media(prefers-reduced-motion:reduce) { .sk-shimmer::after{animation:none;display:none}.chapter-loader{animation:none}#app>.chapter-loader{animation:sk-appear 0s .9s both} }
