.circularity-page{width:min(100% - 2rem,76rem);margin:clamp(1.5rem,4vw,3.5rem) auto 4rem}.circularity-tool{border:1px solid rgb(var(--color-border));background:radial-gradient(circle at 7% 0%,rgba(var(--color-accent),.16),transparent 34%),radial-gradient(circle at 95% 100%,rgba(var(--color-positive),.08),transparent 30%),rgb(var(--color-card));box-shadow:var(--shadow-card);border-radius:1.75rem;padding:clamp(1rem,3vw,2.3rem);position:relative;overflow:hidden}.circularity-tool:before{background:linear-gradient(90deg,transparent,rgba(var(--color-accent),.7),transparent);content:"";width:16rem;height:1px;position:absolute;top:0;right:7%}.circularity-tool-header,.circularity-panel-header,.circularity-tool-actions,.circularity-axis-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.circularity-tool-header{z-index:1;margin-bottom:clamp(1.25rem,3vw,2rem);position:relative}.circularity-eyebrow,.circularity-panel-kicker,.circularity-guide-eyebrow{color:rgb(var(--color-accent));font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .45rem;font-size:.72rem;font-weight:600}.circularity-tool h1{letter-spacing:-.05em;max-width:38rem;margin:0;font-size:clamp(2rem,5vw,4rem)}.circularity-tool-lead{color:rgb(var(--color-text-muted));max-width:38rem;margin:.75rem 0 0;font-size:clamp(1rem,2vw,1.15rem)}.circularity-connection{border:1px solid rgb(var(--color-border));background:rgba(var(--color-fill),.46);border-radius:.9rem;flex:none;align-items:center;gap:.65rem;min-width:13rem;padding:.7rem .85rem;display:flex}.circularity-connection strong,.circularity-connection span{display:block}.circularity-connection strong{color:rgb(var(--color-text-base));font-size:.85rem}.circularity-connection [data-controller-name]{overflow-wrap:anywhere;color:rgb(var(--color-text-muted));font-family:var(--font-mono);max-width:15rem;font-size:.68rem}.circularity-status-dot,.circularity-tool-footer i{background:rgb(var(--color-warning));box-shadow:0 0 .8rem rgba(var(--color-warning),.55);border-radius:50%;flex:none;width:.6rem;height:.6rem;display:inline-block}.circularity-stick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.circularity-stick-panel{border:1px solid rgb(var(--color-border));background:linear-gradient(145deg,rgba(var(--color-card-muted),.52),rgba(var(--color-fill),.55)),rgb(var(--color-fill));border-radius:1.25rem;min-width:0;padding:clamp(.85rem,2vw,1.35rem)}.circularity-panel-header{align-items:flex-start}.circularity-panel-kicker{color:rgb(var(--color-text-muted));margin-bottom:.25rem;font-size:.68rem}.circularity-panel-header h2{margin:0;font-size:clamp(1.25rem,3vw,1.65rem)}.circularity-panel-badge{border:1px solid rgba(var(--color-accent),.45);color:rgb(var(--color-accent));font-family:var(--font-mono);letter-spacing:.08em;border-radius:999px;padding:.35rem .55rem;font-size:.64rem}.circularity-panel-badge.is-coral{color:#fb7185;border-color:#fb718580}.circularity-axis-row{color:rgb(var(--color-text-muted));font-family:var(--font-mono);letter-spacing:.06em;margin-top:1rem;font-size:.69rem}.circularity-axis-row span{align-items:center;gap:.4rem;display:flex}.circularity-axis-row output{color:rgb(var(--color-text-base));font-size:.78rem;font-weight:600}.circularity-plot{aspect-ratio:1;background:radial-gradient(circle at center,rgba(var(--color-accent),.08)0 1px,transparent 1.5px),repeating-radial-gradient(circle at center,transparent 0 19.5%,rgba(var(--color-border),.26)20% 20.4%);border-radius:50%;width:min(100%,22rem);margin:1rem auto;display:block;overflow:visible}.circularity-plot-ring,.circularity-plot-axis{fill:none;stroke:rgb(var(--color-border))}.circularity-plot-ring{stroke-dasharray:1.2 2.4;stroke-width:.7px}.circularity-plot-ring.is-inner{stroke-dasharray:1 3;opacity:.6}.circularity-plot-axis{stroke-width:.35px;opacity:.75}.circularity-trace{fill:none;stroke:rgb(var(--color-accent));stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;filter:drop-shadow(0 0 .45rem rgba(var(--color-accent),.38))}.circularity-trace.is-coral{stroke:#fb7185;filter:drop-shadow(0 0 .45rem #fb718561)}.circularity-current-point{fill:rgb(var(--color-highlight,252,211,77));stroke:rgb(var(--color-card));stroke-width:1.5px}.circularity-current-point.is-coral{fill:#fb7185}.circularity-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.circularity-metric-card{border:1px solid rgba(var(--color-border),.8);background:rgba(var(--color-card-muted),.65);border-radius:.85rem;gap:.2rem;min-width:0;padding:.75rem;display:grid}.circularity-metric-card span{color:rgb(var(--color-text-muted));font-family:var(--font-mono);letter-spacing:.08em;font-size:.64rem}.circularity-metric-card strong{overflow-wrap:anywhere;color:rgb(var(--color-text-base));font-size:.87rem}.circularity-stick-panel[data-band=excellent] .circularity-metric-card:first-child strong{color:rgb(var(--color-positive))}.circularity-stick-panel[data-band=good] .circularity-metric-card:first-child strong{color:rgb(var(--color-accent))}.circularity-stick-panel[data-band=fair] .circularity-metric-card:first-child strong{color:rgb(var(--color-warning))}.circularity-stick-panel[data-band=attention] .circularity-metric-card:first-child strong{color:#fb7185}.circularity-stick-status{color:rgb(var(--color-text-muted));font-family:var(--font-mono);min-height:1.5rem;margin:.7rem 0 0;font-size:.72rem}.circularity-tool-actions{border-top:1px solid rgb(var(--color-border));align-items:stretch;margin-top:1rem;padding-top:1rem}.circularity-instruction{align-items:center;gap:.75rem;min-width:0;display:flex}.circularity-instruction>span{background:rgba(var(--color-accent),.12);color:rgb(var(--color-accent));border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-size:1.2rem;display:grid}.circularity-instruction p{color:rgb(var(--color-text-muted));margin:0;font-size:.9rem}.circularity-clear-button{border:1px solid rgb(var(--color-border));color:rgb(var(--color-text-base));cursor:pointer;background:0 0;border-radius:999px;flex:none;min-height:2.8rem;padding:.65rem 1rem}.circularity-clear-button:hover:not(:disabled){border-color:rgb(var(--color-accent));color:rgb(var(--color-accent))}.circularity-clear-button:disabled{cursor:not-allowed;opacity:.48}.circularity-tool-footer{color:rgb(var(--color-text-muted));font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-between;gap:.6rem 1rem;margin-top:1rem;font-size:.68rem;display:flex}.circularity-tool-footer span{align-items:center;display:inline-flex}.circularity-tool-footer i{background:rgb(var(--color-positive));box-shadow:0 0 .6rem rgba(var(--color-positive),.55);width:.4rem;height:.4rem;margin-right:.4rem}.circularity-guide{gap:1rem;width:min(100%,76rem);margin:1rem auto 0;display:grid}.circularity-page>.circularity-guide{width:100%;max-width:none;margin-inline:0}.circularity-guide-card{border:1px solid rgb(var(--color-border));background:linear-gradient(135deg,rgba(var(--color-card-muted),.3),rgba(var(--color-fill),.6)),rgb(var(--color-card));border-radius:1.4rem;min-width:0;padding:clamp(1.1rem,3vw,2rem)}.circularity-guide-eyebrow{margin-bottom:.55rem}.circularity-guide-card h2{letter-spacing:-.035em;max-width:52rem;margin:0;font-size:clamp(1.55rem,3vw,2.35rem)}.circularity-guide-card h3{color:rgb(var(--color-text-base));margin:2rem 0 .7rem;font-size:clamp(1.2rem,2.3vw,1.55rem)}.circularity-guide-card p{color:rgb(var(--color-text-muted));max-width:70rem;margin:1rem 0 0}.circularity-guide-card .circularity-guide-lead{color:rgb(var(--color-text-base));margin-top:1rem;font-size:1.08rem}.circularity-guide-card a{font-weight:600}.circularity-step-list{gap:.8rem;margin:1.2rem 0 0;padding-left:1.5rem;display:grid}.circularity-step-list li{color:rgb(var(--color-text-muted));padding-left:.35rem}.circularity-step-list strong{color:rgb(var(--color-text-base))}.circularity-guide-card blockquote{border-left:3px solid rgb(var(--color-accent));background:rgba(var(--color-accent),.08);color:rgb(var(--color-text-base));border-radius:0 .8rem .8rem 0;margin:1.5rem 0 0;padding:.9rem 1rem;font-size:1.05rem;font-style:normal}.circularity-table-wrap{border:1px solid rgb(var(--color-border));border-radius:.9rem;margin-top:1.25rem;overflow-x:auto}.circularity-table-wrap table{background:rgba(var(--color-fill),.22);min-width:42rem;margin:0}.circularity-table-wrap th,.circularity-table-wrap td{border:1px solid rgb(var(--color-border));vertical-align:top;padding:.8rem}.circularity-table-wrap th{background:rgba(var(--color-card-muted),.7);color:rgb(var(--color-text-base));font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.circularity-table-wrap td{color:rgb(var(--color-text-muted))}.circularity-table-wrap td:first-child{color:rgb(var(--color-text-base));min-width:8rem;font-weight:700}.circularity-faq-section details{border:1px solid rgb(var(--color-border));background:rgba(var(--color-fill),.32);border-radius:.9rem;margin-top:.75rem}.circularity-faq-section summary{color:rgb(var(--color-text-base));cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:3.2rem;padding:.85rem 1rem;font-weight:700;list-style:none;display:flex}.circularity-faq-section summary::-webkit-details-marker{display:none}.circularity-faq-section summary:after{color:rgb(var(--color-accent));content:"+";font-family:var(--font-mono);flex:none;font-size:1.1rem}.circularity-faq-section details[open] summary:after{content:"−"}.circularity-faq-section details p{margin:0;padding:0 1rem 1rem}.circularity-faq-section details a{color:rgb(var(--color-accent))}@media (max-width:760px){.circularity-page{width:min(100% - 1rem,44rem);margin-top:1rem}.circularity-tool-header,.circularity-tool-actions{flex-direction:column;align-items:flex-start}.circularity-connection{width:100%}.circularity-stick-grid{grid-template-columns:1fr}.circularity-plot{width:min(100%,20rem)}.circularity-clear-button{width:100%}.circularity-tool-footer{flex-direction:column;align-items:flex-start}.circularity-guide-card{padding:1rem}.circularity-guide-card h2{font-size:1.55rem}.circularity-table-wrap table{min-width:36rem}}@media (max-width:420px){.circularity-tool{border-radius:1.2rem;padding:.85rem}.circularity-tool h1{font-size:2.1rem}.circularity-metric-grid{grid-template-columns:1fr}.circularity-axis-row{flex-direction:column;align-items:flex-start;gap:.25rem}.circularity-table-wrap table{min-width:32rem}}@media (prefers-reduced-motion:reduce){.circularity-page *,.circularity-page :before,.circularity-page :after{scroll-behavior:auto;transition:none;animation:none}.circularity-trace{filter:none}}