.rules-progress-wrap{margin-top:35px;max-width:280px}
.rules-progress-wrap .rules-seal{display:grid;width:190px;height:190px;margin:0;place-content:center;gap:4px;color:var(--gold);border-color:#b997603d;isolation:isolate}
.rules-progress-svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg);pointer-events:none;overflow:visible;z-index:-1}
.rules-progress-track,.rules-progress-inner,.rules-progress-ring{fill:none;stroke:#b997602e;stroke-width:2}
.rules-progress-inner{stroke-width:1;stroke:#b9976024}
.rules-progress-ring{stroke:#d8b879;stroke-width:3.5;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset .65s ease,filter .4s}
.rules-progress-wrap .rules-seal>.rules-progress-brand{font-family:var(--serif);font-size:32px;letter-spacing:-2px;padding-right:2px;line-height:1.15;color:#b99a64}
.rules-progress-percent{font-family:var(--serif);font-size:25px;font-weight:400;line-height:1.4;color:#edd19e}
.rules-progress-wrap .rules-seal>small{font-size:5px;letter-spacing:1.5px;color:#ac9976;margin-top:2px}
.rules-seal.is-complete .rules-progress-ring{stroke:#ecd09b;filter:drop-shadow(0 0 6px #d5b06c88)}
.rules-seal.is-complete .rules-progress-percent{color:#f3dca9}
.rules-progress-status{font-family:var(--sans);font-size:11px;color:#e0c48f;margin-top:18px;line-height:1.8}
.rules-progress-hint{font-size:11px;line-height:1.9;color:#a7b3c6;margin-top:7px;max-width:265px}
.rules-progress-save{display:block;font-size:9px;line-height:1.8;color:#7f8c9f;margin-top:9px}
.rule-read-mark{margin-left:auto;white-space:nowrap;font-size:8px;letter-spacing:.4px;color:#c9b57f;font-family:var(--sans);padding-left:8px}
.rule-read-mark[hidden]{display:none}
.rule.is-read .rule-number{color:#d9bc81}
.rule.is-read .rule-icon{margin-left:4px}
.rule-confirmation{display:flex;flex-wrap:wrap;align-items:center;gap:11px 15px;margin:0 17px 23px 35px}
.rule-read-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:42px;padding:10px 16px;background:#c8a76712;border:1px solid #c8a76770;color:#e1c28b;font-size:10px;font-family:var(--sans);line-height:1.6;transition:background .2s,border-color .2s}
.rule-read-button:hover{background:#c8a76727;border-color:#e1c28b}
.rule-read-button:disabled{opacity:1;cursor:default;background:#9cba9d10;border-color:#9cba9d40;color:#bac8b4}
.rule-read-check{font-size:15px;line-height:1}
.rule-confirm-hint{font-size:9px;line-height:1.8;color:#8995a8}
@media(max-width:650px){.rules-progress-wrap{max-width:none;display:grid;grid-template-columns:132px minmax(0,1fr);column-gap:20px;margin-top:27px;align-items:center}.rules-progress-wrap .rules-seal{width:132px;height:132px;grid-row:1/4;box-shadow:inset 0 0 0 8px var(--bg),inset 0 0 0 9px #b9976020;gap:2px}.rules-progress-wrap .rules-seal>.rules-progress-brand{font-size:25px}.rules-progress-percent{font-size:22px}.rules-progress-wrap .rules-seal>small{font-size:4px;letter-spacing:.9px}.rules-progress-wrap .rules-seal:before,.rules-progress-wrap .rules-seal:after{font-size:15px;top:calc(50% - 14px)}.rules-progress-wrap .rules-seal:before{left:-7px}.rules-progress-wrap .rules-seal:after{right:-7px}.rules-progress-status{font-size:10px;margin:0;align-self:end}.rules-progress-hint{font-size:10px;margin-top:5px;line-height:1.7}.rules-progress-save{font-size:8px;margin-top:6px;align-self:start}.rule-confirmation{margin-left:30px;margin-right:0;gap:10px}.rule-read-button{min-height:44px;font-size:10px;padding:10px 14px}.rule-confirm-hint{font-size:9px;max-width:200px}.rule-read-mark{font-size:0;padding-left:3px}.rule-read-mark:before{content:'✓';font-size:12px}.rule.is-read .rule-icon{margin-left:1px}}
@media(max-width:360px){.rules-progress-wrap{grid-template-columns:110px minmax(0,1fr);column-gap:16px}.rules-progress-wrap .rules-seal{width:110px;height:110px}.rules-progress-wrap .rules-seal>.rules-progress-brand{font-size:22px}.rules-progress-percent{font-size:19px}.rules-progress-wrap .rules-seal>small{font-size:3.5px;letter-spacing:.6px}}
@media(prefers-reduced-motion:reduce){.rules-progress-ring{transition:none}}
