/* Reading data must not require opening a thumbnail-sized preview. */
.question-number{font:inherit;font-variant-numeric:tabular-nums;white-space:nowrap}
.material .question-inline-image,.stem .question-inline-image,.opt .t .question-inline-image,.exp-sec .question-inline-image{width:var(--question-inline-width);height:auto;max-width:100%;vertical-align:middle;object-fit:contain}
.question-image-scroll{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;background:#fff;border-radius:6px;margin:12px 0;scrollbar-width:thin}
.question-image-scroll:focus-visible{outline:2px solid var(--primary-strong);outline-offset:3px}
.material .question-image-scroll .question-diagram,.stem .question-image-scroll .question-diagram,.exp-sec .question-image-scroll .question-diagram,.opt .t .question-image-scroll .question-diagram,.practice-answer .opts-img .question-image-scroll img{display:block;width:var(--question-image-width);max-width:none;max-height:none;height:auto;border-radius:0;background:#fff}
.practice-answer .opts-wide-images{display:flex;flex-direction:column;gap:12px}
.practice-answer .opt .t{min-width:0}
.practice-answer .opts-img .question-image-scroll{margin:4px 0}
.image-view-open{overflow:hidden}
.lightbox{display:grid;grid-template-rows:auto minmax(0,1fr);padding:0;align-items:stretch;justify-content:stretch;background:rgba(18,25,23,.89)}
.lightbox-toolbar{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;padding:14px 16px;background:#fdfbf5;color:#273e35;border-bottom:1px solid #d7d3c4;box-shadow:0 2px 12px #0002}
.lightbox-toolbar button{border:1px solid #c9d4cc;border-radius:6px;background:white;color:#244f3c;padding:8px 13px;font:inherit;font-size:14px;cursor:pointer}
.lightbox-toolbar button:focus-visible{outline:2px solid #26734d;outline-offset:2px}
.lightbox-toolbar [data-lightbox-scale]{min-width:48px;text-align:center;font-size:14px;font-variant-numeric:tabular-nums}
.lightbox-toolbar [data-lightbox-close]{margin-left:auto}
.lightbox-viewport{overflow:auto;min-width:0;min-height:0;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}
.lightbox-content{box-sizing:border-box;width:max-content;min-width:100%;min-height:100%;display:grid;place-items:center;padding:24px}
.lightbox .lightbox-content img{display:block;max-width:none;max-height:none;height:auto;background:#fff;border-radius:0;box-shadow:0 8px 36px #0005;flex:none}
@media(max-width:560px){.lightbox-toolbar{gap:6px;padding:10px 8px}.lightbox-toolbar button{padding:8px;font-size:13px}.lightbox-content{padding:12px}}
.question-inline-image,.question-formula-image{image-rendering:auto}
.practice-answer .question-number{font-size:20px;font-weight:500}

/* Real text remains sharp on high-density phone screens. */
.question-readable-text{font:inherit;font-variant-numeric:tabular-nums;white-space:normal;overflow-wrap:anywhere}
.practice-answer .question-readable-text{font-size:20px;font-weight:500}
.question-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;margin:16px 0 8px;border:1px solid #c7d1cb;border-radius:7px;background:#fff;scrollbar-width:thin}
.question-table-scroll:focus-visible{outline:2px solid var(--primary-strong);outline-offset:3px}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table{border-collapse:separate;border-spacing:0;width:100%;min-width:var(--question-table-min-width,270px);table-layout:auto;background:#fff;color:#18242a;font-family:system-ui,"Microsoft YaHei",sans-serif;font-size:17px;font-variant-numeric:tabular-nums;line-height:1.6}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table caption{padding:14px 18px;font-size:18px;font-weight:650;text-align:left;caption-side:top;color:#18242a}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table th,body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table td{padding:9px 8px;border-top:1px solid #d5ddd8;border-right:1px solid #d5ddd8;vertical-align:middle}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table th{font-weight:500;text-align:left;background:#fff}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table thead th{background:#eef4f0;font-weight:650}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table td{text-align:right;white-space:nowrap}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table tr>:last-child{border-right:0}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table tbody tr:not(.question-table-section)>th{position:sticky;left:0;box-shadow:1px 0 #d5ddd8}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table .question-table-section th{background:#f4f7f5;font-weight:650;padding-top:8px;padding-bottom:8px}
.question-table-note{font-size:16px!important;color:#35473c!important;margin:8px 0 16px!important}

body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table[data-columns="3"] thead th:first-child{width:36%}
@media(max-width:560px){body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table th,body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table td{padding:9px 6px}body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table caption{font-size:17px;padding:12px 8px;overflow-wrap:anywhere}}

body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-readable-table[data-columns="3"]{table-layout:auto}

/* Native tables keep each original merged cell and text in its original row. */
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-grid-table td{white-space:normal;text-align:left}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-grid-table td[data-numeric="true"]{white-space:nowrap;text-align:right}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-grid-table th{background:#eef4f0;font-weight:650;white-space:normal}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-grid-table tr>td:first-child{background:#fff}
body[data-ui] :is(.material,.stem,.exp-sec,.opt .t,.aga-exp) .question-grid-table [data-col="0"]{position:static;box-shadow:none}
.question-table-context{font-size:17px!important;line-height:1.7!important;color:#18242a!important}

.question-math{display:inline-block;max-width:100%;overflow-x:auto;overflow-y:hidden;vertical-align:middle;padding:4px 1px;font-size:1.1em;line-height:1.5;color:inherit;scrollbar-width:thin}
.question-math math{font-family:math,"Cambria Math","STIX Two Math",serif;font-size:1em;white-space:nowrap}
.practice-answer .question-math{font-size:22px}

/* Source graph geometry is retained; every checked label is sharp native text. */
.question-native-figure-scroll{max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;background:white;margin:14px 0;border:1px solid #d5ddd8;border-radius:6px;scrollbar-width:thin}
.question-native-figure-scroll:focus-visible{outline:2px solid var(--primary-strong);outline-offset:3px}
.question-native-figure{display:block;width:var(--question-figure-width);max-width:none;height:auto;background:#fff}
.question-native-figure text{user-select:text;-webkit-user-select:text;cursor:text;font-weight:400}

.question-native-prose{font-size:18px;line-height:1.85;font-family:system-ui,"Microsoft YaHei",sans-serif;color:#17242a;overflow-wrap:break-word}.question-native-prose p{margin:0 0 .85em}
