.sws-preparation { display:grid; gap:1rem; max-width:80rem; margin:auto; }
.sws-panel { border:1px solid var(--border,#cbd3ca); border-radius:10px; padding:1rem; background:var(--paper,#fffefa); }
.sws-panel h3 { margin-top:0; }
.sws-panel label { display:block; margin:.65rem 0; font-weight:600; }
.sws-panel input:not([type=checkbox]), .sws-panel select, .sws-panel textarea { display:block; box-sizing:border-box; width:100%; max-width:100%; font:inherit; padding:.5rem; }
.sws-panel textarea { line-height:1.6; }
.sws-panel pre { white-space:pre-wrap; max-height:20rem; overflow:auto; }
.sws-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.8rem; }
.sws-actions { display:flex; flex-wrap:wrap; gap:.5rem; align-items:center; }
.sws-panel button { min-height:2.65rem; margin:.3rem .3rem .3rem 0; }
.sws-passage { padding:.75rem; border-bottom:1px solid var(--border,#cbd3ca); }
#sws-passage-list { max-height:34rem; overflow:auto; margin:.5rem 0; }
.sws-pages { padding-left:1.5rem; }
.sws-pages li { display:grid; grid-template-columns:7rem minmax(0,1fr); gap:1rem; padding:.75rem 0; border-bottom:1px solid var(--border,#cbd3ca); }
.sws-pages li img { width:7rem; height:9rem; object-fit:contain; background:#e9ece4; }
.sws-pages li:not(:has(img)) { grid-template-columns:1fr; }
.sws-pages strong { overflow-wrap:anywhere; }
.sws-error { color:#9a3029; overflow-wrap:anywhere; }
#sws-message { padding:.7rem; border-left:4px solid #2c6956; background:#edf4ee; }
#sws-message.error { background:#fff0eb; border-color:#ad3b2e; }
.sws-panel :focus-visible { outline:3px solid #a35c16; outline-offset:2px; }
@media(max-width:650px) { .sws-grid { grid-template-columns:1fr; gap:0; } .sws-panel { padding:.65rem; } .sws-pages li { grid-template-columns:4rem minmax(0,1fr); gap:.5rem; } .sws-pages li img { width:4rem; height:6rem; } }
.sws-preparation { --sws-accent:#325f58; --sws-wash:#f0f5f1; gap:1.25rem; }
.sws-route { padding:1.1rem 1.25rem; background:var(--sws-wash); border:1px solid #cbd8d1; border-radius:14px; }
.sws-route h3,.sws-panel h3 { margin:0 0 .5rem; font-size:1.2rem; line-height:1.35; }
.sws-route p:last-child { margin-bottom:0; font-size:.94rem; }
.sws-storage-check { display:flex; align-items:center; justify-content:space-between; gap:1rem; font-size:.88rem; color:var(--muted,#58645e); }
.sws-storage-check p { margin:0; } .sws-storage-check button { flex-shrink:0; font-size:.88rem; }
.sws-panel { padding:1.25rem; border-radius:14px; box-shadow:0 3px 14px #263b3010; }
.sws-mode-choices { display:flex; flex-wrap:wrap; gap:.4rem; margin:.8rem 0 1rem; padding:.25rem; background:var(--sws-wash); border-radius:10px; }
.sws-mode-choices button { flex:1; min-width:9rem; margin:0; border-color:transparent; background:transparent; border-radius:7px; }
.sws-mode-choices button[aria-pressed=true],.sws-route button[aria-pressed=true] { background:var(--sws-accent); border-color:var(--sws-accent); color:white; }
.sws-intake-fields .sws-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.sws-intake-fields input,.sws-intake-fields textarea,.sws-intake-fields select { border:1px solid #aebcb3; border-radius:7px; background:var(--paper,#fffdf8); padding:.65rem; box-sizing:border-box; min-width:0; }
.sws-intake-fields textarea { resize:vertical; } .sws-intake-fields label { font-size:.94rem; }
.sws-preparation .help { font-size:.88rem; line-height:1.55; color:var(--muted,#58645e); }
.sws-preparation button { padding:.6rem .9rem; border-radius:7px; line-height:1.35; }
.sws-preparation button.primary { background:var(--sws-accent); border-color:var(--sws-accent); color:white; }
.sws-preparation button:disabled { opacity:.55; cursor:default; }
.sws-preparation #sws-import-preview:not(:empty) { margin:1rem 0; padding:1rem; border:1px solid #cbd8d1; border-radius:10px; background:var(--sws-wash); }
.sws-preparation #sws-import-preview h4 { font-size:1.1rem; margin:.5rem 0; overflow-wrap:anywhere; }
.sws-preparation details { margin:.6rem 0; } .sws-preparation summary { cursor:pointer; line-height:1.5; }
.sws-preparation #sws-text-work:not(:empty) { margin-top:1.25rem; border-top:1px solid #d8ddd6; padding-top:.75rem; }
.sws-preparation #sws-division-status { padding:.7rem; border-left:3px solid #899d8f; background:var(--sws-wash); }
.sws-manuscript-first .sws-pages-panel { order:1; } .sws-manuscript-first .sws-text-panel { order:2; }
.sws-preparation #sws-image-selection { display:block; overflow-wrap:anywhere; }
.sws-preparation .sws-error { color:#9b2929; }
.sws-preparation :focus-visible { outline:3px solid #a35c16; outline-offset:2px; }
@media(max-width:650px) { .sws-panel,.sws-route { padding:1rem; } .sws-storage-check { align-items:flex-start; flex-direction:column; gap:.3rem; } .sws-intake-fields .sws-grid { grid-template-columns:1fr; } .sws-mode-choices button { min-width:8rem; } .sws-route .sws-actions button { flex:1; } .sws-preparation button { min-height:44px; } .sws-preparation input,.sws-preparation select,.sws-preparation textarea { font-size:16px; } }
