*{box-sizing:border-box}body{margin:0;font-family:"Microsoft YaHei",Arial,sans-serif;background:#f4f7fb;color:#1f2937}a{color:#1677ff;text-decoration:none}img{max-width:100%}code{background:#f1f5f9;padding:2px 5px;border-radius:4px}.topbar{position:sticky;top:0;z-index:20;background:linear-gradient(135deg,#1677ff,#06b6d4);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:12px 18px;box-shadow:0 2px 10px rgba(0,0,0,.12)}.brand a{color:#fff;font-size:20px;font-weight:700}.main-nav{display:flex;gap:8px;align-items:center}.main-nav a{color:#fff;padding:8px 10px;border-radius:8px}.main-nav a:hover,.main-nav a.active{background:rgba(255,255,255,.18)}.nav-toggle{display:none;background:rgba(255,255,255,.2);color:#fff;border:0;border-radius:8px;padding:8px 10px}.student-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff;padding:10px 18px;border-bottom:1px solid #e5e7eb;position:sticky;top:52px;z-index:15}.student-switch{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inline-form{display:inline-flex;align-items:center;gap:6px;margin:0}.container{width:min(1200px,96vw);margin:18px auto 40px}.footer{text-align:center;color:#64748b;padding:20px}.page-title,.hero-card,.panel,.empty-box{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;margin-bottom:16px;box-shadow:0 4px 18px rgba(15,23,42,.04)}.hero-card{background:linear-gradient(135deg,#ffffff,#eaf5ff)}.hero-card h1,.page-title h1{margin:0 0 8px}.muted{color:#64748b}.danger{color:#dc2626}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn{border:1px solid #d1d5db;background:#fff;color:#111827;border-radius:10px;padding:9px 14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;min-height:36px;font-size:14px}.btn:hover{background:#f8fafc}.btn.primary{background:#1677ff;border-color:#1677ff;color:#fff}.btn.primary:hover{background:#0f62d6}.btn.small{padding:6px 10px;min-height:30px}.btn.tiny{padding:4px 8px;min-height:26px;font-size:12px;border-radius:8px}.btn.large{padding:12px 22px;font-size:16px}.btn.full{width:100%;margin-top:12px}.danger-btn{color:#dc2626;border-color:#fecaca}.flash{padding:10px 12px;border-radius:10px;margin-bottom:12px}.flash-ok{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534}.flash-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,#dbeafe,#f8fafc 45%,#e0f2fe)}.login-card{width:min(420px,92vw);background:#fff;border-radius:18px;padding:24px;box-shadow:0 20px 60px rgba(15,23,42,.16)}.login-card h1{text-align:center;margin:0 0 8px}.login-card label{display:block;margin:12px 0 6px}.login-links{display:flex;justify-content:space-between;margin-top:14px}.tips{font-size:14px;background:#f8fafc;border-radius:12px;padding:10px;margin:14px 0}input,select,textarea{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:10px;background:#fff;font:inherit}textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:140px 1fr;gap:12px;align-items:center}.form-grid.two-fields{grid-template-columns:120px 1fr 120px 1fr}.filter-grid{display:grid;grid-template-columns:70px 1fr 70px 1fr 70px 1fr;gap:10px;align-items:center}.with-link{display:flex;gap:8px;align-items:center}.with-link a{white-space:nowrap}.two-col{display:grid;grid-template-columns:1fr 1.35fr;gap:22px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;background:#fff}th,td{border-bottom:1px solid #e5e7eb;padding:10px;text-align:left;vertical-align:middle}th{background:#f8fafc}.op-cell{white-space:nowrap}.badge{display:inline-block;border-radius:999px;padding:2px 8px;font-size:12px;margin-right:4px}.badge.green{background:#dcfce7;color:#166534}.badge.blue{background:#dbeafe;color:#1d4ed8}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;text-align:center}.stat-num{font-size:32px;font-weight:800;color:#1677ff}.tag-list{display:flex;gap:10px;flex-wrap:wrap}.tag{background:#eff6ff;border:1px solid #bfdbfe;padding:8px 12px;border-radius:999px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.tabs a{background:#fff;border:1px solid #d1d5db;padding:9px 14px;border-radius:999px}.tabs a.active{background:#1677ff;color:#fff;border-color:#1677ff}.image-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.file-btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;background:#1677ff;color:#fff;border-radius:10px;padding:9px 14px;cursor:pointer}.file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.range-label{display:flex;align-items:center;gap:8px}.range-label input{width:180px}.canvas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:12px}.edit-canvas{width:100%;min-height:180px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;touch-action:none}.sticky-actions{position:sticky;bottom:0;background:rgba(255,255,255,.92);padding:12px;border-top:1px solid #e5e7eb;margin:16px -18px -18px}.selection-bar{position:sticky;top:105px;z-index:10;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:10px 12px;margin-bottom:14px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 18px rgba(15,23,42,.05);flex-wrap:wrap}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.q-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;overflow:hidden;position:relative;box-shadow:0 4px 18px rgba(15,23,42,.04)}.select-check{position:absolute;top:8px;left:8px;z-index:5;background:rgba(255,255,255,.92);padding:5px 8px;border-radius:999px;font-size:13px}.q-img-wrap{height:190px;display:flex;align-items:center;justify-content:center;background:#f8fafc;border-bottom:1px solid #e5e7eb}.q-img-wrap img{width:100%;height:100%;object-fit:contain}.no-img{height:120px;display:grid;place-items:center;color:#94a3b8;background:#f8fafc;border-radius:10px}.q-meta{font-size:13px;line-height:1.7;padding:10px}.q-actions{padding:0 10px 10px;display:flex;gap:8px;align-items:center}.pagination{display:flex;gap:6px;justify-content:center;margin:18px 0;flex-wrap:wrap}.pagination a,.pagination span{padding:7px 10px;background:#fff;border:1px solid #d1d5db;border-radius:8px}.pagination a.active{background:#1677ff;color:#fff;border-color:#1677ff}.basket-list{display:grid;gap:10px}.basket-item{display:grid;grid-template-columns:90px 1fr auto;gap:12px;align-items:center;border:1px solid #e5e7eb;border-radius:12px;padding:8px}.basket-item img{width:90px;height:70px;object-fit:contain;background:#f8fafc;border-radius:8px}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.preview-images{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.preview-images img{height:220px;width:100%;object-fit:contain;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px}.print-body{background:#e5e7eb}.print-toolbar{position:sticky;top:0;background:#fff;border-bottom:1px solid #ddd;padding:10px;z-index:50;display:flex;gap:8px}.print-page{width:190mm;height:277mm;background:#fff;margin:10mm auto;padding:0;box-shadow:0 4px 20px rgba(0,0,0,.15);page-break-after:always;display:flex;flex-direction:column}.print-header{height:18mm;border-bottom:1px solid #111;display:flex;align-items:center;justify-content:space-between;padding:0 3mm;font-size:10pt}.print-header h1{font-size:16pt;margin:0}.print-grid{height:259mm;display:grid;gap:4mm;padding:4mm}.grid-1{grid-template-columns:1fr;grid-template-rows:1fr}.grid-2{grid-template-columns:1fr;grid-template-rows:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.grid-6{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr)}.grid-8{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(4,1fr)}.print-card{border:1px solid #222;padding:2mm;overflow:hidden;display:flex;flex-direction:column;break-inside:avoid}.print-meta{font-size:9pt;line-height:1.35;margin-bottom:1.5mm}.print-img{flex:1;min-height:0;width:100%;object-fit:contain}.answer-area{border-top:1px dashed #777;margin-top:2mm;padding-top:2mm;height:22mm;font-size:9pt}.review-box{border-top:1px dashed #777;margin-top:2mm;padding-top:1.5mm;font-size:8.5pt;line-height:1.3;max-height:32mm;overflow:hidden}.mode-simple{padding:1mm}.mode-simple .print-img{height:100%}@media print{@page{size:A4;margin:10mm}body{background:#fff}.no-print{display:none!important}.print-page{margin:0;box-shadow:none;width:190mm;height:277mm}.print-page:last-child{page-break-after:auto}}@media (max-width:900px){.main-nav{display:none;position:absolute;left:0;right:0;top:56px;background:#0f62d6;flex-direction:column;align-items:stretch;padding:10px}.nav-open .main-nav{display:flex}.nav-toggle{display:block}.student-bar{top:56px;align-items:flex-start;flex-direction:column}.form-grid,.form-grid.two-fields,.filter-grid{grid-template-columns:1fr}.two-col{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.canvas-grid{grid-template-columns:1fr}.selection-bar{top:120px}.q-img-wrap{height:160px}.preview-images{grid-template-columns:1fr}.check-grid{grid-template-columns:1fr}.basket-item{grid-template-columns:70px 1fr}.basket-item button{grid-column:1/-1}.op-cell{white-space:normal}.print-page{transform-origin:top center;max-width:100%;width:100%;height:auto;min-height:1300px}.print-grid{height:auto;min-height:1200px}}@media (max-width:520px){.container{width:94vw}.gallery-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr}.topbar{padding:10px 12px}.student-bar{padding:10px 12px}.page-title,.hero-card,.panel,.empty-box{padding:14px;border-radius:14px}.q-img-wrap{height:210px}}

/* V1.1：导航不再隐藏，手机端横向滑动显示 */
.topbar{gap:12px;flex-wrap:wrap}.main-nav{display:flex!important;gap:6px;overflow-x:auto;white-space:nowrap;max-width:100%;padding-bottom:2px}.nav-toggle{display:none!important}.main-nav a{flex:0 0 auto}.student-bar{top:58px}

/* V1.1：新增错题页面更紧凑，学科/年级/题型/难度支持点选 */
.compact-fields{display:grid;grid-template-columns:86px 1fr 86px 1fr;gap:8px 10px;align-items:center}.quick-field{display:contents}.quick-label,.compact-fields>label{font-weight:700;color:#334155}.quick-control{min-width:0}.chip-row{display:flex;gap:6px;overflow-x:auto;padding:2px 0 4px}.chip-btn{flex:0 0 auto;border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:999px;padding:6px 10px;font-size:13px;line-height:1;cursor:pointer}.chip-btn.active{background:#1677ff;border-color:#1677ff;color:#fff;box-shadow:0 2px 8px rgba(22,119,255,.25)}.select-line{display:flex;gap:6px;align-items:center}.select-line select{height:34px;padding:5px 8px;border-radius:8px;font-size:13px}.add-link{flex:0 0 auto;font-size:13px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:6px 8px}.compact-fields input{height:36px;padding:7px 10px}.image-editor h2{margin:0 0 10px}.image-editor h3{font-size:14px;margin:6px 0}.image-toolbar{gap:8px}.image-toolbar .btn,.image-toolbar .file-btn{min-height:34px;padding:7px 11px}.range-label{font-size:13px}.range-label input{width:140px}.edit-canvas{display:block;width:100%;height:auto;max-height:68vh;min-height:120px;background:#f8fafc;border:1px dashed #94a3b8;border-radius:10px;touch-action:none}.canvas-grid{gap:10px}.form-grid{gap:8px}.form-grid textarea{min-height:72px}.panel{padding:14px}.page-title{padding:14px}.sticky-actions{margin:12px -14px -14px;padding:10px}

/* V1.1：翻页条增强 */
.pagination-wrap{display:flex;flex-direction:column;align-items:center;gap:8px;margin:18px 0}.pagination-info{color:#64748b;font-size:14px}.pagination .disabled{color:#94a3b8;background:#f8fafc;border-color:#e5e7eb}.selection-bar{top:112px}

@media (max-width:900px){.topbar{align-items:flex-start;padding:8px 10px}.brand{width:100%;font-size:16px}.brand a{font-size:18px}.main-nav{position:static!important;left:auto!important;right:auto!important;top:auto!important;background:transparent!important;flex-direction:row!important;align-items:center!important;padding:0!important;width:100%;}.main-nav a{padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.12)}.student-bar{top:91px}.compact-fields{grid-template-columns:72px 1fr;gap:7px}.chip-row{padding-bottom:3px}.chip-btn{font-size:12px;padding:6px 9px}.select-line select{height:32px}.canvas-grid{grid-template-columns:1fr}.selection-bar{top:168px}.filter-grid{grid-template-columns:64px 1fr 64px 1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.student-bar{top:88px}.container{margin-top:10px}.main-nav a{font-size:13px;padding:6px 8px}.compact-fields{grid-template-columns:64px 1fr}.chip-row{max-width:calc(100vw - 110px)}.select-line{gap:5px}.select-line select{font-size:12px}.add-link{font-size:12px;padding:6px}.filter-grid{grid-template-columns:60px 1fr}.gallery-grid{grid-template-columns:1fr}.selection-bar{top:164px}.q-img-wrap{height:190px}.pagination{gap:4px}.pagination a,.pagination span{padding:6px 8px;font-size:13px}.canvas-grid h3{margin-top:10px}}

/* V1.2：裁剪控制点 + 黑白滑杆置于黑白图上方 + 手机图册分页优化 */
.bw-panel .bw-control{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:8px 10px;margin:0 0 8px}
.bw-panel .range-label{width:100%;display:flex;align-items:center;gap:8px;white-space:nowrap;font-weight:600;color:#334155}
.bw-panel .range-label input[type=range]{flex:1;min-width:140px;height:32px}
.bw-panel #thresholdValue{display:inline-flex;align-items:center;justify-content:center;min-width:38px;background:#1677ff;color:#fff;border-radius:999px;padding:2px 8px;font-size:12px}
.image-editor h3{margin:8px 0 8px;font-size:15px}
.edit-canvas{cursor:crosshair;user-select:none;-webkit-user-select:none}
.pagination-wrap{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:10px;margin:14px 0 22px;box-shadow:0 4px 18px rgba(15,23,42,.04)}
.pagination-info{text-align:center;color:#64748b;font-size:13px;margin:0 0 8px}
.pagination{margin:0}
.pagination a,.pagination span{min-width:38px;text-align:center}
.pagination .disabled{color:#94a3b8;background:#f8fafc}
@media (max-width:900px){.canvas-grid{gap:10px}.bw-panel{order:3}.image-toolbar .btn,.image-toolbar .file-btn{flex:1 1 auto}.selection-bar{position:sticky;top:98px}.pagination-wrap{position:sticky;bottom:0;z-index:12;margin-bottom:8px}.pagination{justify-content:flex-start;overflow:auto;flex-wrap:nowrap;padding-bottom:2px}.pagination a,.pagination span{white-space:nowrap}}
@media (max-width:520px){.bw-panel .range-label{font-size:14px}.bw-panel .range-label input[type=range]{min-width:120px}.pagination a,.pagination span{padding:8px 10px}.image-toolbar{gap:8px}.image-toolbar .btn,.image-toolbar .file-btn{padding:8px 10px}}

/* V1.3: 日期筛选和不保留原图选项 */
.date-range{display:flex;align-items:center;gap:6px;width:100%}
.date-range input[type=date]{min-width:0;flex:1;padding:9px 7px}
.date-range span{white-space:nowrap;color:#64748b;font-size:13px}
.keep-original-line{display:inline-flex;align-items:center;gap:7px;margin:8px 0 4px;padding:8px 10px;background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;color:#9a3412;font-size:14px;width:auto}
.keep-original-line input{width:auto;margin:0}
.q-meta div:last-child{color:#64748b}
@media (max-width:520px){.date-range{gap:4px}.date-range input[type=date]{font-size:12px;padding:8px 5px}.keep-original-line{width:100%;font-size:13px}}

/* ===== V1.4 导航与打印排版增强 ===== */
.badge.red{background:#fee2e2;color:#991b1b}.with-unit{display:flex;align-items:center;gap:8px}.with-unit input{max-width:160px}.with-unit.compact input{max-width:110px}.check-line{display:flex!important;align-items:center;gap:8px;width:auto}.check-line input{width:auto}.file-btn.album-btn{background:#0ea5e9}.file-btn.camera-btn{background:#1677ff}.image-toolbar .file-btn{box-shadow:0 8px 18px rgba(22,119,255,.18)}
.pretty-nav{background:linear-gradient(135deg,#0f63d8 0%,#1677ff 48%,#06b6d4 100%)!important;padding:12px 18px!important;gap:14px!important;align-items:center!important;box-shadow:0 10px 30px rgba(15,99,216,.22)!important;flex-wrap:wrap!important}.brand-block{display:flex;align-items:baseline;gap:8px;min-width:180px}.brand-block .brand{font-size:20px;font-weight:900;color:#fff;letter-spacing:.5px}.brand-sub{font-size:12px;color:rgba(255,255,255,.85);white-space:nowrap}.pretty-nav .main-nav{display:flex!important;position:static!important;flex:1!important;flex-direction:row!important;align-items:center!important;gap:8px!important;overflow-x:auto!important;padding:2px!important;background:transparent!important;scrollbar-width:none}.pretty-nav .main-nav::-webkit-scrollbar{display:none}.pretty-nav .main-nav a{flex:0 0 auto;color:#fff!important;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:8px 13px!important;line-height:1;font-size:14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}.pretty-nav .main-nav a:hover{background:rgba(255,255,255,.22)!important}.pretty-nav .main-nav a.active{background:#fff!important;color:#0f63d8!important;border-color:#fff!important;font-weight:800;box-shadow:0 6px 18px rgba(15,23,42,.14)}.pretty-student-bar{background:rgba(255,255,255,.96)!important;backdrop-filter:blur(10px);border-bottom:1px solid #dbe7f5!important;box-shadow:0 5px 18px rgba(15,23,42,.05);top:70px!important}.account-pill{display:flex;align-items:center;gap:8px;background:#f1f7ff;border:1px solid #d8e8ff;border-radius:999px;padding:7px 12px;color:#334155}.account-pill span{color:#64748b}.account-pill b{color:#0f63d8}.account-pill em{font-style:normal;background:#dbeafe;color:#1d4ed8;border-radius:999px;padding:2px 7px;font-size:12px}.student-switch select{height:34px;padding:5px 30px 5px 10px;border-radius:999px;border-color:#bfd7ff;background:#fff}.selection-bar .btn.primary{box-shadow:0 5px 14px rgba(22,119,255,.22)}.selection-bar{gap:8px!important}.print-card{padding-bottom:calc(2mm + var(--type-gap,0mm))!important}.print-grid{align-items:stretch}.system-setting-note{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:10px;color:#475569}
@media (max-width:900px){.pretty-nav{padding:10px 10px!important;display:block!important}.brand-block{margin-bottom:8px}.pretty-nav .main-nav{width:100%!important;display:flex!important;overflow-x:auto!important;padding-bottom:3px!important}.pretty-nav .main-nav a{font-size:13px;padding:8px 11px!important}.pretty-student-bar{top:96px!important;gap:8px!important}.account-pill{padding:6px 10px}.selection-bar{top:176px!important}.image-toolbar{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important}.image-toolbar .btn,.image-toolbar .file-btn{width:100%}.image-toolbar .btn:nth-child(n+3){grid-column:auto}.with-unit input{max-width:120px}}
@media (max-width:520px){.brand-block .brand{font-size:18px}.brand-sub{font-size:11px}.pretty-nav .main-nav a{font-size:12px;padding:7px 9px!important}.pretty-student-bar{top:92px!important}.selection-bar{top:170px!important}.student-switch{width:100%}.student-switch .inline-form{flex:1}.student-switch select{min-width:0}.image-toolbar{grid-template-columns:1fr 1fr!important}.image-toolbar .btn{font-size:13px;padding:7px 8px}.form-grid.two-fields{grid-template-columns:1fr!important}}


/* ===== V1.5 打印排版：一排一题/一排2题、无题目边框、图片自适应；不保留原图记忆 ===== */
.print-layout-tip{display:inline-flex;align-items:center;color:#475569;background:#f8fafc;border:1px solid #e5e7eb;border-radius:999px;padding:7px 11px;font-size:13px}
.print-page .print-grid.print-layout-row1,.print-page .print-grid.print-layout-row2{gap:var(--row-gap-mm,4mm)!important;align-items:stretch!important}
.print-page .print-grid.print-layout-row1{grid-template-columns:minmax(0,1fr)!important}
.print-page .print-grid.print-layout-row2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.print-page .print-card.no-question-frame{border:0!important;box-shadow:none!important;background:transparent!important;padding:0 0 var(--type-gap,0mm) 0!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;break-inside:avoid!important}
.print-page .print-card.no-question-frame .print-meta{font-size:9pt;line-height:1.32;margin:0 0 1.3mm 0;padding:0;color:#111}
.print-page .print-card.no-question-frame .print-img{flex:1 1 auto!important;min-height:0!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;display:block!important;background:transparent!important;border:0!important}
.print-page .print-card.no-question-frame.mode-simple{padding:0!important}
.print-page .print-card.no-question-frame.mode-simple .print-img{height:100%!important}
.print-page .print-card.no-question-frame .answer-area{border-top:1px dashed #777;margin-top:2mm;padding-top:2mm;height:22mm;font-size:9pt;flex:0 0 auto}
.print-page .print-card.no-question-frame .review-box{border-top:1px dashed #777;margin-top:2mm;padding-top:1.5mm;font-size:8.5pt;line-height:1.3;max-height:32mm;overflow:hidden;flex:0 0 auto}
.form-grid .system-setting-note{margin:0}
@media print{.print-layout-tip{display:none!important}.print-page .print-card.no-question-frame{border:0!important;box-shadow:none!important}}
@media (max-width:900px){.print-layout-tip{width:100%;justify-content:center}.print-page .print-grid.print-layout-row2{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media (max-width:520px){.print-page .print-grid.print-layout-row2{grid-template-columns:1fr!important}.print-layout-tip{font-size:12px;border-radius:12px}}
/* V1.6 打印排版：横排/竖排、每排题数、每页题数、设置记忆 */
.print-layout-form select.remember-select{border-color:#b7d4ff;background:#fff}.print-layout-form .system-setting-note{line-height:1.5}.print-page.print-dynamic{box-sizing:border-box}.print-page.print-dynamic .print-grid.print-layout-free{box-sizing:border-box;display:grid;padding:4mm;align-items:stretch;overflow:hidden}.print-page.print-dynamic.print-landscape .print-header h1{font-size:15pt}.print-page.print-dynamic.print-landscape .print-meta{font-size:8.5pt}.print-orientation-landscape .print-toolbar{max-width:1200px}.print-layout-free .print-card.no-question-frame{min-width:0;min-height:0}.print-layout-free .print-img{object-fit:contain!important}.print-layout-free .mode-simple .print-img{width:100%;height:100%}.page-title p .strong,.muted .strong{font-weight:800;color:#0f63d8}@media print{.print-page.print-dynamic .print-grid.print-layout-free{padding:4mm!important;overflow:hidden!important}.print-page.print-dynamic.print-landscape{page-break-after:always}.print-page.print-dynamic.print-portrait{page-break-after:always}}@media(max-width:900px){.print-layout-form{grid-template-columns:1fr!important}.print-page.print-dynamic{width:100%!important;height:auto!important;min-height:760px!important}.print-page.print-dynamic .print-grid.print-layout-free{height:auto!important;min-height:680px!important}.print-page.print-dynamic.print-landscape .print-grid.print-layout-free{min-height:520px!important}}@media(max-width:520px){.print-layout-form .check-grid{grid-template-columns:1fr}.print-page.print-dynamic.print-landscape .print-header{font-size:9pt}.print-page.print-dynamic.print-landscape .print-header h1{font-size:13pt}}

/* ===== V1.7 手机端双排导航、登录页、首页、编辑页优化 ===== */
.login-v17-body{display:block;min-height:100vh;background:linear-gradient(135deg,#eef6ff 0%,#f8fbff 42%,#e0f7ff 100%);padding:28px 14px}.login-shell-v17{width:min(980px,96vw);min-height:calc(100vh - 56px);margin:0 auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:22px}.login-brand-panel{color:#fff;border-radius:28px;padding:34px;background:linear-gradient(145deg,#0f63d8 0%,#1677ff 52%,#08b7d8 100%);box-shadow:0 24px 70px rgba(15,99,216,.25);position:relative;overflow:hidden}.login-brand-panel:before{content:"";position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.14)}.login-brand-panel:after{content:"";position:absolute;left:-50px;bottom:-80px;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.09)}.login-logo-mark{width:70px;height:70px;border-radius:22px;background:rgba(255,255,255,.95);color:#0f63d8;display:grid;place-items:center;font-size:34px;font-weight:900;box-shadow:0 12px 30px rgba(15,23,42,.15);position:relative;z-index:1}.login-brand-panel h1{position:relative;z-index:1;font-size:34px;margin:20px 0 10px;letter-spacing:.5px}.login-brand-panel p{position:relative;z-index:1;font-size:16px;line-height:1.8;color:rgba(255,255,255,.92);margin:0}.login-feature-list{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.login-feature-list span{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:8px 12px;color:#fff}.login-card-v17{width:100%;border:1px solid #dbeafe;box-shadow:0 22px 60px rgba(15,23,42,.12);padding:28px;border-radius:26px}.login-card-title h2{font-size:28px;margin:0 0 6px;color:#0f172a}.login-card-title p{margin:0 0 16px;color:#64748b;line-height:1.5}.login-card-v17 label{font-weight:700;color:#334155}.login-card-v17 input[name=username],.login-card-v17 input[name=password]{height:46px;border-radius:14px;border-color:#cbdff8;background:#f8fbff}.login-options-v17{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:12px 0 6px}.login-check{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:7px 10px}.login-local-note{font-size:12px;color:#64748b;line-height:1.5;background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;padding:8px 10px}.login-submit{height:46px;border-radius:14px;font-weight:800;font-size:16px;box-shadow:0 10px 24px rgba(22,119,255,.22)}.login-links-v17{border-top:1px solid #e5e7eb;padding-top:14px}.home-hero-v17{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:stretch;background:linear-gradient(135deg,#0f63d8,#1677ff 52%,#0bb7d5);border-radius:26px;padding:24px;color:#fff;box-shadow:0 18px 50px rgba(15,99,216,.22);margin-bottom:18px;overflow:hidden;position:relative}.home-hero-v17:after{content:"";position:absolute;right:-80px;top:-80px;width:240px;height:240px;border-radius:50%;background:rgba(255,255,255,.12)}.home-hero-main,.home-hero-side{position:relative;z-index:1}.home-kicker{display:inline-flex;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:6px 12px;font-size:13px}.home-hero-v17 h1{font-size:30px;margin:14px 0 8px}.home-hero-v17 p{margin:0;color:rgba(255,255,255,.92);line-height:1.7}.home-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.home-hero-actions .btn{border-color:rgba(255,255,255,.45)}.home-hero-actions .btn:not(.primary){background:rgba(255,255,255,.14);color:#fff}.home-hero-side{display:flex;flex-direction:column;gap:12px;align-items:stretch;justify-content:center}.home-circle-stat{height:150px;border-radius:24px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.24);display:grid;place-items:center;text-align:center}.home-circle-stat b{display:block;font-size:44px;line-height:1}.home-circle-stat span{display:block;color:rgba(255,255,255,.9);margin-top:4px}.home-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.home-mini-stats div{border-radius:16px;background:rgba(255,255,255,.16);text-align:center;padding:10px 6px}.home-mini-stats b{font-size:21px;display:block}.home-mini-stats span{font-size:12px;color:rgba(255,255,255,.9)}.home-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}.home-action-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:18px;box-shadow:0 8px 26px rgba(15,23,42,.06);display:flex;flex-direction:column;gap:8px;color:#0f172a;min-height:130px}.home-action-card:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(15,23,42,.09)}.home-action-card i{width:42px;height:42px;border-radius:15px;background:#eff6ff;color:#1677ff;display:grid;place-items:center;font-style:normal;font-size:24px}.home-action-card b{font-size:17px}.home-action-card span{font-size:13px;color:#64748b;line-height:1.5}.home-action-card.primary-action{background:linear-gradient(135deg,#ffffff,#edf7ff);border-color:#bfdbfe}.home-stats-v17 .stat-card{border:0;box-shadow:0 8px 26px rgba(15,23,42,.06)}.home-two-col-v17{display:grid;grid-template-columns:1fr 1fr;gap:16px}.home-panel-v17{padding:18px}.panel-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.panel-title-row h2{margin:0;font-size:19px}.subject-bars{display:grid;gap:10px}.subject-bar-item{display:grid;grid-template-columns:90px 1fr 40px;gap:10px;align-items:center;color:#334155}.subject-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subject-bar{height:10px;border-radius:999px;background:#e2e8f0;overflow:hidden}.subject-bar i{display:block;height:100%;background:linear-gradient(90deg,#1677ff,#06b6d4);border-radius:999px}.subject-bar-item b{text-align:right;color:#0f63d8}.recent-list-v17{display:grid;gap:10px}.recent-item-v17{display:grid;grid-template-columns:78px 1fr;gap:12px;align-items:center;color:#0f172a;border:1px solid #e5e7eb;border-radius:16px;padding:8px;background:#fff}.recent-thumb-v17{width:78px;height:58px;border-radius:12px;background:#f8fafc;display:grid;place-items:center;overflow:hidden;color:#94a3b8}.recent-thumb-v17 img{width:100%;height:100%;object-fit:contain}.recent-item-v17 b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-item-v17 span,.recent-item-v17 em{display:block;font-style:normal;color:#64748b;font-size:12px;line-height:1.5}.edit-title-v17 p{margin:6px 0 0;color:#64748b}.edit-panel-v17{background:linear-gradient(180deg,#fff,#f8fbff)}.edit-preview-v17{grid-template-columns:repeat(3,1fr);gap:12px}.preview-card-v17{border:1px solid #e5e7eb;border-radius:16px;padding:10px;background:#fff}.preview-card-v17 h3{margin:0 0 8px;font-size:15px;color:#334155}.preview-card-v17 img{height:180px!important;border-radius:12px}.edit-form-v17{display:grid;gap:14px}.edit-compact-fields{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:14px}.edit-quick-field .chip-row{padding-bottom:5px}.edit-text-grid-v17{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:14px}.edit-text-grid-v17 textarea{min-height:86px}.no-student-hero{grid-template-columns:1fr}.no-student-hero .home-hero-main{max-width:760px}
@media (max-width:900px){.pretty-nav{display:block!important;padding:9px 9px 10px!important}.brand-block{display:flex!important;justify-content:space-between;align-items:center;margin-bottom:8px;width:100%;min-width:0}.pretty-nav .main-nav{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;width:100%!important;overflow:visible!important;padding:0!important}.pretty-nav .main-nav a{display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;border-radius:13px!important;font-size:12px!important;padding:8px 4px!important;text-align:center!important}.pretty-student-bar{top:112px!important;align-items:flex-start!important;gap:8px!important}.student-switch{width:100%;justify-content:space-between}.selection-bar{top:196px!important}.login-shell-v17{grid-template-columns:1fr;min-height:auto}.login-brand-panel{padding:24px;border-radius:24px}.login-brand-panel h1{font-size:28px}.home-hero-v17{grid-template-columns:1fr;padding:20px;border-radius:22px}.home-hero-side{display:grid;grid-template-columns:1fr}.home-action-grid{grid-template-columns:repeat(2,1fr)}.home-two-col-v17{grid-template-columns:1fr}.edit-preview-v17{grid-template-columns:1fr}.preview-card-v17 img{height:170px!important}.edit-text-grid-v17{grid-template-columns:1fr}.edit-text-grid-v17 label{margin-top:4px}}
@media (max-width:520px){.login-v17-body{padding:12px}.login-shell-v17{width:100%;gap:12px}.login-brand-panel{padding:18px;border-radius:22px}.login-logo-mark{width:54px;height:54px;border-radius:18px;font-size:27px}.login-brand-panel h1{font-size:24px;margin:14px 0 6px}.login-brand-panel p{font-size:14px}.login-feature-list{gap:6px;margin-top:14px}.login-feature-list span{font-size:12px;padding:6px 9px}.login-card-v17{padding:18px;border-radius:22px}.login-card-title h2{font-size:24px}.login-options-v17{gap:8px}.pretty-nav{padding:8px!important}.brand-block{margin-bottom:7px}.brand-block .brand{font-size:17px!important}.brand-sub{display:none}.pretty-nav .main-nav{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important}.pretty-nav .main-nav a{font-size:11px!important;padding:7px 2px!important;border-radius:11px!important}.pretty-student-bar{top:100px!important;padding:8px 10px!important}.account-pill{width:100%;justify-content:center;font-size:12px;padding:5px 8px}.student-switch{gap:6px}.student-switch .inline-form{width:100%;display:grid;grid-template-columns:64px minmax(0,1fr);gap:6px}.student-switch .inline-form .btn{grid-column:1/-1}.student-switch select{width:100%;font-size:13px}.selection-bar{top:188px!important}.container{width:94vw;margin-top:10px}.home-hero-v17{padding:16px;border-radius:20px}.home-hero-v17 h1{font-size:23px}.home-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.home-hero-actions .btn{padding:10px 8px;font-size:13px}.home-action-grid{grid-template-columns:1fr 1fr;gap:10px}.home-action-card{padding:12px;border-radius:16px;min-height:116px}.home-action-card i{width:36px;height:36px;font-size:20px}.home-action-card b{font-size:15px}.home-action-card span{font-size:12px}.home-mini-stats{grid-template-columns:repeat(3,1fr)}.home-circle-stat{height:120px}.home-circle-stat b{font-size:36px}.subject-bar-item{grid-template-columns:72px 1fr 32px;font-size:13px}.recent-item-v17{grid-template-columns:66px 1fr}.recent-thumb-v17{width:66px;height:54px}.edit-compact-fields{padding:10px}.edit-text-grid-v17{padding:10px}.edit-preview-v17{gap:8px}.preview-card-v17{padding:8px}.preview-card-v17 img{height:150px!important}.compact-fields{grid-template-columns:60px 1fr!important}.chip-row{max-width:calc(100vw - 110px)}}
@media (max-width:370px){.pretty-nav .main-nav a{font-size:10.5px!important;padding:6px 1px!important}.brand-block .brand{font-size:16px!important}.pretty-student-bar{top:96px!important}.selection-bar{top:184px!important}.home-action-grid{grid-template-columns:1fr}.home-hero-actions{grid-template-columns:1fr}}

/* V1.8 自动黑白最清晰 */
.bw-control-auto{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bw-control-auto .range-label{flex:1 1 220px}.auto-bw-btn{background:#eef6ff;border-color:#bfdbfe;color:#0f63d8;font-weight:700;white-space:nowrap}@media(max-width:520px){.bw-control-auto{display:grid;grid-template-columns:1fr auto}.bw-control-auto .range-label{min-width:0}.auto-bw-btn{padding:7px 9px;font-size:12px}}

/* V1.9 设置选项卡、AI模型、连续录入、裁剪锁定优化 */
.settings-tabs{position:sticky;top:0;z-index:5;background:#f4f7fb;padding:6px 0 12px}.settings-tabs a{font-weight:700}.settings-panel h2{margin-top:4px}.check-line{display:flex!important;align-items:center;gap:8px;margin:0;font-weight:600}.check-line input{width:auto}.check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.check-grid label,.settings-check-list label{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px}.check-grid input,.settings-check-list input{width:auto}.settings-check-list{display:grid;gap:10px}.block-label{display:block;margin:14px 0 8px;font-weight:700}.ai-tip-box{margin-top:12px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:14px;padding:12px;color:#1e3a8a;line-height:1.6}.option-lines{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0}.option-lines .keep-original-line{margin:0;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:8px 11px}.ai-entry-btn{background:linear-gradient(135deg,#fff7ed,#eff6ff);border-color:#bfdbfe;color:#0f63d8}.ai-settings-panel input[type=password]{font-family:Consolas,monospace}.main-nav a[href*="tab=ai"]{background:rgba(255,255,255,.13)}.main-nav a[href*="tab=ai"].active{background:rgba(255,255,255,.28)}
@media (max-width:900px){.pretty-nav .main-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important}.pretty-nav .main-nav a{font-size:11.5px!important}.pretty-student-bar{top:104px!important}.selection-bar{top:188px!important}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.two-fields{grid-template-columns:1fr}.form-grid.two-fields>label{margin-top:6px}.option-lines{display:grid;grid-template-columns:1fr;gap:8px}.option-lines .keep-original-line{border-radius:14px}.settings-tabs{position:static}}
@media (max-width:520px){.pretty-nav .main-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:4px!important}.pretty-nav .main-nav a{font-size:10.2px!important;padding:7px 1px!important}.pretty-student-bar{top:96px!important}.selection-bar{top:180px!important}.check-grid{grid-template-columns:1fr}.settings-check-list label{font-size:13px}.ai-tip-box{font-size:13px}.settings-tabs a{padding:8px 11px;font-size:13px}}
@media (max-width:370px){.pretty-nav .main-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important}.pretty-nav .main-nav a{font-size:9.6px!important;padding:6px 0!important}.pretty-student-bar{top:92px!important}}


/* V1.10 AI识别与右侧滑动按钮增强 */
.ai-recognize-status{margin:9px 0 10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;color:#475569;line-height:1.55}
.ai-recognize-status.loading{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}
.ai-recognize-status.ok{background:#ecfdf5;border-color:#bbf7d0;color:#166534}
.ai-recognize-status.error{background:#fef2f2;border-color:#fecaca;color:#991b1b}


/* V1.12 AI模型切换、AI解释区域 */
.model-setting-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:10px 0 12px}.model-card{border:1px solid #e2e8f0;background:#f8fafc;border-radius:16px;padding:14px}.model-card h3{margin:0 0 6px}.model-card p{margin:0 0 10px;color:#64748b;font-size:13px}.model-card select,.model-card input{width:100%;margin-top:8px}.ai-model-cheatsheet{background:#fff7ed;border:1px solid #fed7aa;border-radius:14px;padding:12px 14px;margin:12px 0;color:#7c2d12}.ai-model-cheatsheet ol{margin:8px 0 0 20px;padding:0;line-height:1.8}.ai-model-cheatsheet code{background:#ffedd5;border-radius:6px;padding:2px 5px}.ai-action-row{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.ai-edit-panel{border:1px solid #bfdbfe;background:linear-gradient(135deg,#eff6ff,#ffffff);border-radius:16px;padding:14px;margin:14px 0}.ai-edit-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.ai-edit-head h2{margin:0 0 4px}.ai-tiny-btn{background:#eef6ff!important;border-color:#bfdbfe!important;color:#0f63d8!important}.range-setting-row{display:grid;grid-template-columns:1fr 56px;gap:12px;align-items:center}.range-setting-row input[type=range]{width:100%}
@media(max-width:700px){.model-setting-grid{grid-template-columns:1fr}.ai-edit-head{display:block}.ai-action-row .btn{flex:1 1 calc(50% - 6px)}.ai-action-row .ai-recognize-btn{flex-basis:100%}.image-toolbar .ai-action-btn{flex:1 1 calc(50% - 6px)}}

/* V1.16：七牛云存储设置 + 图片编辑框缩小，方便手机触摸和上下滑动 */
.storage-settings-panel .storage-example-box{margin:12px 0 0;background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px;color:#475569;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.storage-settings-panel .storage-example-box code{background:#e0f2fe;color:#075985}
.image-editor .canvas-grid{align-items:start;gap:8px;margin-top:8px}
.image-editor .canvas-grid>div{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:8px;overflow:hidden}
.image-editor .canvas-grid h3{font-size:13px;margin:0 0 6px;color:#334155}
.image-editor .edit-canvas{display:block;max-width:100%;width:100%;height:auto;min-height:78px;max-height:260px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc}
#sourceCanvas{touch-action:none;max-height:300px;cursor:crosshair}
#cropCanvas,#bwCanvas{touch-action:pan-y;max-height:220px;cursor:default}
.bw-panel .bw-control{padding:6px 8px;margin-bottom:6px;border-radius:9px}
.bw-panel .range-label input[type=range]{height:26px}
@media (max-width:700px){
  .image-editor .canvas-grid{grid-template-columns:1fr;gap:8px}
  .image-editor .canvas-grid>div{padding:7px;border-radius:9px}
  .image-editor .edit-canvas{min-height:70px;max-height:28vh}
  #sourceCanvas{max-height:30vh}
  #cropCanvas,#bwCanvas{max-height:22vh;touch-action:pan-y}
  .bw-panel .bw-control{padding:6px}
}

/* V1.17 AI说明页 + 自适应文字 + 答题区加高 */
.adaptive-text{font-size:clamp(14px,3.45vw,16px);line-height:1.72;overflow-wrap:anywhere;word-break:break-word}.adaptive-text h1{font-size:clamp(22px,6vw,34px);line-height:1.18}.adaptive-text h2{font-size:clamp(18px,4.8vw,24px);line-height:1.25;margin-top:0}.adaptive-text h3{font-size:clamp(15px,4vw,18px);line-height:1.3}.ai-help-page code{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.ai-status-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.ai-status-grid div{background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;padding:12px;min-width:0}.ai-status-grid span{display:block;color:#64748b;font-size:13px;margin-bottom:4px}.ai-status-grid b{display:block;color:#0f63d8;font-size:clamp(13px,3.5vw,15px);overflow-wrap:anywhere}.error-sample{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239;border-radius:14px;padding:12px;margin:10px 0;font-family:Consolas,Monaco,monospace;font-size:clamp(12px,3.2vw,14px);overflow-wrap:anywhere;word-break:break-word}.help-steps{padding-left:22px}.help-steps li{margin:7px 0}.help-steps.big li{margin:10px 0}.model-list{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:14px;padding:12px;margin-top:10px}.two-help-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.help-card{background:#f8fbff;border:1px solid #dbeafe;border-radius:16px;padding:14px;min-width:0}.code-list{display:grid;gap:8px}.code-list code{display:block;background:#eef6ff;border:1px solid #bfdbfe;color:#1d4ed8;border-radius:10px;padding:8px 10px}.print-page .print-card.no-question-frame .answer-area{height:50mm;min-height:50mm}.print-meta,.review-box,.answer-area{overflow-wrap:anywhere;word-break:break-word}@media(max-width:900px){.ai-status-grid{grid-template-columns:1fr 1fr}.two-help-cols{grid-template-columns:1fr}}@media(max-width:520px){.ai-status-grid{grid-template-columns:1fr}.ai-help-page.panel{padding:14px}.error-sample{padding:10px}}


/* V1.18: 权限/配置来源/自适应文字增强 */
.setting-fieldset{border:0;margin:0;padding:0;min-width:0}.setting-fieldset:disabled{opacity:.72}.scope-switch.small-tabs{margin-top:-6px;margin-bottom:12px}.ai-model-cheatsheet ol{margin:8px 0 0 20px}.ai-model-cheatsheet code,.storage-example-box code,.adaptive-text code{overflow-wrap:anywhere;word-break:break-word;white-space:normal}.filter-grid select,.filter-grid input{min-width:0}.q-meta{overflow-wrap:anywhere;word-break:break-word}.print-meta,.review-box,.answer-area{overflow-wrap:anywhere;word-break:break-word}.form-grid.two-fields{min-width:0}.model-card input,.model-card select{min-width:0}.ai-help-page p,.ai-help-page li{overflow-wrap:anywhere;word-break:break-word}@media(max-width:640px){.settings-tabs.tabs,.scope-switch.tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.settings-tabs.tabs a,.scope-switch.tabs a{text-align:center;padding:9px 8px}.filter-grid{grid-template-columns:1fr!important}.date-range{display:grid;grid-template-columns:1fr auto 1fr;gap:6px}.form-grid.two-fields{grid-template-columns:1fr!important}.ai-model-cheatsheet ol{padding-left:18px}.answer-area{font-size:10pt}}

/* V1.19 图片/图册显示区不变形：所有缩略图按比例完整显示 */
.q-img-wrap,
.basket-item .basket-thumb,
.recent-thumb-v17,
.preview-card-v17,
.home-action-card i {
  flex-shrink: 0;
}
.q-img-wrap {
  height: auto !important;
  aspect-ratio: 4 / 3;
  min-height: 120px;
  padding: 6px;
  background: #f8fafc;
}
.q-img-wrap img,
.basket-item img,
.preview-images img,
.preview-card-v17 img,
.recent-thumb-v17 img,
.home-recent-list img,
.print-img {
  max-width: 100% !important;
  max-height: 100% !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  display: block;
  margin: auto;
}
.basket-item img,
.recent-thumb-v17 img,
.home-recent-list img {
  background: #f8fafc;
}
@media (max-width: 520px) {
  .q-img-wrap { min-height: 96px; padding: 5px; }
}

/* V1.20 图片旋转 / 放大 / 1:1 查看 */
.image-toolbar .image-view-btn{background:#f8fafc;border-color:#cbd5e1;color:#0f172a;font-weight:700}
.image-toolbar #rotateLeftBtn,
.image-toolbar #rotateRightBtn{background:#fff7ed;border-color:#fed7aa;color:#9a3412;font-weight:700}
.wb-viewer-open{overflow:hidden}
.wb-image-viewer.hidden{display:none!important}
.wb-image-viewer{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:14px}
.wb-image-viewer-mask{position:absolute;inset:0;background:rgba(15,23,42,.66);backdrop-filter:blur(3px)}
.wb-image-viewer-card{position:relative;width:min(96vw,1180px);height:min(92vh,900px);background:#fff;border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.32);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden}
.wb-image-viewer-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #e5e7eb;background:linear-gradient(180deg,#fff,#f8fafc)}
.wb-image-viewer-head strong{font-size:16px;color:#0f172a}
.wb-viewer-close{border:0;background:#f1f5f9;color:#334155;width:34px;height:34px;border-radius:50%;font-size:24px;line-height:1;cursor:pointer}
.wb-viewer-close:active{transform:scale(.96)}
.wb-image-viewer-tools{display:flex;gap:8px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid #e5e7eb;background:#fbfdff}
.wb-image-viewer-tools button{border:1px solid #dbeafe;background:#fff;color:#0f63d8;border-radius:999px;padding:8px 12px;font-weight:700;cursor:pointer}
.wb-image-viewer-tools button.active{background:#1677ff;color:#fff;border-color:#1677ff}
.wb-image-viewer-body{overflow:auto;background:#111827;display:flex;align-items:center;justify-content:center;padding:16px;-webkit-overflow-scrolling:touch}
.wb-image-viewer-img{display:block;background:#fff;box-shadow:0 12px 40px rgba(0,0,0,.28)}
.wb-image-viewer-img.fit-screen{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.wb-image-viewer-img.one-to-one{max-width:none;max-height:none;width:auto;height:auto;image-rendering:auto}
.wb-image-viewer-foot{font-size:12px;color:#64748b;padding:8px 12px;border-top:1px solid #e5e7eb;background:#f8fafc;text-align:center}
@media(max-width:620px){
  .wb-image-viewer{padding:8px}
  .wb-image-viewer-card{width:100vw;height:96vh;border-radius:14px}
  .wb-image-viewer-head{padding:9px 10px}
  .wb-image-viewer-tools{gap:6px;padding:8px}
  .wb-image-viewer-tools button{font-size:12px;padding:7px 9px}
  .wb-image-viewer-body{padding:8px;align-items:flex-start;justify-content:flex-start}
  .wb-image-viewer-img.fit-screen{margin:auto}
}

/* V1.21: 放大预览支持直接框选裁剪 */
.wb-image-viewer-canvas{display:block;background:#fff;box-shadow:0 12px 40px rgba(0,0,0,.28);touch-action:none;cursor:crosshair;user-select:none;-webkit-user-select:none}
.wb-image-viewer-canvas.fit-screen{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;margin:auto}
.wb-image-viewer-canvas.one-to-one{max-width:none;max-height:none;width:auto;height:auto;image-rendering:auto}
.wb-viewer-apply{border:1px solid #1677ff!important;background:#1677ff!important;color:#fff!important}
@media (max-width:900px){.wb-image-viewer-canvas.fit-screen{margin:auto}.wb-image-viewer-tools .wb-viewer-apply{flex:1 1 auto}}
.wb-image-viewer-body{align-items:flex-start;justify-content:flex-start}
.wb-image-viewer-img.fit-screen{margin:auto}


/* V1.22: 图册点击图片=选中；打印图片显示修复；打印边距支持 */
button.q-img-wrap{border:0;width:100%;font:inherit;color:inherit;cursor:pointer;text-align:inherit}
.q-img-select:hover{outline:2px solid #93c5fd;outline-offset:-2px}
.q-card.selected{border-color:#1677ff!important;box-shadow:0 0 0 3px rgba(22,119,255,.14),0 8px 24px rgba(15,23,42,.08)!important}
.q-card.selected .select-check{background:#1677ff;color:#fff}
.q-card.selected .q-img-wrap{background:#eef6ff}
.print-img-box{flex:1 1 auto;min-height:0;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:transparent}
.print-img-box img.print-img{display:block!important;max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important;object-fit:contain!important;object-position:center center!important;margin:auto!important}
.print-img-missing{display:flex;align-items:center;justify-content:center;color:#94a3b8;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc}
.print-page .print-card.no-question-frame .print-img-box{min-height:20mm}
.print-page .print-card.no-question-frame.mode-simple .print-img-box{height:100%}
@media print{.print-img-box img.print-img{max-width:100%!important;max-height:100%!important;width:auto!important;height:auto!important}.print-page .print-card.no-question-frame .print-img-box{overflow:hidden!important}}

/* V1.23: 图册上方图片区放大，下方选择框选中 */
.q-card{display:flex;flex-direction:column}
button.q-img-wrap.q-img-view{position:relative;border:0;width:100%;font:inherit;color:inherit;cursor:zoom-in;text-align:inherit;border-bottom:1px solid #e5e7eb;overflow:hidden}
.q-img-view:hover{outline:2px solid #60a5fa;outline-offset:-2px;background:#f0f7ff}
.q-img-view:active{transform:scale(.995)}
.q-view-hint{position:absolute;right:8px;bottom:8px;background:rgba(15,23,42,.72);color:#fff;font-size:12px;border-radius:999px;padding:4px 8px;pointer-events:none}
.q-select-zone{display:flex;align-items:center;justify-content:center;gap:8px;min-height:42px;margin:8px 10px 0;padding:9px 10px;border:1px solid #cbd5e1;border-radius:12px;background:#f8fafc;color:#334155;font-weight:700;cursor:pointer;user-select:none;-webkit-user-select:none;transition:.15s ease}
.q-select-zone:hover{border-color:#93c5fd;background:#eff6ff;color:#0f63d8}
.q-select-zone:focus{outline:2px solid rgba(22,119,255,.35);outline-offset:2px}
.q-select-zone input.q-select{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}
.fake-checkbox{width:19px;height:19px;border-radius:6px;border:2px solid #94a3b8;background:#fff;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
.q-select-zone.selected{background:#1677ff;border-color:#1677ff;color:#fff;box-shadow:0 6px 18px rgba(22,119,255,.22)}
.q-select-zone.selected .fake-checkbox{background:#fff;border-color:#fff;color:#1677ff}
.q-select-zone.selected .fake-checkbox:after{content:"✓";font-size:14px;font-weight:900;line-height:1}
.q-card.selected .q-img-wrap{background:#eef6ff}
.q-card.selected .q-select-zone{background:#1677ff;border-color:#1677ff;color:#fff}
.select-check{display:none!important}
.wb-gallery-opened{overflow:hidden}
.wb-gallery-viewer.hidden{display:none!important}
.wb-gallery-viewer{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:14px}
.wb-gallery-mask{position:absolute;inset:0;background:rgba(15,23,42,.70);backdrop-filter:blur(3px)}
.wb-gallery-card{position:relative;width:min(96vw,1160px);height:min(92vh,900px);background:#fff;border-radius:18px;box-shadow:0 26px 88px rgba(0,0,0,.35);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden}
.wb-gallery-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid #e5e7eb;background:linear-gradient(180deg,#fff,#f8fafc)}
.wb-gallery-head strong{font-size:16px;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wb-gallery-close{border:0;background:#f1f5f9;color:#334155;width:34px;height:34px;border-radius:999px;font-size:24px;line-height:1;cursor:pointer;flex:0 0 auto}
.wb-gallery-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;border-bottom:1px solid #e5e7eb;background:#fbfdff}
.wb-gallery-tools button,.wb-gallery-tools a{border:1px solid #dbeafe;background:#fff;color:#0f63d8;border-radius:999px;padding:8px 12px;font-weight:700;cursor:pointer;font-size:14px}
.wb-gallery-tools button.active{background:#1677ff;color:#fff;border-color:#1677ff}
.wb-gallery-body{overflow:auto;background:#111827;display:flex;align-items:center;justify-content:center;padding:16px;-webkit-overflow-scrolling:touch}
.wb-gallery-img{display:block;background:#fff;box-shadow:0 12px 40px rgba(0,0,0,.28)}
.wb-gallery-img.fit-screen{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;margin:auto}
.wb-gallery-img.one-to-one{max-width:none;max-height:none;width:auto;height:auto;image-rendering:auto}
.wb-gallery-foot{font-size:12px;color:#64748b;padding:8px 12px;border-top:1px solid #e5e7eb;background:#f8fafc;text-align:center}
@media(max-width:620px){.q-select-zone{min-height:44px;margin:7px 8px 0;font-size:14px}.q-view-hint{font-size:11px;padding:3px 7px}.wb-gallery-viewer{padding:8px}.wb-gallery-card{width:100vw;height:96vh;border-radius:14px}.wb-gallery-head{padding:9px 10px}.wb-gallery-tools{gap:6px;padding:8px}.wb-gallery-tools button,.wb-gallery-tools a{font-size:12px;padding:7px 9px}.wb-gallery-body{padding:8px;align-items:flex-start;justify-content:flex-start}.wb-gallery-img.fit-screen{margin:auto}}
