:root{font-family:system-ui,sans-serif;color:#192337;background:#f4f6fa;line-height:1.65;color-scheme:light}*{box-sizing:border-box}body{margin:0}header,main,footer{max-width:72rem;margin:auto;padding:1.5rem}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dce2eb}header>a{font-size:1.5rem;font-weight:800;color:inherit;text-decoration:none}.sample-mark{font-size:clamp(2.5rem,8vw,5rem);font-weight:950;letter-spacing:.08em;color:#b52158;line-height:1.15}h1{margin:.5rem 0;font-size:2rem}h1 span{font-size:1.2rem;font-weight:500}nav{display:flex;flex-wrap:wrap;gap:.35rem 1rem;margin:.7rem 0}a{color:#174f96}a[aria-current=page]{font-weight:800;text-decoration-thickness:3px}details{margin:1rem 0}summary{cursor:pointer}dl{padding:1rem 1.3rem;background:white;border:1px solid #dce2eb;border-radius:.75rem}dt{font-weight:700}dd{margin:0 0 .6rem;overflow-wrap:anywhere}code{display:inline-block;font-family:ui-monospace,monospace}input[type=radio]{position:absolute;width:1px;height:1px;opacity:0}.choices{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0}.choices label{padding:.6rem .9rem;background:white;border:1px solid #aebbcf;border-radius:2rem;cursor:pointer}.variants:focus-within .choices{outline:2px solid #174f96;outline-offset:5px}.asset-panel{display:block;background:white;border:1px solid #dce2eb;border-radius:1rem;padding:1.5rem;margin:1rem 0}[data-variant=A] .v-B,[data-variant=B] .v-A{display:none}video{max-width:100%;height:auto;display:block;margin:auto;background:#fff;border-radius:.4rem}.count{margin-inline-start:.6rem;color:#4b586e}.thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.75rem}.asset-panel h3{font-size:1rem;margin:1.5rem 0 .75rem}.next a{display:inline-block;margin-top:1rem;padding:.75rem 1.2rem;background:#202b43;color:white;border-radius:.5rem;text-decoration:none}.asset-panel h2{font-size:1.15rem;margin:0 0 1rem}.previews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}figure{margin:0;text-align:center}img{max-width:100%;height:auto;display:block;margin:auto;background:repeating-conic-gradient(#fafafa 0% 25%,#eee 0% 50%) 50%/20px 20px;border-radius:.4rem}figcaption{font-size:.9rem;color:#4b586e}.downloads{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.5rem}.downloads a{padding:.75rem 1.2rem;background:#202b43;color:white;border-radius:.5rem;text-decoration:none}.downloads a:hover{background:#3b4d71}.pending{padding:3rem 1rem;text-align:center}footer{border-top:1px solid #dce2eb;margin-top:2rem;font-size:.9rem}footer h2{font-size:1rem}a:focus-visible,label:focus-visible,summary:focus-visible{outline:3px solid #ba285b;outline-offset:3px}@media(max-width:600px){header,main,footer{padding:1rem}.previews{grid-template-columns:1fr}.asset-panel{padding:1rem}.choices label{font-size:.85rem}}.status{font-size:1.05rem;padding:.9rem 1rem;background:white;border:1px solid #dce2eb;border-radius:.75rem}.solution,.order{background:white;border:1px solid #dce2eb;border-radius:1rem;padding:1.2rem 1.5rem;margin:1rem 0}.solution h2,.order h2{font-size:1.15rem;margin:0 0 .6rem}.moves{direction:ltr;unicode-bidi:isolate;display:block;width:100%;margin:.4rem 0;padding:.5rem .6rem;font:.95rem/1.6 ui-monospace,monospace;color:inherit;background:#f4f6fa;border:1px solid #dce2eb;border-radius:.4rem;resize:vertical}.note{color:#4b586e;font-size:.9rem}.order-row{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:center;margin:.8rem 0}.order-row button{font:inherit;padding:.75rem 1.2rem;border:0;border-radius:.5rem;background:#202b43;color:white;opacity:.6;cursor:not-allowed}.order-row .to-anim{padding:.7rem 1.1rem;border:2px solid #202b43;border-radius:.5rem;text-decoration:none;font-weight:600}.board-pair{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;max-width:48rem;margin:1rem auto}.board-pair img{width:100%;height:auto;background:white;border:1px solid #dce2eb;border-radius:.6rem}.board-pair figcaption{margin-top:.3rem}.order .price{font-size:1.05rem;font-weight:600;margin:.4rem 0}.order .note{color:#4b586e;font-size:.9rem}.order .row{display:flex;flex-wrap:wrap;gap:.5rem 1.2rem;align-items:center;margin:.6rem 0}.order .row label{display:inline-flex;gap:.4rem;align-items:center}.order select,.order input{font:inherit;font-size:.9rem}
