:root{
  --astra-bg:#eef2f6;
  --astra-surface:#ffffff;
  --astra-surface-soft:#f7f9fc;
  --astra-header:#17212d;
  --astra-header-2:#202c3a;
  --astra-text:#17212d;
  --astra-muted:#667487;
  --astra-border:#d7dee7;
  --astra-primary:#1769c2;
  --astra-primary-hover:#0f559f;
  --astra-success:#27854a;
  --astra-warning:#d88716;
  --astra-danger:#c63a35;
  --astra-shadow:0 12px 34px rgba(19,33,49,.18);
  --astra-radius:10px;
  --astra-transition:160ms ease;
}

*{box-sizing:border-box}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--astra-bg);font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif;color:var(--astra-text)}
button,input,select,textarea{font:inherit}
button{transition:background var(--astra-transition),border-color var(--astra-transition),color var(--astra-transition),transform var(--astra-transition),box-shadow var(--astra-transition)}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(23,105,194,.2);outline-offset:1px}

/* Coque V1.0 */
#astra-app-header{position:fixed;z-index:2147483638;top:0;left:0;right:0;height:56px;display:flex;align-items:center;background:var(--astra-header);color:#fff;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 4px 16px rgba(0,0,0,.22);font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif}
.astra-brand{height:100%;min-width:190px;display:flex;align-items:center;gap:11px;padding:0 18px;border-right:1px solid rgba(255,255,255,.1)}
.astra-brand-mark{position:relative;width:28px;height:28px;border:2px solid #79b9f6;transform:rotate(45deg);border-radius:4px}
.astra-brand-mark:before{content:"";position:absolute;inset:5px;border-left:2px solid #fff;border-bottom:2px solid #fff}
.astra-brand-copy strong{display:block;font-size:15px;letter-spacing:.11em;line-height:1}.astra-brand-copy small{display:block;margin-top:4px;color:#9db0c5;font-size:9px;letter-spacing:.09em;text-transform:uppercase}
.astra-project-identity{min-width:0;display:flex;flex-direction:column;justify-content:center;padding:0 18px;line-height:1.15}
.astra-project-identity small{color:#8fa3b8;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.astra-project-identity strong{max-width:36vw;margin-top:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600}
.astra-save-state{margin-left:auto;display:flex;align-items:center;gap:9px;padding:0 18px;color:#c9d5e1;font-size:12px}.astra-save-dot{width:8px;height:8px;border-radius:50%;background:var(--astra-success);box-shadow:0 0 0 3px rgba(39,133,74,.2)}.astra-save-state.is-saving .astra-save-dot{background:var(--astra-warning)}.astra-save-state.is-error .astra-save-dot{background:var(--astra-danger)}

#astra-statusbar{position:fixed;z-index:2147483638;left:0;right:0;bottom:0;height:28px;display:flex;align-items:center;gap:0;background:var(--astra-header);color:#c4d0dc;border-top:1px solid rgba(255,255,255,.08);font-size:11px}
.astra-status-item{display:flex;align-items:center;gap:6px;height:100%;padding:0 14px;border-right:1px solid rgba(255,255,255,.09);white-space:nowrap}.astra-status-item strong{color:#fff;font-weight:600}.astra-status-spacer{flex:1}.astra-status-version{padding:0 14px;color:#8295a9}

/* Barre d'outils unifiée */
#bdastra-toolbar{position:fixed!important;top:56px!important;left:0!important;right:0!important;width:auto!important;height:46px!important;z-index:2147483640!important;display:flex!important;flex-direction:row!important;align-items:stretch!important;gap:0!important;padding:0 12px!important;background:var(--astra-header-2)!important;border-bottom:1px solid rgba(255,255,255,.08)!important;box-shadow:0 3px 12px rgba(0,0,0,.15)!important;font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif!important}
#bdastra-toolbar>button{appearance:none!important;display:flex!important;align-items:center!important;justify-content:center!important;min-width:126px!important;height:46px!important;margin:0!important;padding:0 16px!important;border:0!important;border-right:1px solid rgba(255,255,255,.08)!important;border-radius:0!important;background:transparent!important;color:#dbe5ee!important;font-size:12px!important;font-weight:600!important;box-shadow:none!important;cursor:pointer!important}
#bdastra-toolbar>button:hover{background:rgba(255,255,255,.08)!important;color:#fff!important}
#bdastra-toolbar>button.is-active{background:var(--astra-primary)!important;color:#fff!important;outline:0!important;box-shadow:inset 0 -3px 0 #8ac5ff!important}
#bdastra-project-button{order:-2}#bdastra-crack-button{order:-1}

/* Panneaux */
#bdastra-sidebar,#bdastra-photos-panel,#bdastra-reports-panel{top:102px!important;height:calc(100vh - 130px)!important;border-left:1px solid var(--astra-border)!important;background:var(--astra-surface-soft)!important;color:var(--astra-text)!important;box-shadow:-14px 0 34px rgba(20,31,43,.16)!important;transition:transform var(--astra-transition)!important;font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif!important}
#bdastra-sidebar{padding:22px!important;width:370px!important}
#bdastra-sidebar h2,.bdastra-photos-header h2,.bdastra-reports-header h2{color:var(--astra-text)!important;font-weight:650!important;letter-spacing:-.01em!important}
#bdastra-close,#bdastra-photos-close,#bdastra-reports-close{color:var(--astra-muted)!important}
#bdastra-sidebar input,#bdastra-sidebar select,#bdastra-sidebar textarea,.bdastra-report-dialog input,.bdastra-report-dialog select,.bdastra-report-dialog textarea,.bdastra-photo-link-dialog input,.bdastra-photo-link-dialog textarea{border:1px solid var(--astra-border)!important;border-radius:8px!important;background:#fff!important;color:var(--astra-text)!important;box-shadow:inset 0 1px 1px rgba(18,31,45,.03)!important}
#bdastra-sidebar input:focus,#bdastra-sidebar select:focus,#bdastra-sidebar textarea:focus,.bdastra-report-dialog input:focus,.bdastra-report-dialog select:focus,.bdastra-report-dialog textarea:focus{border-color:var(--astra-primary)!important;box-shadow:0 0 0 3px rgba(23,105,194,.12)!important}
#bdastra-save,.is-primary{background:var(--astra-primary)!important;border-color:var(--astra-primary)!important;color:#fff!important;border-radius:8px!important}#bdastra-save:hover,.is-primary:hover{background:var(--astra-primary-hover)!important}

/* Cartes et listes */
.bdastra-report-card,.bdastra-photo-card,.bdastra-link-summary button{border:1px solid var(--astra-border)!important;border-radius:var(--astra-radius)!important;background:var(--astra-surface)!important;box-shadow:0 2px 8px rgba(19,33,49,.05)!important}
.bdastra-report-card:hover,.bdastra-photo-card:hover{border-color:#aebdcb!important;box-shadow:0 7px 18px rgba(19,33,49,.1)!important;transform:translateY(-1px)}
.bdastra-report-icon{background:var(--astra-danger)!important;border-radius:7px!important}
.bdastra-report-actions button,.bdastra-photos-header-actions button,.bdastra-reports-header-actions button{border-color:var(--astra-border)!important;border-radius:8px!important;background:#fff!important;color:var(--astra-text)!important;box-shadow:none!important}.bdastra-report-actions button:hover,.bdastra-photos-header-actions button:hover,.bdastra-reports-header-actions button:hover{background:#edf3f9!important;border-color:#b8c6d4!important}
.bdastra-report-actions button.is-primary{background:var(--astra-primary)!important;border-color:var(--astra-primary)!important;color:#fff!important}.bdastra-report-actions button.is-danger{color:var(--astra-danger)!important}
.bdastra-reports-search,#bdastra-reports-dropzone,.bdastra-photos-search{border-color:var(--astra-border)!important;border-radius:9px!important;background:#fff!important}
#bdastra-reports-dropzone strong{color:var(--astra-primary)!important}
.bdastra-reports-status,.bdastra-photos-status{background:#e7edf4!important;color:#5d6c7c!important;border-radius:8px!important}

/* Repères : signature V1.0 */
.bdastra-pin{width:20px!important;height:20px!important;margin:-10px 0 0 -10px!important;border-radius:50%!important;transform:none!important;background:var(--astra-warning)!important;border:3px solid #fff!important;box-shadow:0 0 0 2px rgba(23,33,45,.3),0 4px 12px rgba(0,0,0,.35)!important}.bdastra-pin:after{display:none!important}
.bdastra-marker-label{border-radius:6px!important;padding:5px 8px!important;font-family:"Segoe UI Variable","Segoe UI",Arial,sans-serif!important;letter-spacing:.02em!important;box-shadow:0 4px 12px rgba(0,0,0,.25)!important}.bdastra-marker-label[data-priority="Faible"]{background:var(--astra-success)!important}.bdastra-marker-label[data-priority="Moyenne"]{background:var(--astra-warning)!important}.bdastra-marker-label[data-priority="Élevée"]{background:var(--astra-danger)!important}

/* Dialogues */
#bdastra-project-modal,#bdastra-report-modal,#bdastra-photo-link-modal{background:rgba(10,18,27,.66)!important;backdrop-filter:blur(4px)}
.bdastra-project-dialog,.bdastra-report-dialog,.bdastra-photo-link-dialog{background:var(--astra-surface)!important;color:var(--astra-text)!important;border:1px solid rgba(255,255,255,.35)!important;border-radius:14px!important;box-shadow:0 28px 90px rgba(0,0,0,.4)!important}
.bdastra-project-dialog header,.bdastra-project-dialog footer{border-color:var(--astra-border)!important}.bdastra-project-dialog header p,.bdastra-project-grid label,.bdastra-project-summary span{color:var(--astra-muted)!important}.bdastra-project-grid input,.bdastra-project-grid textarea{background:#fff!important;color:var(--astra-text)!important;border-color:var(--astra-border)!important}.bdastra-project-summary div{background:var(--astra-surface-soft)!important;border-color:var(--astra-border)!important}.bdastra-project-dialog footer button{background:#fff!important;color:var(--astra-text)!important;border-color:var(--astra-border)!important}.bdastra-project-dialog footer .is-primary{background:var(--astra-primary)!important;color:#fff!important}

/* Visionneuses */
#bdastra-photo-viewer,#bdastra-report-viewer{top:0!important;bottom:0!important;background:#151c24!important}.bdastra-photo-viewer-toolbar,.bdastra-report-viewer-toolbar{background:var(--astra-header)!important}

#bdastra-status{left:16px!important;bottom:42px!important;border-radius:7px!important;background:rgba(23,33,45,.92)!important;box-shadow:var(--astra-shadow)!important}
#bdastra-project-toast,#bdastra-photo-toast,#bdastra-report-toast{bottom:42px!important;border-radius:8px!important}

@media(max-width:760px){.astra-brand{min-width:auto}.astra-brand-copy small{display:none}.astra-project-identity{display:none}#bdastra-toolbar>button{min-width:auto!important;padding:0 10px!important;font-size:11px!important}#bdastra-sidebar,#bdastra-photos-panel,#bdastra-reports-panel{top:102px!important;height:calc(100vh - 130px)!important;width:min(100vw,470px)!important}.astra-status-item:nth-child(n+4){display:none}}
