:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:#1d1d1f;background:#f5f5f7;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;font-size:16px;font-weight:400;--blue: #0071e3;--blue-dark: #0062c4;--muted: #86868b;--hairline: rgba(0, 0, 0, .07)}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,a{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:max(24px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom))}.card{width:min(100%,620px);border:1px solid rgba(255,255,255,.9);border-radius:30px;background:#ffffffeb;box-shadow:0 24px 70px #1e233214,0 2px 8px #1e233206}.welcome-card,.result-card,.error-card{padding:54px clamp(28px,7vw,72px) 42px;text-align:center}.club-logo{display:block;width:88px;height:88px;object-fit:contain;margin:0 auto 24px}.club-logo,.wordmark-logo{cursor:pointer}h1{margin:0;font-size:clamp(30px,5vw,42px);font-weight:650;line-height:1.18;letter-spacing:-.045em}.welcome-card h1{margin-bottom:32px}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:center;gap:11px;padding:0 23px;border:0;border-radius:15px;cursor:pointer;font-size:17px;font-weight:600;transition:background-color .18s ease,transform .12s ease,opacity .18s ease}.button:active:not(:disabled){transform:scale(.98)}.button:focus-visible,.option:focus-visible,.wordmark:focus-visible{outline:3px solid rgba(0,113,227,.35);outline-offset:3px}.button-primary{color:#fff;background:var(--blue)}.button-primary:hover:not(:disabled){background:var(--blue-dark)}.button-primary:disabled{cursor:not-allowed;opacity:.42}.button-secondary{border:1px solid #c9ddf5;color:var(--blue);background:#f7fbff}.button-secondary:hover:not(:disabled){background:#eaf4ff}.button-wide{width:100%}.button-quiet{color:#6e6e73;background:transparent}.button-quiet:hover:not(:disabled){background:#f5f5f7}.button-quiet:disabled{cursor:default;opacity:.36}.small-note,.footer-note{margin:20px 0 0;color:var(--muted);font-size:13px}.quiz-layout{width:min(100%,820px)}.quiz-header{display:flex;align-items:center;justify-content:space-between;margin:0 4px 20px}.wordmark{display:inline-flex;align-items:center;gap:10px;color:#1d1d1f;text-decoration:none;font-size:14px;font-weight:620}.wordmark img{width:28px;height:28px;object-fit:contain}.round-label{color:var(--muted);font-size:13px}.question-card{min-height:660px;display:flex;flex-direction:column;padding:clamp(26px,5vw,48px)}.progress-row{color:var(--blue);font-size:14px;font-weight:620}.muted{color:var(--muted);font-weight:450}.progress-track{height:5px;overflow:hidden;margin-top:12px;border-radius:5px;background:#e8e8ed}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--blue);transition:width .2s ease}.question-title{height:145px;flex:0 0 145px;overflow:hidden;max-width:700px;margin:32px 0 0;font-size:34px;line-height:1.42;letter-spacing:-.035em}.option-list{flex:none;display:grid;gap:10px;margin-top:14px}.option{width:100%;min-height:68px;display:flex;align-items:center;gap:15px;padding:10px 16px;border:1px solid #e5e5ea;border-radius:17px;color:#1d1d1f;background:#fff;text-align:left;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,transform .12s ease}.option:active{transform:scale(.994)}.option:hover{border-color:#b7d6f8;background:#fbfdff}.option.is-selected{border-color:var(--blue);background:#f2f8ff}.option-letter{width:35px;height:35px;flex:0 0 35px;display:grid;place-items:center;border-radius:50%;color:#6e6e73;background:#f5f5f7;font-size:14px;font-weight:650}.option.is-selected .option-letter{color:#fff;background:var(--blue)}.option-text{min-width:0;flex:1;overflow-wrap:anywhere;font-size:17px;line-height:1.5}.option-check{width:22px;color:var(--blue);font-weight:700;text-align:center}.question-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:28px}.footer-note{text-align:center}.result-mark,.error-mark{width:64px;height:64px;display:grid;place-items:center;margin:0 auto 26px;border-radius:50%;color:#fff;background:#34c759;font-size:31px;font-weight:550}.result-card h1,.error-card h1{font-size:clamp(27px,4vw,36px)}.score{display:flex;justify-content:center;align-items:baseline;gap:8px;margin:24px 0 30px;color:#6e6e73}.score strong{color:#1d1d1f;font-size:78px;font-weight:650;line-height:1;letter-spacing:-.06em}.score span{font-size:17px}.result-card .button+.button{margin-top:12px}.result-copy,.error-copy{margin:18px 0 30px;color:#6e6e73;font-size:16px;line-height:1.7}.home-button{width:100%;margin-top:8px}.error-mark{color:#b45309;background:#fff2db;font-weight:700}.error-copy{overflow-wrap:anywhere}.loading-card{padding:36px;color:var(--muted);text-align:center}.debug-exit{min-height:42px;padding-left:0}.debug-card{padding:clamp(25px,4vw,42px)}.debug-card h1{font-size:clamp(29px,4.5vw,38px)}.quiz-settings{margin-top:22px;padding:20px;border:1px solid #e5e5ea;border-radius:18px;background:#fafafd}.settings-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.settings-heading h2{margin:0;font-size:18px;font-weight:650}.settings-heading .button{min-height:40px;padding:0 14px;font-size:14px}.settings-grid{display:grid;grid-template-columns:minmax(120px,.65fr) minmax(240px,1.35fr);gap:14px}.settings-note{margin:12px 0 16px;color:var(--muted);font-size:13px;line-height:1.5}.setting-toggle{display:flex;align-items:flex-start;gap:10px;margin-top:12px;cursor:pointer}.setting-toggle input{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;accent-color:var(--blue)}.setting-toggle span{display:grid;gap:3px}.setting-toggle strong{font-size:14px;font-weight:570}.setting-toggle small,.settings-status{color:var(--muted);font-size:12px}.settings-status{display:block;min-height:18px;margin-top:15px}.debug-controls{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:26px 0 10px}.editor-field{display:grid;gap:8px;color:#6e6e73;font-size:13px;font-weight:550}.editor-field input,.editor-field textarea,.editor-field select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #dedee3;border-radius:11px;color:#1d1d1f;background:#fff;font:inherit;font-size:15px;font-weight:400}.editor-field textarea{min-height:74px;resize:vertical;line-height:1.5}.editor-field input:focus,.editor-field textarea:focus,.editor-field select:focus{border-color:var(--blue);outline:3px solid rgba(0,113,227,.13)}.bank-select-field{width:min(100%,420px)}.question-count{padding:0 0 12px;color:var(--muted);font-size:14px;white-space:nowrap}.save-status{min-height:22px;margin:10px 0 16px;color:var(--muted);font-size:13px}.save-status.is-dirty{color:#a15c00}.debug-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.button-save{color:var(--blue);background:#eef6ff}.button-save:hover:not(:disabled){background:#e0efff}.button-save:disabled{cursor:default;opacity:.48}.button-delete{min-height:42px;justify-self:start;padding:0 15px;color:#b42318;background:#fff2f0;font-size:14px}.button-delete:hover{background:#ffe4e0}.editor-list{display:grid;gap:10px}.edit-question{overflow:hidden;border:1px solid #e5e5ea;border-radius:15px;background:#fff}.edit-question[open]{border-color:#c7ddf7}.edit-question summary{min-height:62px;display:flex;align-items:center;gap:12px;padding:12px 15px;list-style:none;cursor:pointer}.edit-question summary::-webkit-details-marker{display:none}.edit-question summary:after{width:20px;flex:0 0 20px;color:var(--muted);content:"+";font-size:21px;text-align:center}.edit-question[open] summary:after{content:"−"}.edit-number{color:var(--blue);font-size:12px;font-weight:700;letter-spacing:.05em}.edit-summary{flex:1;overflow:hidden;font-size:14px;line-height:1.5;text-overflow:ellipsis}.edit-answer{color:var(--muted);font-size:12px;white-space:nowrap}.editor-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:4px 15px 18px}.editor-fields>.editor-field:nth-child(2){grid-column:1 / -1}.answer-field{max-width:180px}.empty-bank{padding:8px 4px;color:var(--muted);text-align:center}.review-card{padding:clamp(24px,4vw,38px)}.review-card h1{margin-bottom:22px;font-size:clamp(27px,4vw,34px)}.review-list{max-height:min(62vh,560px);overflow-y:auto;display:grid;gap:14px;margin:0;padding:0 8px 0 26px}.review-item{padding:14px 16px;border:1px solid #e5e5ea;border-radius:15px}.review-item h2{margin:0 0 12px;font-size:16px;line-height:1.55;font-weight:600}.review-answer{margin:6px 0 0;color:#6e6e73;font-size:14px;line-height:1.55}.review-answer.is-correct{color:#17803d}.review-answer.is-wrong{color:#b42318}.review-actions{display:flex;justify-content:space-between;gap:12px;margin-top:20px}@media(max-width:600px){.app-shell{padding-right:14px;padding-left:14px}.welcome-card,.result-card,.error-card{padding:38px 25px 30px;border-radius:25px}.club-logo{width:74px;height:74px}.question-card{min-height:620px;padding:24px 20px;border-radius:24px}.question-title{height:130px;flex-basis:130px;margin-top:24px}.option{gap:12px;padding:9px 12px}.option-text{font-size:16px}.question-footer .button{padding:0 16px;font-size:15px}.review-card{padding:22px 16px;border-radius:24px}.review-list{max-height:58vh;padding-left:22px}.review-item{padding:12px}.review-actions .button{padding:0 14px;font-size:14px}.debug-card{padding:24px 16px;border-radius:24px}.quiz-settings{padding:15px 13px}.settings-heading .button{min-height:38px;padding:0 11px;font-size:13px}.settings-grid{grid-template-columns:1fr;gap:11px}.debug-controls{align-items:end;gap:10px}.question-count{font-size:12px}.debug-actions .button{flex:1;padding:0 12px;font-size:14px}.edit-question summary{gap:8px;padding:10px}.edit-answer{display:none}.editor-fields{grid-template-columns:1fr;gap:12px;padding-right:11px;padding-left:11px}.editor-fields>.editor-field:nth-child(2){grid-column:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
