/* Decorative chrome only. No layout transforms on forms, tables or work canvases. */
body[data-flourish] { --pf-ink:#af4530; --pf-second:#c99a39; --pf-soft:#ebcbb6; isolation:isolate; }
body[data-flourish="value"] { --pf-ink:#397c72; --pf-second:#c18c2a; --pf-soft:#bedbd0; }
body[data-flourish="manual"] { --pf-ink:#87618f; --pf-second:#b78d43; --pf-soft:#d9c9e1; }
body[data-flourish="knowledge"] { --pf-ink:#447e84; --pf-second:#b78b55; --pf-soft:#bed8d9; }
body[data-flourish="alliance"] { --pf-ink:#4b7295; --pf-second:#c28d39; --pf-soft:#c2d6e5; }
body[data-flourish="game"] { --pf-ink:#b25132; --pf-second:#bc922e; --pf-soft:#ecd5a3; }
body[data-flourish="fortune"] { --pf-ink:#8b638e; --pf-second:#ae7d49; --pf-soft:#dfc9e5; }
body[data-flourish="event"] { --pf-ink:#aa5477; --pf-second:#4e8c84; --pf-soft:#e5bfd1; }
body[data-flourish="travel"] { --pf-ink:#5c8060; --pf-second:#b59240; --pf-soft:#cadcb9; }
body[data-flourish="system"] { --pf-ink:#577588; --pf-second:#a77e55; --pf-soft:#c6d6de; }
.pf-atmosphere { position:fixed; inset:0; overflow:hidden; pointer-events:none; z-index:-1; }
.pf-atmosphere::before,.pf-atmosphere::after { content:""; position:absolute; width:70vmax; height:70vmax; border-radius:50%; background:radial-gradient(ellipse,var(--pf-soft),transparent 68%); opacity:.58; animation:pf-cloud 20s ease-in-out infinite alternate; }
.pf-atmosphere::before { top:-38%; right:-28%; }
.pf-atmosphere::after { bottom:-50%; left:-30%; background:radial-gradient(ellipse,#d7ddbf,transparent 65%); animation-delay:-10s; }
.pf-mark { position:absolute; left:var(--pf-x); top:var(--pf-y); font-size:var(--pf-size); line-height:1; color:var(--pf-ink); opacity:.25; animation:pf-roam var(--pf-time) ease-in-out infinite alternate; animation-delay:var(--pf-delay); }
.pf-mark:nth-child(3n) { color:var(--pf-second); }
.pf-mark > span { display:block; transition:translate .5s,rotate .5s,scale .5s; }
[data-flourish] .pf-hero { position:relative; border-bottom-color:var(--pf-ink); }
.pf-emblem { display:flex; gap:8px; position:absolute; right:12px; top:12px; height:40px; pointer-events:none; opacity:.55; }
.pf-emblem i { display:grid; place-items:center; width:32px; height:32px; border:1px solid currentColor; border-radius:50%; font:normal 24px/1 Georgia,serif; color:var(--pf-ink); background:color-mix(in srgb,var(--pf-soft) 55%,transparent); animation:pf-emblem 5s ease-in-out infinite; }
.pf-emblem i:nth-child(2) { color:var(--pf-second); border-radius:4px; animation-delay:-1.6s; }
.pf-emblem i:nth-child(3) { animation-delay:-3.2s; }
.pf-emblem::before { content:""; position:absolute; inset:-8px -4px 0; border:1px dashed var(--pf-ink); border-radius:50%; opacity:.45; animation:pf-orbit 18s linear infinite; pointer-events:none; }
[data-flourish] .pf-hero .pf-heading { width:fit-content; max-width:100%; }
[data-flourish] .pf-heading { text-decoration-color:transparent; text-underline-offset:8px; transition:color .3s,text-decoration-color .3s; }
[data-flourish] .pf-surface { border-top-color:color-mix(in srgb,var(--pf-ink) 55%,#d8cfbf); box-shadow:4px 6px 0 color-mix(in srgb,var(--pf-soft) 40%,transparent),0 14px 32px -27px var(--pf-ink); transition:border-color .35s,box-shadow .35s; }
[data-flourish] .pf-stamp { transition:scale .35s,rotate .35s,box-shadow .35s,color .35s; }
[data-flourish] .pf-control { transition:translate .3s,rotate .3s,box-shadow .3s,background-color .3s!important; }
[data-flourish] .pf-field { transition:border-color .25s,box-shadow .25s,background-color .25s; }
[data-flourish] .pf-field:focus { border-color:var(--pf-ink); box-shadow:0 0 0 4px color-mix(in srgb,var(--pf-soft) 55%,transparent),3px 4px 0 color-mix(in srgb,var(--pf-ink) 16%,transparent); }
[data-flourish] nav .pf-control:is([aria-current],[aria-selected="true"],.active,.is-active) { box-shadow:0 3px 0 var(--pf-ink); }
[data-flourish] .pf-drop { border-color:var(--pf-ink); background:linear-gradient(120deg,transparent,color-mix(in srgb,var(--pf-soft) 23%,transparent),transparent); background-size:220% 100%; animation:pf-paper-shift 8s ease-in-out infinite; }
@media(hover:hover) and (pointer:fine) {
  [data-flourish] .pf-heading:hover,[data-flourish] .pf-surface:hover > .pf-heading { color:var(--pf-ink); text-decoration-line:underline; text-decoration-style:wavy; text-decoration-thickness:1.5px; text-decoration-color:color-mix(in srgb,var(--pf-ink) 65%,transparent); }
  [data-flourish] .pf-surface:hover { border-top-color:var(--pf-ink); box-shadow:5px 8px 0 color-mix(in srgb,var(--pf-soft) 65%,transparent),0 18px 36px -27px var(--pf-ink); }
  [data-flourish] .pf-stamp:hover { scale:1.08; rotate:-5deg; color:var(--pf-ink); }
  [data-flourish] .pf-control:not(:disabled):not([aria-disabled="true"]):hover { translate:0 -3px; rotate:-1deg; box-shadow:3px 5px 0 color-mix(in srgb,var(--pf-ink) 20%,transparent); }
  [data-flourish] .pf-hero:hover .pf-emblem i { animation-duration:1.8s; }
  [data-flourish] .pf-control svg { transition:rotate .4s,scale .4s; }
  [data-flourish] .pf-control:hover svg { rotate:12deg; scale:1.12; }
  [data-flourish] .seat-link img { transition:rotate .4s,scale .4s,translate .4s; }
  [data-flourish] .seat-link:hover img { rotate:-12deg; scale:1.22; translate:0 -2px; }
  [data-flourish] .pf-drop:hover { border-style:solid; box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--pf-soft) 50%,transparent); }
}
[data-flourish] .pf-control:not(:disabled):not([aria-disabled="true"]):active { translate:0 1px; rotate:0deg; }
[data-flourish] .pf-control:focus-visible { outline:2px solid var(--pf-ink); outline-offset:4px; }
.pf-particles { position:fixed; inset:0; overflow:hidden; pointer-events:none; z-index:110; }
.pf-spark { position:absolute; color:var(--pf-ink); font-size:18px; line-height:1; }
.pf-spark:nth-child(2n) { color:var(--pf-second); }
.pf-paused :is(.pf-mark,.pf-emblem i,.pf-drop),.pf-paused .pf-atmosphere::before,.pf-paused .pf-atmosphere::after,.pf-paused .pf-emblem::before { animation-play-state:paused; }
@keyframes pf-orbit { to { rotate:360deg; } }
@keyframes pf-cloud { to { transform:translate(-7%,12%) scale(1.15); } }
@keyframes pf-roam { 0% { transform:translate(0,0) rotate(-15deg); } 50% { transform:translate(calc(var(--pf-drift) * .5),-42px) rotate(20deg); } 100% { transform:translate(var(--pf-drift),15px) rotate(65deg); } }
@keyframes pf-emblem { 0%,100% { transform:translateY(0) rotate(-12deg); } 50% { transform:translateY(-8px) rotate(14deg); } }
@keyframes pf-paper-shift { 50% { background-position:100% 0; } }
@media(max-width:700px) {
  .pf-mark:nth-child(n+7) { display:none; }
  .pf-emblem { right:6px; top:6px; opacity:.28; gap:5px; }
  .pf-emblem i { width:20px; height:20px; font-size:15px; }
  [data-flourish] .pf-surface { box-shadow:2px 3px 0 color-mix(in srgb,var(--pf-soft) 35%,transparent); }
}
@media print {
  .pf-atmosphere,.pf-particles,.pf-emblem { display:none!important; }
  [data-flourish] :is(.pf-heading,.pf-surface,.pf-stamp,.pf-control,.pf-field,.pf-drop) { animation:none!important; translate:none!important; rotate:none!important; scale:none!important; box-shadow:none!important; text-decoration:none!important; }
}
