.ow-workspace { --ow-blue:#1765c1; --ow-line:#d7e0ea; --ow-muted:#64758b; padding:12px; color:#172b44; font-size:13px; }
.ow-workspace *, .ow-workspace *::before, .ow-workspace *::after { box-sizing:border-box; }
.ow-workspace h2,.ow-workspace h3,.ow-workspace p { margin:0; }
.ow-workspace h2 { font-size:19px; }
.ow-workspace h3 { font-size:14px; }
.ow-header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:12px; }
.ow-header p,.ow-muted { color:var(--ow-muted); line-height:1.6; }
.ow-version { background:#eaf2fc; border:1px solid #cbdcf2; padding:6px 10px; border-radius:3px; color:#175ba7; }
.ow-workspace button { border:1px solid var(--ow-blue); background:var(--ow-blue); border-radius:3px; color:white; padding:7px 12px; min-height:32px; cursor:pointer; font:inherit; font-weight:600; }
.ow-workspace button.ow-secondary { background:white; border-color:#bccad9; color:#30465e; }
.ow-workspace button:disabled { opacity:.45; cursor:not-allowed; }
.ow-workspace button:focus-visible,.ow-workspace input:focus-visible,.ow-workspace select:focus-visible { outline:2px solid #3389ea; outline-offset:2px; }
.ow-workspace input,.ow-workspace select { font:inherit; border:1px solid #b9c8d8; border-radius:3px; background:white; color:inherit; height:32px; padding:4px 7px; min-width:0; max-width:100%; }
.ow-workspace input[type=color] { padding:2px; width:44px; }
.ow-workspace label { display:grid; gap:4px; min-width:0; }
.ow-workspace label>span { font-size:11px; color:#54697f; }
.ow-query { background:white; border:1px solid var(--ow-line); border-radius:3px; display:grid; grid-template-columns:repeat(4,minmax(135px,1fr)); align-items:end; gap:10px; padding:12px; }
.ow-query button { align-self:end; }
.ow-notice,.ow-diagnostics,.ow-print-confirm { border:1px solid #ccdaeb; background:#f1f6fc; border-radius:3px; padding:10px 12px; margin-top:10px; line-height:1.55; }
.ow-danger { background:#fff3ef; border-color:#e9b2a5; color:#872f25; }
.ow-field-error { display:block; color:#872f25; white-space:normal; max-width:240px; line-height:1.5; }
.ow-workspace [aria-invalid=true] { border-color:#ac3d2e; }
.ow-notice ul { margin:6px 0 0; padding-left:22px; }
.ow-print-confirm { background:#fff8e5; border-color:#dfc878; }
.ow-print-confirm p { margin:5px 0 8px; }
.ow-summary { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--ow-line); background:#fff; margin:12px 0; border-radius:3px; }
.ow-summary>div { display:flex; flex-direction:column; gap:4px; padding:11px 14px; border-right:1px solid var(--ow-line); }
.ow-summary>div:last-child { border:0; }
.ow-summary strong { font-size:21px; color:#185a9a; }
.ow-summary span { color:var(--ow-muted); font-size:11px; }
.ow-actions { display:flex; align-items:center; gap:7px; flex-wrap:wrap; }
.ow-content { display:grid; grid-template-columns:minmax(380px,.85fr) minmax(400px,1.4fr); gap:12px; margin-top:12px; align-items:start; }
.ow-panel { border:1px solid var(--ow-line); background:#fff; border-radius:3px; min-width:0; overflow:hidden; }
.ow-panel-head { display:flex; gap:8px; align-items:center; justify-content:space-between; padding:9px 11px; background:#f5f8fc; border-bottom:1px solid var(--ow-line); flex-wrap:wrap; }
.ow-panel>.ow-actions,.ow-panel>p { padding:8px 11px; }
.ow-panel-head select { max-width:230px; }
.ow-table-scroll { max-height:490px; overflow:auto; }
.ow-workspace table { border-collapse:collapse; width:100%; font-size:12px; white-space:nowrap; }
.ow-workspace th { position:sticky; top:0; background:#edf3fa; text-align:left; font-size:11px; font-weight:600; z-index:1; }
.ow-workspace th,.ow-workspace td { padding:7px 9px; border-bottom:1px solid #e0e7ef; }
.ow-workspace td input[type=text] { min-width:100px; }
.ow-workspace td input[type=number] { width:65px; }
.ow-workspace tr[data-ow-row]:hover { background:#edf5ff; cursor:pointer; }
.ow-paper-wrap { background:#e6ebf1; min-height:465px; padding:18px; display:flex; justify-content:center; overflow:auto; }
.ow-sheet { position:relative; background:#fff; box-shadow:0 3px 15px #1232; flex-shrink:0; color:#66778a; }
.ow-sheet-inner { position:absolute; top:0; left:0; display:grid; transform-origin:top left; }
.ow-slot { overflow:hidden; border-right:.2mm dashed #777; border-bottom:.2mm dashed #777; background:white; }
.ow-cover-slot { color:#111; display:flex; align-items:center; justify-content:center; font-size:72pt; font-weight:700; }
.ow-editor { margin:12px 0; background:white; border:1px solid #b8cfe9; border-radius:3px; }
.ow-editor>p { padding:10px 12px; color:var(--ow-muted); }
.ow-editor-grid { display:grid; grid-template-columns:minmax(360px,1fr) 280px; gap:18px; padding:12px; }
.ow-format-fields { display:grid; grid-template-columns:repeat(3,minmax(100px,1fr)); gap:9px; margin-bottom:12px; }
.ow-editor fieldset { margin:0; padding:0; border:0; min-width:0; }
.ow-editor-preview { overflow:hidden; width:280px; padding:8px; background:#eef2f7; position:sticky; top:12px; align-self:start; }
.ow-editor-preview>p { position:absolute; bottom:3px; color:var(--ow-muted); font-size:11px; }
.ow-diagnostics summary,.ow-editor summary { cursor:pointer; font-weight:600; padding:4px 0; }
.ow-source { margin:12px 0; padding:12px; }
.ow-source>summary { cursor:pointer; font-weight:600; padding:4px 0; }
.ow-source>p { padding:6px 0; line-height:1.5; }
.ow-source .ow-actions { padding:8px 0; flex-wrap:wrap; }
.ow-file { display:flex; flex-direction:column; gap:5px; font-size:12px; }
.ow-file input { max-width:320px; }
.ow-workspace input[type=checkbox] { width:18px; height:18px; accent-color:#245ba0; }
.ow-workspace :focus-visible { outline:2px solid #245ba0; outline-offset:2px; }
@media(max-width:1200px) { .ow-content { grid-template-columns:1fr; } .ow-query { grid-template-columns:repeat(3,minmax(130px,1fr)); } }
@media(max-width:760px) { .ow-query,.ow-summary { grid-template-columns:repeat(2,minmax(100px,1fr)); } .ow-editor-grid { grid-template-columns:1fr; } .ow-format-fields { grid-template-columns:repeat(2,minmax(100px,1fr)); } .ow-workspace { padding:6px; } }
