.qs{--qs-ink:#26364b;--qs-line:#dee4ed;--qs-soft:#f5f7fb;color:var(--qs-ink);max-width:1400px;margin:auto;line-height:1.55}.qs *{box-sizing:border-box}.qs-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0}.qs-header h1{margin:5px 0;font-size:clamp(25px,4vw,34px)}.qs-header p,.qs small{color:#66758a}.qs-header small,.qs-kicker{font-size:12px;letter-spacing:.04em}.qs-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:12px 0}.qs button,.qs .btn{cursor:pointer;min-height:42px}.qs button:disabled{opacity:.6;cursor:wait}.qs-error{color:#a2272e;white-space:pre-wrap}.qs-error:empty{display:none}.qs-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.qs-stat{background:white;border:1px solid var(--qs-line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:5px}.qs-stat strong{font-size:29px;line-height:1.1}.qs-stat span{font-size:13px}.qs-stat.overdue,.qs-stat.blocking{border-bottom:3px solid #b83d43}.qs-stat.closed{border-bottom:3px solid #16876e}.qs-progress,.qs-panel,.qs-place-group{border:1px solid var(--qs-line);border-radius:14px;background:white;padding:18px;margin:16px 0}.qs-progress{background:#f1f7f5}.qs-progress progress{display:block;width:100%;height:10px;accent-color:#15816c;margin:10px 0}.qs-progress p{font-size:12px;margin:6px 0}.qs-panel summary,.qs-place-group>summary{cursor:pointer;font-weight:650;min-height:36px;overflow-wrap:anywhere}.qs-panel h2{font-size:22px;margin:0 0 8px}.qs-distributions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.qs-distributions p{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid var(--qs-line);padding:6px 0;font-size:13px}.qs-filters{display:flex;align-items:end;flex-wrap:wrap;gap:12px;background:white;padding:16px;border-radius:14px;border:1px solid var(--qs-line);margin:16px 0}.qs-filters>label{flex:1 1 155px}.qs label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:550;min-width:0}.qs input,.qs select,.qs textarea{width:100%;max-width:100%;min-height:43px;padding:10px 12px;border:1px solid #bac6d7;border-radius:8px;background:white;color:#21324a;font:inherit;box-shadow:none}.qs textarea{resize:vertical}.qs input:focus,.qs select:focus,.qs textarea:focus,.qs button:focus-visible,.qs summary:focus-visible{outline:3px solid #b9a5ee;outline-offset:2px}.qs-check{display:flex!important;flex-direction:row!important;align-items:center}.qs-check input{width:20px;min-height:20px;height:20px}.qs-dossiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:16px}.qs-dossier{text-align:start;background:white;border:1px solid var(--qs-line);border-radius:14px;padding:20px;color:inherit;overflow-wrap:anywhere}.qs-dossier:hover{border-color:#8664ca;background:#faf9fd}.qs-dossier h2{font-size:19px;margin:12px 0 6px}.qs-empty{padding:30px;background:var(--qs-soft);border-radius:12px;grid-column:1/-1;text-align:center}.qs-issue{border-top:1px solid var(--qs-line);margin:12px 0;padding-top:12px}.qs-issue>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;min-height:48px}.qs-issue>summary strong{display:block;font-size:15px}.qs-issue>summary small{display:block;margin-top:4px}.qs-issue-body{padding:8px 0}.qs-status{white-space:nowrap;border-radius:6px;background:#edf0f5;padding:4px 8px;font-size:12px}.qs-status.CLOSED{color:#116a53;background:#e1f2e9}.qs-status.TO_VERIFY{color:#8a5c09;background:#fff0c8}.qs-status.CANCELLED{color:#526172;text-decoration:line-through}.qs-warning{color:#a3313a;display:inline-block;margin:4px 10px 4px 0}.qs-lines{white-space:pre-wrap;overflow-wrap:anywhere}.qs-issue p,.qs-visit p{overflow-wrap:anywhere}.qs-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}.qs-gallery figure{margin:8px 0;border:1px solid var(--qs-line);border-radius:10px;overflow:hidden}.qs-gallery img{width:100%;height:145px;object-fit:contain;background:#f5f6f8;display:block}.qs-gallery figcaption{font-size:12px;padding:8px;overflow-wrap:anywhere}.qs-gallery a:has(>span){display:block;padding:15px}.qs-visit{padding:15px 0;border-bottom:1px solid var(--qs-line)}.qs-history{margin:14px 0;font-size:13px}.qs-history p{border-inline-start:2px solid #d9d1eb;padding-inline-start:12px}.qs-report-link{display:block;padding:12px 0;border-bottom:1px solid var(--qs-line);overflow-wrap:anywhere}.qs-dialog{width:min(760px,95vw);max-width:760px!important;max-height:92dvh;overflow:auto;padding:22px!important;background:white}.qs-dialog header{display:flex;justify-content:space-between;align-items:center;gap:12px}.qs-dialog header h2{font-size:21px}.qs-dialog form>label,.qs-dialog details>label,.qs-dialog [data-source]>label,.qs-dialog [data-sav]>label{margin:12px 0}.qs-dialog details{padding:14px;border:1px solid var(--qs-line);border-radius:10px;margin:15px 0}.qs-dialog summary{cursor:pointer}.qs-dialog [hidden]{display:none!important}.qs-photo-input{background:var(--qs-soft);border-radius:10px;padding:13px;margin:14px 0;display:grid;gap:10px}.qs-photo-input input{background:white;font-size:13px}.qs-dialog iframe{width:100%;height:55vh;border:1px solid var(--qs-line);margin:12px 0}.qs-dialog .qs-actions{position:relative}.qs [data-sav] p{font-size:12px}.qs [data-kind=issue-filter]{font-size:13px}@media(max-width:850px){.qs-dossiers{grid-template-columns:repeat(2,minmax(0,1fr))}.qs-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.qs-distributions{grid-template-columns:1fr}.qs-header{align-items:flex-start;flex-direction:column}.qs-header p{margin:0}.qs-stat{padding:14px}.qs-stat strong{font-size:25px}}@media(max-width:520px){.qs-dossiers{grid-template-columns:1fr}.qs-stats{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.qs-stat.blocking{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between}.qs-filters{padding:12px}.qs-filters>label{flex-basis:calc(50% - 12px)}.qs-filters>label:first-child{flex-basis:100%}.qs-dialog{padding:15px!important;width:96vw;max-height:94dvh}.qs-panel,.qs-place-group{padding:13px}.qs-issue>summary{align-items:flex-start}.qs-issue>summary strong{max-width:100%;overflow-wrap:anywhere}.qs-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.qs .btn{font-size:13px;padding:9px 12px}}@media print{.qs-header,.qs-filters,.qs-actions{display:none!important}.qs{color:#000;background:#fff}.qs-panel,.qs-place-group{break-inside:avoid}}

.qs-header>div{min-width:0;max-width:100%}.qs-header h1,.qs-header p{overflow-wrap:anywhere}

/* Capture uses the visible viewport, including when a phone keyboard is open. */
.modal-back:has(.qs-dialog){z-index:1100;top:var(--qs-viewport-top,0px);height:min(100dvh,var(--qs-viewport-height,100dvh));bottom:auto;padding:8px;align-items:center}
.qs-dialog{max-height:min(calc(100dvh - 16px),calc(var(--qs-viewport-height,100dvh) - 16px));padding-bottom:0!important;overscroll-behavior:contain}
.qs-dialog .qs-submit{position:sticky;bottom:0;background:#fff;padding:12px 0 max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--qs-line);z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.qs-dialog .qs-submit>button:only-child{grid-column:1/-1}
.qs-photo-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.qs-photo-choices input{font-size:12px;min-width:0}
.qs-photo-queue{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.qs-photo-queue figure{margin:0;min-width:0}.qs-photo-queue img{width:100%;height:120px;object-fit:contain;background:#fff;border-radius:8px}.qs-photo-queue figcaption{font-size:12px;overflow-wrap:anywhere}
.qs-field-error{color:#a2272e!important;font-size:13px}.qs [aria-invalid=true]{border-color:#a2272e}.qs-upload-status:empty{display:none}.qs-upload-status{font-size:13px;overflow-wrap:anywhere}
.qs-filter-panel{margin:14px 0}.qs-filter-panel>summary{cursor:pointer;display:inline-block;padding:10px 18px;background:#fff;border:1px solid var(--qs-line);border-radius:9px;font-weight:600}
.qs-saved{background:#ecf8f1;border:1px solid #95c5aa;border-radius:12px;padding:12px;margin:12px 0;overflow-wrap:anywhere}
.qs-thumb{width:62px;height:62px;flex:0 0 62px;object-fit:contain;background:#f2f4f8;border-radius:8px}.qs-no-photo{display:grid;place-items:center;color:#728096;font-size:24px}.qs-card-text{flex:1;min-width:0}.qs-card-text strong{display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.qs-issue>summary{flex-wrap:wrap}.qs-issue .qs-status{margin-inline-start:auto}
@media(max-width:520px){.qs-dialog{width:100%;max-height:min(calc(100dvh - 16px),calc(var(--qs-viewport-height,100dvh) - 16px))}.qs-photo-choices{grid-template-columns:1fr}.qs-dialog .qs-submit button{white-space:normal;line-height:1.35;min-height:48px}}
.qs-photo-choices label{position:relative;cursor:pointer;background:#fff;border:1px solid #bac6d7;border-radius:8px;min-height:48px;padding:12px;display:flex;justify-content:center;align-items:center;text-align:center}
.qs-photo-choices label:focus-within{outline:3px solid #b9a5ee;outline-offset:2px}
.qs-photo-choices input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;padding:0;overflow:hidden}
.qs nav.qs-actions>[data-qs=new-issue]{width:100%;min-height:50px;font-size:16px}


/* Defects are records in a compact list; full evidence loads in the existing detail view. */
.qs-defects{border:1px solid var(--qs-line);border-radius:16px;background:#fff;padding:20px;margin:18px 0}
.qs-defects-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.qs-defects-header h2{font-size:21px;margin:0 0 8px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.qs-total{font-size:13px;background:#eeebf7;color:#66518c;border-radius:20px;padding:3px 10px}
.qs-defect-counts{display:flex;flex-wrap:wrap;gap:6px 15px;font-size:12px;color:#66758a}
.qs-count-open{color:#725c39}.qs-count-closed{color:#24715b}
.qs-defect-search{display:flex;align-items:end;gap:8px;margin:20px 0 12px}.qs-defect-search>label{flex:1}
.qs-list-toolbar{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.qs-list-toolbar>.qs-filter-panel{margin:0;flex:1}.qs-list-toolbar>label{width:190px;max-width:100%}
.qs-list-toolbar:has([data-qs-filters][open]){display:grid;grid-template-columns:minmax(0,1fr) auto}.qs-list-toolbar>[data-qs-filters][open]{grid-column:1/-1}
.qs-defects .qs-filters{margin:10px 0 0;background:var(--qs-soft);border-radius:10px}.qs-filter-extra{flex:1 1 100%}.qs-filter-extra>summary{cursor:pointer}.qs-filter-extra>label{margin-top:10px}
.qs-filter-result{font-size:13px;color:#66758a;margin:12px 0}.qs-issue-list{display:grid;gap:8px;margin-top:14px}
.qs-issue-row{display:block;width:100%;min-width:0;text-align:start;font:inherit;color:var(--qs-ink);background:#fff;border:1px solid var(--qs-line);border-radius:11px;padding:12px 14px;cursor:pointer;transition:background .15s,border-color .15s}
.qs-issue-row:hover{background:#faf9fd;border-color:#aa98c8}.qs-issue-row:focus-visible{outline:3px solid #b9a5ee;outline-offset:2px}
.qs-row-heading{display:flex;gap:12px;align-items:start}.qs-row-heading>strong{flex:1;min-width:0;font-size:14px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.qs-row-number{font-size:12px;color:#738197;font-weight:500;margin-inline-end:5px}.qs-row-arrow{font-size:21px;line-height:1;color:#8b789f}
.qs-row-place,.qs-row-owner{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#64748b;font-size:12px;margin-top:5px;max-width:100%}
.qs-row-meta{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap;margin-top:8px;font-size:11px}.qs-row-meta .qs-status{font-size:11px;padding:2px 7px}
.qs-priority{color:#68758a}.qs-priority.MAJOR{color:#866326}.qs-priority.BLOCKING{color:#a34449}.qs-row-photos{color:#64748b}
.qs-status.OPEN{background:#f4eee3;color:#7a6134}.qs-status.ASSIGNED{background:#eeeaf6;color:#69528d}.qs-status.IN_PROGRESS{background:#e7eff9;color:#39648f}
.qs-defects .qs-location-group{background:transparent;border:0;border-radius:0;margin:8px 0;padding:0}
.qs-location-group>summary{display:flex;align-items:center;gap:8px;list-style:none;padding:10px 0;border-bottom:1px solid var(--qs-line);font-size:14px}
.qs-location-group>summary::before{content:'›';font-size:18px;color:#837292;transform:rotate(0deg)}.qs-location-group[open]>summary::before{transform:rotate(90deg)}
.qs[dir=rtl] .qs-location-group:not([open])>summary::before{transform:rotate(180deg)}
.qs-group-count{margin-inline-start:auto;border-radius:20px;background:var(--qs-soft);padding:2px 9px;font-size:12px;color:#66758a}
.qs-location-children{padding-inline-start:8px;border-inline-start:1px solid #ece8f2}.qs-location-children .qs-issue-list{margin:8px 0}
.qs-dialog:has([data-kind=issue-detail]) header{position:sticky;top:-22px;padding:12px 0;background:#fff;z-index:3}.qs-dialog [data-kind=issue-detail]>.qs-submit{display:none}
.qs-dialog [data-kind=issue-detail]>.qs-issue{padding:0;border:0;margin:8px 0}.qs-dialog [data-kind=issue-detail] .qs-issue>summary{padding-bottom:12px;border-bottom:1px solid var(--qs-line)}
@media(max-width:520px){.qs-defects{padding:13px}.qs-defects-header{gap:12px}.qs-defects-header h2{font-size:19px}.qs-defects-header>.btn{width:100%}.qs-list-toolbar>label{width:165px}.qs-issue-row{padding:11px}.qs-defects .qs-filters>label{flex-basis:100%}.qs-dialog:has([data-kind=issue-detail]) header{top:-15px}.qs-location-children{padding-inline-start:5px}}

/* Report preview renders the authoritative PDF, including on Android. */
.qs-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.qs-dialog:has([data-kind=report]){width:min(1100px,96vw);max-width:1100px!important}
#qs-pdf-pages{background:#e9edf2;padding:10px;display:grid;gap:14px}
#qs-pdf-pages:empty{display:none}
.qs-pdf-page{background:#fff;min-height:120px;color:#526172;text-align:center;max-width:100%;overflow:hidden}
.qs-pdf-page canvas{display:block;width:100%;height:auto}
#qs-pdf-fallback[hidden]{display:none!important}
@media(max-width:520px){.qs-report-grid{grid-template-columns:1fr}#qs-pdf-pages{padding:4px;gap:8px}}

/* Technical assistance shares the existing compact SAV capture and modal. */
.qk-intro{background:linear-gradient(125deg,#f3efff,#fff);border:1px solid #e6dcfa;border-radius:16px;padding:16px;color:#5e378b}.qk-intro p{font-size:18px;font-weight:700;margin:0 0 6px}.qk-filters{display:grid;grid-template-columns:1fr 2fr 1fr;gap:12px}.qk-results{display:grid;gap:8px;margin:12px 0;max-height:52vh;overflow:auto}.qk-result{text-align:start;background:#fff;border:1px solid #e9e1f4;border-radius:12px;padding:13px;cursor:pointer;color:inherit}.qk-result strong,.qk-result small{display:block;white-space:normal;overflow-wrap:anywhere}.qk-result small{color:#716583;margin-top:5px}.qk-card{background:#fff;border:1px solid #e8e0f2;border-radius:14px;margin:12px 0;padding:14px;overflow-wrap:anywhere}.qk-card h3{font-size:17px;margin:10px 0}.qk-tags{display:flex;flex-wrap:wrap;gap:7px;font-size:11px;color:#746780}.qk-severity{border-radius:6px;padding:2px 6px;background:#eee7ff;color:#6136a4}.qk-severity.N3{background:#fff1e8;color:#9c380b}.qk-section{border-top:1px solid #f0ebf6;padding:10px 0}.qk-section summary{font-weight:600;cursor:pointer}.qk-section li{margin-block:8px;line-height:1.5}.qk-section small{display:block;color:#756d82}.qk-option{display:block;min-width:0;background:#f6f2fc;border:1px solid #e0d2f4;padding:12px;border-radius:12px}.qk-approved{background:#f0faf6;color:#235c43;border-radius:9px;padding:12px}.qk-card a{overflow-wrap:anywhere}.qk-card ul{padding-inline-start:20px}@media(max-width:600px){.qk-filters{grid-template-columns:1fr}.qk-card{padding:11px}.qk-results{max-height:45vh}.qk-card h3{font-size:16px}}

.qs-dialog:has([data-kind^=knowledge-]) .btn.accent{background:linear-gradient(120deg,#7443bc,#9562d9);color:#fff;border-color:#7443bc}.qs-dialog:has([data-kind^=knowledge-]) input:focus,.qs-dialog:has([data-kind^=knowledge-]) textarea:focus,.qs-dialog:has([data-kind^=knowledge-]) select:focus{outline-color:#8752cb}

/* Inline capture uses bounded, in-flow suggestions on small touch screens. */
.qk-combobox{position:relative;min-width:0;width:100%}.qk-combobox>input{width:100%}.qk-combobox>small{display:block;font-size:12px;color:#6b617d;line-height:1.5}
.qk-options{max-height:216px;overflow-y:auto;overscroll-behavior:contain;border:1px solid #d8cbee;border-radius:12px;background:#fff;box-shadow:0 4px 16px #4c287714;margin:4px 0}
.qk-options[hidden]{display:none}.qk-suggestion{padding:11px 12px;min-height:44px;cursor:pointer;border-bottom:1px solid #f0eaf7;overflow-wrap:anywhere}.qk-suggestion:last-child{border:0}.qk-suggestion strong,.qk-suggestion small{display:block}.qk-suggestion small{font-size:12px;color:#766a86}.qk-suggestion[aria-selected=true],.qk-suggestion:hover{background:#f1eaff}
.qk-capture-panel{margin:12px 0;border:1px solid #e2d8f2;border-radius:14px;padding:12px;background:#fbf9ff;min-width:0}.qk-capture-panel summary{font-weight:600;line-height:1.5;cursor:pointer}.qk-capture-panel .qk-option{margin:10px 0}.qk-capture-panel .qk-option label{display:flex;gap:8px;align-items:flex-start}.qk-capture-panel input[type=radio]{width:auto;flex:none}.qk-capture-panel [data-capture-expert][hidden]{display:none}.qk-selected{padding:10px;background:#f3edfc;border-radius:10px;overflow-wrap:anywhere}.qk-approval-fields{padding:10px 0}

/* Fiche editor: one scroll area between a fixed header and an in-flow footer. */
body:has(.qk-editor-dialog){overflow:hidden}
.qs.qk-editor-dialog{display:flex;flex-direction:column;overflow:hidden;padding:0!important;width:min(760px,100%);height:min(900px,calc(var(--qs-viewport-height,100dvh) - 16px));max-height:calc(var(--qs-viewport-height,100dvh) - 16px);border-radius:20px;min-width:0}
.qk-editor-dialog>header{flex:none;padding:14px 18px;border-bottom:1px solid #e9e1f4;background:linear-gradient(115deg,#f4edff,#fff);gap:10px}
.qk-editor-dialog>header h2{margin:0;font-size:20px;line-height:1.3;overflow-wrap:anywhere}
.qk-editor-dialog>header button{flex:none;min-height:44px}
.qk-editor-dialog>form{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1;margin:0}
.qk-editor-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:16px 18px 24px;scroll-padding-block:14px 24px;-webkit-overflow-scrolling:touch}
.qk-editor-dialog .qs-submit{flex:none;position:static;margin:0;padding:12px 18px max(12px,env(safe-area-inset-bottom));box-shadow:0 -3px 14px #44206c08}
.qk-editor-dialog .qs-submit button{min-height:48px;font-size:16px}
.qk-editor-dialog input,.qk-editor-dialog select,.qk-editor-dialog textarea{font-size:16px;min-height:48px;line-height:1.45;scroll-margin-block:16px}
.qk-editor-dialog textarea{min-height:96px;resize:vertical}
.qk-editor-dialog input[type=checkbox]{min-height:22px;width:22px;flex:none}
.qk-editor-dialog input[readonly]{background:#f5f2fa;color:#6d627a;font-size:13px}
.qk-editor-intro{font-size:13px;color:#756981;margin:0 0 14px;line-height:1.5}
.qk-basic>label,.qk-editor-body details>label{margin:14px 0;font-size:14px;gap:7px}
.qk-editor-body details{padding:13px;margin:14px 0;min-width:0;background:#fff;border-color:#e4daef}
.qk-editor-body summary{min-height:36px;font-weight:650;display:list-item;overflow-wrap:anywhere;line-height:1.45}
.qk-editor-diagnostic,.qk-editor-advanced{background:#fcfaff!important}
.qk-editor-body .qs-check{align-items:flex-start;line-height:1.5}
.qk-editor-body small{display:block;overflow-wrap:anywhere;line-height:1.5}
.qk-proposal,.qk-duplicate{border-radius:12px;border:1px solid #decef2;background:#f5efff;padding:12px;margin-block:12px;overflow-wrap:anywhere}
.qk-proposal-option{border-block-start:1px solid #ddcfee;margin-top:12px;padding-top:6px}
.qk-method-link{display:flex;align-items:center;gap:8px;padding:8px;border-radius:10px;background:#f2edf9;margin:6px 0;font-size:13px;overflow-wrap:anywhere}
.qk-method-link span{flex:1;min-width:0}.qk-method-link button{flex:none}
.qk-edit-option>summary{color:#663797}.qk-repair{padding:12px;background:#f7f2ff;border-radius:10px;margin:10px 0}
.qk-editor-body .qs-field-error{color:#a2272e;font-size:13px}
@media(max-width:520px){.qs.qk-editor-dialog{border-radius:16px}.qk-editor-dialog>header{padding:12px}.qk-editor-dialog>header h2{font-size:18px}.qk-editor-body{padding:12px 12px 22px}.qk-editor-dialog .qs-submit{padding:10px 12px max(10px,env(safe-area-inset-bottom))}.qk-editor-body details{padding:10px}.qk-editor-body .qk-card{padding:10px}.qk-editor-body .qk-options{max-height:168px}}

/* Solution layout: text never occupies a checkbox-sized grid track. */
.qk-editor-dialog,.qk-editor-dialog :is(header,form,.qk-editor-body,.qs-submit){min-width:0}
.qk-editor-dialog :is(h2,summary,small,p,label,.qk-card,.qk-proposal,.qk-method-link),.qk-option{overflow-wrap:break-word;word-break:normal;hyphens:none}
.qk-editor-dialog :is(details,summary,label,.qk-card,.qk-proposal),.qk-option>*{min-width:0;max-width:100%}
.qk-solutions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
.qk-option .qk-option-choice{display:flex;flex-direction:row;align-items:flex-start;gap:10px;min-height:44px;margin:0;padding:5px 0;cursor:pointer;font-size:15px;line-height:1.5}
.qk-option-choice>input{width:22px;min-height:22px;height:22px;flex:0 0 22px;margin:1px 0 0;padding:0;accent-color:#7443bc}
.qk-option-choice>strong{flex:1;min-width:0;white-space:normal}
.qk-option .qk-option-description{font-size:14px;line-height:1.55;margin:4px 0 8px}
.qk-option .qk-option-state{display:block;font-size:12px;margin:6px 0 10px;color:#756981}
.qk-option-selected{display:none}
.qk-option:has(>.qk-option-choice>input:checked){border-color:#9664c9;background:#f3ebff}
.qk-option:has(>.qk-option-choice>input:checked)>.qk-option-state>.qk-option-selected{display:inline;color:#65369c}
.qk-option:has(>.qk-option-choice>input:checked)>.qk-option-state>.qk-option-unselected{display:none}
.qk-editor-body .qk-option .qk-solution-detail{border:0;border-top:1px solid #e3d7ef;border-radius:0;background:transparent;margin:0;padding:0}
.qk-editor-body .qk-solution-detail>summary{padding:10px 0;min-height:44px;font-size:14px}
.qk-solution-list{font-size:14px;margin:8px 0;line-height:1.55}
.qk-solution-list ul{margin:6px 0 10px;padding-inline-start:20px}.qk-solution-list li{margin:6px 0}
.qk-edit-option>summary strong{font-size:15px}.qk-edit-option>summary span{display:block;font-size:14px;font-weight:400;margin-top:6px}.qk-edit-option>summary small{font-size:12px;font-weight:400;margin-top:6px}
.qk-editor-body summary{min-height:44px}
.qk-editor-body>.qs-error,.qk-editor-body>label{margin:12px 0}
.qk-editor-dialog .qs-submit{gap:8px}
.qk-editor-dialog .qs-submit .btn.accent{background:linear-gradient(120deg,#7443bc,#9562d9);color:#fff;border-color:#7443bc}
.qk-editor-dialog .qs-submit button{min-width:0;white-space:normal;overflow-wrap:break-word;word-break:normal;font-size:14px;line-height:1.35;padding:10px}
@media(max-width:520px){.qk-editor-body .qk-capture-panel,.qk-editor-body .qk-editor-diagnostic,.qk-editor-body .qk-proposal{padding:8px}.qk-editor-body .qk-option{padding:10px}.qk-editor-dialog .qs-submit{padding:8px 10px max(8px,env(safe-area-inset-bottom))}.qk-editor-body .qk-card{padding:8px}}

/* Bounded field catalogue; keeps the existing single scroll body on Android. */
.qa-quick-buttons,.qa-buttons{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0;min-width:0}
.qa-chip{border:1px solid #ddd1f5;border-radius:16px;background:#f5f0ff;color:#57318b;padding:7px 10px;font:inherit;font-size:12px;max-width:100%;overflow-wrap:anywhere;text-align:start;cursor:pointer}
.qa-add{background:none;border:0;color:#6d3ac0;font:inherit;font-size:12px;text-align:start;padding:8px 0;cursor:pointer}
.qa-selection{min-width:0;border:1px solid #e2d9f4;border-radius:12px;background:#faf8ff;padding:12px;margin:8px 0;overflow-wrap:anywhere}
.qa-selection>small,.qa-saved-action{display:block;margin-top:6px;color:#655479;font-size:12px}
.qa-selection p{margin:8px 0;line-height:1.5}.qa-selection .btn{white-space:normal;max-width:100%}

/* Nature and location pickers: inline with the form, above the fixed save footer. */
:is(.qa-picker,.qp-picker){min-width:0;margin:12px 0;color:#453357}:is(.qa-picker,.qp-picker)>label{display:grid;gap:7px}:is(.qa-picker-head,.qp-picker-head){display:flex;gap:5px;min-width:0}:is(.qa-picker-head,.qp-picker-head)>input{min-width:0;flex:1;width:0}:is(.qa-toggle,.qp-toggle){flex:0 0 44px;border:1px solid #d8cbee;border-radius:10px;background:#f6f1fc;color:#6736a5;font-size:22px;cursor:pointer}
:is(.qa-dropdown,.qp-dropdown){border:1px solid #d8cbee;border-radius:12px;margin-top:6px;padding:8px;background:#fff;min-width:0;box-shadow:0 4px 16px #4c287714}:is(.qa-dropdown,.qp-dropdown)>[role=status]{display:block;font-size:12px;margin:2px 2px 7px;color:#756981}
:is(.qa-options,.qp-options){position:relative;max-height:clamp(96px,calc(var(--qs-viewport-height,100dvh) * .32),300px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;touch-action:pan-y;scrollbar-gutter:stable;min-width:0}
:is(.qa-options,.qp-options)>.qk-suggestion{display:block;width:100%;border:0;border-bottom:1px solid #eee7f7;border-radius:7px;background:#fff;color:inherit;text-align:start;font:inherit;font-size:14px;line-height:1.45;min-height:54px;white-space:normal}:is(.qa-options,.qp-options)>.qk-suggestion:hover,:is(.qa-options,.qp-options)>.qk-suggestion[aria-selected=true]{background:#f2eaff}:is(.qa-options,.qp-options)>.qk-suggestion:focus-visible{outline:2px solid #8752cb;outline-offset:-2px}
:is(.qa-more,.qp-more){width:100%;min-height:44px;border:0;background:#f6f1fc;color:#65369c;border-radius:8px;font:inherit;cursor:pointer}:is(.qa-picker-actions,.qp-picker-actions){display:flex;flex-direction:column;align-items:stretch}:is(.qa-picker-actions,.qp-picker-actions)>.qa-add{min-height:44px;padding:9px 3px;font-size:14px;white-space:normal;overflow-wrap:anywhere}:is(.qa-picker-actions,.qp-picker-actions)>small,:is(.qa-add-editor,.qp-add-editor)>small,:is(.qa-request-sent,.qp-request-sent){font-size:12px;color:#756981;line-height:1.5;overflow-wrap:anywhere}
:is(.qa-add-editor,.qp-add-editor){border-top:1px solid #e5daf3;padding-top:10px;min-width:0;overflow-wrap:anywhere}:is(.qa-add-editor,.qp-add-editor)>label{display:grid;gap:6px;margin:10px 0}:is(.qa-add-editor,.qp-add-editor) input,:is(.qa-add-editor,.qp-add-editor) select{min-width:0;width:100%;font-size:16px}:is(.qa-add-editor,.qp-add-editor) .btn{min-height:44px;max-width:100%;white-space:normal;overflow-wrap:anywhere}:is(.qa-add-editor,.qp-add-editor) [role=alert]{color:#9e2739}

.qp-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:2px 0 8px}.qp-filters>label{display:grid;gap:4px;font-size:12px;min-width:0}.qp-filters select{min-width:0;max-width:100%;font-size:14px;padding:8px;min-height:42px}.qp-options{max-height:clamp(80px,calc(var(--qs-viewport-height,100dvh) * .24),240px)}
