:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#243a40;background:#f1f3f0;font-synthesis:none;--teal: #236c68;--muted: #687975}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.4}button,input,select,textarea{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #ce9b41;outline-offset:3px}[hidden]{display:none!important}.app-header{max-width:1440px;margin:auto;padding:36px 40px 28px;display:flex;justify-content:space-between;align-items:center;gap:24px;border-bottom:1px solid #d9dfd9}h1{font-size:38px;letter-spacing:-.055em;margin:0;font-weight:600}.privacy{font-size:12px;line-height:1.8;margin:0}.workspace{max-width:1440px;margin:auto;padding:32px 40px 48px;display:grid;grid-template-columns:340px minmax(0,1fr);gap:40px;align-items:start}.controls{display:grid;gap:20px;min-width:0}.panel{background:#fff;border:1px solid #dce2dd;border-radius:8px;padding:22px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:22px}h2{font-size:15px;font-weight:650;margin:0}.section-heading h2 span{color:#758a83;font-size:10px;font-weight:500;margin-right:9px}.text-button{background:none;border:0;padding:5px 0;font-size:11px;font-weight:600;color:var(--teal);text-decoration:underline;text-underline-offset:3px}.preset-controls{margin:-5px 0 20px;border-bottom:1px solid #e5e9e4;padding-bottom:12px}.preset-controls summary{cursor:pointer;color:var(--teal);font-size:11px;font-weight:600}.preset-controls>label,.preset-editor>label:not(.preset-checkbox){display:block;margin:12px 0 6px;font-size:11px;font-weight:600}.preset-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 15px;margin-top:7px}.preset-actions #save-preset{margin-left:auto}.preset-editor{margin-top:12px}.preset-checkbox{display:flex;align-items:center;gap:7px;font-size:11px;margin-top:10px}.preset-checkbox input[type=checkbox]{width:14px;height:14px;padding:0;margin:0;accent-color:var(--teal)}.preset-status,.preset-confirm{font-size:11px;line-height:1.6;overflow-wrap:anywhere}.preset-status{margin:8px 0 0}.preset-status:empty{display:none}.preset-confirm p{margin:10px 0 0}.film-switch{border:0;margin:0 0 20px;padding:0;display:flex;gap:6px}.film-switch legend{font-size:11px;font-weight:600;padding:0 0 9px}.film-switch label{flex:1;position:relative}.film-switch input{position:absolute;opacity:0;width:1px;height:1px}.film-switch span{display:block;text-align:center;padding:10px;background:#f3f5f2;border:1px solid #d5ddd7;border-radius:4px;font-size:13px;font-weight:600}.film-switch input:checked+span{color:#fff;background:var(--teal);border-color:var(--teal)}.film-switch input:focus-visible+span{outline:3px solid #ce9b41;outline-offset:3px}.grid-controls{margin:0 0 20px}.custom-film-field,.grid-dimensions label{display:block;font-size:11px;font-weight:650}.custom-film-field{display:flex;align-items:center;gap:12px}.custom-film-field select{flex:1;width:auto}.grid-dimensions{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:10px;margin-top:10px}.grid-dimensions input{margin-top:6px}.grid-dimensions>span{align-self:center;margin-top:18px}.grid-controls .hint{margin-top:8px}.grid-error{margin:8px 0 0;font-size:11px;color:#8a3c27}.grid-dimensions [aria-invalid=true]{border-color:#8a3c27}.metadata-form{display:grid;grid-template-columns:1fr 1fr;gap:14px 12px}.metadata-form label{display:flex;flex-wrap:wrap;align-content:start;gap:6px 4px;font-size:11px;font-weight:650;min-width:0}.stock-field select{margin-top:6px}.metadata-form .full{grid-column:1 / -1}.optional{color:var(--muted);font-weight:400;margin-left:auto}input:not([type=radio]):not([type=checkbox]),select,textarea{width:100%;min-width:0;color:#243a40;background:#fcfdfb;border:1px solid #d3dbd5;border-radius:4px;padding:9px 10px;font-size:12px;line-height:1.5}input::placeholder,textarea::placeholder{color:#7b8782}textarea{resize:vertical;min-height:70px}.hint,.session-note{font-size:11px;line-height:1.7;color:#65756e;margin:14px 0 0}.session-note{border-top:1px solid #e5e9e4;padding-top:14px}.count{font-size:10px;color:var(--muted)}.drop-zone{text-align:center;background:#f6f8f4;border:1px dashed #b4c6ba;border-radius:5px;padding:18px 8px}.drop-zone.busy{display:flex;align-items:center;justify-content:center;border-color:var(--teal);background:#edf5f1}.drop-zone.busy>.drop-icon,.drop-zone.busy>p,.drop-zone.busy>#add-images{display:none}.drop-zone .import-progress{width:100%;margin-top:0;text-align:left}.import-progress{margin-top:12px;font-size:11px;color:#365d50}.progress-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.import-progress progress{display:block;width:100%;height:7px;margin-top:5px;accent-color:var(--teal)}.import-summary{overflow-wrap:anywhere}.import-failures{margin-top:8px;font-size:11px;line-height:1.6;color:#775022;overflow-wrap:anywhere}.import-failures summary{cursor:pointer}.import-failures ul{margin:7px 0 0;padding-left:17px}.memo-progress{margin-top:8px}.drop-zone.drag-over{background:#dfefea;border-color:var(--teal)}.drop-icon{display:block;font-size:26px;font-weight:300;color:var(--teal)}.drop-zone p{font-size:12px;margin:6px 0}.drop-zone .muted{font-size:10px;color:var(--muted);margin:5px 0 14px}.secondary{color:#2c4e46;background:#fff;border:1px solid #c2d0c5;border-radius:4px;padding:8px 12px;font-size:11px;font-weight:600}.image-actions{display:flex;justify-content:space-between;margin-top:9px}.selection{display:flex;align-items:center;gap:12px;margin-top:8px;font-size:11px}#selected-name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.memo-options{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin-top:8px}.metadata-form .memo-choice{display:inline-flex;align-items:center;gap:6px;font-weight:500;cursor:pointer}.memo-choice input{width:14px;height:14px;margin:0;accent-color:var(--teal)}.memo-choice:has(input:disabled){color:var(--muted);cursor:default}#memo-image-name{margin-top:5px;overflow-wrap:anywhere}.primary{display:flex;width:100%;justify-content:space-between;color:#fff;background:var(--teal);border:1px solid var(--teal);border-radius:4px;padding:13px 16px;font-size:13px;font-weight:600}button:not(:disabled):hover{filter:brightness(.94)}.preview-area{min-width:0}.preview-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:5px 0 10px}.preview-heading h2{font-size:13px}.preview-heading span{font-size:9px;letter-spacing:.08em;color:#65756e}.status{font-size:11px;color:#526860;min-height:20px;margin:0 0 15px;line-height:1.6;overflow-wrap:anywhere}.overflow-note{color:#775022;font-size:12px;line-height:1.6}#pages{display:grid;justify-items:center;gap:28px}.page-wrapper{position:relative}.sheet{width:8.5in;height:11in;padding:.4in;background:#fff;color:#292929;box-shadow:0 4px 24px #1d38261a,0 0 0 1px #233b2510;display:grid;grid-template-rows:.28in 1.06in minmax(0,1fr) .8in .18in;gap:.13in;transform:scale(var(--page-scale, 1));transform-origin:top left;overflow:hidden}.sheet p,.sheet h2,.sheet h3{margin:0}.sheet-header{display:flex;justify-content:space-between;align-items:start}.sheet-kicker{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:9px;font-weight:600;letter-spacing:1.1px;color:inherit}.page-mark{text-align:right;display:flex;align-items:center;gap:.12in;font-size:9px}.sheet-label{display:block;color:#646464;font-size:7px;font-weight:650;letter-spacing:.6px;line-height:1.4}.sheet-details{display:grid;grid-template-columns:minmax(0,1fr);min-height:0}.has-film-memo .sheet-details{grid-template-columns:minmax(0,1fr) 1in;gap:.16in}.sheet-metadata{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));border-top:1px solid #bdbdbd}.metadata-row{display:flex;border-bottom:1px solid #dedede;padding:.045in 0;gap:.16in;overflow:hidden}.sheet-field{flex:1;min-width:0}.sheet-value{display:block;font-size:9px;line-height:1.4;height:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sheet-index{position:relative;display:grid;grid-template-rows:minmax(0,1fr);min-height:0}.index-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.frame-grid{display:grid;grid-template-columns:repeat(var(--grid-columns, 6),minmax(0,1fr));grid-template-rows:repeat(var(--grid-rows, 7),minmax(0,1fr));gap:.055in .035in;min-height:0}.film-120{--grid-columns: 4;--grid-rows: 4}.frame{padding:0;min-width:0;min-height:0;border:0;border-radius:0;background:#fff;color:#3d3d3d;display:grid;grid-template-rows:minmax(0,1fr) .14in;gap:.02in;width:100%;text-align:left}.frame .scan{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.frame .scan,.blank-image{border:0}.frame.selected{outline:2px solid #236c68;outline-offset:1px;background:#f0f7f3}.frame:not(.empty):hover{filter:none}.frame-number{display:flex;align-items:center;gap:.04in;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:8px;font-weight:600;line-height:.14in;font-variant-numeric:tabular-nums;letter-spacing:.03em}.frame-number:before{content:"";flex:none;width:0;height:0;border-top:2.5px solid transparent;border-bottom:2.5px solid transparent;border-left:4px solid currentColor}.empty .frame-number{color:#767676;font-weight:400}.empty:not(.preparing) .frame-number:before{border-left-color:transparent}.blank-image{position:relative;min-height:0}.blank-image:before,.blank-image:after{content:"";position:absolute;width:.06in;height:.06in;border-style:solid;border-color:#bcbcbc}.blank-image:before{top:0;left:0;border-width:.5px 0 0 .5px}.blank-image:after{right:0;bottom:0;border-width:0 .5px .5px 0}.frame.preparing .blank-image{display:grid;place-items:center;background:linear-gradient(110deg,#f4f6f2 30%,#e2eae4,#f4f6f2 70%);background-size:200% 100%;animation:preparing 1.6s linear infinite}.preparing-label{font-size:7px;color:#65756e}@keyframes preparing{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.frame.preparing .blank-image{animation:none}}.sheet-notes{border-top:1px solid #c9c9c9;padding-top:.07in;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:.035in}.notes-body{display:grid;grid-template-columns:minmax(0,1fr);min-height:0}.film-memo{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;overflow:hidden}.memo-image{display:block;width:100%;height:100%;min-height:0;object-fit:contain}.notes-content{font-size:9px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;overflow:hidden}.sheet-footer{border-top:1px solid #dedede;padding-top:.04in;font-size:7px;color:#707070}@media(max-width:1050px){.workspace{grid-template-columns:300px minmax(0,1fr);gap:24px;padding:24px}.app-header{padding:28px 24px 24px}.panel{padding:18px}}@media(max-width:760px){.workspace{grid-template-columns:minmax(0,1fr);padding:20px 16px 32px;gap:30px}.app-header{padding:22px 18px}h1{font-size:32px}.privacy{font-size:10px}.controls{gap:14px}.metadata-form{grid-template-columns:1fr 1fr}.preview-heading span{font-size:8px}}@page{size:letter portrait;margin:.4in}@media print{html,body{margin:0!important;padding:0!important;background:#fff;width:auto;height:auto}body>:not(.workspace),.workspace>:not(.preview-area),.preview-area>:not(#pages){display:none!important}.workspace,.preview-area,#pages{display:block;padding:0;margin:0;max-width:none;width:auto}.page-wrapper{width:100%!important;height:auto!important;aspect-ratio:7.7 / 9.5;margin:0;padding:0;overflow:hidden;break-inside:avoid;page-break-inside:avoid}.page-wrapper+.page-wrapper{break-before:page}.sheet{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;transform:none;box-shadow:none;margin:0;print-color-adjust:exact;-webkit-print-color-adjust:exact}.sheet>*{position:absolute;left:0;right:0}.sheet-header{top:0;height:.28in}.sheet-details{top:.41in;height:1.06in}.sheet-index{top:1.6in;bottom:1.24in}.sheet-notes{bottom:.31in;height:.8in}.sheet-footer{bottom:0;height:.18in}.frame,.frame.selected,.frame:hover{background:#fff;outline:none;border:0;filter:none}.frame{cursor:default}}
