.so-scope{--so-bg:var(--astro-bg);--so-surface:var(--astro-surface);--so-surface-2:var(--astro-surface-2);--so-border:var(--astro-border);--so-ink:var(--astro-ink);--so-ink-soft:var(--astro-ink-soft);--so-accent:var(--astro-accent);--so-accent-soft:var(--astro-accent-soft);--so-shadow:var(--astro-shadow);--so-serif:var(--astro-serif);--so-mono:var(--astro-mono);color:var(--so-ink)}.so-masthead{padding:1.4rem 1.5rem 1.1rem}.so-masthead-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.so-masthead-text{min-width:0}.so-eyebrow{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--so-accent);font-weight:700}.so-title{font-family:var(--so-serif);font-size:1.9rem;line-height:1.1;margin:.25rem 0 .2rem;color:var(--so-ink);text-wrap:balance}.so-lede{color:var(--so-ink-soft);font-size:.9rem;max-width:60ch;margin:0}.so-scope .card{background:var(--so-surface);border:1px solid var(--so-border);border-radius:14px;box-shadow:var(--so-shadow);overflow:hidden}.so-scope .card-header{background:var(--so-surface-2);border-bottom:1px solid var(--so-border)}.so-scope .alert{border-radius:10px;border:1px solid var(--so-border);background:var(--so-surface-2);color:var(--so-ink)}.so-scope .alert-warning{border-color:color-mix(in srgb,#d97706 40%,var(--so-border));background:color-mix(in srgb,#d97706 12%,var(--so-surface))}.so-scope .alert-info{border-color:color-mix(in srgb,var(--so-accent) 30%,var(--so-border));background:var(--so-accent-soft)}.so-scope .alert-danger{border-color:color-mix(in srgb,#b4453a 40%,var(--so-border));background:color-mix(in srgb,#b4453a 10%,var(--so-surface));color:color-mix(in srgb,#b4453a 75%,var(--so-ink))}.so-scope .btn-primary{background:var(--so-accent);border-color:var(--so-accent);border-radius:9px;font-weight:600}.so-scope .btn-primary:hover{background:color-mix(in srgb,var(--so-accent) 85%,#000);border-color:color-mix(in srgb,var(--so-accent) 85%,#000)}.so-scope .btn-outline-secondary,.so-scope .btn-outline-primary{color:var(--so-accent);border-color:color-mix(in srgb,var(--so-accent) 45%,var(--so-border));border-radius:9px}.so-scope .btn-outline-secondary:hover,.so-scope .btn-outline-primary:hover{background:var(--so-accent-soft);color:var(--so-accent);border-color:var(--so-accent)}.so-scope .form-control{background:var(--so-surface);border:1px solid var(--so-border);color:var(--so-ink);border-radius:9px}.so-scope .form-control:focus{border-color:var(--so-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--so-accent) 22%,transparent)}.so-scope .form-control:disabled{background:var(--so-surface-2);color:var(--so-ink-soft)}.so-scope .form-label{font-size:.78rem;color:var(--so-ink-soft);font-weight:600}.so-scope .progress{background:var(--so-surface-2);border:1px solid var(--so-border)}.so-scope .progress-bar{background:var(--so-accent)!important;font-family:var(--so-mono);font-variant-numeric:tabular-nums}.so-cast-title{font-family:var(--so-serif);font-size:1.2rem;color:var(--so-ink);margin-bottom:.3rem}.so-cast-instructions{color:var(--so-ink-soft);font-size:.92rem}.so-instructions-link{display:inline;border:0;margin:0;padding:0;font-size:.92rem;font-weight:600;color:var(--so-accent);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--so-accent) 40%,transparent);text-underline-offset:2px;vertical-align:baseline;line-height:inherit}.so-instructions-link:hover{color:color-mix(in srgb,var(--so-accent) 85%,#000);text-decoration-color:currentColor}.so-tap-row{display:flex;align-items:center;gap:.9rem}.so-tap-progress{flex:0 1 220px}.so-tap-btn{background:var(--so-accent);border-color:var(--so-accent);color:#fff;border-radius:10px;font-weight:600;padding:.55rem 1.4rem}.so-tap-btn:hover:not(:disabled){background:color-mix(in srgb,var(--so-accent) 85%,#000);border-color:color-mix(in srgb,var(--so-accent) 85%,#000)}.so-tap-btn:disabled{background:var(--so-surface-2);border-color:var(--so-border);color:var(--so-ink-soft)}.so-hexbuild{display:flex;flex-direction:column;gap:.5rem;max-width:220px;margin:1.1rem 0 .3rem}.so-hexbuild-line{position:relative;height:11px}.so-hexbuild-line svg{display:block;width:100%;height:100%;overflow:visible}.so-hexbuild-stroke{stroke:var(--so-border);stroke-width:11;vector-effect:non-scaling-stroke}.so-hexbuild-line.is-cast .so-hexbuild-stroke{stroke:var(--so-accent);animation:so-line-in .3s cubic-bezier(.2,.7,.3,1) both}.so-hexagram{text-align:center;color:var(--so-accent)}.so-hexagram-label{font-family:var(--so-serif);font-size:.95rem;font-weight:600;color:var(--so-ink);margin-top:.4rem}.so-exchange+.so-exchange{margin-top:1.6rem;padding-top:1.4rem;border-top:1px dashed var(--so-border)}.so-turn-label{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-bottom:.35rem}.so-turn-you .so-turn-label{color:var(--so-ink-soft)}.so-turn-socrates .so-turn-label{color:var(--so-accent)}.so-turn-you{color:var(--so-ink);font-size:.95rem}.so-turn-socrates{font-family:var(--so-serif);font-size:1.02rem;line-height:1.55;color:var(--so-ink);padding-left:1rem;border-left:2px solid var(--so-accent-soft);margin-top:.9rem}.so-turn-meta{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-top:.7rem;padding-left:1rem}.so-turn-stats{font-family:var(--so-mono);font-size:.74rem;color:var(--so-ink-soft);font-variant-numeric:tabular-nums}.so-turn-voted{font-size:.78rem;color:color-mix(in srgb,#2f7a4f 75%,var(--so-ink))}.so-question-remaining{font-family:var(--so-mono);color:var(--so-ink-soft);font-variant-numeric:tabular-nums}.so-question-remaining strong{color:var(--so-accent)}.so-action-row{display:flex;gap:.75rem;margin-top:.5rem}.so-action-row .btn{flex:1 1 0}.so-scope .modal-content{background:var(--so-surface);border:1px solid var(--so-border);border-radius:14px}.so-scope .modal-header,.so-scope .modal-footer{border-color:var(--so-border)}.so-scope .modal-title{font-family:var(--so-serif)}.so-scope .form-range{accent-color:var(--so-accent)}.so-scope .badge.bg-primary{background:var(--so-accent)!important}.so-instructions-body{color:var(--so-ink);font-size:.92rem;line-height:1.55}.so-instructions-body p{margin:0 0 .9rem}.so-instructions-body ul{margin:0 0 1rem;padding-left:1.2rem}.so-instructions-body li{margin-bottom:.35rem}.so-instructions-heading{font-family:var(--so-serif);font-size:.95rem;color:var(--so-accent);margin:1.1rem 0 .5rem}.so-instructions-heading:first-of-type{margin-top:0}.so-instructions-example{background:var(--so-surface-2);border:1px solid var(--so-border);border-radius:10px;padding:.8rem .9rem;margin-top:.4rem}.so-instructions-example-row{display:flex;gap:.6rem;align-items:baseline;font-size:.88rem}.so-instructions-example-row+.so-instructions-example-row{margin-top:.4rem}.so-instructions-tag{flex:0 0 auto;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;padding:.1rem .4rem;border-radius:5px}.so-instructions-tag-bad{color:color-mix(in srgb,#b4453a 75%,var(--so-ink));background:color-mix(in srgb,#b4453a 12%,var(--so-surface))}.so-instructions-tag-good{color:var(--so-accent);background:var(--so-accent-soft)}.so-instructions-full{margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--so-border)}.so-instructions-table{color:var(--so-ink);font-size:.82rem;border-color:var(--so-border)}.so-instructions-table th{font-family:var(--so-serif);color:var(--so-accent);border-color:var(--so-border)}.so-instructions-table td{border-color:var(--so-border);vertical-align:top}@media(max-width:576px){.so-masthead-row{flex-direction:column}.so-tap-row{flex-wrap:wrap}.so-tap-progress{flex-basis:100%}}@keyframes so-line-in{from{opacity:0;transform:scaleX(.4)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.so-hexbuild-line.is-cast .so-hexbuild-stroke{animation:none}}