.inv-page{max-width:1470px;margin:0 auto}.inv-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:13px 16px;background:#ecf5ee;border:1px solid #d6e5d8;border-radius:13px;margin:14px 0}.inv-bar label{display:flex;align-items:center;gap:8px;flex:1;min-width:240px;color:#36583c;font-size:12px;font-weight:800}.inv-bar select{min-width:210px;max-width:470px;flex:1;border:1px solid #c5d6c7;padding:10px;border-radius:9px;background:#fff;color:#23472f}.inv-bar span,.inv-bar a{font-size:12px;color:#385942}.inv-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.inv-kpis>div{border-radius:12px;border:1px solid #dce8dc;background:#fff;padding:14px;display:flex;flex-direction:column;gap:5px}.inv-kpis small{font-size:12px;color:#657e6b}.inv-kpis b{font-size:27px;color:#254d37}.inv-kpis span{font-size:11px;color:#667e70}.inv-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.inv-tabs .button{min-height:40px}.inv-work{display:grid;grid-template-columns:minmax(300px,450px) minmax(0,1fr);gap:15px}.inv-panel{padding:19px;min-width:0}.inv-panel .panel-head{margin-bottom:16px}.inv-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:16px}.inv-fields label,.inv-panel form>label{display:grid;gap:7px;font-size:12px;font-weight:750;color:#365a43}.inv-fields input,.inv-panel form>label input:not([type="checkbox"]),.inv-panel textarea,.inv-panel select,.inv-inline input{padding:12px 11px;border-radius:9px;border:1px solid #ccd9ce;background:#fff;width:100%;min-width:0;font-size:14px;color:#24402e}.inv-fields input:focus,.inv-inline input:focus{outline:2px solid #82a88e}.inv-scan-actions{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0}.inv-scan-actions .button{min-height:42px}.inv-inline{display:flex;gap:8px;margin:8px 0}.inv-inline input{flex:1}.inv-inline .button{min-width:125px}.inv-help{font-size:11px;color:#768778;line-height:1.55;margin-top:13px}.inv-table-scroll{overflow:auto;max-height:590px}.inv-table{width:100%;border-collapse:collapse;font-size:12px;min-width:620px}.inv-table th{position:sticky;top:0;background:#f2f7f1;padding:12px;text-align:left;white-space:nowrap;color:#486b53;z-index:1}.inv-table td{border-bottom:1px solid #e5ece4;padding:11px;vertical-align:middle}.inv-table td strong{display:block;max-width:320px}.inv-table td small{display:block;font-size:10px;color:#89978a;margin-top:3px}.inv-table .button{font-size:11px;padding:7px}.inv-pill{border-radius:20px;padding:5px 9px;background:#eff3f0;color:#698072;white-space:nowrap;font-size:10px;font-weight:750}.inv-pill.ok{background:#e3f4e4;color:#3c8450}.inv-pill.warn{background:#fff0e1;color:#ad5b30}.inv-soft{padding:14px;border:1px dashed #cedbce;background:#f8fbf7;border-radius:10px;color:#54705c;font-size:12px;line-height:1.5;margin-top:12px}.inv-edit{margin-top:17px;scroll-margin:18px}.inv-review-metrics{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:15px}.inv-review-metrics span{border-radius:9px;background:#edf3ec;padding:9px 12px;font-size:12px;color:#3f614b}.inv-review-metrics b{font-size:17px}.inv-milestones{display:grid;gap:12px}.inv-milestone{display:grid;grid-template-columns:22px 103px 1fr;gap:11px;align-items:center;padding:12px;border:1px solid #e0e8df;border-radius:11px;cursor:pointer}.inv-milestone input{width:20px;height:20px}.inv-milestone-date{font-size:11px;color:#67836b;font-weight:800}.inv-milestone strong{display:block;font-size:13px}.inv-milestone small{display:block;font-size:11px;color:#819082;margin-top:4px}.inv-check{display:flex!important;gap:8px;align-items:flex-start;line-height:1.5;margin:13px 0}.inv-check input{width:17px;height:17px;flex:none}.inv-preview{border:1px solid #b6d6ba;border-radius:10px;background:#f4fbf4;padding:14px;margin:16px 0;font-size:12px}.inv-notice{border-left:3px solid #70a477;padding:11px;background:#edf7ec;color:#426148;border-radius:7px;margin:10px 0;font-size:12px}.inv-error{border-left:3px solid #b75d40;padding:11px;background:#fff3ec;color:#935031;border-radius:7px;margin:10px 0;font-size:12px}
@media(max-width:1060px){.inv-work{grid-template-columns:1fr}.inv-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.inv-fields{grid-template-columns:1fr}.inv-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.inv-kpis>div{padding:10px}.inv-kpis b{font-size:22px}.inv-panel{padding:13px}.inv-bar label{flex-direction:column;align-items:flex-start;width:100%}.inv-bar select{max-width:100%;width:100%}.inv-tabs{display:grid;grid-template-columns:1fr 1fr}.inv-tabs button{padding:11px 5px;font-size:11px}.inv-milestone{grid-template-columns:20px 75px 1fr;gap:7px;padding:9px}.inv-inline{flex-wrap:wrap}.inv-inline .button{width:100%}.inv-page .page-actions{display:flex;flex-wrap:wrap;width:100%}.inv-page .page-actions>.button{flex:1}}

/* V7 scan -> quantity workflow, optimized for field work. */
.inv-quantity-card{margin-top:18px;padding:17px;background:#f4faf3;border:2px solid #8ab394;border-radius:15px;box-shadow:0 6px 20px #18472e12;scroll-margin-top:20px}
.inv-quantity-head{display:flex;align-items:center;gap:12px;color:#254d37}
.inv-quantity-head strong,.inv-quantity-head small{display:block}
.inv-quantity-head small{font-size:12px;margin-top:3px;color:#58765e}
.inv-step-number{display:grid;place-items:center;background:#2e6b45;color:white;border-radius:50%;height:32px;width:32px;font-weight:800;flex:0 0 auto}
.inv-detected-name{font-size:16px;font-weight:800;color:#20492d;margin:12px 0}
.inv-quantity-card form>label{margin:11px 0 10px}
.inv-quantity-card select{width:100%}
.inv-quantity-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:12px 0}
.inv-quantity-fields label{display:grid;gap:6px;font-size:12px;color:#365a43;font-weight:750}
.inv-quantity-fields input,.inv-quantity-fields select{border:1px solid #c7d8c9;border-radius:9px;background:#fff;padding:11px;font-size:15px;width:100%;min-width:0}
#invCountGood{font-size:26px;font-weight:850;min-height:64px;border:2px solid #6c9a76;text-align:center}
.inv-quantity-options{margin:13px 0;border-top:1px solid #d1e2d1;padding-top:11px}
.inv-quantity-options summary{cursor:pointer;color:#42784d;font-size:12px;font-weight:800;padding:3px 0}
.inv-quantity-card .inv-quantity-actions .button.primary{flex:2;min-height:49px}
.inv-alert-text{color:#995129}
@media(max-width:600px){.inv-quantity-card{padding:13px}.inv-quantity-fields{grid-template-columns:1fr}.inv-quantity-head strong{font-size:14px}.inv-quantity-actions{display:grid;grid-template-columns:1fr}.inv-quantity-actions .button{width:100%;min-height:48px}.inv-quantity-card .inv-quantity-actions .button.primary{min-height:54px}}

/* Inventaire V7 : sélection tactile de zones. Regroupements par préfixe de code uniquement. */
.inv-zone-explorer{border:1px solid #bdcfbd;border-radius:14px;margin:12px 0 16px;overflow:hidden;background:#f8fcf7}
.inv-zone-current{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;background:#eaf4e9}
.inv-zone-current>div{display:grid;gap:3px;min-width:0}
.inv-zone-eyebrow{font-size:10px;font-weight:850;letter-spacing:.09em;color:#4b7655}
.inv-zone-current strong{font-size:24px;letter-spacing:-.025em;color:#244e33;overflow-wrap:anywhere}
.inv-zone-current small{color:#5a7862;font-size:11px}
.inv-zone-current .button{flex:0 0 auto;min-height:44px}
.inv-zone-recent{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 16px;border-top:1px solid #d1e1d0}
.inv-zone-recent>span{font-weight:800;font-size:11px;color:#456a4b;margin-right:3px}
.inv-zone-recent .button{min-width:57px;min-height:42px;font-size:12px}
.inv-zone-picker{padding:14px 16px 17px;border-top:1px solid #d2e0d0}
.inv-zone-hint{font-size:11px;color:#557462;line-height:1.6;margin:3px 0 13px}
.inv-zone-search-label{display:grid;gap:6px;margin:10px 0 13px;font-size:12px;font-weight:800;color:#315740}
.inv-zone-search-label input{width:100%;min-height:48px;border:1px solid #aebfad;border-radius:10px;background:#fff;padding:12px;font-size:16px}
.inv-zone-families{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 13px}
.inv-zone-family{appearance:none;display:flex;align-items:center;justify-content:center;gap:7px;min-width:63px;min-height:44px;border:1px solid #c6d7c4;border-radius:12px;background:white;padding:9px 11px;color:#305941;font-weight:850;cursor:pointer}
.inv-zone-family small{display:inline-flex;background:#e4ede4;border-radius:20px;padding:2px 6px;font-size:10px;color:#657c67}
.inv-zone-family.is-active{background:#2e7049;color:white;border-color:#2e7049}
.inv-zone-family.is-active small{background:#457f5a;color:white}
.inv-zone-result{font-size:12px;color:#5e765f;margin:9px 0}
.inv-zone-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:8px;margin-bottom:12px}
.inv-zone-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:65px;border:1px solid #c0d4bf;border-radius:12px;background:white;font-size:17px;font-weight:850;color:#284e35;letter-spacing:.015em;cursor:pointer;gap:4px;padding:8px}
.inv-zone-tile[hidden]{display:none!important}
.inv-zone-tile small{font-weight:600;letter-spacing:0;color:#936b2b;font-size:9px;text-align:center}
.inv-zone-tile.is-active{border:2px solid #2a7444;background:#e0f3df}
.inv-zone-tile:focus-visible,.inv-zone-family:focus-visible{outline:3px solid #1b6247;outline-offset:2px}
@media(max-width:600px){.inv-zone-current{align-items:flex-start;flex-direction:column;padding:13px}.inv-zone-current .button{width:100%}.inv-zone-current strong{font-size:27px}.inv-zone-picker{padding:12px}.inv-zone-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.inv-zone-tile{min-height:66px;font-size:16px}.inv-zone-family{flex:1 1 auto;min-width:68px}}

/* V7.1: clickable sector plan; physical geometry populated from the validated nursery plan. */
.inv-map-panel{max-width:1300px;margin:0 auto 20px;padding:20px}
.inv-map-page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:19px}
.inv-map-page-head h2{font-size:25px;color:#264936;margin:3px 0 6px}
.inv-map-page-head p{font-size:13px;color:#627b69;max-width:640px;line-height:1.5}
.inv-map-kicker{font-size:11px;font-weight:850;letter-spacing:.08em;color:#598767}
.inv-map-placeholder{display:flex;flex-direction:column;gap:4px;padding:16px 18px;background:#f5f7ef;border:1px solid #dbe6d8;border-radius:13px;margin:10px 0 20px}
.inv-map-placeholder strong{font-size:14px;color:#34533b}
.inv-map-placeholder span{font-size:12px;line-height:1.55;color:#688070}
.inv-map-section-title{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:space-between;margin:16px 0 10px}
.inv-map-section-title strong{color:#315b3c;font-size:15px}
.inv-map-section-title span{color:#74877b;font-size:11px}
.inv-map-sectors{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:12px 0 22px}
.inv-map-sector{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;min-height:98px;border:1px solid #d2ded0;background:#fff;border-radius:13px;padding:12px;text-align:left;color:#315c41;cursor:pointer}
.inv-map-sector-symbol{font-size:10px;font-weight:750;color:#689273;letter-spacing:.08em}
.inv-map-sector strong{font-size:21px;font-weight:850;line-height:1}
.inv-map-sector span:last-child{font-size:10px;color:#6b8573}
.inv-map-sector.is-selected{border:2px solid #317b4b;background:#e8f5e6;box-shadow:0 4px 11px #225c3012}
.inv-map-zones{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:9px;margin:10px 0 15px}
.inv-map-zone{border:1px solid #cbdccc;background:#fff;border-radius:12px;padding:12px 9px;min-height:80px;cursor:pointer;display:grid;gap:5px;justify-items:center;align-content:center;color:#315743}
.inv-map-zone[hidden]{display:none!important}
.inv-map-zone strong{font-size:19px}
.inv-map-zone small{font-size:10px;color:#798d7c}
.inv-map-warning{font-size:10px;color:#a87436}
.inv-map-zone:hover,.inv-map-sector:hover{box-shadow:0 3px 13px #214d3114;border-color:#7bb087}
.inv-map-zone.is-selected{background:#e9f5e7;border:2px solid #35794b}
.inv-map-sector:focus-visible,.inv-map-zone:focus-visible,.inv-plan-hotspot:focus-visible{outline:3px solid #1d6842;outline-offset:2px}
.inv-map-back{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #c6dec7;background:#ecf7ea;border-radius:12px;padding:12px 15px;margin:0 0 16px}
.inv-map-back>div{display:flex;flex-direction:column;gap:2px}
.inv-map-back strong{font-size:25px;color:#265639}
.inv-map-back span{font-size:11px;font-weight:800;color:#648471}
.inv-map-back small{font-size:11px;color:#687d6d}
.inv-map-back .button{min-height:46px}
.inv-map-real{margin:12px 0 20px;border:1px solid #d6e2d5;border-radius:13px;overflow:hidden;background:white}
.inv-map-real-head{padding:12px 16px;display:flex;flex-direction:column;gap:3px;background:#eef6ed}
.inv-map-real-head strong{font-size:14px;color:#315c3b}
.inv-map-real-head small{font-size:11px;color:#6a8570}
.inv-map-scroll{overflow:auto;max-height:640px;background:#edf2ed}
.inv-map-scroll svg{display:block;max-width:100%;margin:auto;min-width:530px;height:auto}
.inv-plan-hotspot{cursor:pointer;outline:none}
.inv-plan-hotspot polygon{stroke:#225e42;stroke-width:2.5;fill:#67a778;fill-opacity:.2}
.inv-plan-hotspot:hover polygon,.inv-plan-hotspot:focus polygon{fill-opacity:.45;stroke-width:4}
.inv-plan-hotspot text{font-size:18px;fill:#163e2b;paint-order:stroke;stroke:white;stroke-width:4;stroke-linejoin:round;font-weight:850;text-anchor:middle;dominant-baseline:middle;pointer-events:none}
.inv-map-hint{padding:10px 14px;font-size:11px;color:#54755f}
@media(max-width:960px){.inv-map-sectors{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.inv-map-panel{padding:13px}.inv-map-page-head{flex-direction:column;align-items:stretch}.inv-map-page-head .button{width:100%}.inv-map-sectors{grid-template-columns:repeat(2,minmax(0,1fr))}.inv-map-zones{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.inv-map-zone{min-height:74px}.inv-map-back{flex-direction:column;align-items:stretch}.inv-map-back .button{width:100%}}
