.print-modal{position:fixed;inset:0;z-index:220;background:rgba(10,10,10,.72);display:grid;place-items:center;padding:24px}.print-modal[hidden]{display:none}.print-page{width:min(980px,100%);max-height:calc(100vh - 48px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:var(--paper);border:1px solid var(--ink)}.print-page>header{min-height:106px;padding:22px 30px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--ink)}.print-page>header span,.print-summary span{font:400 9px "IBM Plex Mono",monospace;letter-spacing:.12em;color:var(--muted)}.print-page>header h2{margin:5px 0 3px;font-size:28px}.print-page>header p{margin:0;color:var(--muted);font-size:11px}.print-page>header button{width:36px;height:36px;border:1px solid var(--ink);background:transparent;font-size:24px}.print-page>header button:hover{background:var(--ink);color:#fff}.print-body{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:0}.print-settings{padding:24px;border-right:1px solid var(--line);overflow:auto}.print-settings>label,.print-number-row label{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;color:var(--muted);font:500 9px "IBM Plex Mono",monospace;text-transform:uppercase}.print-settings select,.print-settings input[type=number]{height:34px;border:1px solid var(--line);background:#fff;padding:0 9px;color:var(--ink);font-size:11px}.print-number-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.print-settings .print-check{position:relative;display:flex;flex-direction:row;align-items:center;gap:8px;margin:12px 0;color:var(--ink);text-transform:none}.print-check input{position:absolute;opacity:0}.print-check input:checked+.checkmark{background:var(--ink);border-color:var(--ink);color:#fff}.print-warning{margin-top:22px;padding:14px;border:1px solid var(--ink);font:500 9px "IBM Plex Mono",monospace}.print-warning p{margin:7px 0 0;color:var(--muted);font:400 10px/1.5 Inter,Arial,sans-serif}.print-preview-wrap{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;background:#ededed}.print-summary{padding:16px 20px;display:flex;align-items:end;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line)}.print-summary strong{display:block;margin-top:4px;font-size:17px}.print-summary small{color:var(--muted);font:400 9px "IBM Plex Mono",monospace}.print-preview{overflow:auto;padding:28px;display:grid;align-content:start;justify-content:center;gap:5px}.print-preview-sheet{position:relative;background:#fff;border:1px solid #aaa;min-width:28px;box-shadow:0 1px 2px rgba(0,0,0,.08)}.print-preview-sheet span{position:absolute;top:4px;left:5px;font:600 7px "IBM Plex Mono",monospace}.print-preview-sheet::after{content:"";position:absolute;border:1px dashed #aaa;inset:8%}.print-page>footer{min-height:66px;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--ink);font:400 10px "IBM Plex Mono",monospace;color:var(--muted)}.print-page>footer>div{display:flex;gap:8px}@media(max-width:760px){.print-body{grid-template-columns:1fr}.print-settings{border-right:0;border-bottom:1px solid var(--line)}.print-preview-wrap{min-height:300px}.print-page{overflow:auto}.print-page>footer{position:sticky;bottom:0;background:var(--paper)}}
