*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--green: #58CC02;--green-dark: #4caf02;--green-light: #d7f5a0;--blue: #1CB0F6;--blue-dark: #0099da;--red: #FF4B4B;--red-dark: #e43c3c;--orange: #FF9600;--yellow: #FFD900;--purple: #CE82FF;--gray-100: #f7f7f7;--gray-200: #e5e5e5;--gray-300: #afafaf;--gray-600: #777;--gray-900: #3c3c3c;--white: #ffffff;--shadow: 0 4px 0 rgba(0,0,0,.12);--radius: 12px;--radius-sm: 8px}html,body,#root{height:100%}body{font-family:Nunito,Hiragino Sans,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;background:var(--gray-100);color:var(--gray-900);-webkit-font-smoothing:antialiased}button{cursor:pointer;border:none;font-family:inherit}.app{min-height:100vh;display:flex;flex-direction:column;align-items:center}.header{width:100%;max-width:680px;padding:16px 20px 8px;display:flex;align-items:center;gap:12px}.hearts{display:flex;gap:4px;align-items:center}.heart{font-size:22px;line-height:1;transition:transform .2s}.heart.empty{filter:grayscale(1) opacity(.3)}.xp-badge{margin-left:auto;background:var(--yellow);color:var(--gray-900);font-weight:800;font-size:14px;padding:4px 10px;border-radius:20px}.progress-bar-wrap{flex:1;height:16px;background:var(--gray-200);border-radius:8px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--green);border-radius:8px;transition:width .4s ease}.welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;gap:20px}.welcome-logo{font-size:80px;line-height:1}.welcome h1{font-size:36px;font-weight:900;color:var(--green)}.welcome p{font-size:18px;color:var(--gray-600);max-width:400px;line-height:1.6}.welcome-features{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin:8px 0}.feature-chip{background:var(--white);border:2px solid var(--gray-200);border-radius:20px;padding:8px 16px;font-size:14px;font-weight:700;color:var(--gray-600)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800;font-size:16px;padding:14px 32px;border-radius:var(--radius);border:none;transition:transform .1s,box-shadow .1s;min-width:200px}.btn:active{transform:translateY(2px)}.btn-primary{background:var(--green);color:var(--white);box-shadow:0 4px 0 var(--green-dark)}.btn-primary:hover{background:#64da02}.btn-primary:active{box-shadow:0 2px 0 var(--green-dark)}.btn-secondary{background:var(--white);color:var(--blue);border:2px solid var(--blue)}.btn-danger{background:var(--red);color:var(--white);box-shadow:0 4px 0 var(--red-dark)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.question-screen{flex:1;width:100%;max-width:680px;padding:16px 20px;display:flex;flex-direction:column;gap:16px}.difficulty-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-300)}.question-title{font-size:22px;font-weight:800;color:var(--gray-900);line-height:1.3}.question-subtitle{font-size:16px;color:var(--gray-600);line-height:1.5}.regex-display{background:var(--gray-900);color:#f8f8f2;font-family:Menlo,Monaco,Courier New,monospace;font-size:20px;font-weight:700;padding:16px 20px;border-radius:var(--radius);letter-spacing:.02em;text-align:center}.regex-display .slash{color:#75715e}.regex-display .pattern{color:#a6e22e}.regex-display .flags-text{color:#66d9ef}.options-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.option-btn{padding:14px 12px;background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);font-size:15px;font-weight:700;font-family:Menlo,Monaco,Courier New,monospace;color:var(--gray-900);box-shadow:0 2px 0 var(--gray-200);transition:all .15s;text-align:center;word-break:break-all}.option-btn:hover:not(:disabled){border-color:var(--blue);color:var(--blue);transform:translateY(-1px);box-shadow:0 3px #b0e8fc}.option-btn.selected{background:#e8f4fd;border-color:var(--blue);color:var(--blue);box-shadow:0 2px 0 var(--blue-dark)}.option-btn.correct{background:var(--green-light);border-color:var(--green);color:var(--green-dark)}.option-btn.incorrect{background:#ffe0e0;border-color:var(--red);color:var(--red-dark)}.mc-options{display:flex;flex-direction:column;gap:10px}.mc-option{padding:14px 18px;background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);font-size:15px;font-weight:600;color:var(--gray-900);text-align:left;box-shadow:0 2px 0 var(--gray-200);transition:all .15s;line-height:1.4}.mc-option:hover:not(:disabled){border-color:var(--blue);color:var(--blue);transform:translateY(-1px)}.mc-option.selected{background:#e8f4fd;border-color:var(--blue);color:var(--blue)}.mc-option.correct{background:var(--green-light);border-color:var(--green);color:var(--green-dark)}.mc-option.incorrect{background:#ffe0e0;border-color:var(--red);color:var(--red-dark)}.build-area{min-height:60px;background:var(--white);border:2px dashed var(--gray-200);border-radius:var(--radius);padding:10px 12px;display:flex;flex-wrap:wrap;gap:6px;align-items:center;position:relative}.build-area-label{font-size:12px;color:var(--gray-300);position:absolute;top:8px;left:12px;pointer-events:none}.regex-prefix{font-family:Menlo,Monaco,Courier New,monospace;font-size:18px;color:var(--gray-300);font-weight:700}.placed-panel{display:inline-flex;align-items:center;background:var(--blue);color:var(--white);border-radius:var(--radius-sm);padding:6px 10px;font-family:Menlo,Monaco,Courier New,monospace;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 2px 0 var(--blue-dark);transition:all .1s;-webkit-user-select:none;user-select:none}.placed-panel:hover{background:var(--red);box-shadow:0 2px 0 var(--red-dark)}.placed-panel.correct-panel{background:var(--green);box-shadow:0 2px 0 var(--green-dark);cursor:default}.placed-panel.incorrect-panel{background:var(--red);box-shadow:0 2px 0 var(--red-dark);cursor:default}.panels-grid{display:flex;flex-wrap:wrap;gap:8px}.panel-token{padding:10px 14px;background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);font-family:Menlo,Monaco,Courier New,monospace;font-size:15px;font-weight:700;color:var(--gray-900);box-shadow:0 3px 0 var(--gray-200);transition:all .1s;-webkit-user-select:none;user-select:none}.panel-token:hover:not(:disabled){background:var(--blue);color:var(--white);border-color:var(--blue);box-shadow:0 3px 0 var(--blue-dark);transform:translateY(-1px)}.panel-token:active:not(:disabled){transform:translateY(1px);box-shadow:0 1px 0 var(--blue-dark)}.panel-token:disabled{opacity:.4;cursor:not-allowed}.build-controls{display:flex;gap:8px;align-items:center}.btn-clear{padding:8px 16px;background:var(--gray-100);border:2px solid var(--gray-200);border-radius:var(--radius-sm);font-size:13px;font-weight:700;color:var(--gray-600);transition:all .1s}.btn-clear:hover{background:var(--gray-200)}.test-cases{display:flex;flex-direction:column;gap:6px}.test-case-row{display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--white);border-radius:var(--radius-sm);border:1px solid var(--gray-200);font-size:14px}.test-case-row code{font-family:Menlo,Monaco,Courier New,monospace;background:var(--gray-100);padding:2px 6px;border-radius:4px;font-size:13px}.test-expect{font-size:12px;color:var(--gray-300);margin-left:auto}.test-result{font-size:16px}.feedback-bar{position:fixed;bottom:0;left:0;right:0;z-index:100;padding:20px;display:flex;flex-direction:column;align-items:center;gap:12px;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.feedback-bar.correct{background:var(--green-light);border-top:3px solid var(--green)}.feedback-bar.incorrect{background:#ffe0e0;border-top:3px solid var(--red)}.feedback-inner{width:100%;max-width:680px;display:flex;flex-direction:column;gap:10px}.feedback-title{font-size:20px;font-weight:900}.feedback-bar.correct .feedback-title{color:var(--green-dark)}.feedback-bar.incorrect .feedback-title{color:var(--red-dark)}.feedback-explanation{font-size:14px;color:var(--gray-900);line-height:1.5}.feedback-answer{font-family:Menlo,Monaco,Courier New,monospace;background:#0000000f;padding:6px 10px;border-radius:6px;font-size:13px}.feedback-actions{display:flex;justify-content:flex-end}.feedback-spacer{height:160px}.complete-screen{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;gap:20px;max-width:480px;margin:0 auto}.complete-trophy{font-size:80px}.complete-screen h2{font-size:32px;font-weight:900}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;width:100%}.stat-card{background:var(--white);border-radius:var(--radius);padding:16px;border:2px solid var(--gray-200);display:flex;flex-direction:column;align-items:center;gap:4px}.stat-value{font-size:28px;font-weight:900;color:var(--green)}.stat-label{font-size:12px;color:var(--gray-300);font-weight:700;text-transform:uppercase;letter-spacing:.05em}.section-label{font-size:13px;font-weight:700;color:var(--gray-600);text-transform:uppercase;letter-spacing:.06em}.header{width:100%;max-width:680px;padding:12px 16px;display:flex;align-items:center;gap:10px}.btn-back{background:none;border:none;font-size:18px;color:var(--gray-300);padding:4px 8px;border-radius:6px;cursor:pointer;flex-shrink:0;transition:color .1s}.btn-back:hover{color:var(--gray-600)}.header-center{flex:1;display:flex;flex-direction:column;gap:4px}.header-section-name{font-size:13px;font-weight:700;color:var(--gray-600)}.question-counter{font-size:14px;font-weight:800;color:var(--gray-600);flex-shrink:0}.review-badge{display:inline-block;background:var(--orange);color:#fff;font-size:10px;font-weight:800;padding:2px 6px;border-radius:4px;margin-right:5px;vertical-align:middle;letter-spacing:.03em}.home-screen{width:100%;max-width:600px;margin:0 auto;padding:0 0 80px;display:flex;flex-direction:column}.home-topbar{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 12px;position:sticky;top:0;background:var(--gray-100);z-index:10}.home-logo{font-size:22px;font-weight:900;color:var(--green)}.home-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:28px 20px 20px;gap:10px;background:linear-gradient(160deg,#f0fce8,#e8f4fd);border-bottom:2px solid var(--gray-200)}.home-hero-emoji{font-size:56px;line-height:1}.home-hero-title{font-size:32px;font-weight:900;color:var(--green);margin:0}.home-hero-tagline{font-size:15px;color:var(--gray-600);line-height:1.5;max-width:340px}.home-hero-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:4px}.hero-badge{background:var(--white);border:2px solid var(--gray-200);border-radius:20px;padding:4px 12px;font-size:12px;font-weight:700;color:var(--gray-600)}.home-section{padding:20px 20px 0;display:flex;flex-direction:column;gap:12px}.home-section-title{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-300)}.about-card{background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:16px 18px;display:flex;flex-direction:column;gap:12px}.about-text{font-size:14px;color:var(--gray-900);line-height:1.7}.about-rules{display:flex;flex-direction:column;gap:8px;padding-top:4px;border-top:1px solid var(--gray-200)}.about-rule{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--gray-600);line-height:1.4}.about-rule-icon{font-size:15px;flex-shrink:0;margin-top:1px}.qtype-list{display:flex;flex-direction:column;gap:10px}.qtype-card{background:var(--white);border:2px solid var(--gray-200);border-left-width:4px;border-radius:var(--radius);padding:12px 14px;display:flex;flex-direction:column;gap:6px}.qtype-header{display:flex;align-items:center;gap:8px}.qtype-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0}.qtype-label{font-size:14px;font-weight:800}.qtype-desc{font-size:13px;color:var(--gray-600);line-height:1.5;padding-left:36px}.home-summary-inner{background:var(--white);border-radius:var(--radius);padding:14px 16px;border:2px solid var(--gray-200);display:flex;flex-direction:column;gap:8px}.home-progress-text{font-size:14px;font-weight:700;color:var(--gray-600)}.home-progress-bar-wrap{height:12px;background:var(--gray-200);border-radius:6px;overflow:hidden}.home-progress-bar-fill{height:100%;background:var(--green);border-radius:6px;transition:width .5s ease}.sections-list{display:flex;flex-direction:column;padding:12px 20px 0;gap:0}.section-card{position:relative;display:flex;align-items:center;gap:14px;background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:16px;margin-bottom:12px;cursor:pointer;transition:all .15s;box-shadow:0 2px 0 var(--gray-200);-webkit-user-select:none;user-select:none}.section-card:hover:not(.locked){border-color:var(--green);box-shadow:0 3px 0 var(--green-dark);transform:translateY(-1px)}.section-card:active:not(.locked){transform:translateY(1px);box-shadow:0 1px 0 var(--gray-200)}.section-card.locked{cursor:default;opacity:.6}.section-card.completed{border-color:var(--green);background:#f5fff0}.section-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;box-shadow:0 3px #00000026}.section-info{flex:1;min-width:0}.section-num{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-300);margin-bottom:2px}.section-title{font-size:16px;font-weight:800;color:var(--gray-900);margin-bottom:2px}.section-subtitle{font-size:13px;color:var(--gray-600)}.section-status{flex-shrink:0}.status-badge{display:inline-flex;align-items:center;padding:5px 10px;border-radius:20px;font-size:12px;font-weight:800}.completed-badge{background:var(--green-light);color:var(--green-dark)}.locked-badge{background:var(--gray-200);color:var(--gray-300)}.play-badge{background:var(--green);color:#fff}.home-footer{padding:20px;display:flex;justify-content:center}.btn-reset{background:none;border:2px solid var(--gray-200);border-radius:var(--radius-sm);padding:8px 20px;font-size:13px;font-weight:700;color:var(--gray-300);cursor:pointer;transition:all .1s}.btn-reset:hover{border-color:var(--red);color:var(--red)}.result-screen{flex:1;width:100%;max-width:480px;margin:0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:40px 20px;text-align:center}.result-trophy{font-size:80px;line-height:1}.result-title{font-size:30px;font-weight:900;color:var(--green)}.result-section-name{font-size:16px;font-weight:700;color:var(--gray-600)}.result-stats{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.result-stat{background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:14px 20px;display:flex;flex-direction:column;align-items:center;gap:4px;min-width:90px;color:var(--green)}.result-stat-value{font-size:24px;font-weight:900}.result-stat-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-300)}.result-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.next-section-preview{width:100%;background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:16px;text-align:left}.next-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-300);margin-bottom:10px}.next-section-card{display:flex;align-items:center;gap:12px}.next-section-icon{font-size:28px}.next-section-title{font-size:15px;font-weight:800}.next-section-sub{font-size:13px;color:var(--gray-600)}.fail-message{background:#fff3f3;border:2px solid #ffd0d0;border-radius:var(--radius);padding:14px 18px;display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--gray-900);line-height:1.5}.fail-progress-wrap{width:100%}.fail-dots{display:flex;gap:6px;justify-content:center}.fail-dot{width:28px;height:14px;border-radius:7px;background:var(--gray-200)}.fail-dot.ok{background:var(--green)}.fail-dot.fail{background:var(--red)}.fail-dot.empty{background:var(--gray-200)}.home-nav-challenge{padding:8px 16px;background:linear-gradient(135deg,#ff9600,#ff4b4b);color:#fff;font-size:13px;font-weight:800;border:none;border-radius:20px;cursor:pointer;box-shadow:0 3px #c44000;transition:transform .1s,box-shadow .1s;letter-spacing:.02em;white-space:nowrap}.home-nav-challenge:hover{background:linear-gradient(135deg,#fa2,#ff6060)}.home-nav-challenge:active{transform:translateY(2px);box-shadow:0 1px #c44000}.challenge-select-screen{width:100%;max-width:600px;margin:0 auto;display:flex;flex-direction:column;min-height:100vh}.csel-header{display:flex;align-items:center;gap:12px;padding:16px 20px 12px;position:sticky;top:0;background:var(--gray-100);z-index:10}.csel-logo{font-size:18px;font-weight:900;color:var(--green)}.csel-hero{display:flex;flex-direction:column;align-items:center;text-align:center;padding:24px 20px 20px;gap:10px;background:linear-gradient(160deg,#fff8ee,#fff0e0);border-bottom:2px solid var(--gray-200);margin:0 -20px}.csel-hero-icon{font-size:52px;line-height:1}.csel-hero-title{font-size:28px;font-weight:900;color:var(--gray-900);margin:0}.csel-hero-tagline{font-size:14px;color:var(--gray-600);line-height:1.7;max-width:320px}.csel-hero-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:2px}.csel-badge{background:var(--white);border:2px solid var(--gray-200);border-radius:20px;padding:3px 12px;font-size:12px;font-weight:700;color:var(--gray-600)}.csel-body{padding:20px 20px 60px;display:flex;flex-direction:column;gap:24px}.csel-section{display:flex;flex-direction:column;gap:12px}.csel-section-title{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-300)}.csel-about-card{background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:16px 18px;display:flex;flex-direction:column;gap:10px}.csel-about-text{font-size:14px;color:var(--gray-900);line-height:1.75}.csel-steps{display:flex;flex-direction:column;gap:10px}.csel-step{display:flex;align-items:flex-start;gap:12px;background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:14px 16px}.csel-step-num{width:24px;height:24px;background:var(--orange);color:#fff;border-radius:50%;font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.csel-step-icon{font-size:22px;line-height:1;flex-shrink:0}.csel-step-body{flex:1;min-width:0}.csel-step-title{font-size:14px;font-weight:800;color:var(--gray-900);margin-bottom:3px}.csel-step-desc{font-size:13px;color:var(--gray-600);line-height:1.55}.csel-rules-card{background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:14px 16px;display:flex;flex-direction:column;gap:10px}.csel-rule{font-size:13px;color:var(--gray-900);display:flex;gap:10px;align-items:flex-start;line-height:1.5}.csel-rule-icon{font-size:15px;flex-shrink:0;margin-top:1px}.csel-footer-note{font-size:13px;color:var(--gray-600);text-align:center;line-height:1.6}.csel-link-btn{background:none;border:none;color:var(--blue);font-size:13px;font-weight:700;cursor:pointer;padding:0 2px;text-decoration:underline;font-family:inherit}.belt-list{display:flex;flex-direction:column;gap:12px}.belt-card{display:flex;align-items:center;gap:16px;background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:16px;text-align:left;cursor:pointer;box-shadow:0 3px 0 var(--gray-200);transition:all .15s;font-family:inherit}.belt-card:hover{border-color:var(--orange);box-shadow:0 4px #d97800;transform:translateY(-1px)}.belt-card:active{transform:translateY(1px);box-shadow:0 1px 0 var(--gray-200)}.belt-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;box-shadow:0 3px #00000026}.belt-info{flex:1;min-width:0}.belt-label{font-size:17px;font-weight:900;margin-bottom:2px}.belt-desc{font-size:13px;color:var(--gray-600);margin-bottom:4px}.belt-penalty{font-size:12px;font-weight:700;color:var(--red);background:#ffe0e0;display:inline-block;padding:2px 8px;border-radius:10px}.belt-arrow{font-size:24px;color:var(--gray-300);flex-shrink:0}.challenge-play-screen{width:100%;max-width:680px;margin:0 auto;display:flex;flex-direction:column;min-height:100vh}.cp-header{width:100%;padding:12px 16px 8px;display:flex;align-items:center;gap:12px;background:var(--gray-100);position:sticky;top:0;z-index:10}.cp-timer-block{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px}.cp-timer{font-size:22px;font-weight:900;color:var(--gray-900);font-variant-numeric:tabular-nums;letter-spacing:.03em}.cp-penalty-total{font-size:11px;font-weight:700;color:var(--red);letter-spacing:.02em}.cp-counter{font-size:14px;font-weight:800;color:var(--gray-600);flex-shrink:0}.cp-belt-badge{text-align:center;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:4px 0 0}.cp-dots{display:flex;gap:5px;justify-content:center;padding:8px 16px 4px}.cp-dot{width:24px;height:10px;border-radius:5px;transition:background .2s}.cp-dot-pending{background:var(--gray-200)}.cp-dot-current{background:var(--blue)}.cp-dot-ok{background:var(--green)}.cp-dot-fail{background:var(--red)}.cp-question-wrap{flex:1}.cp-feedback{position:fixed;bottom:0;left:0;right:0;z-index:200;text-align:center;padding:18px 20px;font-size:20px;font-weight:900;animation:slideUp .25s ease}.cp-feedback-ok{background:var(--green-light);border-top:3px solid var(--green);color:var(--green-dark)}.cp-feedback-ng{background:#ffe0e0;border-top:3px solid var(--red);color:var(--red-dark)}.cp-feedback-penalty{display:inline-block;margin-left:10px;font-size:16px;background:#ff4b4b22;padding:2px 8px;border-radius:8px}.cr-screen{width:100%;max-width:480px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:18px;padding:40px 20px 60px;text-align:center}.cr-trophy{font-size:80px;line-height:1;animation:pop .4s cubic-bezier(.34,1.56,.64,1)}@keyframes pop{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.cr-rank{font-size:26px;font-weight:900}.cr-belt{font-size:16px;font-weight:800}.cr-stats{width:100%;display:flex;flex-direction:column;gap:12px}.cr-main-stat{background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;align-items:center;gap:4px}.cr-main-val{font-size:40px;font-weight:900;color:var(--gray-900);font-variant-numeric:tabular-nums}.cr-sub-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.cr-sub-stat{background:var(--white);border:2px solid var(--gray-200);border-radius:var(--radius);padding:12px 8px;display:flex;flex-direction:column;align-items:center;gap:4px}.cr-sub-val{font-size:20px;font-weight:900;color:var(--gray-900);font-variant-numeric:tabular-nums}.cr-stat-lbl{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-300)}.cr-dots{display:flex;gap:6px;justify-content:center;flex-wrap:wrap}.cr-dot{width:28px;height:12px;border-radius:6px}.cr-dot-ok{background:var(--green)}.cr-dot-fail{background:var(--red)}.cr-actions{display:flex;flex-direction:column;gap:12px;width:100%;align-items:center}.btn-twitter{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#000;color:#fff;font-weight:800;font-size:15px;padding:14px 32px;border-radius:var(--radius);text-decoration:none;min-width:200px;box-shadow:0 4px #333;transition:transform .1s,box-shadow .1s,background .1s}.btn-twitter:hover{background:#222}.btn-twitter:active{transform:translateY(2px);box-shadow:0 2px #333}@media (max-width: 480px){.question-title{font-size:18px}.regex-display{font-size:16px}.options-grid{grid-template-columns:repeat(2,1fr)}.result-stats{gap:10px}.result-stat{min-width:80px;padding:10px 14px}}
