.of-host{min-width:0;color:var(--ink,#0a0a0a);background:var(--base,#fff)}
.of-page{min-width:0;width:100%;font:14px/1.5 system-ui,Inter,sans-serif;color:var(--ink,#0a0a0a);background:var(--base,#fff);padding:0 0 24px;overflow-wrap:anywhere}
.of-page *,.of-confirm *{box-sizing:border-box}
.of-page h1,.of-page h2,.of-page h3,.of-confirm h2,.of-confirm h3{font-weight:600;margin:0 0 12px;line-height:1.35}
.of-page h1{font-size:24px}.of-page h2,.of-confirm h2{font-size:18px}.of-page h3,.of-confirm h3{font-size:14px}
.of-review{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 24px;border-bottom:1px solid var(--line,#e5e5e5);font-size:12px;color:var(--muted,#525252)}
.of-review>span{margin-right:auto}.of-heading{padding:24px 24px 12px}.of-heading>.of-link{margin-bottom:12px}
.of-heading h1{max-width:1100px}.of-heading h1:focus{outline:none}
.of-link{display:inline-flex;align-items:center;min-height:32px;color:inherit;text-decoration:underline;text-underline-offset:3px;max-width:100%;overflow-wrap:anywhere}
.of-btn{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:4px 12px;border:1px solid var(--line,#e5e5e5);border-radius:9.8px;background:var(--base,#fff);color:var(--ink,#0a0a0a);font-family:inherit;font-size:13px;font-weight:500;line-height:1.4;text-decoration:none;cursor:pointer;white-space:normal;max-width:100%;text-align:center}
.of-btn.of-primary{background:var(--ink,#0a0a0a);color:var(--base,#fff);border-color:var(--ink,#0a0a0a)}
.of-btn:disabled{cursor:default;color:var(--muted,#525252);background:var(--surface,#fafafa)}
.of-page :is(a,button,input,select,textarea,summary):focus-visible,.of-confirm :is(button,input,textarea):focus-visible{outline:2px solid var(--ink,#0a0a0a);outline-offset:3px}
.of-source,.of-count,.of-error{margin:0;padding:8px 24px;font-size:12px;color:var(--muted,#525252)}
.of-error,.of-form-error,.of-dialog-error{color:var(--ink,#0a0a0a);font-weight:500;white-space:pre-wrap}
.of-error:not(:empty),.of-form-error:not(:empty),.of-dialog-error:not(:empty){border-left:4px solid currentColor;padding:12px 16px;background:var(--surface,#fafafa)}
.of-error:empty,.of-form-error:empty,.of-dialog-error:empty{display:none}
.of-scope{border-top:1px solid var(--line,#e5e5e5);margin-top:24px;padding-top:16px}
.of-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 24px}
.of-empty{padding:32px 24px}.of-empty p{color:var(--muted,#525252);max-width:800px}
.of-filters{display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:16px 24px;border-bottom:1px solid var(--line,#e5e5e5)}
.of-filters .of-field:first-child{flex:2 1 240px}.of-filters .of-field{flex:1 1 160px;min-width:0}.of-filters .of-btn{min-height:40px}
.of-field{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:500;min-width:0}
.of-field input,.of-field select,.of-field textarea{width:100%;min-width:0;min-height:40px;padding:8px 12px;color:var(--ink,#0a0a0a);background:var(--base,#fff);border:1px solid var(--line,#e5e5e5);border-radius:8px;font:400 14px/1.5 system-ui,Inter,sans-serif}
.of-field textarea{resize:vertical;min-height:112px}.of-field textarea[name=spec_md]{min-height:320px}
.of-table-wrap{width:100%;min-width:0;overflow-x:auto}.of-table{width:100%;border-collapse:collapse;table-layout:auto;font-size:14px}
.of-table th,.of-table td{text-align:left;padding:12px 24px;vertical-align:top;border-bottom:1px solid var(--line,#e5e5e5)}
.of-table th{font-size:12px;font-weight:500;color:var(--muted,#525252);background:var(--surface,#fafafa)}
.of-table small,.of-record small,blockquote small{display:block;font-size:12px;color:var(--muted,#525252);margin-top:4px}
.of-table th.of-number,.of-table td.of-number{text-align:right;font-variant-numeric:tabular-nums}
.of-badge{display:inline-flex;align-items:center;border:1px solid var(--line,#e5e5e5);padding:4px 8px;border-radius:8px;font-size:12px;max-width:100%;color:var(--ink,#0a0a0a)}
.of-table .of-badge,.of-table td[data-label="Priorité"]{white-space:nowrap}
@media(min-width:768px) and (max-width:1100px){.of-table th,.of-table td{padding-left:16px;padding-right:16px}}
.of-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0;border-top:1px solid var(--line,#e5e5e5);border-bottom:1px solid var(--line,#e5e5e5)}
.of-metrics>div{padding:16px 24px;min-width:0;border-right:1px solid var(--line,#e5e5e5)}.of-metrics>div:last-child{border-right:0}
.of-metrics dt{font-size:12px;color:var(--muted,#525252)}.of-metrics dd{font-size:24px;font-weight:600;line-height:1.3;margin:8px 0 0;font-variant-numeric:tabular-nums}
.of-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin:0;padding:16px 24px}
.of-dl>div{min-width:0}.of-dl dt{font-size:12px;color:var(--muted,#525252);margin-bottom:4px}.of-dl dd{margin:0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.of-section{padding:24px;border-top:1px solid var(--line,#e5e5e5);min-width:0}.of-section>.of-dl{padding:0}.of-section>.of-source{padding:12px 0 0}
.of-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.of-two>.of-section:first-child{border-right:1px solid var(--line,#e5e5e5)}
.of-prose{white-space:pre-wrap;overflow-wrap:anywhere;max-width:1040px;font:400 14px/1.65 system-ui,Inter,sans-serif;margin:0}
.of-details{border-top:1px solid var(--line,#e5e5e5);padding:0 24px}.of-details>summary{min-height:40px;padding:8px 0;font-size:13px;font-weight:500;cursor:pointer}.of-details>.of-dl{padding:12px 0 24px}
.of-record{padding:16px 24px;border-bottom:1px solid var(--line,#e5e5e5)}.of-section>.of-record,.of-details>.of-record{padding-left:0;padding-right:0}.of-record>p{margin:4px 0 12px}.of-record>.of-details{padding:0;border:0}
.of-page blockquote{margin:16px 0;padding:8px 16px;border-left:1px solid var(--line,#e5e5e5)}
.of-form{padding:16px 24px;max-width:1240px}.of-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.of-wide{grid-column:1/-1}.of-form>.of-source,.of-form>.of-actions{padding:16px 0 0}
.of-confirm{width:min(600px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line,#e5e5e5);border-radius:12px;color:var(--ink,#0a0a0a);background:var(--base,#fff);overflow:auto;overscroll-behavior:contain;font:14px/1.5 system-ui,Inter,sans-serif}
.of-confirm::backdrop{background:rgba(0,0,0,.35)}.of-confirm-body{padding:24px;overflow-wrap:anywhere}.of-confirm .of-dl{padding:12px 0}.of-confirm .of-actions{padding:16px 0 0}.of-confirm .of-prose{max-height:40dvh;overflow:auto}
@media(max-width:767px){
 .of-heading{padding:16px}.of-page h1{font-size:20px}.of-review{padding:12px 16px}.of-review>span{flex-basis:100%}
 .of-actions,.of-filters,.of-dl,.of-section,.of-record,.of-empty{padding:16px}.of-source,.of-count{padding:8px 16px}.of-details{padding:0 16px}
 .of-btn,.of-link,.of-details>summary{min-height:44px}.of-btn{font-family:inherit;font-size:13px;padding:8px 12px}
 .of-field input,.of-field select,.of-field textarea{font-size:16px;min-height:44px}.of-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.of-filters .of-field:first-child{grid-column:1/-1}.of-filters .of-btn{min-height:44px}
 .of-form{padding:16px}.of-form-fields{grid-template-columns:minmax(0,1fr);gap:24px}.of-wide{grid-column:auto}
 .of-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.of-metrics>div{padding:16px;border-bottom:1px solid var(--line,#e5e5e5)}.of-metrics>div:nth-child(2n){border-right:0}.of-metrics dd{font-size:24px}
 .of-dl,.of-two{grid-template-columns:minmax(0,1fr)}.of-two>.of-section:first-child{border-right:0}
 .of-table-wrap{overflow:visible}.of-table,.of-table tbody,.of-table tr,.of-table td{display:block;width:100%}.of-table thead{display:none}.of-table tr{padding:12px 16px;border-bottom:1px solid var(--line,#e5e5e5)}.of-table td{padding:4px 0;border:0}.of-table td:before{content:attr(data-label);display:block;font-size:12px;color:var(--muted,#525252)}.of-table td:first-child:before{display:none}.of-table td.of-number{text-align:left}
 .of-confirm{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.of-confirm-body{padding:16px}.of-confirm .of-actions{flex-direction:column;align-items:stretch}
}
@media(prefers-reduced-motion:reduce){.of-page *,.of-confirm *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Final S05: compact alternate board, identical source rows. */
/* Same board/card primitives as admin Feedback; operator data and actions stay scoped. */
.of-board{--fbs-surface:#fafafa;--fbs-card:#fff;--fbs-ink:#0a0a0a;--fbs-sub:#525252;--fbs-line:#e5e5e5;--tb-soft:var(--fbs-surface);--tb-accent:#315fca;color:var(--fbs-ink);max-width:100%}
.of-board .fbs-board{min-height:360px}
.of-board .fbs-card-top .fbs-pick{margin-left:auto}
.of-board .fbs-column>header svg{height:14px;flex-shrink:0}
.of-board .fbs-card-link h2{font-weight:600}
.of-board .fbs-card-foot .fbs-priority{flex-shrink:0}
:is([data-theme=dark],body.dark) .of-board{--fbs-surface:#191c21;--fbs-card:#121418;--fbs-ink:#eff1f4;--fbs-sub:#afb5c0;--fbs-line:#2d3139}
.of-table input[type=checkbox]{width:18px;height:18px}.of-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:768px){.of-board .tb-column{flex:0 0 calc(100% - 36px);min-width:calc(100% - 36px)}.of-board .tb-column.is-collapsed{flex-basis:52px;min-width:52px}.of-board .fbs-pick{padding:10px}.of-board .fbs-pick input{width:20px;height:20px}.of-table input[type=checkbox]{width:24px;height:24px}}

/* Admin Feedback drawer geometry, with explicit organisation for operators. */
.of-feedback-editor{position:fixed;inset:0 0 0 auto;margin:0;height:100dvh;max-height:100dvh;border:0;border-left:1px solid var(--line,#e5e5e5);border-radius:0;padding:0;background:var(--base,#fff);font:14px/1.5 system-ui,Inter,sans-serif;overflow:hidden}
.of-feedback-editor[open]{display:flex;flex-direction:column}
.of-feedback-editor::backdrop{background:#0005}
.of-feedback-editor .drawer-head{display:flex;align-items:center;gap:16px;flex-shrink:0}
.of-feedback-editor .drawer-head h2{flex:1;margin:0}
.of-feedback-editor .drawer-body{overflow-y:auto;min-height:0;flex:1}
.of-feedback-editor .of-form-fields{gap:20px 16px}
.of-feedback-editor .of-form-fields>label:first-child{grid-column:1/-1}
.of-feedback-editor .of-form>.of-actions{position:sticky;bottom:-24px;background:var(--base,#fff);padding-bottom:16px;border-top:1px solid var(--line,#e5e5e5);margin-top:20px}
.of-feedback-editor .of-form>.of-source{padding:16px 0;color:var(--muted,#525252);font-size:12px}
.of-feedback-editor .of-form-error:empty{display:none}
.of-feedback-editor .of-form-error{color:#b03d4a;white-space:pre-wrap}

.of-feedback-editor,.of-feedback-editor *{box-sizing:border-box}
.of-feedback-editor .drawer-head .icon-btn{flex-shrink:0}
