:root{--ink:#1c2636;--muted:#6a7689;--subtle:#8c98a7;--line:#dce3ed;--blue:#405de6;--blue-ink:#334bc0;--pale:#ecf0ff;--bg:#f3f5f9;--white:#fff;--teal:#15a593;--paper-line:#343434;--rounded:12px;--panel:350px;--side:222px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;background:var(--bg);color:var(--ink)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.38;cursor:not-allowed}.hide{display:none!important}#app{display:grid;grid-template-columns:var(--side) minmax(0,1fr) var(--panel);height:100vh;min-height:620px}.sidebar{background:#19243a;color:#e9effa;display:flex;flex-direction:column;padding:20px 12px;min-height:0}.brand{display:flex;align-items:center;gap:11px;padding:3px 10px 25px}.brand-icon{width:41px;height:41px;border-radius:12px;background:#4a64eb;display:flex;align-items:center;justify-content:center;font:700 28px Georgia;color:white}.brand strong{font-size:19px;letter-spacing:-.6px;display:block}.brand small{color:#a5b4ce;font-size:11px;display:block;letter-spacing:.02em}.nav-heading{font-size:10px;letter-spacing:1.3px;color:#91a1c0;padding:13px 13px 10px;font-weight:800}.nav-item{background:none;color:#b9c5da;border:0;text-align:left;display:flex;align-items:center;gap:11px;padding:12px 13px;border-radius:9px;font-size:13px;font-weight:600;width:100%;transition:background .15s}.nav-item:hover,.nav-item.active{background:#2c3b5a;color:#fff}.nav-ico{font-size:19px;text-align:center;width:22px;font-weight:400}.sidebar-bottom{margin-top:auto}.sidebar-tip{margin:15px 4px 18px;border:1px solid #3b4c70;border-radius:12px;padding:14px;background:#253450;display:flex;flex-direction:column;gap:7px}.sidebar-tip strong{font-size:12px}.sidebar-tip span{font-size:11px;color:#b9c8e3;line-height:1.55}.sidebar-version{margin:13px 12px 0;color:#7f90ac;font-size:9px;letter-spacing:.6px}.main-app{min-width:0;display:flex;flex-direction:column;height:100vh}.topbar{height:64px;background:white;border-bottom:1px solid var(--line);padding:0 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex:0 0 auto;z-index:5}.topbar-title{min-width:0;display:flex;align-items:center;gap:12px}.topbar-title>span:first-child{font-weight:750;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.save-indicator{color:#57938a;font-size:11px;white-space:nowrap}.topbar-actions{display:flex;align-items:center;gap:6px}.button{border:1px solid #d2dae7;border-radius:8px;padding:9px 13px;background:white;color:#26364c;font-size:12px;font-weight:700;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .15s,border-color .15s}.button:hover{border-color:#afbfeb;background:#f5f7ff}.button.primary{background:var(--blue);border-color:var(--blue);color:white}.button.primary:hover{background:var(--blue-ink)}.button.subtle{background:#f8f9fc}.button.ghost{background:transparent;border-color:transparent}.button.small{padding:7px 10px;font-size:11px}.toolbar-divider{height:25px;width:1px;background:var(--line);margin:0 5px}.view{min-height:0;flex:1;display:flex;flex-direction:column}.canvas-toolbar{background:white;border-bottom:1px solid var(--line);min-height:61px;padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px}.canvas-toolbar-left{display:flex;flex-direction:column;gap:4px}.canvas-toolbar-left strong{font-size:12px}.canvas-toolbar-left span{font-size:10px;color:var(--muted)}.canvas-toolbar-right{display:flex;align-items:center;gap:7px}.hint-tag{padding:6px 8px;color:#6c7b91;font-size:11px;white-space:nowrap}.workspace-scroller{height:100%;overflow:auto;padding:34px 26px 120px;min-height:0;background:linear-gradient(135deg,#f1f4fa,#e8edf6)}.page-wrap{margin:0 auto;width:100%;max-width:816px}.paper{background:#fff;box-shadow:0 12px 42px #2637591a,0 0 0 1px #cdd5e1;min-height:1056px;padding:47px 54px 55px;font-family:Georgia,'Times New Roman',serif;color:#151515;font-size:14px;line-height:1.26}.paper-header{cursor:pointer;position:relative}.paper-header:hover:before{content:'Edit title & details';position:absolute;top:-25px;right:0;font:600 10px Inter,Arial;color:var(--blue)}.paper-name-line{display:flex;gap:13px;align-items:flex-end;white-space:nowrap;font-weight:700;font-size:13px;margin-bottom:10px}.paper-name-line>span{flex:1}.paper-name-line i{display:inline-block;border-bottom:1px solid black;min-width:60px;flex:1;height:14px}.paper-name-line .small-line{max-width:68px}.paper h1{font-size:18px;line-height:1.17;letter-spacing:-.1px;margin:0}.paper h2{font-size:16px;font-weight:700;line-height:1.18;margin:3px 0 0}.paper .paper-instructions{border-top:1px solid #333;text-align:center;font-weight:bold;padding:7px 4px 12px;font-size:13px;white-space:pre-wrap}.paper .paper-date{font:11px Inter,Arial;color:#444;margin-bottom:4px}.worksheet-section{margin-top:0;position:relative;page-break-inside:auto}.section-bar{background:#ddd;min-height:25px;padding:5px 8px;font-weight:700;font-size:13px;border:1px solid #333;display:flex;align-items:center;justify-content:space-between;position:relative;cursor:pointer}.section-bar:hover,.section-bar.selected{background:#d1d8ed}.section-tools{display:none;align-items:center;gap:3px;position:absolute;right:0;top:-28px;background:white;border:1px solid #cfd6e4;border-radius:7px;padding:2px;box-shadow:0 4px 11px #25375419;font:600 10px Inter,Arial;z-index:4}.section-bar:hover .section-tools,.section-bar.selected .section-tools{display:flex}.section-tools button,.row-controls button{background:white;border:0;color:#465572;padding:4px 6px;border-radius:5px}.section-tools button:hover,.row-controls button:hover{background:#ecf0ff;color:var(--blue)}.row-area{position:relative}.worksheet-row{display:grid;position:relative;min-height:70px;border-left:1px solid #333;border-bottom:1px solid #333;break-inside:avoid}.worksheet-row .worksheet-cell{border-right:1px solid #333;position:relative;min-width:0;padding:7px 8px 10px;min-height:inherit;overflow-wrap:anywhere;cursor:pointer}.worksheet-cell:hover{background:#f6f8ff}.worksheet-cell.selected{background:#f4f6ff;box-shadow:inset 0 0 0 2px #6682ff}.cell-edit-indicator{font:700 10px Inter,Arial,sans-serif;background:#445fde;color:white;border-radius:4px;padding:3px 6px;position:absolute;right:5px;top:5px;opacity:0}.worksheet-cell:hover .cell-edit-indicator{opacity:1}.worksheet-cell.selected .cell-edit-indicator{opacity:1}.cell-question{display:flex;gap:5px;align-items:flex-start}.cell-number{font-weight:700;flex:none}.cell-prompt{white-space:pre-wrap;flex:1;min-width:0}.cell-prompt math,.rich-input math{vertical-align:middle;font-size:1.16em;white-space:normal}.cell-points{font:9px Inter,Arial;color:#555;white-space:nowrap}.cell-answer{font:12px Georgia;margin-top:10px;border-top:1px dashed #aaa;padding-top:7px;white-space:pre-wrap;color:#17492f}.cell-answer strong{font:700 10px Inter,Arial;letter-spacing:.2px}.cell-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 1px 1px;font:12px Georgia}.cell-choices .choice{min-width:0;overflow-wrap:anywhere}.cell-work{height:12px}.graph-grid{width:85%;aspect-ratio:1/1;max-height:135px;margin:8px auto 3px;background-image:linear-gradient(to right,#d9d9d9 1px,transparent 1px),linear-gradient(to bottom,#d9d9d9 1px,transparent 1px);background-size:15px 15px;border:1px solid #999;position:relative}.graph-grid:before,.graph-grid:after{content:'';position:absolute;background:#444}.graph-grid:before{width:1px;height:100%;left:50%}.graph-grid:after{height:1px;width:100%;top:50%}.value-table{border-collapse:collapse;margin-top:10px;width:75%;max-width:270px}.value-table td,.value-table th{border:1px solid #555;height:29px;text-align:center}.row-controls{display:flex;align-items:center;gap:3px;position:absolute;left:-42px;top:9px;background:white;border:1px solid #d3daea;border-radius:8px;padding:2px;z-index:4;box-shadow:0 5px 15px #182a491c;opacity:0;transition:opacity .12s;flex-direction:column;font:600 11px Inter,Arial}.row-area:hover .row-controls,.row-area.active-row .row-controls{opacity:1}.row-controls button{width:26px;height:25px}.width-handle{z-index:3;position:absolute;top:0;bottom:0;width:12px;transform:translateX(-50%);cursor:col-resize;touch-action:none}.width-handle:before{content:'';position:absolute;top:20%;bottom:20%;left:5px;border-left:2px solid var(--blue);opacity:0}.width-handle:hover:before,.width-handle.dragging:before{opacity:1}.height-handle{position:absolute;bottom:-7px;right:5px;z-index:4;cursor:ns-resize;width:36px;height:14px;border-radius:5px;background:#536ff0;color:#fff;line-height:11px;text-align:center;font:700 12px Inter,Arial;opacity:0;touch-action:none}.row-area:hover .height-handle,.height-handle.dragging{opacity:1}.row-addline{position:relative;display:flex;justify-content:center;height:0;z-index:2}.row-addline button{position:absolute;top:-11px;background:#fff;color:#4157ba;border:1px solid #8fa0ef;border-radius:99px;padding:2px 10px;font:700 10px Inter,Arial;opacity:0;box-shadow:0 2px 10px #24315424}.row-addline:hover button,.row-addline button:focus{opacity:1}.add-row-end{display:flex;align-items:center;justify-content:center;gap:7px;margin:12px auto 17px;border:1px dashed #a4afe0;background:#f8f9ff;color:#4457ac;border-radius:9px;padding:9px 14px;font:700 12px Inter,Arial;cursor:pointer}.add-row-end:hover{background:#e9edff}.add-row-end .subtext{font-weight:400;font-size:10px;color:#7884a3}.paper-footer{font:10px Inter,Arial;color:#555;display:flex;justify-content:space-between;border-top:1px solid #bbb;padding-top:6px;margin-top:20px}.empty-page{padding:75px 20px;text-align:center;color:#6c7790;font:13px Inter,Arial}.inspector{min-width:0;overflow-y:auto;background:#fff;border-left:1px solid var(--line)}.inspector-inner{padding:20px}.inspector-empty{padding:56px 15px;text-align:center;display:flex;align-items:center;flex-direction:column;color:#70809a}.empty-icon{font-size:32px;background:#eff2fa;width:68px;height:68px;display:flex;align-items:center;justify-content:center;border-radius:20px;margin-bottom:10px}.inspector-empty h2{font-size:17px;color:var(--ink);margin:5px 0}.inspector-empty p{font-size:12px;line-height:1.65}.hint-keys{font-size:11px;margin-top:30px}kbd{font:700 10px ui-monospace,monospace;background:#f4f6fb;border:1px solid #cfd9e8;border-radius:4px;padding:3px 5px;color:#5b677a}.inspector-header{display:flex;justify-content:space-between;align-items:start;gap:8px;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:18px}.eyebrow{text-transform:uppercase;letter-spacing:1.5px;font:800 10px Inter,Arial;color:#6474a2}.inspector h2{font-size:20px;letter-spacing:-.4px;margin:4px 0 0}.inspector-close{border:1px solid var(--line);background:#fff;border-radius:7px;padding:7px 10px}.field{margin:0 0 16px}.field>label,.field-label{display:block;color:#49576c;font:700 11px Inter,Arial;margin-bottom:7px}.field input[type=text],.field input[type=number],.field textarea,.field select,.details-dialog input,.details-dialog textarea{width:100%;border:1px solid #d2dbe8;border-radius:8px;padding:10px 11px;background:#fff;font-size:13px;color:var(--ink);outline:none}.field input:focus,.field textarea:focus,.field select:focus,.rich-input:focus,.details-dialog input:focus{border-color:#6079f4;box-shadow:0 0 0 3px #506be220}.field textarea{min-height:80px;resize:vertical}.rich-input{min-height:110px;border:1px solid #d2dbe8;border-radius:8px;padding:11px;background:white;outline:none;font-family:Georgia,'Times New Roman',serif;font-size:15px;line-height:1.8;overflow-wrap:anywhere;white-space:pre-wrap}.rich-input[data-placeholder]:empty:before{content:attr(data-placeholder);color:#b4bcca}.math-chip{display:inline-flex;vertical-align:middle;align-items:center;line-height:1.3;padding:2px 5px;border-radius:5px;border:1px solid #c9d3f9;background:#f2f5ff;user-select:all;cursor:pointer;margin:0 2px;white-space:nowrap}.math-chip:hover{background:#e4ebff;border-color:#748df4}.math-chip math{font-size:1.13em;pointer-events:none}.rich-toolbar{display:flex;gap:6px;justify-content:space-between;align-items:center;margin-top:7px}.rich-toolbar .button{font-size:11px}.helper{color:#758299;font-size:11px;line-height:1.5}.seg-label{font-size:10px;font-weight:800;color:#677388;text-transform:uppercase;letter-spacing:1.1px;margin:24px 0 11px}.stepper{display:flex;border:1px solid #d5deec;border-radius:8px;overflow:hidden}.stepper button{flex:1;border:0;border-right:1px solid #d5deec;background:#fff;padding:10px 6px;font-size:11px;font-weight:700;color:#516076}.stepper button:last-child{border:0}.stepper button.selected{background:#455fec;color:white}.quick-sizes{display:flex;gap:6px;flex-wrap:wrap}.quick-sizes button{font:700 10px Inter,Arial;border:1px solid #d5ddea;padding:8px 9px;background:#fff;border-radius:7px}.quick-sizes button:hover,.quick-sizes button.selected{background:#ecf0ff;color:var(--blue);border-color:#92a5fc}.inspector-actions{display:flex;flex-wrap:wrap;gap:7px;border-top:1px solid var(--line);padding-top:14px;margin-top:16px}.inspector-actions .button{flex:1}.icon-button{background:#fff;border:1px solid #d8dfeb;color:#5d6a7c;width:35px;height:35px;border-radius:8px;display:grid;place-items:center;font-weight:700}.icon-button:hover{background:#f5f6fc}.row-layout-diagram{display:flex;width:100%;border:1px solid #b1bdd2;height:37px;border-radius:6px;overflow:hidden;margin-top:7px}.row-layout-diagram span{display:flex;justify-content:center;align-items:center;background:#f1f4fb;border-right:1px solid #aab6d4;font:700 11px Inter,Arial;color:#576588}.row-layout-diagram span:last-child{border-right:0}.split-hint{font-size:11px;color:#8792a7;margin-top:9px}.split-layout-actions{display:flex;gap:7px;margin-top:9px}.split-layout-actions .button{flex:1}.input-row{display:flex;gap:7px}.input-row>*{flex:1;min-width:0}.choices-editor{display:grid;gap:7px}.choices-editor label{font-size:11px;color:#6a7690}.choices-editor input{width:100%;padding:8px 9px;border:1px solid #d7dfed;border-radius:6px}.inner-view{overflow:auto;padding:40px 48px;flex:1}.view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.view-header h1{font-size:30px;letter-spacing:-1px;margin:5px 0 8px}.view-header p{font-size:13px;color:var(--muted);margin:0}.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:18px}.project-card{border:1px solid #dae2ee;border-radius:13px;background:#fff;padding:20px;display:flex;flex-direction:column;gap:11px;min-height:170px;box-shadow:0 3px 8px #273d5508}.project-card h3{font-size:16px;margin:0}.project-card p{color:#697993;font-size:12px;margin:0;line-height:1.55}.project-card .card-actions{display:flex;gap:7px;align-items:center;margin-top:auto}.card-badge{background:#edf1fd;border-radius:6px;padding:5px 7px;width:max-content;font:700 10px Inter,Arial;color:#4d61a3}.overlay{position:fixed;inset:0;z-index:50;background:#19243bb8;display:flex;align-items:center;justify-content:center;padding:16px}.math-dialog,.details-dialog{width:min(870px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:15px;box-shadow:0 22px 85px #0b122665;display:flex;flex-direction:column}.details-dialog{max-width:590px}.dialog-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:24px 27px 16px}.dialog-top h2{font-size:24px;letter-spacing:-.7px;margin:5px 0}.dialog-top p{font-size:12px;color:#68788e;line-height:1.5;margin:4px 0 0}.math-stage{background:#f7f9fc;border-block:1px solid #e2e8f2;padding:19px 26px 22px}.math-stage-label,.math-group-label{font:800 10px Inter,Arial;letter-spacing:1px;color:#7a8699;margin-bottom:10px}.math-structure{background:white;border:1px solid #cdd8eb;border-radius:10px;min-height:109px;padding:22px 20px;display:flex;align-items:center;overflow-x:auto;font:28px Cambria,'Cambria Math','STIX Two Math',Georgia,serif;cursor:text}.math-structure:focus-within{border-color:#6680fa;box-shadow:0 0 0 4px #6b80ef12}.eq-seq{display:inline-flex;align-items:center;min-height:1.3em;vertical-align:middle;gap:0}.eq-leaf{border:1px solid transparent;outline:none;background:transparent;border-radius:3px;font:inherit;color:#202638;letter-spacing:.2px;min-width:1.3ch;max-width:420px;padding:2px 3px;line-height:1.2;field-sizing:content}.eq-leaf.empty{background:#ecf0ff;border:1px dashed #99aaf4;min-width:1.2em}.eq-leaf:focus{background:#e8edff;border-color:#657cf1}.eq-frac{display:inline-flex;flex-direction:column;align-items:stretch;vertical-align:middle;text-align:center;margin:0 .12em;min-width:1.4em;font-size:.88em}.eq-frac .eq-frac-top{border-bottom:1.7px solid currentColor;padding:0 .16em .07em;display:flex;justify-content:center;align-items:center}.eq-frac .eq-frac-bottom{padding:.09em .16em 0;display:flex;justify-content:center}.eq-root{display:inline-flex;align-items:flex-start;vertical-align:middle;margin:0 .08em}.eq-root-index{font-size:.55em;align-self:flex-start;line-height:1;margin-top:.1em}.eq-root-sign{font-size:1.35em;line-height:1;align-self:stretch;margin-top:.08em;transform:scaleY(1.12);transform-origin:top}.eq-root-body{border-top:1.5px solid currentColor;padding:.08em .09em 0;margin-top:.10em;min-height:1.2em}.eq-script{display:inline-flex;align-items:flex-start;vertical-align:middle}.eq-script .eq-exponent{font-size:.62em;transform:translateY(-.48em)}.eq-script .eq-subscript{font-size:.62em;transform:translateY(.6em)}.eq-paren{display:inline-flex;align-items:center}.eq-delimiter{font-size:1.35em;font-weight:300}.math-tools{padding:18px 26px 10px}.math-tools .math-group-label{margin:0 0 8px}.math-buttons{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:17px}.math-buttons button{border:1px solid #d9e1ec;background:white;border-radius:9px;min-height:64px;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center}.math-buttons button:hover,.symbol-buttons button:hover{background:#edf1ff;border-color:#91a3f7}.math-buttons small{font:700 10px Inter,Arial;color:#657187}.key-math{font:24px Cambria,Georgia,serif}.key-frac{display:flex;flex-direction:column;align-items:center;font:18px Cambria,Georgia}.key-frac span:first-child{border-bottom:1px solid #333;min-width:22px;text-align:center}.symbol-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.symbol-buttons button{background:#fff;border:1px solid #dae2ef;border-radius:7px;min-width:39px;height:36px;font:20px Cambria,Georgia,serif}.linear-entry{padding:13px 14px;border-radius:9px;background:#f7f8fc}.linear-entry label{font-weight:750;font-size:11px;color:#495970;display:block;margin-bottom:7px}.linear-entry>div{display:flex;gap:8px}.linear-entry input{width:100%;border:1px solid #d5deea;border-radius:7px;padding:10px;font-family:ui-monospace,Consolas,monospace;font-size:13px}.linear-entry small{display:block;margin-top:7px;color:#79869a;font-size:10px}.math-result{border-top:1px solid #e2e8ef;display:flex;gap:15px;padding:12px 26px;align-items:center;min-height:64px}.math-result>span{font:800 10px Inter,Arial;letter-spacing:1px;color:#8290a5}.math-result>div{font-size:22px;overflow-x:auto}.math-result math{font-size:1.2em}.dialog-foot{border-top:1px solid #e0e7f0;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog-buttons{display:flex;gap:8px}.details-dialog #detailsFields{padding:0 26px 8px}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:70;border-radius:9px;background:#263650;color:white;padding:11px 17px;box-shadow:0 8px 24px #0003;opacity:0;pointer-events:none;transition:opacity .15s;font-size:12px}.toast.show{opacity:1}.checkbox-row{display:flex;gap:9px;align-items:center;margin:10px 0;font-size:12px}.add-menu{display:flex;gap:5px;margin-top:9px}.add-menu button{padding:7px 10px;border:1px solid #b8c6dc;border-radius:7px;background:white;font-size:11px}.add-menu button:hover{background:#eaf0ff}.item-danger{color:#a14353!important}.inline-note{font-size:11px;color:#78859b}.inspector-sticky{position:sticky;bottom:-20px;background:linear-gradient(transparent,#fff 16px);padding-top:15px}.template-example{border:1px solid #ddd;padding:12px;font:13px Georgia;background:#fff;display:grid;grid-template-columns:repeat(3,1fr)}.template-example span{min-height:36px;border:1px solid #666;padding:4px}.template-example .bar{grid-column:span 3;background:#ddd;font-weight:700;min-height:20px}.key-visible .cell-work{display:none}.key-visible .worksheet-row{min-height:80px!important}.key-visible .worksheet-cell{min-height:80px!important}.key-visible .cell-answer{display:block}.print-only{display:none}
@media(max-width:1300px){:root{--side:190px;--panel:315px}.sidebar{padding-inline:8px}.workspace-scroller{padding-inline:15px}.paper{padding-inline:38px}.topbar{padding-inline:12px}.topbar-actions{gap:2px}}@media(max-width:1060px){:root{--side:67px;--panel:295px}.brand>div,.nav-heading,.nav-item:not(.active),.nav-item.active{font-size:0}.nav-item{justify-content:center}.nav-ico{font-size:21px}.sidebar-tip,.sidebar-version{display:none}.brand{padding:5px 1px 22px;justify-content:center}.brand-icon{width:38px;height:38px}.workspace-scroller{padding:25px 13px 80px}.topbar-title .save-indicator,.hide-small{display:none}}@media(max-width:780px){#app{grid-template-columns:57px 1fr}.inspector{position:fixed;right:0;top:64px;bottom:0;z-index:15;width:min(360px,calc(100vw - 60px));box-shadow:-10px 0 25px #13213824;transform:translateX(103%);transition:transform .2s}.inspector.open{transform:translateX(0)}.canvas-toolbar-left span,.hint-tag{display:none}.canvas-toolbar{padding:8px 10px}.topbar{height:56px}.topbar-actions .button{padding:7px;font-size:10px}.paper{min-width:565px}.workspace-scroller{padding:15px 8px 70px}.page-wrap{width:max-content}.math-buttons{grid-template-columns:repeat(4,1fr)}.math-dialog{max-height:97vh}.dialog-foot{flex-wrap:wrap}.inner-view{padding:24px 20px}}@media print{@page{size:letter;margin:.43in .5in}html,body{background:white!important;overflow:visible!important}#app{display:block!important;height:auto!important;min-height:0!important}#app>.sidebar,.topbar,.canvas-toolbar,.inspector,.view:not(.builder-view),.overlay,.no-print,.row-controls,.height-handle,.width-handle,.row-addline,.add-row-end,.section-tools,.cell-edit-indicator,.toast{display:none!important}.main-app,.builder-view,.workspace-scroller,.page-wrap{display:block!important;height:auto!important;overflow:visible!important;max-width:none!important;width:auto!important;padding:0!important;margin:0!important;background:white!important}.paper{margin:0!important;width:100%!important;max-width:none!important;min-height:0!important;padding:0!important;box-shadow:none!important;font-size:12.5px!important;color:#000!important}.paper-name-line{font-size:12px}.paper h1{font-size:16px}.paper h2{font-size:14px}.section-bar{background:#ddd!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}.worksheet-row{break-inside:avoid;page-break-inside:avoid}.worksheet-cell{cursor:default!important;background:white!important;box-shadow:none!important}.paper-header{cursor:default}.paper-header:before{display:none!important}.key-visible .worksheet-row{min-height:70px!important}.key-visible .worksheet-cell{min-height:70px!important}.paper-footer{break-inside:avoid}}

.paper-name-line>span{display:flex;align-items:baseline;gap:5px}.paper-name-line i{flex:1}.choice-rich{min-height:37px!important;padding:7px 9px!important;font-size:13px!important;line-height:1.5!important}.choice-edit-row{border:1px solid #e1e7ef;border-radius:8px;padding:8px;margin:7px 0}.choice-edit-row .rich-toolbar{margin:5px 0 0}.choice-edit-row .rich-toolbar .button{padding:5px 9px}

@media screen{.worksheet-section.force-break:before{content:"↳ Page break on print";display:block;border-top:2px dashed #a0a9be;color:#637390;text-align:right;font:700 10px Inter,Arial;padding:6px 0 3px}}@media print{.worksheet-section.force-break{break-before:page;page-break-before:always}.worksheet-section.force-break:before{display:none!important}}

.drag-row-grip{cursor:grab!important}.drag-row-grip:active{cursor:grabbing!important}.row-area.drag-target>.worksheet-row{outline:3px solid #4964ec;outline-offset:1px}

/* V6 — account overlay, question bank and deterministic paginated printing */
.auth-locked #app{visibility:hidden!important}
.auth-overlay{position:fixed;inset:0;z-index:120;background:linear-gradient(125deg,#132247,#324db3);display:flex;align-items:center;justify-content:center;padding:20px;font-family:Inter,Arial,sans-serif}
.auth-overlay.hide{display:none!important}
.auth-card{width:min(410px,100%);padding:32px;background:#fff;border-radius:17px;box-shadow:0 24px 90px #050f3150}
.auth-logo{display:grid;place-items:center;width:49px;height:49px;background:#405de6;color:#fff;font:32px Georgia;border-radius:13px;margin-bottom:14px}
.auth-card h1{font-size:29px;letter-spacing:-.8px;margin:0}
.auth-subtitle{color:#67748a;line-height:1.5;margin:8px 0 22px;font-size:13px}
.auth-modes{display:flex;border-radius:9px;background:#f0f3fa;padding:4px;gap:4px;margin-bottom:22px}
.auth-modes button{border:0;border-radius:7px;padding:11px 13px;flex:1;background:transparent;color:#67748a;font-size:12px;font-weight:750;cursor:pointer}
.auth-modes button.selected{background:#fff;box-shadow:0 1px 5px #273b591b;color:#2c46aa}
#authForm{display:flex;flex-direction:column;gap:15px}
#authForm label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:750;color:#344159}
#authForm input{padding:12px;border:1px solid #cad5e5;border-radius:8px;font:14px Arial;background:#fff}
#authForm input:focus{outline:2px solid #6079e9;outline-offset:2px}
#authSubmit{min-height:43px;margin-top:3px}
.auth-error{min-height:17px;color:#ba3042;font-size:12px;line-height:1.4}
.auth-help{font-size:11px;line-height:1.6;color:#8793a3;margin:15px 0 0}
.auth-help code{background:#f3f5fa;padding:2px 4px;border-radius:3px}
.user-control{max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bank-page{max-width:1270px}
.bank-summary{padding:14px 17px;border-radius:10px;background:#e9efff;color:#334a91;font-size:12px;font-weight:750;margin-bottom:18px}
.bank-filters{display:grid;grid-template-columns:2fr 2fr 1fr 120px auto;gap:11px;align-items:end;background:#fff;padding:17px;border:1px solid #dee6ef;border-radius:12px}
.bank-filters .field{margin:0;min-width:0}
.bank-filters label{display:block;font-size:11px;font-weight:750;margin-bottom:5px}
.bank-filters select,.bank-build-settings select,.bank-build-settings input[type=number]{width:100%;border:1px solid #cad4e4;border-radius:7px;background:#fff;padding:9px;color:#24344c;font:12px Arial;min-width:0}
.bank-build-settings{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:13px 3px;color:#62728b;font-size:11px}
.bank-build-settings label{display:flex;align-items:center;gap:7px}
.bank-build-settings input[type=number]{width:70px}
.bank-build-settings select{width:94px}
.bank-selected-bar{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #e1e7ef;border-radius:10px;padding:10px 13px;margin:8px 0 15px;box-shadow:0 3px 12px #2439560e}
.bank-selected-bar span{font-size:12px;font-weight:800;color:#3751b0;margin-right:auto}
.bank-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(275px,1fr));gap:12px;margin:10px 0 20px}
.bank-question{display:flex;flex-direction:column;gap:10px;border:1px solid #dbe4f0;border-radius:12px;background:#fff;padding:14px 15px;min-height:190px;box-shadow:0 3px 8px #0b1e4007;cursor:pointer}
.bank-question:has(input:checked){border-color:#6980e8;box-shadow:0 0 0 2px #7791ea23;background:#fbfcff}
.bank-pick{font-size:11px;display:flex;align-items:center;gap:6px;color:#4761c5;font-weight:750}
.bank-pick input{accent-color:#405de6;width:16px;height:16px}
.bank-tag{font-size:10px;color:#6f7e96;text-transform:uppercase;letter-spacing:.25px;font-weight:750}
.bank-prompt{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:15px;line-height:1.55;color:#172339}
.bank-math{display:inline-block;vertical-align:middle;font-size:1.14em}
.bank-skill{color:#6d7c91;font-size:11px;margin-top:auto}
.bank-question details{border-top:1px solid #e7edf4;padding-top:8px;font-size:12px;line-height:1.5;color:#44516b}
.bank-question summary{cursor:pointer;color:#3e5acf;font-weight:700}
.bank-question details p{margin:7px 0}
.bank-pagination{display:flex;align-items:center;justify-content:center;gap:15px;padding:12px 0 28px;color:#6c7d93;font-size:12px}
@media(max-width:1250px){.bank-filters{grid-template-columns:1fr 1fr}.bank-filters>.button{width:100%}}
@media(max-width:650px){.bank-filters{grid-template-columns:1fr}.bank-build-settings{align-items:flex-start}.bank-page{padding:17px 12px}.bank-selected-bar{flex-wrap:wrap}}
/* This hidden measuring surface has the EXACT font size / content width as print. */
#printRoot{position:absolute;left:-12000px;top:0;width:8.5in;visibility:hidden;pointer-events:none;z-index:-1}
#printRoot .print-sheet{box-sizing:border-box;position:relative;width:8.5in;height:11in;padding:.48in .55in;background:#fff;color:#000}
#printRoot .print-content{box-sizing:border-box;width:100%;height:10.04in;min-height:0;padding:0;margin:0;overflow:hidden;box-shadow:none;background:#fff;color:#000;font-family:Georgia,'Times New Roman',serif;font-size:14px;line-height:1.26}
#printRoot .section-bar{background:#ddd!important;color:#111!important;border:1px solid #333!important;min-height:25px!important}
#printRoot .worksheet-cell{background:#fff!important;box-shadow:none!important;cursor:default!important}
#printRoot .row-controls,#printRoot .width-handle,#printRoot .height-handle,#printRoot .row-addline,#printRoot .section-tools,#printRoot .cell-edit-indicator{display:none!important}
#printRoot .row-area{break-inside:avoid;page-break-inside:avoid}
#printRoot .section-bar,#printRoot .worksheet-row{break-inside:avoid}
#printRoot .cell-points{font-size:9px}
.print-sheet-footer{position:absolute;bottom:.24in;left:.55in;right:.55in;display:flex;justify-content:center;text-align:center;color:#666;font:9px Arial,sans-serif}
@media print{
 @page{size:letter;margin:0}
 html,body{margin:0!important;padding:0!important;overflow:visible!important;background:#fff!important;width:8.5in!important}
 #app,#authOverlay,body>.overlay{display:none!important}
 #printRoot{display:block!important;position:static!important;top:auto!important;left:auto!important;visibility:visible!important;pointer-events:auto!important;z-index:auto!important;width:8.5in!important;height:auto!important}
 #printRoot .print-sheet{width:8.5in!important;height:11in!important;min-height:11in!important;padding:.48in .55in!important;margin:0!important;break-after:page!important;page-break-after:always!important;overflow:hidden!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
 #printRoot .print-sheet:last-child{break-after:auto!important;page-break-after:auto!important}
 #printRoot .print-content{height:10.04in!important;font-size:14px!important;overflow:hidden!important}
 #printRoot .paper-name-line{font-size:13px!important}
 #printRoot .paper h1{font-size:18px!important}
 #printRoot .paper h2{font-size:16px!important}
 #printRoot .worksheet-row,#printRoot .row-area{break-inside:avoid!important;page-break-inside:avoid!important}
 #printRoot .section-bar{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
 #printRoot .print-content .row-area{margin:0!important}
}

/* Focus layouts: the inspector belongs only to worksheet editing. */
body.view-bank #app,body.view-library #app,body.view-templates #app{grid-template-columns:var(--side) minmax(0,1fr)!important}
body.view-bank .inspector,body.view-library .inspector,body.view-templates .inspector{display:none!important}
#accountName{max-width:125px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:11px}
@media(max-width:1060px){body.view-bank #app,body.view-library #app,body.view-templates #app{grid-template-columns:67px minmax(0,1fr)!important}}
@media(max-width:780px){body.view-bank #app,body.view-library #app,body.view-templates #app{grid-template-columns:57px minmax(0,1fr)!important}}

/* 6.2: conspicuous tools and graph editor. */
.sidebar{overflow-y:auto}
.quick-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 19px}
.quick-tool{border:1px solid #d8e3f2;border-radius:12px;padding:16px 18px;background:#fff;text-align:left;display:flex;flex-direction:column;gap:7px;color:#1f3150;box-shadow:0 2px 8px #1b2e4c08}
.quick-tool b{font-size:15px}.quick-tool span{font-size:12px;color:#60728d;line-height:1.5}.quick-tool:hover{border-color:#8ea7f2;background:#f6f8ff}
.cell-graph{margin:10px auto 2px;max-width:100%;width:100%;display:flex;justify-content:center}
.cb-graph-svg{width:100%;height:auto;max-width:410px;max-height:345px;display:block}
.cell-graph svg{min-width:0;object-fit:contain}
.graph-inspector-action{background:#f0f4fe;border:1px solid #d4ddf4;border-radius:10px;padding:13px;margin:15px 0}
.graph-inspector-action strong{display:block;font-size:13px;margin-bottom:7px}
.graph-inspector-action button{width:100%;margin-top:8px}
.graph-overlay{z-index:1100}
.graph-dialog{width:min(980px,96vw);max-height:94vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 20px 90px #071c3660}
.graph-dialog-body{display:grid;grid-template-columns:minmax(310px,410px) minmax(0,1fr);gap:20px;padding:18px 24px 22px}
.graph-fields{display:flex;flex-direction:column;gap:13px;min-width:0}
.graph-fields label{font-size:12px;font-weight:700;color:#293f61}
.graph-fields input:not([type=checkbox]),.graph-fields select,.graph-fields textarea{display:block;width:100%;padding:9px;border:1px solid #c8d4e3;border-radius:8px;background:white;margin-top:6px;min-width:0;font:13px/1.35 Arial}
.graph-fields textarea{resize:vertical;font:13px/1.5 ui-monospace,Consolas,monospace}
.graph-label{display:block}
.graph-label small{display:block;color:#65758f;margin-top:6px;font-weight:400;line-height:1.4}
.graph-four{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px}
.graph-four label{font-size:11px}
.graph-checkboxes{display:flex;flex-wrap:wrap;gap:16px;margin:8px 0}
.graph-checkboxes label{font-weight:500;display:flex;align-items:center;gap:5px}
.graph-preview-panel{min-width:0;border:1px solid #dce5f0;border-radius:12px;padding:16px;background:#f8faff}
.graph-preview{background:white;border:1px solid #ccd6e3;border-radius:9px;padding:8px;margin:10px 0 13px;min-height:145px}
.graph-preview .cb-graph-svg{max-width:none;max-height:none}
.graph-print-hint{font-size:11px;color:#78879d;line-height:1.5}
@media(max-width:980px){.quick-tool-grid{grid-template-columns:1fr}.canvas-toolbar{align-items:flex-start}.canvas-toolbar-right{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:760px){.graph-dialog-body{grid-template-columns:1fr}.graph-four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{.cell-graph{page-break-inside:avoid!important;break-inside:avoid!important}.cb-graph-svg{max-height:270px!important}}
#printRoot .cb-graph-svg{max-height:270px}

/* Keep primary tools readable even with the inspector open on laptops. */
.topbar{height:auto;min-height:64px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
.topbar-title{flex:1 1 210px}
.topbar-actions{flex:0 1 auto;flex-wrap:wrap;justify-content:flex-end}
.canvas-toolbar{flex-wrap:wrap}
.canvas-toolbar-left{flex:1 1 220px}
.canvas-toolbar-right{flex-wrap:wrap;justify-content:flex-end}

/* GPT Bank Exchange — full-width working area, without altering the print canvas. */
.gpt-page{max-width:1450px}.gpt-steps{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 20px}.gpt-steps span{background:#eaf0fb;color:#344766;border:1px solid #d6e0f0;padding:9px 12px;border-radius:9px;font-size:12px;font-weight:650}.gpt-steps b{display:inline-flex;background:#3751b1;color:#fff;border-radius:100%;width:20px;height:20px;align-items:center;justify-content:center;margin-right:5px}.gpt-columns{display:grid;grid-template-columns:minmax(300px,1fr) minmax(340px,1.08fr);gap:18px;align-items:start}.gpt-panel{background:white;border:1px solid #d8dfec;border-radius:14px;padding:21px;min-width:0;box-shadow:0 4px 20px #27355708}.gpt-panel h2,.gpt-saved h2{font-size:19px;margin:0 0 13px;color:#1b2946}.gpt-form{display:grid;gap:13px;margin-bottom:14px}.gpt-form label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#33415d}.gpt-form input,.gpt-form select,.gpt-form textarea{width:100%;border:1px solid #cdd6e5;border-radius:8px;padding:10px;background:#fff;font:14px/1.4 inherit;color:#15243e}.gpt-form input:focus,.gpt-form textarea:focus,.gpt-codearea:focus{outline:2px solid #a8b8fa;outline-offset:1px}.gpt-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gpt-subtitle{display:block;font-weight:700;font-size:12px;margin:16px 0 8px;color:#33415d}.gpt-codearea{display:block;box-sizing:border-box;width:100%;resize:vertical;border:1px solid #cdd6e5;border-radius:9px;padding:13px;font:12px/1.55 Consolas,'Courier New',monospace;color:#22314d;background:#fafcff}.gpt-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:12px 0}.gpt-actions .button{font-size:12px}.gpt-validation{font-size:13px;color:#43546e;background:#f4f6fb;border:1px solid #dce3ee;border-radius:9px;padding:11px;margin-top:11px;white-space:pre-wrap}.gpt-validation.is-error{color:#992c2c;background:#fff4f3;border-color:#efc7c2}.gpt-validation.is-success{color:#286245;background:#ecf9f0;border-color:#bddfc9}.gpt-preview{display:grid;gap:8px;margin-top:12px;max-height:420px;overflow-y:auto}.gpt-preview-item{border:1px solid #dce2ea;border-radius:10px;padding:11px;background:#fff}.gpt-preview-item label{display:flex;gap:9px;align-items:start;font-size:13px;cursor:pointer}.gpt-preview-item input[type=checkbox]{margin-top:4px;flex-shrink:0}.gpt-preview-item .muted{font-size:11px;color:#536480;margin-top:4px}.gpt-preview-item details{font-size:12px;margin:8px 0 0 24px}.gpt-preview-item details p{line-height:1.45;white-space:pre-wrap}.gpt-final-actions{border-top:1px solid #e5eaf3;padding-top:12px}.gpt-final-actions .button:disabled{opacity:.45;cursor:not-allowed}.gpt-saved{margin-top:23px}.gpt-saved-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.gpt-saved .project-card{min-width:220px}.gpt-saved .card-actions{flex-wrap:wrap}.gpt-parse-math{font-family:'Cambria Math',Cambria,serif;font-size:18px;line-height:1.8}.gpt-codearea::placeholder{color:#8b97aa}@media(max-width:1070px){.gpt-columns{grid-template-columns:1fr}}@media(max-width:520px){.gpt-pair{grid-template-columns:1fr}}

/* Hide worksheet inspector while working in the GPT bank generator. */
body.view-gpt #app{grid-template-columns:var(--side) minmax(0,1fr)!important}
body.view-gpt .inspector{display:none!important}
@media(max-width:1060px){body.view-gpt #app{grid-template-columns:67px minmax(0,1fr)!important}}
@media(max-width:780px){body.view-gpt #app{grid-template-columns:57px minmax(0,1fr)!important}}

.cell-solution{margin-top:6px;white-space:pre-wrap;color:#28543a;font-size:11px;line-height:1.3}

/* V6.4 — Split-page PDF proof. The preview uses the SAME .print-sheet elements,
   widths, print-content height, borders and fonts as the printed output. */
.builder-body{display:flex;flex:1;min-height:0;min-width:0;overflow:hidden}
.builder-body>.workspace-scroller{flex:1;min-width:0}
.page-preview-pane{display:none;min-width:0;background:#dce2ea;border-left:1px solid #bdc8d7;flex-direction:column;overflow:hidden;color:#24324b}
body.page-proof-open #app{grid-template-columns:var(--side) minmax(0,1fr)!important}
body.page-proof-open #builderBody{display:grid;grid-template-columns:minmax(0,56%) minmax(340px,44%);min-height:0}
body.page-proof-open #workspaceScroller{padding:22px 15px 80px;overflow:auto;max-width:none}
body.page-proof-open .page-wrap{width:816px;max-width:none;margin:0 auto}
body.page-proof-open .page-preview-pane{display:flex}
body.page-proof-open .inspector{position:fixed!important;width:min(370px,calc(100vw - 65px));right:0;top:64px;bottom:0;z-index:32;box-shadow:-12px 0 30px #15274433;transform:translateX(104%);transition:transform .16s ease;overflow:auto;display:block!important}
body.page-proof-open .inspector.open{transform:translateX(0)}
body.page-proof-open .topbar{padding-right:12px}
body.page-proof-open .canvas-toolbar-left span{display:none}
.page-preview-header{display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #d3dbe7;padding:12px 13px 10px 16px;gap:10px;flex:0 0 auto}
.page-preview-header>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.page-preview-header strong{font-size:13px;color:#1e2d48}
.page-preview-header span{font-size:10px;color:#778397}
.page-preview-header .icon-button{flex:0 0 30px;width:30px;height:30px;font-size:16px}
.page-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fafbfd;border-bottom:1px solid #cbd5e3;padding:9px 12px;flex:0 0 auto}
.page-navigation,.preview-zoom-group{display:flex;align-items:center;gap:6px}
.page-navigation>span{font:700 11px Arial,sans-serif;min-width:77px;text-align:center;color:#42536f}
.preview-zoom-group button,.page-navigation button{min-width:30px;padding:5px 7px}
#previewZoomValue{font-size:10px;min-width:45px}
.page-preview-status{padding:8px 13px;background:#e8f0ec;color:#2f6756;font:700 10px Arial,sans-serif;border-bottom:1px solid #cfddda;flex:0 0 auto}
.page-preview-status.is-warning{background:#fff3df;color:#8d5c1e;border-bottom-color:#f1d4a3}
.page-preview-viewport{flex:1;min-height:0;min-width:0;overflow:auto;padding:26px 15px 40px;background:#cfd6e1;scrollbar-gutter:stable}
.page-preview-pages{width:8.5in;min-width:8.5in;transform-origin:top left;display:flex;flex-direction:column;gap:25px;align-items:flex-start}
/* Keep the proof content pixel-identical to the hidden pagination renderer. */
#pagePreviewPages .print-sheet{box-sizing:border-box;position:relative;width:8.5in;height:11in;min-height:11in;padding:.48in .55in;background:#fff;color:#000;box-shadow:0 5px 22px #15273a34;flex:none;overflow:hidden}
#pagePreviewPages .print-content{box-sizing:border-box;width:100%;height:10.04in;min-height:0;padding:0;margin:0;overflow:hidden;box-shadow:none;background:#fff;color:#000;font-family:Georgia,'Times New Roman',serif;font-size:14px;line-height:1.26}
#pagePreviewPages .section-bar{background:#ddd!important;color:#111!important;border:1px solid #333!important;min-height:25px!important}
#pagePreviewPages .worksheet-cell{background:#fff!important;box-shadow:none!important}
#pagePreviewPages .row-controls,#pagePreviewPages .width-handle,#pagePreviewPages .height-handle,#pagePreviewPages .row-addline,#pagePreviewPages .section-tools,#pagePreviewPages .cell-edit-indicator{display:none!important}
#pagePreviewPages .row-area,#pagePreviewPages .worksheet-row,#pagePreviewPages .section-bar{break-inside:avoid;page-break-inside:avoid}
#pagePreviewPages .cell-points{font-size:9px}
#pagePreviewPages .paper-name-line{font-size:13px}
#pagePreviewPages .paper h1{font-size:18px}
#pagePreviewPages .paper h2{font-size:16px}
#pagePreviewPages .print-content .row-area{margin:0!important}
#pagePreviewPages .worksheet-row{border-bottom:1px solid #333!important;border-left:1px solid #333!important}
#pagePreviewPages .worksheet-cell{border-right:1px solid #333!important}
#pagePreviewPages .print-sheet.is-current-proof{outline:3px solid #667fca;outline-offset:3px}
#pagePreviewPages .print-sheet:after{content:attr(data-page-label);position:absolute;right:.18in;bottom:.08in;color:#8792a1;font:10px Arial,sans-serif}
#pagePreviewPages .print-sheet.is-overflow-proof{outline:3px solid #d06a40;outline-offset:3px}
#pagePreviewPages .worksheet-cell[data-select-cell]:hover{background:#eef2ff!important;outline:2px solid #4866e8;outline-offset:-2px;cursor:pointer}
.page-preview-footer{padding:9px 12px;background:#fff;border-top:1px solid #c9d2df;display:flex;align-items:center;justify-content:space-between;gap:10px;flex:0 0 auto}
.page-preview-footer span{color:#68768c;font-size:10px;max-width:240px;line-height:1.4}
@media(max-width:1150px){body.page-proof-open #builderBody{grid-template-columns:minmax(0,53%) minmax(325px,47%)}body.page-proof-open .canvas-toolbar{flex-wrap:wrap}body.page-proof-open .canvas-toolbar-left{display:none}}
@media(max-width:860px){body.page-proof-open #builderBody{grid-template-columns:minmax(0,50%) minmax(310px,50%)}body.page-proof-open #workspaceScroller{padding:12px 6px}body.page-proof-open .topbar-actions .button{font-size:10px;padding:7px 6px}}
@media(max-width:670px){body.page-proof-open #builderBody{display:flex;flex-direction:column}body.page-proof-open #workspaceScroller{flex:1;min-height:250px}body.page-proof-open .page-preview-pane{flex:1;min-height:290px;border-left:0;border-top:2px solid #c1ccd9}}
@media print{.page-preview-pane{display:none!important}.builder-body{display:none!important}#pagePreviewPages{display:none!important}}
/* Pagination measurements must match final @media print typography as well. */
#printRoot .paper-name-line{font-size:13px}
#printRoot .paper h1{font-size:18px}
#printRoot .paper h2{font-size:16px}
#printRoot .print-content .row-area{margin:0!important}

/* V6.5 true PDF proof — the iframe contains the exact file from /api/pdf/export.
   No browser print CSS, grid reflow, or replica page drawing. */
#previewViewport.page-preview-viewport{padding:0!important;background:#e0e4eb;overflow:hidden}
#pageProofFrame{display:block;width:100%;height:100%;min-height:200px;border:0;background:#e0e4eb}
#pagePreviewPane .page-preview-status{font-size:11px;line-height:1.4}
@media(max-width:670px){#pageProofFrame{min-height:300px}}

.proof-footer-actions{display:flex;align-items:center;gap:6px}.proof-footer-actions .button{padding:7px 9px}
