.founding-trigger {
  display:inline-flex; align-items:center; padding:0; border:0; border-radius:2px;
  background:transparent; color:inherit; font:inherit; letter-spacing:0;
  text-align:left; cursor:pointer; max-width:100%;
}
.founding-trigger:focus-visible { outline:2px solid #49c9be; outline-offset:6px; }
.founding-trigger:hover { color:var(--accent, #239fa2); }
.founding-trigger > span { display:inline-flex; align-items:center; gap:8px; }
.founding-dialog {
  box-sizing:border-box; width:calc(100% - 32px); max-width:510px;
  max-height:calc(100dvh - 48px); margin:auto; padding:44px 36px 28px;
  border:1px solid #c4dce1; border-radius:8px; background:#f5fafb; color:#203b49;
  box-shadow:0 24px 80px #08283b33; text-align:left; letter-spacing:0;
  font-family:inherit; overflow:auto;
}
.founding-dialog::backdrop { background:#102d3b77; backdrop-filter:blur(7px); }
.founding-dialog .founding-close {
  position:absolute; top:12px; right:12px; width:36px; height:36px;
  display:grid; place-items:center; padding:0; border:0; border-radius:4px;
  background:transparent; cursor:pointer;
}
.founding-dialog .founding-close:hover { background:#dcecf0; }
.founding-dialog .founding-close:focus-visible { outline:2px solid #16857f; }
.founding-date { display:block; color:#177d7a; font:600 18px/1.4 ui-monospace,monospace; }
.founding-dialog h2 { margin:14px 0 18px; color:#155275; font-size:30px; line-height:1.3; letter-spacing:0; }
.founding-dialog p { margin:0; font-size:17px; line-height:1.8; }
.founding-dialog .founding-signature { margin-top:22px; padding-top:20px; border-top:1px solid #cddfe4; color:#56717c; font-size:15px; }
.founding-serial { display:block; margin-top:24px; color:#718d98; font:12px/1.5 ui-monospace,monospace; }
.founding-anniversary { display:block; margin-top:18px; color:#137e77; font-size:17px; font-weight:600; }
.founding-anniversary[hidden] { display:none; }
[data-theme=dark] .founding-dialog { background:#122c34; color:#d9e9ed; border-color:#345965; box-shadow:0 24px 80px #0006; }
[data-theme=dark] .founding-dialog h2 { color:#b8e4f4; }
[data-theme=dark] .founding-date, [data-theme=dark] .founding-anniversary { color:#78d7ca; }
[data-theme=dark] .founding-dialog .founding-signature { color:#a6bdc6; border-color:#35545c; }
[data-theme=dark] .founding-dialog .founding-close img { filter:brightness(0) invert(1); }
[data-theme=dark] .founding-dialog .founding-close:hover { background:#29454e; }
/* Motion is clipped to the existing mark, with no outer glow or layout changes. */
:is(.site-header, .topbar) .brand-mark { position:relative; overflow:hidden; }
.brand-sequence { display:none; width:calc(100% - 10px); height:auto; overflow:hidden; }
html.founding-logo-playing :is(.site-header, .topbar) .brand-mark { background-image:none; }
.founding-logo-playing .brand-sequence { display:block; animation:shupai-logo-sequence 6s linear both; }
.brand-sequence .logo-process,
.brand-sequence .logo-packet-in,
.brand-sequence .logo-packet-out { opacity:0; }
.founding-logo-playing .logo-loop-track { animation:shupai-logo-track 6s linear both; }
.founding-logo-playing .logo-loop-close { stroke-dasharray:100; animation:shupai-logo-loop 6s ease-in-out both; }
.founding-logo-playing .logo-input { stroke-dasharray:100; animation:shupai-logo-input 6s ease-in-out both; }
.founding-logo-playing .logo-output { stroke-dasharray:100; animation:shupai-logo-output 6s ease-in-out both; }
.founding-logo-playing .logo-node { transform-origin:41px 322px; animation:shupai-logo-node 6s ease-in-out both; }
.founding-logo-playing .logo-core { animation:shupai-logo-core 6s ease-in-out both; }
.founding-logo-playing .logo-center { transform-origin:342px 242px; animation:shupai-logo-center 6s ease-in-out both; }
.founding-logo-playing .logo-process { transform-origin:342px 242px; animation:shupai-logo-process 6s linear both; }
.founding-logo-playing .logo-check { stroke-dasharray:100; animation:shupai-logo-check 6s ease-in-out both; }
.founding-logo-playing .logo-packet-in { animation:shupai-logo-packet-in 6s linear both; }
.founding-logo-playing .logo-packet-out { animation:shupai-logo-packet-out 6s linear both; }
@keyframes shupai-logo-sequence { 0%,100% { opacity:1; } }
@keyframes shupai-logo-track { 0%,74% { opacity:.16; } 96%,100% { opacity:1; } }
@keyframes shupai-logo-loop { 0%,74% { stroke-dashoffset:100; } 96%,100% { stroke-dashoffset:0; } }
@keyframes shupai-logo-input { 0%,10% { stroke-dashoffset:100; } 31%,100% { stroke-dashoffset:0; } }
@keyframes shupai-logo-output { 0%,51% { stroke-dashoffset:100; } 65%,100% { stroke-dashoffset:0; } }
@keyframes shupai-logo-node { 0% { opacity:.2; transform:scale(.7); } 10% { opacity:1; transform:scale(1); } 15% { transform:scale(1.12); } 23%,100% { opacity:1; transform:scale(1); } }
@keyframes shupai-logo-core { 0%,24% { opacity:.2; } 36%,100% { opacity:1; } }
@keyframes shupai-logo-center { 0%,27% { opacity:.15; transform:scale(.65); } 37% { opacity:1; transform:scale(1.22); } 45% { transform:scale(.86); } 52%,100% { opacity:1; transform:scale(1); } }
@keyframes shupai-logo-process { 0%,30% { opacity:0; transform:rotate(0deg); } 35% { opacity:.9; } 49% { opacity:.9; } 55%,100% { opacity:0; transform:rotate(320deg); } }
@keyframes shupai-logo-check { 0%,64% { stroke-dashoffset:100; opacity:.3; } 75%,100% { stroke-dashoffset:0; opacity:1; } }
@keyframes shupai-logo-packet-in {
  0%,12% { opacity:0; transform:translate(41px,322px); }
  15% { opacity:1; transform:translate(65px,322px); }
  26% { opacity:1; transform:translate(196px,322px); }
  31% { opacity:1; transform:translate(245px,298px); }
  35%,100% { opacity:0; transform:translate(342px,242px); }
}
@keyframes shupai-logo-packet-out {
  0%,52% { opacity:0; transform:translate(440px,223px); }
  56% { opacity:1; transform:translate(461px,209px); }
  61% { opacity:1; transform:translate(504px,194px); }
  66%,100% { opacity:0; transform:translate(551px,194px); }
}
@media (prefers-reduced-motion:reduce) {
  .founding-logo-playing .brand-sequence,
  .founding-logo-playing .brand-sequence * { animation:none; }
}
@media (max-width:480px) {
  .founding-dialog { padding:42px 24px 24px; }
  .founding-dialog h2 { font-size:27px; }
}
.founding-cinema-open { overflow:hidden; }
#founding-dialog.founding-cinema-host {
  position:fixed; inset:0; width:100vw; height:100dvh; max-width:none; max-height:none;
  margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; overflow:hidden;
}
.founding-cinema-host::backdrop { background:#03080d99; backdrop-filter:blur(12px); }
.founding-cinema-host iframe { display:block; width:100%; height:100%; border:0; background:transparent; }
.founding-frame-fallback { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; flex-direction:column; gap:20px; color:#d6e8e6; background:#090f12; z-index:1; }
.founding-frame-fallback[hidden] { display:none; }
.founding-frame-fallback a { color:#94d8d3; }
.founding-frame-fallback .founding-close img { filter:brightness(0) invert(1); }
