.practice-tools{margin-top:18px;border-top:1px solid var(--line);padding-top:18px}.practice-tool-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.practice-tool-head h3{margin:0 0 5px;font-size:15px}.practice-tool-head p{margin:0;color:var(--muted);font-size:11px}.practice-tool-head>div:last-child{display:flex;gap:8px}.practice-result{margin-top:14px;padding:16px;background:#f7faf9;border:1px solid #dfece8;border-radius:8px}.practice-result h4{margin:0 0 9px;font-size:13px}.practice-result ol{margin:0;padding-left:20px;line-height:1.9;font-size:12px}.variant-answer-row{display:flex;gap:8px;margin-top:12px}.variant-answer-row input{flex:1;min-width:0;border:1px solid var(--line);border-radius:7px;padding:10px 12px}.variant-answer-row .primary-btn{width:auto}.variant-feedback{margin-top:12px;padding-top:12px;border-top:1px solid var(--line);font-size:12px;line-height:1.7}@media(max-width:680px){.practice-tool-head{align-items:flex-start;flex-direction:column}.practice-tool-head>div:last-child{width:100%}.practice-tool-head button{flex:1}.variant-answer-row{flex-direction:column}.variant-answer-row .primary-btn{width:100%}}
.correction-proof{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;margin-top:16px;padding-top:14px;border-top:1px solid #edf1ef}.correction-proof label{display:flex;flex-direction:column;align-items:stretch;gap:7px;min-width:0;color:#53615f;font-size:12px;font-weight:700;line-height:1.4}.correction-proof label:last-child{grid-column:1/-1;max-width:50%}.correction-proof textarea,.correction-proof select{box-sizing:border-box;width:100%;min-width:0;border:1px solid #d9e2df;border-radius:7px;background:#fff;color:var(--ink);font:13px/1.65 inherit}.correction-proof textarea{height:112px;min-height:112px;padding:9px 10px;resize:vertical}.correction-proof select{height:40px;padding:0 10px;cursor:pointer}.correction-proof textarea::placeholder{color:#9aa7a4}.correction-proof textarea:focus,.correction-proof select:focus{border-color:#267f75;outline:0;box-shadow:0 0 0 3px rgba(38,127,117,.1)}
@media(max-width:680px){.correction-proof{grid-template-columns:1fr;gap:12px;margin-top:14px;padding-top:12px}.correction-proof label:last-child{grid-column:auto;max-width:none}.correction-proof textarea{height:106px;min-height:106px}}
.plan-controls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(360px,1.35fr) auto;align-items:center;gap:26px;margin:0 0 24px;padding:20px 22px;background:#fff;border:1px solid var(--line);border-radius:8px}.plan-control-copy b,.plan-control-copy span{display:block}.plan-control-copy b{margin-bottom:6px;color:var(--ink);font-size:15px;line-height:1.4}.plan-control-copy span{max-width:360px;color:var(--muted);font-size:12px;line-height:1.65}.plan-fields{display:grid;grid-template-columns:112px minmax(220px,1fr);align-items:end;gap:22px}.plan-limit-field,.plan-subject-field{min-width:0;margin:0;padding:0;border:0}.plan-limit-field>span:first-child,.plan-subject-field legend{display:block;margin:0 0 8px;padding:0;color:#53615f;font-size:11px;font-weight:700;line-height:1.2}.plan-limit-input{display:flex;align-items:center;width:108px;height:38px;border:1px solid #d9e2df;border-radius:7px;background:#fff;overflow:hidden}.plan-limit-input:focus-within{border-color:#267f75;box-shadow:0 0 0 3px rgba(38,127,117,.1)}.plan-limit-input input{width:70px;height:100%;padding:0 8px 0 12px;border:0;outline:0;background:transparent;color:var(--ink);font:600 14px/1 inherit}.plan-limit-input em{color:#83908e;font-size:11px;font-style:normal}.plan-subject-checks{display:flex;align-items:center;gap:8px;min-height:38px}.plan-subject-checks label{display:flex;align-items:center;gap:6px;min-width:62px;height:38px;padding:0 11px;border:1px solid #dce5e2;border-radius:7px;background:#fafcfb;color:#52615e;font-size:12px;cursor:pointer}.plan-subject-checks label:has(input:checked){border-color:#9fc8c0;background:#edf7f4;color:#1f6f66;font-weight:700}.plan-subject-checks input{width:14px;height:14px;margin:0;accent-color:#267f75}.plan-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px}.plan-actions button{min-height:40px;padding:10px 15px;white-space:nowrap}.plan-actions .primary-btn{box-shadow:none}
@media(max-width:1120px){.plan-controls{grid-template-columns:1fr auto}.plan-control-copy{grid-column:1/-1}.plan-control-copy span{max-width:none}.plan-fields{grid-template-columns:112px minmax(220px,1fr)}}
@media(max-width:760px){.plan-controls{grid-template-columns:1fr;gap:18px;padding:18px 16px}.plan-fields{grid-template-columns:1fr;gap:15px}.plan-limit-input{width:100%}.plan-limit-input input{flex:1}.plan-subject-checks{flex-wrap:wrap}.plan-subject-checks label{flex:1;justify-content:center}.plan-actions{justify-content:stretch}.plan-actions button{flex:1;min-width:0}}
@media(max-width:420px){.plan-actions{flex-direction:column}.plan-actions button{width:100%}.plan-subject-checks label{flex-basis:calc(50% - 4px)}}
.upload-status{margin:10px 0 0;color:#71807e;font-size:11px;line-height:1.5}.upload-status.error{color:#c45d4b;background:#fff4f1;border:1px solid #f2d3cb;border-radius:6px;padding:8px 10px}
.split-mode-toggle{display:grid;grid-template-columns:16px 1fr;column-gap:7px;align-items:center;max-width:320px;margin:0 auto 16px;padding:10px 12px;text-align:left;border:1px solid #dce7e3;border-radius:8px;background:#f6faf8;color:#267f75;font-size:12px;cursor:pointer}.split-mode-toggle input{width:14px;height:14px;grid-row:1/3;margin:0;accent-color:#267f75}.split-mode-toggle small{grid-column:2;margin-top:3px;color:#82928f;font-size:10px;line-height:1.4}
.split-mode-toggle span{display:block;min-width:0;white-space:normal;line-height:1.4}.split-mode-toggle small{display:block;min-width:0;white-space:normal}
.plan-subject-checks{flex-wrap:wrap}.plan-subject-checks .custom-subject{padding-right:6px}.plan-subject-remove{display:grid;place-items:center;width:20px;height:20px;margin-left:1px;border:0;border-radius:4px;background:transparent;color:#8a9895;font-size:17px;line-height:1;cursor:pointer}.plan-subject-remove:hover{background:#d9ebe6;color:#17665d}.plan-subject-add{display:flex;gap:7px;margin-top:8px}.plan-subject-add input{width:142px;min-width:0;height:34px;padding:0 10px;border:1px solid #d9e2df;border-radius:6px;outline:0;background:#fff;color:var(--ink);font:12px/1 inherit}.plan-subject-add input:focus{border-color:#267f75;box-shadow:0 0 0 3px rgba(38,127,117,.1)}.plan-subject-add button{height:34px;padding:0 10px;border:1px solid #b8d8d1;border-radius:6px;background:#f1f8f6;color:#17665d;font:700 12px/1 inherit;white-space:nowrap;cursor:pointer}.plan-subject-add button:hover{background:#e0f0ec}.plan-subject-note{margin:7px 0 0;color:#879491;font-size:10px;line-height:1.4}@media(max-width:760px){.plan-subject-add input{flex:1;width:auto}}

.review-tag{max-width:92px;white-space:normal;text-align:center;line-height:1.3}
.plan-controls{padding:0;overflow:hidden}
.plan-controls>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;cursor:pointer;list-style:none}
.plan-controls>summary::-webkit-details-marker{display:none}
.plan-controls>summary b,.plan-controls>summary small{display:block}
.plan-controls>summary b{font-size:13px;color:var(--ink)}
.plan-controls>summary small{margin-top:3px;color:var(--muted);font-size:11px}
.plan-settings-chevron{color:#267f75;font-size:18px;transition:transform .2s ease}
.plan-controls[open] .plan-settings-chevron{transform:rotate(180deg)}
.plan-settings-toggle{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0 8px 0 12px;border:1px solid #b9d8d1;border-radius:18px;background:#f1f8f6;color:#17665d;font-size:11px;font-weight:700;white-space:nowrap}
.plan-settings-hint{line-height:1}
.plan-settings-chevron{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#267f75;color:#fff;font-size:16px;font-weight:400;line-height:1}
.plan-controls>summary:hover .plan-settings-toggle{border-color:#267f75;background:#e7f3ef}
.plan-control-body{padding:0 18px 18px;border-top:1px solid var(--line)}
.plan-group-title{margin:14px 0 6px;padding:6px 9px;border-left:3px solid #267f75;background:#f4faf8;color:#356b64;font-size:12px;font-weight:700}
.plan-progress{margin-left:8px;color:var(--muted);font-size:11px;font-weight:400}
.practice-subjects{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));}
.practice-subjects .subject-dot.custom{background:#c88c45}
.plan-task-section{scroll-margin-top:18px}
.plan-list-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:10px 0 14px;padding:8px 10px;min-height:44px;border:1px solid #e5ebe9;border-radius:6px;background:#fbfdfc}
.plan-list-head .section-label{margin-bottom:0;flex:0 0 auto}
.plan-subject-filters{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0;flex-wrap:wrap}
.plan-subject-filter{min-height:28px;padding:4px 10px;border:1px solid #d8e4e1;border-radius:6px;background:#fff;color:#5b6d69;font:600 11px/1.2 inherit;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.plan-subject-filter:hover{border-color:#8ebbb3;background:#f3faf8;color:#267f75}
.plan-subject-filter.active{border-color:#267f75;background:#267f75;color:#fff}
.plan-subject-filter:focus-visible{outline:2px solid rgba(38,127,117,.3);outline-offset:2px}
.plan-subject-filter.subject-color-chinese:not(.active){border-color:#e5b28d;color:#a85c2e}
.plan-subject-filter.subject-color-math:not(.active){border-color:#aebde4;color:#405d9a}
.plan-subject-filter.subject-color-english:not(.active){border-color:#9fcbb8;color:#287457}
.plan-subject-filter.subject-color-science:not(.active){border-color:#9fc9d1;color:#26717f}
.plan-subject-filter.subject-color-history:not(.active){border-color:#cbb3d8;color:#744b87}
.plan-subject-filter.subject-color-geography:not(.active){border-color:#b8c98e;color:#607b32}
.plan-subject-filter.subject-color-physics:not(.active){border-color:#b4c5d8;color:#44677f}
.plan-subject-filter.subject-color-chemistry:not(.active){border-color:#e0b3c1;color:#96506a}
.plan-subject-filter.subject-color-biology:not(.active){border-color:#9ac8a1;color:#347041}
.plan-subject-filter.subject-color-civics:not(.active){border-color:#d2b98e;color:#80602c}
.subject-color-custom-0{--subject-accent:#b56b4c}.subject-color-custom-1{--subject-accent:#5b78b7}.subject-color-custom-2{--subject-accent:#4a9a7b}.subject-color-custom-3{--subject-accent:#7b62a3}.subject-color-custom-4{--subject-accent:#9b7a3d}.subject-color-custom-5{--subject-accent:#438b98}
.subject-color-chinese{--subject-accent:#a85c2e}.subject-color-math{--subject-accent:#405d9a}.subject-color-english{--subject-accent:#287457}.subject-color-science{--subject-accent:#26717f}.subject-color-history{--subject-accent:#744b87}.subject-color-geography{--subject-accent:#607b32}.subject-color-physics{--subject-accent:#44677f}.subject-color-chemistry{--subject-accent:#96506a}.subject-color-biology{--subject-accent:#347041}.subject-color-civics{--subject-accent:#80602c}
.subject-dot[class*="subject-color"]{background:var(--subject-accent)}
.plan-subject-filter[class*="subject-color-custom"]:not(.active){border-color:var(--subject-accent);color:var(--subject-accent)}
.plan-task-section .plan-focus{outline:3px solid rgba(39,117,111,.28);outline-offset:3px}
.review-number{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fff;border:1px solid #b8d8d1;color:#267f75;font-size:11px;font-weight:700;line-height:1;flex:0 0 20px}
.review-item:hover .review-number{background:#edf7f4;border-color:#267f75}
.review-detail-nav{position:absolute;top:24px;right:58px;display:flex;align-items:center;gap:7px;color:#5f7772;font-size:11px}
.review-detail-nav button{padding:6px 9px;border:1px solid #c9ded9;border-radius:6px;background:#fff;color:#267f75;font-size:11px;cursor:pointer}
.review-detail-nav button:hover:not(:disabled){background:#edf7f4}
.review-detail-nav button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:680px){.review-detail-nav{position:static;margin:0 46px 10px 0;flex-wrap:wrap}}
@media(max-width:760px){.plan-list-head{align-items:flex-start;flex-direction:column}.plan-subject-filters{justify-content:flex-start;width:100%;overflow:auto;flex-wrap:nowrap;padding-bottom:2px}.plan-subject-filter{white-space:nowrap}}

/* Plan settings are a low-frequency preference: keep the summary compact and
   give the expanded form a deliberate two-column layout. */
.plan-controls{display:block;position:relative;margin:0 0 20px;background:#fff;border:1px solid #dfe7e4;border-radius:8px;box-shadow:0 2px 8px rgba(36,70,64,.035)}
.plan-controls>summary{min-height:54px;padding:12px 16px;background:#fbfdfc}
.plan-controls>summary:hover{background:#f5faf8}
.plan-controls>summary:focus-visible{outline:2px solid #267f75;outline-offset:-2px}
.plan-controls>summary span:first-child{min-width:0}
.plan-controls>summary b{font-size:13px;line-height:1.35}
.plan-controls>summary small{color:#7b8986;font-size:11px;line-height:1.4}
.plan-control-body{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(360px,1.2fr) auto;align-items:end;gap:24px;padding:18px 16px 16px;border-top:1px solid #edf1ef;background:#fff}
.plan-control-copy{align-self:start;padding-top:2px}
.plan-control-copy b{font-size:13px}
.plan-control-copy span{max-width:250px;font-size:11px;line-height:1.55}
.plan-fields{grid-template-columns:96px minmax(220px,1fr);gap:18px}
.plan-actions{align-self:end}
.plan-actions button{min-width:112px}
@media(max-width:980px){.plan-control-body{grid-template-columns:1fr auto;gap:18px}.plan-control-copy{grid-column:1/-1}.plan-control-copy span{max-width:none}.plan-fields{grid-column:1}.plan-actions{grid-column:2}}
@media(max-width:760px){.plan-control-body{grid-template-columns:1fr;gap:16px;padding:16px}.plan-fields,.plan-actions{grid-column:auto}.plan-actions{justify-content:stretch}.plan-actions button{width:100%}}

/* Keep the expanded settings row visually balanced instead of pinning the
   explanation to the top and the action to the bottom. */
.plan-control-body{align-items:center;gap:20px;padding:14px 16px}
.plan-control-copy{align-self:center;padding-top:0}
.plan-control-copy b{margin-bottom:4px}
.plan-fields{align-items:center}
.plan-actions{align-self:center}
.plan-actions button{min-height:38px}
@media(max-width:980px){.plan-control-body{align-items:center;padding:14px 16px}.plan-control-copy{align-self:start}.plan-fields{align-items:center}.plan-actions{align-self:center}}
@media(max-width:760px){.plan-control-body{gap:14px;padding:14px 16px}.plan-control-copy{align-self:start}.plan-actions{align-self:stretch}}

.plan-pool-note{margin:6px 0 0;color:#267f75;font-size:11px;line-height:1.5}.subject-pending-note{grid-column:2;display:block;margin-top:4px;color:#c87855;font-size:11px;font-style:normal;line-height:1.3}.practice-subjects button .subject-pending-note + span{grid-column:3;grid-row:1/3}
.plan-subject-chip{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:24px;padding:2px 7px;border:1px solid var(--subject-accent,#b8d8d1);border-radius:5px;background:#f1f8f6;color:var(--subject-accent,#267f75);font-size:11px;font-weight:700;line-height:1;cursor:default}.plan-task-section .review-item[hidden]{display:none}
.mistake-row-menu{position:absolute;right:12px;z-index:8;display:grid;min-width:118px;padding:5px;background:#fff;border:1px solid #dfe7e4;border-radius:7px;box-shadow:0 8px 20px rgba(36,70,64,.12)}.mistake-row-menu button{padding:8px 10px;text-align:left;color:#52615e;font-size:12px;border-radius:5px}.mistake-row-menu button:hover{background:#edf7f4;color:#267f75}.table-row{position:relative}.more{position:relative;z-index:9}
.vertical-visual{overflow-x:auto;padding:16px 0}.vertical-expression{display:inline-flex;flex-direction:column;align-items:stretch;font:20px/1.4 Consolas,'Courier New',monospace;color:#172925}.vertical-expression>span{display:block;white-space:pre;font:inherit;letter-spacing:0}.vertical-instruction{display:block;margin-top:8px;color:#52615e}.practice-generation-error{padding:12px 0}.practice-generation-error p{margin:0 0 12px}
.practice-equations{display:grid;gap:10px;margin:16px 0;font-size:20px;white-space:pre-wrap;overflow-wrap:anywhere}.practice-table-scroll{max-width:100%;overflow-x:auto;margin:16px 0}.practice-data-table{border-collapse:collapse;font-size:15px}.practice-data-table th,.practice-data-table td{border:1px solid #9db9b4;padding:9px 14px;white-space:pre-wrap}.practice-data-table th{background:#edf6f3}.practice-diagram{margin:16px 0;max-width:600px}.practice-diagram svg{display:block;width:100%;height:auto}.variant-question{white-space:pre-wrap;overflow-wrap:anywhere}
.variant-question{display:grid;grid-template-columns:48px minmax(0,1fr);gap:0 10px;align-items:start}.variant-question>b{margin:3px 0 0!important;white-space:nowrap}.variant-question-body{max-width:46em;min-width:0;white-space:normal}.variant-question-body>p{margin:0 0 12px;font-size:15px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.variant-question-body>p:last-child{margin-bottom:0}.variant-question-option{padding-left:1.5em;text-indent:-1.5em}@media(max-width:680px){.variant-question{grid-template-columns:minmax(0,1fr);gap:8px}.variant-question-body>p{line-height:1.85;margin-bottom:10px}}
