:root{background-color:#f5f7fa;color:#1f2933;color-scheme:light;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}*,:after,:before{box-sizing:border-box}#root,body,html{margin:0;min-height:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.btn{align-items:center;border:none;border-radius:.8rem;box-shadow:0 12px 24px #0f172a14;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.35rem;justify-content:center;padding:.65rem 1.35rem;transition:background-color .2s ease,color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}.btn:hover:not(:disabled){box-shadow:0 14px 30px #0f172a1f;transform:translateY(-1px)}.btn:active:not(:disabled){box-shadow:0 8px 18px #0f172a1f;transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1e40af,#1d4ed8)}.btn-primary:disabled{background-color:#94a3b8;box-shadow:none;cursor:not-allowed}.btn-secondary{background-color:#e2e8f0;color:#1f2933}.btn-secondary:hover:not(:disabled){background-color:#cbd5f5}.btn-outline{background-color:initial;border:2px solid #94a3b8;color:#0f172a}.btn-outline:hover:not(:disabled){border-color:#2563eb;color:#2563eb}.btn-link{background:none;box-shadow:none;color:#2563eb;padding:.15rem 0}.btn-link:hover{box-shadow:none;color:#1d4ed8;transform:none}.btn-link.text-danger{color:#dc2626}.btn-action{background-color:#f8fafc;border:2px solid #e2e8f0;border-radius:.7rem;color:#0f172a;font-size:.9rem;font-weight:600;gap:.35rem;padding:.45rem .95rem;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.btn-action:hover{background-color:#e0ecff;border-color:#bfdbfe}.btn-action:active{background-color:#cbd5f5}.btn-action.text-danger{background-color:#fef2f2;border-color:#fecaca;color:#b91c1c}.btn-action.text-danger:hover{background-color:#fee2e2}.app-shell{display:flex;flex-direction:column;min-height:100vh}.app-header{background:#1d4ed8;display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.5rem}.app-header,.brand{align-items:center;color:#fff}.brand{font-size:1.1rem;font-weight:600;text-decoration:none}.brand,.logo{display:inline-flex;gap:.65rem}.logo{align-items:center;color:inherit}.logo img{border-radius:.6rem;display:block;height:auto;max-width:100%;width:auto}.logo-sm img{height:48px}.logo-md img{height:72px}.logo-lg img{height:120px}.logo-text{color:inherit;font-weight:600}.header-actions{align-items:center;display:flex;gap:1rem}.user-info{font-size:.9rem}.app-nav{background:#e2e8f0;display:flex;flex-wrap:wrap;gap:1rem;padding:.5rem 1.5rem}.nav-link{border-radius:999px;color:#1f2933;padding:.4rem .8rem}.nav-link.active{background:#2563eb;color:#fff}.app-content{flex:1 1;padding:1.5rem}.page{display:flex;flex-direction:column;gap:1.5rem}.page h1{color:#0f172a;font-size:clamp(1.65rem,1.2vw + 1.25rem,2.5rem);font-weight:700;margin:0;padding-left:1.25rem;position:relative}.page h1:before{background:linear-gradient(180deg,#2563eb,#9333ea);border-radius:999px;bottom:.2rem;content:"";left:0;position:absolute;top:.2rem;width:6px}.page h2{color:#0f172a;font-size:1.35rem;font-weight:600;margin:.75rem 0 .35rem;padding-left:1rem;position:relative}.page h2:before{background:linear-gradient(180deg,#38bdf8,#2563eb);border-radius:999px;bottom:.35rem;content:"";left:0;position:absolute;top:.35rem;width:4px}.page-header{align-items:center;display:flex;gap:1rem;justify-content:space-between}.muted{color:#64748b;font-size:.9rem}.card{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 15px 35px #0f172a14;display:flex;flex-direction:column;gap:1rem;padding:1.5rem;position:relative}.card:before{background:linear-gradient(90deg,#2563eb,#7c3aed 60%,#fb7185);border-radius:999px;content:"";height:3px;left:1.25rem;opacity:.4;position:absolute;right:1.25rem;top:.75rem}.card>h2{margin-top:.25rem}.info-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.info-inline-list{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem}.info-inline-item{align-items:baseline;display:flex;font-size:.95rem;gap:.35rem}.info-inline-label{color:#64748b;font-size:.85rem;text-transform:uppercase}.info-inline-value{color:#0f172a;font-weight:600}.radio-row{align-items:center;display:flex;gap:1.5rem;padding:.5rem 0}.radio-option{align-items:center;color:#0f172a;display:inline-flex;font-size:.95rem;gap:.35rem}.checkbox-field .checkbox-row{align-items:center;display:inline-flex;gap:.5rem;padding-top:.35rem}.inline-input{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{color:#64748b;font-size:.85rem;text-transform:uppercase}.info-value{font-weight:500}.status-panel{align-items:center;display:flex;gap:1rem}.status-actions{display:flex;flex-wrap:wrap;gap:.75rem}.status-badge{align-items:center;background:#e2e8f0;border-radius:999px;color:#1f2933;display:inline-flex;font-size:.85rem;padding:.25rem .75rem}.status-cree{background:#dbeafe;color:#1d4ed8}.status-affectee{background:#fef3c7;color:#c2410c}.status-encours{background:#fef9c3;color:#92400e}.status-terminee{background:#dcfce7;color:#166534}.form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem}fieldset{grid-gap:.85rem;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #bfdbfe;border-radius:.85rem;box-shadow:0 20px 45px #0f172a14;display:grid;gap:.85rem;padding:1.2rem;position:relative}fieldset:after{background:linear-gradient(90deg,#2563eb,#22d3ee);border-radius:999px;content:"";height:2px;left:1.2rem;opacity:.35;position:absolute;right:1.2rem;top:.75rem}legend{align-items:center;background:#fff;border-radius:999px;box-shadow:0 8px 20px #0f172a14;color:#0f172a;display:inline-flex;font-weight:700;gap:.35rem;letter-spacing:.08em;padding:.2rem .85rem;text-transform:uppercase}legend:before{background:linear-gradient(135deg,#2563eb,#9333ea);border-radius:999px;content:"";height:10px;width:10px}.form-field{display:flex;flex-direction:column;gap:.35rem}.form-field>span{color:#475569;font-size:.85rem}.form-field.required>span:after{color:#dc2626;content:" *"}.form-field input,.form-field select,.form-field textarea{background:#fafbff;border:1px solid #cbd5f5;border-radius:.6rem;padding:.55rem .75rem}.mission-form-grid{gap:1.1rem}.mission-form-grid fieldset{align-items:start;column-gap:1rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));row-gap:.75rem}.mission-form-grid fieldset>legend{grid-column:1/-1}.mission-form-grid .form-field{min-width:0}.mission-form-grid .form-field input,.mission-form-grid .form-field select,.mission-form-grid .form-field textarea{max-width:100%;width:100%}.mission-form-grid .form-field-full,.mission-form-grid fieldset>.alert,.mission-form-grid fieldset>.damage-form,.mission-form-grid fieldset>.damage-totals,.mission-form-grid fieldset>.form-actions,.mission-form-grid fieldset>.form-grid,.mission-form-grid fieldset>.muted,.mission-form-grid fieldset>.table-wrapper,.mission-form-grid fieldset>p{grid-column:1/-1}.mission-form-grid .inline-input input{max-width:210px}.form-actions{display:flex;gap:1rem;justify-content:flex-end}.table-wrapper{overflow-x:auto}.mission-table{border-collapse:collapse;width:100%}.mission-table td,.mission-table th{border-bottom:1px solid #e2e8f0;padding:.75rem;text-align:left}.table-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.table-actions .btn-action{white-space:nowrap}.document-table{border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 16px 30px #0f172a0d;margin-top:1rem;overflow:hidden}.document-table-head,.document-table-row{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:2fr 1.1fr .9fr;padding:.75rem 1rem}.document-table-head{background:#f1f5f9;color:#0f172a;font-weight:600}.document-table-row:not(:last-child){border-bottom:1px solid #e2e8f0}.document-name{display:flex;flex-direction:column;gap:.15rem}.document-date{color:#475569;font-weight:500}.document-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.document-head-actions{text-align:right}.document-table-row .btn-action{justify-content:center;min-width:110px}.pagination-bar{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;box-shadow:0 18px 35px #0f172a14;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-top:1.25rem;padding:1rem 1.5rem}.pagination-bottom{margin-bottom:.5rem}.pagination-info{color:#475569;font-weight:600}.pagination-controls{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.pagination-size select{background:#f8fafc;border:1px solid #cbd5f5;border-radius:.65rem;min-width:90px;padding:.45rem .75rem}.pagination-buttons{align-items:center;display:flex;gap:.75rem}.pagination-btn{min-width:140px}.pagination-status{color:#0f172a;font-weight:600}.cell-main{font-weight:500}.cell-sub{color:#64748b;font-size:.85rem}.alert{border-radius:.75rem;padding:.75rem 1rem}.alert-error{background:#fee2e2;color:#991b1b}.alert-success{background:#dcfce7;color:#166534}.alert-info{background:#e0f2fe;color:#0c4a6e}.loading{color:#475569;padding:1rem}.filters-card{gap:1rem}.filters-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.filters-actions{display:flex;justify-content:flex-end}.photo-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.photo-item{display:flex;flex-direction:column;gap:.5rem}.photo-item img{border-radius:.75rem;object-fit:cover;width:100%}.photo-phase-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin-top:1.5rem}.photo-phase-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:1rem;padding:1rem}.photo-phase-header{align-items:baseline;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:1rem}.upload-form{display:flex;flex-direction:column;gap:1rem}.upload-fields{display:flex;flex-wrap:wrap;gap:1rem}.photo-upload-grid{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.document-upload-grid{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:minmax(260px,2fr) minmax(180px,1fr)}.file-field input[type=file]{background:#f8fafc;border:1px dashed #cbd5f5;border-radius:.75rem;color:#0f172a;padding:.65rem;width:100%}.upload-submit{align-items:flex-end;display:flex;justify-content:flex-start;min-width:160px}.upload-submit .btn{min-height:56px;width:100%}.user-create-form{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem}.auth-wrapper{justify-content:center;min-height:100vh;padding:2rem}.auth-panel,.auth-wrapper{align-items:center;display:flex}.auth-panel{flex-direction:column;gap:1.5rem;margin:0 auto;max-width:720px;width:100%}.auth-card{width:min(420px,100%)}.auth-logo{align-items:center;color:#0f172a;flex-direction:column;justify-content:center;margin:0 auto;text-align:center}.auth-logo img{border-radius:1.5rem;height:auto;max-width:none;width:clamp(220px,60vw,520px)}.auth-logo .logo-text{font-size:1.1rem;margin-top:.75rem}@media (max-width:768px){.app-content{padding:1rem}.page-header{align-items:flex-start;flex-direction:column}.header-actions{flex-wrap:wrap}fieldset{padding:.75rem}.upload-fields{align-items:stretch;flex-direction:column}}.photo-grid.thumbnails{gap:1.25rem;grid-template-columns:repeat(4,minmax(0,1fr));justify-items:stretch}.page{padding-left:1.35rem;position:relative}.page:before{background:linear-gradient(180deg,#93c5fd,#cbd5f5);border-radius:999px;bottom:.35rem;content:"";left:0;opacity:.9;position:absolute;top:.35rem;width:2px}.page-header{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f5f7faed;border:1px solid #cbd5f5b3;border-radius:.95rem;padding:.85rem 1rem;position:-webkit-sticky;position:sticky;top:0;z-index:24}.page-breadcrumb{align-items:center;color:#334155;display:flex;flex-wrap:wrap;font-size:.82rem;gap:.45rem;margin-bottom:.35rem}.breadcrumb-chip,.header-chip{align-items:center;background:#e2e8f0;border-radius:999px;color:#0f172a;display:inline-flex;font-size:.82rem;font-weight:600;gap:.35rem;padding:.2rem .65rem}.header-chip-list{display:flex;flex-wrap:wrap;gap:.45rem}.status-badge-icon{font-size:.76rem;line-height:1;opacity:.9}.card{border:1px solid #dbe4f6}.table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:.9rem}.damage-table th,.mission-table th{background:#eff6ff;position:-webkit-sticky;position:sticky;top:0;z-index:3}.damage-table tbody tr:nth-child(2n),.mission-table tbody tr:nth-child(2n){background:#f8fafc}.damage-table tbody tr:hover,.mission-table tbody tr:hover{background:#eef2ff}.mission-table td:last-child,.mission-table th:last-child{min-width:230px;width:230px}.row-action-wrap{position:relative}.row-menu{grid-gap:.35rem;background:#fff;border:1px solid #cbd5f5;border-radius:.85rem;box-shadow:0 22px 36px #0f172a1f;display:grid;gap:.35rem;padding:.45rem;position:absolute;right:0;top:calc(100% + .35rem);width:220px;z-index:20}.row-menu .btn-action{justify-content:flex-start;width:100%}.mission-table-mobile{display:none}.mission-card-list{grid-gap:.85rem;display:grid;gap:.85rem}.mission-card{grid-gap:.75rem;background:#fff;border:1px solid #dbe4f6;border-radius:.9rem;display:grid;gap:.75rem;padding:.85rem}.mission-card-header{align-items:flex-start;display:flex;gap:.65rem;justify-content:space-between}.mission-card-meta{grid-gap:.25rem;display:grid;gap:.25rem}.mission-card-grid{grid-gap:.45rem;display:grid;gap:.45rem}.mission-card-row{display:flex;font-size:.88rem;gap:.65rem;justify-content:space-between}.mission-card-label{color:#475569;font-weight:600}.mission-card-actions{display:flex;flex-wrap:wrap;gap:.45rem}.quick-filters{display:flex;flex-wrap:wrap;gap:.5rem}.filter-chip{background:#f8fbff;border:1px solid #bfdbfe;border-radius:999px;color:#1e293b;cursor:pointer;font-weight:600;padding:.35rem .7rem}.filter-chip.active{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.overlay{background:#0f172a73;display:flex;inset:0;justify-content:flex-end;position:fixed;z-index:70}.side-panel{background:#fff;border-left:1px solid #cbd5f5;box-shadow:-18px 0 30px #0f172a24;display:flex;flex-direction:column;gap:.9rem;height:100%;padding:1rem;width:min(420px,100%)}.panel-header{align-items:center;display:flex;gap:.75rem;justify-content:space-between}.panel-body{display:flex;flex:1 1;flex-direction:column;gap:.75rem}.panel-actions{display:flex;gap:.65rem;justify-content:flex-end}.section-tabs{display:flex;flex-wrap:wrap;gap:.45rem}.section-tab{background:#f8fafc;border:1px solid #cbd5f5;border-radius:999px;color:#0f172a;cursor:pointer;font-weight:600;padding:.3rem .75rem}.section-tab.active{background:#1d4ed8;border-color:#1d4ed8;color:#fff}.form-section-panel{display:none}.form-section-panel.active{display:grid}.form-stepper{align-items:center;display:none;gap:.75rem;justify-content:space-between;margin-top:.35rem}.floating-action-bar{display:none}.field-hint{align-items:center;display:inline-flex;font-size:.78rem;gap:.25rem;margin-top:.15rem}.field-hint-valid{color:#166534}.field-hint-invalid{color:#991b1b}.toast-stack{grid-gap:.55rem;display:grid;gap:.55rem;position:fixed;right:1rem;top:1rem;width:min(340px,calc(100vw - 2rem));z-index:90}.toast{align-items:flex-start;background:#fff;border:1px solid #cbd5f5;border-left:4px solid #3b82f6;border-radius:.75rem;box-shadow:0 16px 30px #0f172a24;color:#0f172a;display:flex;gap:.6rem;justify-content:space-between;padding:.55rem .7rem}.toast-success{border-left-color:#16a34a}.toast-error{border-left-color:#dc2626}.toast-close{background:#0000;border:none;color:#475569;cursor:pointer;font-size:.9rem}.toast-message{font-size:.88rem;line-height:1.35}.skeleton-card{grid-gap:.65rem;background:#fff;border:1px solid #e2e8f0;border-radius:1rem;display:grid;gap:.65rem;padding:.9rem}.skeleton-line{animation:skeleton-shimmer 1.35s ease-in-out infinite;background:linear-gradient(90deg,#e2e8f0 25%,#f8fafc 37%,#e2e8f0 63%);background-size:400% 100%;border-radius:999px;height:12px}.skeleton-line.skeleton-wide{width:82%}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (max-width:1200px){.photo-grid.thumbnails{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.photo-grid.thumbnails{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:540px){.photo-grid.thumbnails{grid-template-columns:1fr}}.photo-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.85rem;cursor:pointer;display:flex;flex-direction:column;gap:.6rem;height:100%;padding-bottom:.75rem;position:relative;transition:box-shadow .2s ease,transform .2s ease;width:100%}.photo-card:hover{box-shadow:0 18px 36px #0f172a1f;transform:translateY(-2px)}.photo-thumb{aspect-ratio:4/3;background:#0f172a;border-radius:.75rem .75rem 0 0;overflow:hidden;position:relative;width:100%}.photo-thumb img{height:100%;inset:0;object-fit:cover;position:absolute;transition:transform .25s ease;width:100%}.photo-card:hover .photo-thumb img{transform:scale(1.05)}.photo-delete{background:#0f172acc;border:none;border-radius:.6rem;color:#fff;cursor:pointer;font-size:.75rem;padding:.35rem .6rem;position:absolute;right:.5rem;top:.5rem;transition:background-color .2s ease}.photo-delete:hover{background:#1e40afe6}.photo-delete:disabled{background:#94a3b8d9;cursor:wait}.photo-meta-main{color:#1f2933;font-weight:600}.photo-meta-sub{color:#64748b;font-size:.8rem}.photo-modal{align-items:center;background:#0f172ab8;display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:999}.photo-modal-content{background:#fff;border-radius:1rem;box-shadow:0 30px 60px #0f172a40;display:flex;flex-direction:column;gap:1rem;max-width:min(900px,96vw);padding:1.5rem;width:100%}.photo-modal-content img{background:#0f172a;border-radius:.75rem;max-height:65vh;object-fit:contain;width:100%}.photo-modal-meta{color:#1f2933;display:flex;flex-direction:column;gap:.25rem}.photo-modal-close{align-self:flex-end;background:none;border:none;color:#1f2933;cursor:pointer;font-size:.9rem}.photo-modal-close:hover{color:#1d4ed8}.damage-form-fields{display:flex;flex-wrap:wrap;gap:1rem}.damage-form-fields .form-field{flex:1 1;min-width:220px}.labor-row{display:flex;gap:1rem;width:100%}.labor-row .form-field{flex:1 1;min-width:180px}.damage-table table{border-collapse:collapse;width:100%}.damage-table td,.damage-table th{border-bottom:1px solid #e2e8f0;font-size:.9rem;padding:.45rem .35rem;text-align:left}.damage-totals{grid-gap:.5rem;background:#f8fafc;border-radius:.8rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:1rem;padding:.75rem 1rem}.damage-totals div{color:#0f172a;font-size:.9rem}@media (max-width:640px){.photo-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.85rem;cursor:pointer;display:flex;flex-direction:column;gap:.6rem;height:100%;padding-bottom:.75rem;position:relative;transition:box-shadow .2s ease,transform .2s ease;width:100%}.photo-delete{font-size:.7rem;padding:.25rem .45rem}.photo-modal-content{padding:1rem}.document-upload-grid,.photo-upload-grid{grid-template-columns:1fr}.document-table-head,.document-table-row{grid-template-columns:1fr;text-align:left}.photo-phase-grid{grid-template-columns:1fr}.document-actions{justify-content:flex-start}}@media (max-width:1024px){.page{padding-left:1rem}.page:before{opacity:.6;width:1px}.card{box-shadow:0 8px 16px #0f172a0d}}@media (max-width:900px){.mission-table-desktop{display:none}.mission-table-mobile{display:block}}@media (max-width:768px){.page-header{padding:.75rem;top:0}.section-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.25rem}.section-tab{white-space:nowrap}.form-stepper{display:flex}.mission-form-grid fieldset{grid-template-columns:1fr}.mission-form-grid .inline-input input{max-width:100%}.floating-action-bar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8fafcf5;border-top:1px solid #cbd5f5;bottom:0;display:flex;gap:.65rem;justify-content:space-between;left:0;padding:.65rem .85rem calc(.65rem + env(safe-area-inset-bottom));position:fixed;right:0;z-index:60}.floating-action-bar .btn{flex:1 1}.floating-action-spacer{height:74px}.toast-stack{bottom:calc(76px + env(safe-area-inset-bottom));left:.75rem;right:.75rem;top:auto;width:auto}}
/*# sourceMappingURL=main.858695fd.css.map*/