@charset "UTF-8";
:root{--green:#256358;--green-dark:#174a41;--mint:#e7f1eb;--ink:#20352f;--muted:#64746e;--line:#e0e7e2;--bg:#f7f9f6;--orange:#b75b30;--shadow:0 8px 30px #1b493008;font-family:Inter,"Microsoft YaHei","PingFang SC",system-ui,sans-serif;font-size:17px;color:var(--ink);background:var(--bg)}
*{box-sizing:border-box}body{margin:0;line-height:1.65}body.large{font-size:1.15rem}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:var(--green);text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #be772c;outline-offset:4px}button{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.4}h1{font-size:2.2em;letter-spacing:-.05em;font-weight:750}h2{font-size:1.42em}h3{font-size:1.12em}p{color:var(--muted)}small{font-size:.8em}.skip{position:fixed;top:-100px;left:16px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}.header{background:#ffffffed;border-bottom:1px solid var(--line)}.header-inner{max-width:1260px;margin:auto;min-height:92px;display:flex;align-items:center;gap:35px;padding:16px 30px}.brand{display:flex;align-items:center;gap:11px;font-size:1.35em;font-weight:750;color:var(--ink);white-space:nowrap}.brand-mark{display:grid;place-items:center;width:46px;height:46px;background:var(--green);color:white;border-radius:14px;font-size:1.25em;font-weight:600;box-shadow:0 3px 0 #174a4122}.brand small{display:block;color:var(--muted);font-size:.48em;font-weight:400;letter-spacing:1px}.header nav{display:flex;align-items:center;gap:26px;flex:1;justify-content:center;font-size:.86em;white-space:nowrap}.header nav a{padding:14px 0;color:var(--muted);position:relative}.header nav a.active{color:var(--green);font-weight:700}.header nav a.active:after{content:"";height:3px;width:22px;background:var(--green);position:absolute;bottom:3px;left:calc(50% - 11px);border-radius:3px}.header-actions{display:flex;align-items:center;gap:16px;white-space:nowrap}.text-button{background:none;border:0;padding:10px 0;color:var(--muted);font-size:.83em;min-height:44px}.text-button span{font-size:1.15em;margin-left:4px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 24px;min-height:51px;border:1px solid transparent;border-radius:10px;background:var(--green);color:white;font-weight:600;font-size:.95em;line-height:1.4}.button:hover{background:var(--green-dark)}.button.secondary{background:white;color:var(--green);border-color:#cddcd2}.button.secondary:hover{background:var(--mint)}.button.small{font-size:.82em;padding:10px 16px;min-height:44px}.button.ghost{color:var(--muted);background:transparent;border-color:var(--line)}.button.danger{color:#a13d30;border-color:#e6bfb7;background:#fff5f3}.icon{width:23px;height:23px;display:inline-block;vertical-align:middle;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}main{max-width:1180px;margin:0 auto;padding:32px 30px 64px;min-height:70vh;outline:none}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:.79em;letter-spacing:1px;font-weight:600}.eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green)}.hero{border:1px solid #dde8de;background:#edf4ec;position:relative;overflow:hidden;border-radius:20px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;min-height:350px;padding:42px 44px;gap:20px}.hero:after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;right:-95px;top:-150px;background:#e3edde;pointer-events:none}.hero h1{margin-top:13px;line-height:1.46;font-size:2.42em}.hero h1 em{font-style:normal;color:var(--green)}.hero-copy>p{margin:17px 0 25px;font-size:.94em;max-width:440px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.hero-note{display:flex;gap:17px;margin-top:17px;font-size:.73em;color:#596d5f}.hero-note span{display:flex;align-items:center;gap:5px}.hero-note .icon{width:15px;height:15px}.hero-art{position:relative;z-index:1;height:275px}.hero-art svg{width:100%;height:100%;overflow:visible}.notice{display:flex;gap:11px;align-items:center;border-radius:10px;padding:13px 17px;margin:19px 0 28px;background:white;border:1px solid var(--line);font-size:.83em;color:var(--muted)}.notice .icon{color:var(--green);width:20px}.notice a{margin-left:auto;white-space:nowrap}.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:29px 0 18px}.section-title h2{font-size:1.35em}.section-title p{font-size:.84em;margin-top:5px}.section-title>a{font-size:.83em;white-space:nowrap}.grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{border:1px solid var(--line);background:white;border-radius:15px;padding:24px;box-shadow:var(--shadow)}.training-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:244px;transition:transform .18s,border-color .18s}.training-card:hover{transform:translateY(-3px);border-color:#aac7b7}.training-card .number{position:absolute;top:23px;right:24px;color:#778a80;font-size:.76em}.icon-box{width:49px;height:49px;display:grid;place-items:center;border-radius:14px;background:#edf3ff;color:#526cb0;margin-bottom:18px}.icon-box .icon{width:27px;height:27px}.training-card.memory .icon-box{background:#eaf1fb;color:#4c71aa}.training-card.judgment .icon-box{background:#fff0e3;color:#b87637}.training-card.reaction .icon-box{background:#eeebfa;color:#8070ad}.training-card p{font-size:.85em;margin:8px 0 17px}.training-card .card-bottom{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:auto;font-size:.81em}.tag{font-size:.73em;background:#f1f5f2;color:#5c7367;border-radius:5px;padding:3px 8px;display:inline-block}.tag.orange{background:#fff0e5;color:#9b5d2c}.tag.blue{background:#edf2fc;color:#4e6b9d}.dashboard-lower{display:grid;grid-template-columns:1.35fr 1fr;gap:18px;margin-top:24px}.dashboard-lower h3{display:flex;align-items:center;gap:9px}.progress-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;text-align:center;margin:24px 0}.stat-value{font-size:1.75em;font-weight:700;line-height:1.3;color:var(--green)}.stat-label{font-size:.77em;color:var(--muted);margin-top:5px}.progress-track{height:7px;background:#edf1ed;border-radius:8px;overflow:hidden;margin:10px 0}.progress-track>div{height:100%;background:var(--green);border-radius:8px}.progress-label{display:flex;justify-content:space-between;font-size:.75em;color:var(--muted)}.tip-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:13px;font-size:.85em}.tip-list li{display:flex;gap:12px}.step-dot{width:24px;height:24px;flex-shrink:0;background:var(--mint);color:var(--green);display:grid;place-items:center;border-radius:50%;font-size:.8em}.link-row{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:15px;margin-top:18px;font-size:.8em}.subtle{font-size:.8em;color:var(--muted)}.footer{max-width:1180px;margin:auto;padding:28px 30px 40px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px}.footer-brand{font-weight:700;color:var(--green)}.footer p{font-size:.7em;margin-top:7px}.footer>div:last-child{text-align:right}.footer>div:last-child>a{font-size:.73em;margin-left:17px;color:var(--muted)}.mobile-nav{display:none}.page-heading{display:flex;justify-content:space-between;align-items:center;margin:8px 0 26px;gap:20px}.page-heading h1{font-size:1.85em}.page-heading p{font-size:.9em;margin-top:10px}.banner-title{background:var(--mint);padding:34px;border-radius:16px;border:1px solid #d9e5db;margin-bottom:24px}.banner-title h1{font-size:1.9em;margin:8px 0}.banner-title>p{max-width:740px}.filter-bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:22px 0}.chip{border:1px solid var(--line);padding:9px 17px;border-radius:25px;background:white;font-size:.86em;min-height:44px}.chip.selected{background:var(--green);color:white;border-color:var(--green)}.search{padding:11px 14px;border:1px solid #cfd9d1;border-radius:9px;background:white;min-width:240px}.search:focus{border-color:var(--green)}.question-list{display:grid;gap:12px}.question-row{display:flex;align-items:center;gap:15px;padding:18px 21px}.question-row .question-title{flex:1}.question-row p{font-size:.92em;color:var(--ink)}.question-row small{color:var(--muted)}.question-row .button{white-space:nowrap}.empty{text-align:center;padding:55px 24px}.empty .icon{width:55px;height:55px;color:#88a293;margin-bottom:15px}.empty p{margin:12px auto 25px;max-width:450px}.exam-intro{display:grid;grid-template-columns:1.3fr 1fr;gap:24px}.rules-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:26px 0}.rule{text-align:center;padding:20px 8px;border-radius:12px;background:#f2f6f0}.rule strong{display:block;color:var(--green);font-size:1.65em}.rule small{color:var(--muted)}.bullets{padding-left:22px;color:var(--muted);font-size:.92em}.bullets li{margin:12px 0}.quiz-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;align-items:start}.quiz-card{padding:30px 34px}.quiz-meta{display:flex;gap:8px;align-items:center;font-size:.82em;margin-bottom:25px;color:var(--muted)}.quiz-meta span:last-child{margin-left:auto}.quiz-card h2{font-size:1.35em;margin:12px 0 26px}.options{display:grid;gap:12px}.option{width:100%;min-height:62px;padding:14px 17px;display:flex;align-items:center;text-align:left;gap:14px;border:1px solid #d8e1d9;border-radius:10px;background:white;color:var(--ink);font-size:1.05em}.option:not(:disabled):hover{border-color:var(--green);background:#f6faf6}.option.selected{border-color:var(--green);background:#eef6ef}.option.correct{border-color:#4c8e62;background:#eff7ef}.option.incorrect{border-color:#ba6c5a;background:#fdf0eb}.option:disabled{opacity:1}.option-letter{height:31px;width:31px;display:grid;place-items:center;flex-shrink:0;border:1px solid #dbe3dc;border-radius:50%;font-size:.78em;color:var(--muted)}.selected .option-letter{background:var(--green);color:white;border-color:var(--green)}.feedback{margin-top:23px;border-radius:10px;padding:18px;background:#f0f6ee;border:1px solid #d9e7d7}.feedback.bad{background:#fdf3ee;border-color:#efdbcf}.feedback h3{font-size:1em;color:var(--green)}.feedback.bad h3{color:#a54c37}.feedback p{font-size:.88em;margin-top:8px;color:#445b4b}.feedback a{font-size:.77em;display:inline-block;margin-top:10px}.quiz-controls{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;margin-top:28px;border-top:1px solid var(--line);padding-top:22px}.quiz-sidebar{display:grid;gap:16px}.quiz-sidebar .card{padding:21px}.timer{font-size:2em;font-weight:650;color:var(--green);font-variant-numeric:tabular-nums}.timer.urgent{color:#ac4737}.answer-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:16px}.answer-grid button{min-height:38px;min-width:0;border:1px solid var(--line);background:white;border-radius:7px;font-size:.8em}.answer-grid .answered{background:var(--mint);color:var(--green);border-color:#abcbb7}.answer-grid .current{outline:2px solid var(--green);outline-offset:1px}.observation{padding:30px 20px;background:#f1f5ef;border:1px dashed #b7cdb7;border-radius:13px;text-align:center;margin-bottom:24px;min-height:155px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.stimulus{font-size:1.8em;letter-spacing:.12em;color:var(--green);font-weight:600;white-space:pre-wrap;overflow-wrap:anywhere}.stimulus.signal{font-size:5em;line-height:1.3}.observation p{font-size:.88em}.observation .countdown{font-size:.78em;color:var(--muted)}.result{max-width:830px;margin:auto}.result-score{text-align:center;padding:35px;background:var(--mint);border-radius:16px;margin-bottom:20px}.result-score strong{font-size:4em;line-height:1.4;color:var(--green)}.result-score p{margin-top:12px}.result-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:25px 0}.review-item{margin:16px 0}.review-item .answer-info{font-size:.83em;margin:12px 0}.review-item p{font-size:.87em}.knowledge-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.knowledge-grid h2{font-size:1.2em;margin-bottom:12px}.knowledge-grid p{font-size:.9em;margin-top:10px}.knowledge-grid a{display:inline-block;margin-top:16px;font-size:.82em}.source-card{margin:16px 0}.source-card h2{font-size:1.15em}.source-card p{margin-top:10px;font-size:.87em}.source-card .tag{margin:10px 8px 0 0}.form-grid{display:grid;gap:17px}.field{display:grid;gap:6px;font-size:.88em}.field input,.field textarea,.field select{width:100%;padding:12px 13px;background:white;border:1px solid #cbd8ce;border-radius:8px;color:var(--ink);min-height:48px}.field textarea{min-height:110px;resize:vertical}.field small{color:var(--muted)}.checkbox{display:flex;gap:10px;align-items:flex-start;font-size:.84em;color:var(--muted)}.checkbox input{width:20px;height:20px;accent-color:var(--green);flex-shrink:0}.form-error{color:#a23d2e;font-size:.85em;min-height:1.6em}.loading{padding:100px 20px;text-align:center;color:var(--muted)}dialog{border:1px solid var(--line);border-radius:17px;width:min(560px,calc(100vw - 32px));max-height:90vh;padding:30px;color:var(--ink);box-shadow:0 20px 100px #18332633;background:#fff}dialog::backdrop{background:#18332666;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px}.close-button{border:0;background:#eff3ee;border-radius:50%;min-width:40px;min-height:40px;font-size:1.3em;color:var(--muted)}.auth-tabs{display:flex;border-bottom:1px solid var(--line);gap:25px;margin-bottom:22px}.auth-tabs button{padding:9px 0;border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);min-height:44px}.auth-tabs button.selected{border-color:var(--green);color:var(--green);font-weight:700}.toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%) translateY(25px);opacity:0;pointer-events:none;z-index:100;background:var(--green-dark);color:white;border-radius:10px;padding:13px 23px;box-shadow:0 4px 25px #0002;transition:.2s;max-width:90%;font-size:.86em}.toast.visible{transform:translateX(-50%) translateY(0);opacity:1}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:25px}.admin-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.table-wrap{overflow-x:auto;background:white;border:1px solid var(--line);border-radius:12px}table{border-collapse:collapse;width:100%;font-size:.84em}th,td{text-align:left;padding:15px;border-bottom:1px solid var(--line)}th{background:#edf3ec;font-weight:600;white-space:nowrap}td.title-cell{max-width:480px}td .button{white-space:nowrap}.admin-editor{width:min(760px,calc(100vw - 30px))}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.history-card{display:flex;align-items:center;gap:20px;margin-bottom:13px}.history-card .history-score{font-size:1.9em;color:var(--green);font-weight:700;width:75px;text-align:center}.history-card>div:nth-child(2){flex:1}.history-card p{font-size:.82em}.error-box{padding:30px;border:1px solid #e6c8b9;border-radius:12px;background:#fff6ed}.sync-status{display:inline-flex;gap:7px;align-items:center}.sync-status:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green)}.sync-status.pending:before{background:var(--orange)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1600px){:root{font-size:18px}.header-inner{max-width:1360px}main,.footer{max-width:1280px}.hero{min-height:380px}}
@media(max-width:1100px){.header-inner{gap:20px;padding:16px 24px}.header nav{gap:17px;font-size:.8em}.brand{font-size:1.18em}.header-actions{gap:12px}.header-actions .text-button{font-size:.75em}.hero{padding:32px}.hero h1{font-size:2.15em}.header-actions .button{font-size:.75em;padding:10px}.hero-art{height:250px}}
@media(max-width:850px){.header nav{display:none}.header-inner{min-height:78px;justify-content:space-between}.brand small{font-size:.5em}.hero{grid-template-columns:1fr 0.9fr;padding:30px}.hero h1{font-size:1.9em}.hero-art{height:230px}.hero-copy>p{font-size:.85em}.hero-note{gap:8px;font-size:.65em}.grid-three{gap:12px}.training-card{padding:20px}.training-card .number{right:18px}.dashboard-lower{grid-template-columns:1fr 1fr}.card{padding:22px}.quiz-layout{grid-template-columns:1fr 220px;gap:16px}.quiz-card{padding:25px}.exam-intro{grid-template-columns:1fr}.footer{padding-bottom:110px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:8;justify-content:space-around;background:#fffffff5;backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:9px 8px max(9px,env(safe-area-inset-bottom));}.mobile-nav a{display:flex;flex-direction:column;align-items:center;gap:0;min-width:58px;min-height:49px;font-size:.65em;color:var(--muted)}.mobile-nav a span{font-size:1.9em;line-height:1.3}.mobile-nav a.active{color:var(--green);font-weight:700}.toast{bottom:90px}.header-actions .text-button{font-size:.8em}main{padding:25px 22px 40px}.knowledge-grid{gap:15px}.footer{gap:25px}}
@media(max-width:600px){:root{font-size:17px}.header-inner{padding:14px 17px;gap:12px;min-height:77px}.brand{gap:8px;font-size:1.12em}.brand-mark{width:39px;height:39px;border-radius:12px}.brand small{letter-spacing:0;font-size:.46em}.header-actions{gap:12px}.header-actions .text-button span{display:none}.header-actions .button{font-size:.72em;padding:9px 10px;max-width:117px;overflow:hidden;text-overflow:ellipsis;display:block}.header-actions .text-button{font-size:.73em}main{padding:20px 17px 35px}.hero{display:block;padding:29px 24px 0;border-radius:16px;min-height:0}.hero h1{font-size:1.95em;letter-spacing:-.05em}.hero-copy>p{font-size:.88em;margin:15px 0 22px}.hero-buttons .button{padding:13px 18px;font-size:.9em}.hero-note{font-size:.69em;gap:14px}.hero-art{height:197px;width:85%;margin:7px auto -5px}.hero:after{top:auto;bottom:-170px;right:-110px}.notice{align-items:flex-start;gap:8px;padding:12px;font-size:.74em;flex-wrap:wrap;margin:14px 0 23px}.notice .icon{width:18px;height:18px}.notice>span{flex:1}.notice a{margin-left:26px}.section-title{margin-top:25px;gap:9px}.section-title h2{font-size:1.2em}.section-title p{font-size:.77em}.section-title>a{font-size:.74em}.grid-three{grid-template-columns:1fr;gap:12px}.training-card{min-height:0;padding:21px 22px 18px;display:grid;grid-template-columns:50px 1fr;column-gap:16px}.training-card .icon-box{grid-row:1/3;margin-bottom:0;align-self:center}.training-card h3{padding-right:45px}.training-card p{grid-column:2;font-size:.8em;margin:5px 0 12px}.training-card .card-bottom{grid-column:2}.training-card .number{font-size:.7em;top:21px;right:20px}.dashboard-lower{grid-template-columns:1fr;margin-top:17px;gap:15px}.card{padding:22px}.footer{display:block;padding:25px 22px 110px}.footer>div:last-child{text-align:left;margin-top:20px}.footer>div:last-child>a{margin-left:0;margin-right:18px}.footer p{font-size:.68em}.page-heading{align-items:flex-start;gap:12px}.page-heading h1{font-size:1.6em}.page-heading p{font-size:.83em}.page-heading .button{font-size:.75em;padding:10px 12px}.banner-title{padding:25px}.banner-title h1{font-size:1.6em}.banner-title>p{font-size:.86em}.filter-bar{gap:8px}.chip{padding:8px 14px;font-size:.8em}.search{width:100%;min-width:0}.question-row{padding:17px;gap:11px;flex-wrap:wrap}.question-row .question-title{flex-basis:calc(100% - 70px)}.question-row .button{margin-left:auto}.question-row p{font-size:.9em}.question-row .tag{font-size:.68em}.quiz-layout{display:flex;flex-direction:column;gap:15px}.quiz-layout>.quiz-card{width:100%;padding:24px 19px;order:2}.quiz-sidebar{width:100%;order:1;grid-template-columns:1fr 1fr;gap:12px}.quiz-sidebar>.card{padding:14px 17px}.quiz-sidebar>.card.answer-card{grid-column:1/-1;display:none}.quiz-sidebar>.card.practice-hint{grid-column:1/-1;padding:14px 17px}.quiz-sidebar>.card.practice-hint p{font-size:.8em}.quiz-sidebar .timer{font-size:1.55em}.quiz-meta{margin-bottom:15px}.quiz-card h2{font-size:1.2em;margin:10px 0 22px}.option{min-height:62px;font-size:1em;padding:13px}.quiz-controls{margin-top:22px;gap:9px}.quiz-controls .button{flex:1;padding:12px 13px;font-size:.83em}.quiz-controls .text-button{width:100%;order:3}.observation{padding:26px 14px}.stimulus{font-size:1.5em;letter-spacing:.05em}.observation .stimulus:has(+p){font-size:1.3em}.stimulus.signal{font-size:4.5em}.rules-grid{gap:8px;grid-template-columns:repeat(2,1fr)}.rule{padding:15px 8px}.rule strong{font-size:1.7em}.knowledge-grid{grid-template-columns:1fr}.admin-stats{gap:9px}.admin-stats .card{padding:18px 8px;text-align:center}.admin-stats .stat-value{font-size:1.5em}.history-card{gap:10px;padding:18px 14px}.history-card .history-score{width:55px;font-size:1.6em}.history-card .button{padding:10px;font-size:.73em}.history-card p{font-size:.73em}.history-card h3{font-size:.95em}.two-fields{grid-template-columns:1fr}.result-score{padding:25px 18px}.result-score strong{font-size:3.7em}dialog{padding:24px 20px}.toast{width:max-content;max-width:calc(100vw - 34px)}body.large .header-actions{gap:7px}body.large .brand small{display:none}body.large .hero-note{flex-wrap:wrap}}
@media(max-width:380px){.header-inner{padding:14px 12px;gap:8px}.brand{font-size:1em;gap:7px}.brand-mark{width:35px;height:35px}.brand small{display:none}.header-actions{gap:8px}.header-actions .button{max-width:88px}.hero{padding:25px 20px 0}.hero h1{font-size:1.8em}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
