:root{--lapis:#18234a;--lapis-deep:#0f1631;--lac:#b8392a;--lac-dark:#8e2a1f;--lac-bright:#dc5a46;--wasli:#eaddbf;--gold:#c9a04a;--gold-bright:#e6c374;--leaf:#7e8f55;--ink:#2a1c14;--hack-cyan:#00f0ff;--hack-magenta:#ff2bd6;--font-display:"Tiro Devanagari Sanskrit", "Iowan Old Style", Georgia, serif;--font-body:"Alegreya", "Iowan Old Style", Georgia, serif;--font-hack:"VT323", ui-monospace, monospace;--step--1:clamp(14px, 10.5px + .5833vw, 17.5px);--step-0:clamp(17px, 12.75px + .7083vw, 21.25px);--step-1:clamp(21px, 15.75px + .875vw, 26.25px);--step-2:clamp(26px, 19.5px + 1.0833vw, 32.5px);--step-3:clamp(33px, 24.75px + 1.375vw, 41.25px);--step-4:clamp(41px, 30.75px + 1.7083vw, 51.25px);--gutter:16px;--folio-max:1100px}*,:before,:after{box-sizing:border-box}html,body{background:var(--lapis);min-height:100%;color:var(--wasli);font:var(--step-0) / 1.55 var(--font-body);-webkit-font-smoothing:antialiased;margin:0}button{font:inherit}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}.folio{max-width:var(--folio-max);border:clamp(8px, 1.6vw, 14px) solid var(--lac);outline:2px solid var(--gold);outline-offset:calc(-1 * clamp(8px, 1.6vw, 14px) - 2px);min-height:100dvh;padding:calc(var(--gutter) + 6px) var(--gutter);flex-direction:column;gap:14px;margin:0 auto;display:flex;position:relative}.folio:before{content:"";pointer-events:none;border:2px dotted #ffffff8c;position:absolute;inset:4px}.inscription{background:var(--wasli);color:var(--ink);border:1px solid var(--gold);max-width:60ch;padding:12px 16px}.inscription h2{font:var(--step-2) / 1.2 var(--font-display);margin:0 0 4px}.inscription p{margin:0}.btn{appearance:none;background:var(--wasli);color:var(--ink);border:2px solid var(--gold);font:var(--step-1) / 1 var(--font-display);cursor:pointer;min-height:48px;padding:12px 22px}.btn:active{box-shadow:inset 0 3px 8px #00000059}.btn:disabled{opacity:.45;cursor:default}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.board{filter:drop-shadow(0 10px 18px #00000073);width:min(100%,560px,50dvh);margin:0 auto;display:block}.tray{background:var(--lac-dark);border:2px solid var(--gold);padding:16px var(--gutter) 12px;justify-items:center;gap:8px;display:grid;position:relative;overflow:hidden}.tray__dice{perspective:600px;align-items:center;gap:18px;min-height:52px;display:flex}.pasa{--len:clamp(64px, 18vw, 92px);--thick:clamp(18px, 5vw, 24px);--half:calc(var(--thick) / 2);width:var(--len);height:var(--thick);transform-style:preserve-3d}.pasa__bar{width:100%;height:100%;transform-style:preserve-3d;position:relative}.pasa__face{backface-visibility:hidden;background:linear-gradient(#f3dc98,#d0a44c 55%,#a97c2c);border-radius:4px;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #50320a99}.pasa__pip{width:calc(var(--thick) * .26);aspect-ratio:1;background:#1a120c;border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:inset 0 1px 1px #ffffff40}.tray__total{font:var(--step-3) / 1 var(--font-display);color:var(--gold-bright);min-height:1em}.folio__toggles{flex-shrink:0;gap:8px;margin-top:-10px;margin-left:auto;display:flex}.turn-note{text-align:center;outline:none;min-height:1.55em;margin:0;font-style:italic}.folio__head{justify-content:space-between;align-items:start;gap:12px;min-height:32px;display:flex}.ledger{min-width:0;font-size:var(--step--1);align-items:center;gap:10px;display:flex}.ledger__label{color:var(--gold);flex:none;font-style:italic}.ledger__list{scrollbar-width:none;gap:6px;min-width:0;margin:0;padding:0 0 2px;list-style:none;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.ledger__item{border:1px solid var(--gold);color:var(--gold-bright);white-space:nowrap;background:#b8392a40;flex:none;align-items:center;gap:5px;padding:1px 8px;display:inline-flex}.ledger__glyph{color:var(--gold);display:inline-flex}.toggle{font-size:var(--step--1);color:var(--gold);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;min-height:44px;padding:0 4px;display:inline-flex}.toggle input{accent-color:var(--gold);width:18px;height:18px}.stage{flex-direction:column;flex:1;gap:14px;display:flex}.page,.title,.ending{flex-direction:column;flex:1;justify-content:center;gap:18px;display:flex}.page .inscription{align-self:center;width:100%}.page .inscription p+p{margin-top:8px}.page__actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.inscription--compact{padding:8px 12px}.inscription--compact h2{font-size:var(--step-1)}.inscription__meta{font-size:var(--step--1)}.btn--quiet{color:var(--wasli);font-size:var(--step-0);background:0 0;border-color:#c9a04a99;align-self:center}.title{text-align:center;align-items:center}.title__name,.ending__title{font:var(--step-4) / 1.1 var(--font-display);color:var(--gold-bright);text-wrap:balance;margin:0}.title__name{font-size:clamp(var(--step-4), 11vw, 90px)}.title__dev{font:var(--step-3) / 1 var(--font-display);color:var(--lac-bright);margin:-10px 0 0}.title__premise,.ending__copy{max-width:44ch;margin:0 auto}.ending{text-align:center}.ending__status{min-height:1.55em;color:var(--gold);margin:0}.race-legend{font-size:var(--step--1);color:#eaddbfcc;justify-content:center;gap:18px;margin:-6px 0 0;display:flex}.race-legend span:before{content:"";vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.race-legend__y:before{box-shadow:inset 0 -3px 0 var(--leaf);background:#fffaf0}.race-legend__s:before{background:var(--gold)}.throwoff-score{grid-template-columns:1fr 1fr;align-self:center;gap:12px;width:100%;max-width:360px;display:grid}.throwoff-score p{color:var(--gold);border:1px solid #c9a04a99;justify-items:center;margin:0;padding:8px;display:grid}.throwoff-score b{font:var(--step-4) / 1.1 var(--font-display);color:var(--gold-bright)}.page--sari .sari{border:2px solid var(--gold);background:radial-gradient(ellipse at 50% 0%, #508cff8c, transparent 60%), var(--lapis-deep);height:min(48dvh,420px);position:relative;overflow:hidden}.sari__panel{border-top:3px solid var(--gold-bright);border-bottom:3px solid var(--gold-bright);transform-origin:50% 0;background:repeating-linear-gradient(90deg,#0000 0 18px,#e6c3748c 18px 20px),linear-gradient(90deg,#8e1f2a,#c8372d 30%,#e04a3a 50%,#c8372d 70%,#8e1f2a);height:8%;position:absolute;top:0;left:15%;right:15%;box-shadow:0 0 18px #78aaff80}.page--sari .sari__panel:nth-child(odd){left:18%;right:12%}@media (min-width:900px){.stage{gap:18px}}.ledger[hidden]{display:none}html,body{overscroll-behavior:none;height:100%;overflow:hidden}body{background:var(--lapis-deep)}.shell{position:fixed;inset:0}.stage3d{touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.folio{max-width:none;min-height:0;padding:max(10px, env(safe-area-inset-top)) var(--gutter) max(12px, env(safe-area-inset-bottom));pointer-events:none;isolation:isolate;border:0;outline:0;justify-content:space-between;margin:0;position:absolute;inset:0}.folio:before{display:none}.folio:after{content:"";pointer-events:none;z-index:-1;background:linear-gradient(#0000,#0f16318c 45%,#0f1631d9);height:46dvh;position:absolute;inset:auto 0 0}.folio__head,.stage{pointer-events:none}.folio__head>*,.stage>*>*,.stage>.tray,.stage>.turn-note,.stage>.btn{pointer-events:auto}.folio__toggles{margin-top:0}.toggle{background:#0f163199;padding:0 10px}.stage{scrollbar-width:none;flex:none;justify-content:flex-end;gap:10px;width:min(100%,clamp(640px,480px + 26.67vw,800px));max-height:58dvh;margin:0 auto;padding:22px 12px 4px;overflow-y:auto}.page,.title,.ending{flex:none;gap:12px}.stage .inscription{--leaf-ochre:#dcc58f;--leaf-edge:#603a1680;--leaf-rule:#7e481e66;color:var(--ink);background:linear-gradient(90deg, transparent 28px, var(--leaf-rule) 28px 29px, transparent 29px calc(100% - 29px), var(--leaf-rule) calc(100% - 29px) calc(100% - 28px), transparent calc(100% - 28px)), repeating-linear-gradient(0deg, #78522412 0 1px, transparent 1px 3px, #fff6d614 3px 4px, transparent 4px 7px), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='60'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.02 .55' numOctaves='3' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 .45 0 0 0 0 .3 0 0 0 0 .12 0 0 0 .22 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E"), linear-gradient(180deg, #e7d4a3, var(--leaf-ochre) 45%, #d3b97f);box-shadow:inset 0 0 14px 2px var(--leaf-edge), inset 0 0 2px 1px #502e1073, 0 3px 0 -1px #c2a46b, 0 6px 0 -2px #a8894f, 0 22px 34px -10px #080604bf;border:0;border-radius:6px/14px;padding:14px 40px 15px;position:relative}.stage .inscription:before,.stage .inscription:after{content:"";width:9px;height:9px;box-shadow:0 5px 0 -3px var(--lac-dark), 0 9px 0 -3px var(--lac-dark), 0 13px 0 -3px var(--lac);pointer-events:none;background:radial-gradient(circle,#2a1a0e 0 45%,#6e421ce6 60%,#0000 72%);border-radius:50%;margin-top:-4.5px;position:absolute;top:50%}.stage .inscription:before{left:11px}.stage .inscription:after{right:11px}.page .inscription h2{color:#3a2212}.page--loss .inscription h2{color:var(--lac-dark)}.page{perspective:900px}.page .inscription{transform-origin:50% 100%;transform:rotateX(9deg)}@media (prefers-reduced-motion:reduce){.page .inscription{transform:none}}.title{padding-bottom:6dvh}.title__name,.title__dev,.ending__title{text-shadow:0 2px 18px #0f1631e6}.folio:has(.ending):after{background:linear-gradient(#0000,#22140e80 50%,#22140ec7);height:40dvh}.tray{background:0 0;border:0;padding:0;overflow:visible}.tray__total{text-shadow:0 2px 12px #0f1631e6}.turn-note{text-shadow:0 1px 8px #0f1631e6}.race-legend{margin:0}.loading{z-index:40;background:radial-gradient(ellipse at 30% 55%, #0a0e24d1 20%, #0a0e2459 100%), url(/art/title.webp) 70% 50% / cover, var(--lapis-deep);place-content:center;justify-items:center;gap:12px;transition:opacity .8s;display:grid;position:absolute;inset:0}.loading--done{opacity:0;pointer-events:none}.loading__title{font:var(--step-4) / 1 var(--font-display);color:var(--lac-bright);margin:0}.loading__label{color:var(--gold);margin:0;font-style:italic}.loading__track{background:#c9a04a40;width:180px;height:2px;overflow:hidden}.loading__bar{background:var(--gold);transform-origin:0;height:100%;transition:transform .3s;display:block;transform:scaleX(0)}@media (min-width:900px){.stage{margin-bottom:2dvh}}.toggle{color:var(--wasli);background:#0f1631b8;border:1px solid #c9a04a8c;gap:8px;padding:0 12px 0 10px}.toggle:has(input:checked){border-color:var(--gold)}.toggle input{appearance:none;border:1.5px solid var(--gold);background:0 0;place-content:center;width:18px;height:18px;margin:0;display:grid}.toggle input:before{content:"";background:var(--gold-bright);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%);width:10px;height:10px;transition:transform .12s;transform:scale(0)}.toggle input:checked:before{transform:scale(1)}.hud{background:#0f1631b8;border-block:1px solid #c9a04a73;align-self:center;justify-items:center;gap:4px;max-width:100%;padding:6px 16px;display:grid}.hud .race-legend,.hud .turn-note{margin:0}.throwoff-score{justify-content:center;gap:28px;max-width:none;display:flex}.throwoff-score p{border:0;padding:0;display:block}.throwoff-score b{font-size:var(--step-2)}.tray .btn:disabled{opacity:1;color:var(--wasli);background:#0f1631b8;border-color:#c9a04a80}.ending .page__actions{animation:.8s 1.2s backwards ending-in}@keyframes ending-in{0%{opacity:0}}.ledger{background:#0f163199;padding:2px 8px}.ledger__list{-webkit-mask-image:none;mask-image:none}@media (max-width:599px){.folio__head{flex-wrap:wrap;row-gap:6px}.folio__toggles{order:-1;margin:0 0 0 auto}.ledger{flex:100%}}.race-top{top:max(58px, calc(env(safe-area-inset-top) + 48px));left:var(--gutter);max-width:min(clamp(340px, 255px + 14.17vw, 425px), calc(100vw - 2 * var(--gutter)));gap:8px;display:grid;position:fixed}.stage .inscription--compact{pointer-events:none;padding:9px 34px 10px}@media (max-width:599px){.race-top{top:max(94px, calc(env(safe-area-inset-top) + 84px))}}@media (min-width:600px) and (min-aspect-ratio:3/2){.race-top .hud{right:calc(50% + 32dvh);bottom:calc(max(12px, env(safe-area-inset-bottom)) + 2dvh);max-width:calc(50% - 32dvh - var(--gutter));position:fixed}}.throw-bar{left:var(--gutter);right:var(--gutter);bottom:max(12px, env(safe-area-inset-bottom));grid-template-columns:1fr 42vw 1fr;align-items:end;display:grid;position:fixed}.throw-bar>.tray{grid-column:3}.throw-bar>.btn--quiet{grid-area:1/1}.throw-bar .btn{width:100%;font-size:var(--step-0);padding:10px 8px;line-height:1.1}.throw-bar .btn--quiet{font-size:var(--step--1)}@media (min-width:600px) and (min-aspect-ratio:3/2){.throw-bar{left:calc(50% + 32dvh);right:auto;bottom:calc(max(12px, env(safe-area-inset-bottom)) + 2dvh);max-width:calc(50% - 32dvh - var(--gutter));grid-template-columns:none;justify-items:center;gap:10px}.throw-bar>.tray,.throw-bar>.btn--quiet{grid-area:auto}.throw-bar .tray{grid-auto-flow:column;align-items:center;gap:14px}.throw-bar .tray__total{text-align:center;min-width:1.2em}.throw-bar .btn{width:auto;font-size:var(--step-1);padding:12px 22px;line-height:1}.throw-bar .btn--quiet{font-size:var(--step-0)}}.skip-layer{z-index:5;display:none;position:absolute;inset:0}.skip-layer--live{display:block}.veil{z-index:6;opacity:0;pointer-events:none;background:#000;position:absolute;inset:0}.caption{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}body[data-shot]:not([data-shot=title]) .caption:not(:empty){z-index:7;left:50%;bottom:max(28px, calc(env(safe-area-inset-bottom) + 20px));clip-path:none;white-space:normal;width:min(92vw,clamp(560px,420px + 23.33vw,700px));height:auto;color:var(--wasli);font:italic var(--step-0) / 1.4 var(--font-body,inherit);text-align:center;pointer-events:none;background:#0f1631d1;padding:8px 14px;position:fixed;overflow:visible;transform:translate(-50%)}.btn--quiet{background:#0f163199}@media (min-width:900px){.stage:has(>.page--sari){width:min(100%,440px);margin:0 28px 0 auto}}
