/* UberPhone V6 — correctifs de stabilité, lisibilité et mobile */
:root{--mobile-safe:env(safe-area-inset-bottom,0px)}
html{scroll-behavior:smooth;overflow-x:hidden}
body{overflow-x:hidden;min-width:0}
img,svg,video,canvas{max-width:100%}
button,input,select,textarea{font:inherit}
button,.btn,.account-auth-tab,.filter-chip{touch-action:manipulation}
#map{filter:none!important;background:#dcecff!important}
.leaflet-tile{filter:none!important}
.map-shell{overflow:hidden;position:relative}
.map-toolbar{position:relative;z-index:500}
.notification-panel-head{gap:10px}
.notification-panel-tools{display:flex;align-items:center;gap:8px}
.notification-clear{border:0;background:transparent;color:var(--text-mid);font-size:11px;font-weight:700;cursor:pointer;padding:7px 8px;border-radius:8px}
.notification-clear:hover{background:#191c25;color:#fff}
.notification-item{position:relative;grid-template-columns:36px minmax(0,1fr) 28px!important;align-items:start;cursor:pointer}
.notification-item.is-read{opacity:.7}
.notification-dismiss{width:28px;height:28px;border:0;border-radius:8px;background:transparent;color:var(--text-low);cursor:pointer;display:grid;place-items:center;font-size:17px}
.notification-dismiss:hover{background:#20232d;color:#fff}
.notification-empty{padding:26px 14px;text-align:center;color:var(--text-low);font-size:13px}
.account-device-limit{display:none!important}
.auth-inline-status{margin:0 0 14px;padding:11px 12px;border-radius:11px;border:1px solid var(--stroke);background:#10131a;color:var(--text-mid);font-size:12px;line-height:1.5}
.auth-inline-status.error{border-color:rgba(255,92,114,.4);background:rgba(255,92,114,.08);color:#ffd5dc}
.auth-inline-status.success{border-color:rgba(47,217,146,.35);background:rgba(47,217,146,.08);color:#ccffe9}
.v6-code-input{width:100%;height:64px!important;text-align:center;font-size:30px!important;letter-spacing:12px;font-weight:800;font-variant-numeric:tabular-nums}
.v6-verification-actions{display:flex;gap:10px;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin-top:16px}
.v6-mail-warning{margin:0 0 15px;padding:12px 13px;border-radius:12px;border:1px solid rgba(255,183,77,.35);background:rgba(255,183,77,.08);color:#ffe5b8;font-size:12px;line-height:1.55}
.form-field input,.form-field select,.form-field textarea{max-width:100%;min-width:0}
.modal-overlay,.account-modal-overlay{overscroll-behavior:contain}

@media(max-width:900px){
  .wrap{width:100%;max-width:100%;padding-left:18px!important;padding-right:18px!important}
  .nav-inner{width:calc(100% - 20px)!important;max-width:none!important}
  .nav-links.mobile-open{max-height:min(70vh,520px);overflow:auto}
  .hero-grid,.staff-dashboard-grid,.account-auth-shell,.v20-account-shell,.profile-grid,.repair-form-grid{grid-template-columns:1fr!important}
  .account-auth-aside{display:none!important}
  .account-auth-main,.v20-account-main{min-width:0;padding:22px!important}
  .v20-account-nav{display:flex!important;overflow-x:auto;padding:10px!important;gap:7px;border-right:0!important;border-bottom:1px solid var(--stroke)}
  .v20-account-brand{display:none}
  .v20-account-tab{white-space:nowrap;flex:0 0 auto}
  .form-grid{grid-template-columns:1fr!important}
  .form-field.full{grid-column:auto!important}
  .modal-box,.account-modal-box,.staff-modal-box,.profile-modal-box,.inbox-modal-box{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;overflow:auto!important;margin:12px!important}
  .staff-scroll{overflow:auto}
  .staff-partner,.ticket-row,.order-row{grid-template-columns:1fr!important;align-items:flex-start!important}
  .staff-partner-actions{width:100%;justify-content:flex-start!important;overflow-x:auto;padding-bottom:3px}
  .map-toolbar{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;padding:12px!important}
  .map-toolbar>div{min-width:0}
  #map{height:500px!important;min-height:420px}
  .map-legend{max-width:calc(100% - 20px)!important;font-size:10px!important}
  .repair-result{grid-template-columns:42px minmax(0,1fr)!important}
  .repair-result>.btn{grid-column:1/-1;width:100%}
}

@media(max-width:700px){
  body{padding-bottom:var(--mobile-safe)}
  .wrap{padding-left:14px!important;padding-right:14px!important}
  .nav-inner{margin:0 8px!important;width:calc(100% - 16px)!important}
  .nav-logo{font-size:18px!important}
  .nav-cta{min-width:0}
  .auth-nav-btn{padding:9px 10px!important;font-size:11px!important}
  .hero{padding-top:34px!important}
  .hero-grid{display:flex!important;flex-direction:column!important}
  .hero h1{font-size:clamp(38px,12vw,54px)!important;line-height:.98!important;overflow-wrap:anywhere}
  .hero p.lead{font-size:15px!important}
  .hero-visual{height:auto!important;min-height:360px!important;overflow:hidden!important}
  .hero-device-image{width:100%!important;max-width:420px!important;margin:auto!important;position:relative!important;inset:auto!important;transform:none!important}
  .hero-featured-card,.hero-cert-chip{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;width:100%!important;margin-top:10px!important}
  .hero-stats{grid-template-columns:1fr!important}
  .stat,.stat:last-child{grid-column:auto!important;width:100%}
  .section{padding:58px 0!important}
  .section-head h2{font-size:32px!important;overflow-wrap:anywhere}
  .grid-3,.steps,.reviews-scroll,.value-grid,.repairer-grid{grid-template-columns:1fr!important}
  .repairer-card{min-width:0!important;width:100%!important}
  .rc-footer,.profile-actions,.account-submit-row,.repair-actions{flex-direction:column!important;align-items:stretch!important}
  .rc-footer .btn,.profile-actions .btn,.account-submit-row .btn,.repair-actions .btn{width:100%!important}
  #map{height:430px!important;min-height:390px}
  .map-shell::after{display:none!important}
  .notification-panel{top:66px!important;right:8px!important;left:8px!important;width:auto!important;max-height:calc(100dvh - 82px);overflow:auto}
  .notification-item{padding:11px!important}
  .account-auth-main,.v20-account-main{padding:17px!important}
  .modal-head{gap:12px!important;align-items:flex-start!important}
  .modal-head h3{font-size:22px!important}
  .modal-close{flex:0 0 auto}
  .account-auth-tabs{display:grid!important;grid-template-columns:1fr 1fr!important}
  .account-google-panel{padding:12px!important}
  .google-button-slot{overflow:hidden}
  .google-button-slot>div{max-width:100%!important}
  .email-code-grid{gap:5px!important}
  .email-code-grid input{width:100%!important;min-width:0!important;height:52px!important;font-size:22px!important}
  .v6-code-input{font-size:27px!important;letter-spacing:9px}
  .v6-verification-actions{display:grid;grid-template-columns:1fr}
  .v6-verification-actions .btn{width:100%}
  .repair-wizard-box{width:calc(100vw - 18px)!important;max-height:calc(100dvh - 18px)!important;margin:9px!important;overflow:auto!important}
  .repair-result{padding:13px!important}
  footer .footer-grid{grid-template-columns:1fr!important}
}

@media(max-width:390px){
  .auth-nav-btn.auth-login{display:none}
  .notification-trigger,.account-trigger{width:38px!important;height:38px!important}
  .hero h1{font-size:36px!important}
  .section-head h2{font-size:29px!important}
  #map{height:390px!important}
}
