html, body { margin: 0; background: #fff; }
#startup-shell, #startup-shell * { box-sizing: border-box; }
#startup-shell { position: fixed; inset: 0; z-index: 9999; overflow: auto; padding: 32px 28px; background: #fff; color: #292333; font-family: system-ui, -apple-system, "Segoe UI", sans-serif; }
.startup-inner { max-width: 1120px; margin: 0 auto; }
.startup-brand { display: flex; align-items: center; gap: 12px; min-height: 48px; font-size: 21px; font-weight: 700; }
.startup-brand img { width: 38px; height: 38px; }
.startup-rule { height: 1px; margin: 24px 0 40px; background: #eee9f5; }
.startup-heading { max-width: 580px; margin-bottom: 36px; }
.startup-heading h1 { margin: 0 0 20px; font-size: 27px; line-height: 1.5; letter-spacing: .02em; }
.startup-status-row { display: flex; align-items: center; gap: 12px; }
#startup-status { margin: 0; line-height: 1.7; font-size: 15px; }
.startup-spinner { flex-shrink: 0; width: 17px; height: 17px; border: 2px solid #e9e1f5; border-top-color: #684490; border-radius: 50%; animation: startup-spin .9s linear infinite; }
#startup-note { margin: 12px 0 0; color: #6a6274; font-size: 13px; line-height: 1.8; }
.startup-retry { display: inline-block; margin-top: 20px; padding: 10px 18px; border-radius: 8px; background: #60408c; color: #fff; font-size: 14px; font-weight: 600; text-decoration: none; }
.startup-retry:hover { background: #503378; }
.startup-retry:focus-visible { outline: 3px solid #b69ee8; outline-offset: 3px; }
.startup-books { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px 28px; }
.startup-book { display: flex; gap: 14px; align-items: flex-start; }
.startup-cover { flex-shrink: 0; width: 76px; height: 108px; border-radius: 7px; background: #f0ebf8; }
.startup-lines { min-width: 0; flex: 1; padding-top: 5px; }
.startup-line { height: 10px; margin: 0 0 13px; border-radius: 4px; background: #f0edf3; }
.startup-line:nth-child(2) { width: 76%; }
.startup-line:nth-child(3) { width: 54%; }
.startup-writer { display: grid; grid-template-columns: 190px minmax(0, 1fr); gap: 32px; }
.startup-sidebar { padding: 22px; border-radius: 10px; background: #f8f6fb; }
.startup-sidebar .startup-line { margin-bottom: 25px; }
.startup-paper { min-height: 330px; border: 1px solid #eee9f5; border-radius: 10px; padding: 35px; }
.startup-paper .startup-line { margin-bottom: 24px; }
.startup-paper .startup-line:first-child { width: 45%; height: 15px; margin-bottom: 34px; }
.startup-footer { margin-top: 38px; color: #777080; font-size: 12px; line-height: 1.8; }
.startup-noscript { position: fixed; inset: 0; z-index: 10000; padding: 60px 28px; background: #fff; color: #292333; font-family: system-ui, sans-serif; line-height: 1.8; }
#startup-shell [hidden] { display: none !important; }
@keyframes startup-spin { to { transform: rotate(360deg); } }
@media (max-width: 1099px) { .startup-books { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 767px) {
  #startup-shell { padding: 24px 20px; }
  .startup-brand { font-size: 19px; }
  .startup-rule { margin: 20px 0 32px; }
  .startup-heading h1 { font-size: 23px; }
  .startup-books { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px 20px; }
  .startup-book { gap: 10px; }
  .startup-cover { width: 54px; height: 79px; }
  .startup-line { height: 8px; margin-bottom: 11px; }
  .startup-writer { display: block; }
  .startup-sidebar { display: none; }
  .startup-paper { padding: 24px; min-height: 290px; }
}
@media (prefers-reduced-motion: reduce) { .startup-spinner { animation: none; } }
