.do-fw{--do-fw-ink:#3b2a1a;--do-fw-cream:#fffaf2;--do-fw-line:#e6dccb;--do-fw-accent:#b45309;background:var(--do-fw-cream);border:1px solid var(--do-fw-line);border-radius:12px;color:var(--do-fw-ink);font-size:.875rem;line-height:1.6;margin:2rem auto;max-width:720px;padding:1.25rem;position:relative}.do-fw-title{font-size:1.25rem;margin:0 0 .25rem}.do-fw-help{color:#6b5b45;margin:0 0 1rem}.do-fw-stage{min-height:200px}.do-fw-wheel-wrap{display:flex;justify-content:center;position:relative}.do-fw-wheel{height:auto;max-width:380px;overflow:visible;width:100%}.do-fw-slice{cursor:pointer;stroke:var(--do-fw-cream);stroke-width:1.5;transition:opacity .16s ease,filter .16s ease}.do-fw-slice:focus,.do-fw-slice:hover{filter:brightness(1.08);outline:none}.do-fw-slice:focus-visible{stroke:#111827;stroke-width:3}.do-fw-slice.is-active{filter:brightness(1.12) saturate(1.1)}.do-fw-slice-inner{stroke-width:1}.do-fw-slice-label{fill:#fff;font-size:11px;font-weight:600;pointer-events:none}.do-fw-hub-text{fill:var(--do-fw-ink);font-size:12px;font-weight:700;pointer-events:none}.do-fw-tooltip{background:#1f2937;border-radius:8px;box-shadow:0 6px 18px rgba(0,0,0,.25);color:#fff;display:flex;flex-direction:column;gap:2px;max-width:220px;padding:.5rem .65rem;pointer-events:none;position:absolute;z-index:5}.do-fw-tooltip[hidden]{display:none}.do-fw-details{margin:.75rem 0}.do-fw-details-title{font-size:1rem;margin:0}.do-fw-details-sub{color:#6b5b45;margin:0}.do-fw-bars{display:flex;flex-direction:column;gap:.6rem;margin:1rem 0}.do-fw-bar-head{display:flex;gap:.5rem;justify-content:space-between}.do-fw-bar-name{font-weight:600}.do-fw-bar-score{font-variant-numeric:tabular-nums}.do-fw-bar-track{background:#efe6d6;border-radius:999px;height:8px;overflow:hidden}.do-fw-bar-fill{background:linear-gradient(90deg,#f59e0b,var(--do-fw-accent));border-radius:999px;height:100%;transition:width .24s ease}.do-fw-bar-meta{color:#7a6a52;font-size:.8rem}.do-fw-summary{margin:1rem 0}.do-fw-summary-text{font-weight:600;margin:0 0 .25rem}.do-fw-stats,.do-fw-summary-method{color:#7a6a52;font-size:.8rem;margin:0}.do-fw-skeleton{display:flex;flex-direction:column;gap:.6rem;padding:1rem 0}.do-fw-skel-bar{animation:do-fw-shimmer 1.4s ease infinite;background:linear-gradient(90deg,#efe6d6 25%,#f7f1e6 37%,#efe6d6 63%);background-size:400% 100%;border-radius:999px;height:14px}@keyframes do-fw-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.do-fw-empty,.do-fw-error{align-items:flex-start;border-radius:10px;display:flex;flex-direction:column;gap:.5rem;padding:1rem}.do-fw-empty{background:#fdf6e9;border:1px dashed var(--do-fw-line)}.do-fw-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.do-fw-notice{color:#166534;font-weight:600}.do-fw-form{border-top:1px solid var(--do-fw-line);margin-top:1.25rem;padding-top:1rem}.do-fw-form-title{font-size:1rem;margin:0 0 .5rem}.do-fw-field{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.do-fw-attr-fieldset{border:1px solid var(--do-fw-line);border-radius:8px;margin:0 0 .75rem;padding:.75rem}.do-fw-attr-row{align-items:center;display:flex;gap:.75rem;padding:2px 0}.do-fw-attr-label{align-items:center;display:flex;flex:1 1 auto;gap:.4rem;min-width:0}.do-fw-attr-row input[type=range]{flex:0 0 120px}.do-fw-attr-row input[type=range][disabled]{opacity:.4}.do-fw-btn{align-items:center;background:#fff;border:1px solid var(--do-fw-line);border-radius:8px;color:var(--do-fw-ink);cursor:pointer;display:inline-flex;font-size:.875rem;gap:.4rem;padding:.45rem .9rem}.do-fw-btn:hover{border-color:var(--do-fw-accent)}.do-fw-btn:focus-visible{outline:2px solid var(--do-fw-accent);outline-offset:2px}.do-fw-btn-primary{background:var(--do-fw-accent);border-color:var(--do-fw-accent);color:#fff}.do-fw-btn[disabled]{cursor:progress;opacity:.6}.do-fw-form-status{color:#7a6a52;margin:.5rem 0 0}@media (prefers-reduced-motion:reduce){.do-fw-skel-bar{animation:none}.do-fw-bar-fill,.do-fw-slice{transition:none}}@media (max-width:520px){.do-fw-attr-row{flex-wrap:wrap}.do-fw-attr-row input[type=range]{flex-basis:100%}}.do-fw-error-actions{display:inline-flex;gap:.5rem;margin-inline-start:.5rem}
