
  :root{
    /* Palette inspirée du site L’Atelier Fleurs & Sens */
    --bordeaux:#5A2230; --bordeaux-d:#3E2028; --blush:#D79680; --blush-s:#F4E4DD;
    --cream:#FBF8F4; --card:#FFFDFB; --gold:#8B7A66; --gold-s:#CDBEAA;
    --ink:#303437; --ink-s:#837568; --line:#E7DDD5; --green:#384640; --green-s:#ECE8DF;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;background:var(--cream);color:var(--ink);
    font-family:'Segoe UI',system-ui,-apple-system,sans-serif;-webkit-text-size-adjust:100%;}
  h2,h3{font-family:Georgia,'Times New Roman',serif;color:var(--bordeaux);}
  .serif{font-family:Georgia,'Times New Roman',serif;}
  /* Barre base (fichier iCloud) */
  .topbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 12px;background:var(--green);color:#fff;font-size:13px;}
  .topbar .name{color:var(--gold-s);}
  .topbar .dirty{color:#ffd9c2;font-weight:700;}
/* En-tête */
  header.app{background:#fff;color:var(--ink);padding:18px 20px;display:grid;grid-template-columns:minmax(230px,1fr) minmax(320px,600px) minmax(150px,1fr);align-items:center;gap:18px;border-top:6px solid var(--green);border-bottom:6px solid var(--green);}
  header.app .brand{display:flex;align-items:center;gap:14px;min-width:0;}
  header.app .brand-logo{width:150px;max-width:46vw;height:auto;display:block;}
  header.app .title{font-family:Georgia,serif;font-size:18px;font-weight:700;color:var(--bordeaux);}
  header.app .sub{font-size:12px;color:var(--ink-s);}

  header.app .header-search-zone{display:flex;justify-content:center;min-width:0;}
  header.app .header-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;min-width:0;}
  .global-search{position:relative;width:100%;max-width:600px;}
  .global-search input{padding-left:34px;background:#fffdfb;border-color:var(--gold-s);}
  .global-search:before{content:"🔎";position:absolute;left:10px;top:9px;z-index:1;font-size:14px;opacity:.75;}
  .global-results{position:absolute;z-index:50;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 8px 28px rgba(0,0,0,.14);max-height:320px;overflow:auto;display:none;}
  .global-results.open{display:block;}
  .global-result{display:block;width:100%;border:none;background:#fff;text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);cursor:pointer;font-family:inherit;color:var(--ink);}
  .global-result:hover{background:var(--blush-s);}
  .global-result b{color:var(--bordeaux);}
  .global-result .type{font-size:11px;font-weight:700;color:var(--ink-s);text-transform:uppercase;letter-spacing:.02em;margin-bottom:2px;}
  .global-result .sub{font-size:12px;color:var(--ink-s);margin-top:2px;}
  .global-nores{padding:12px;color:var(--ink-s);font-size:13px;}
  @media (max-width:900px){
    header.app{grid-template-columns:1fr auto;}
    header.app .header-search-zone{grid-column:1 / -1;grid-row:2;justify-content:center;}
    header.app .header-actions{grid-column:2;grid-row:1;}
    .global-search{max-width:600px;}
  }
  @media (max-width:560px){
    header.app{grid-template-columns:1fr;padding:16px 18px;}
    header.app .brand{grid-column:1;grid-row:1;}
    header.app .header-search-zone{grid-column:1;grid-row:2;width:100%;}
    header.app .header-actions{grid-column:1;grid-row:3;justify-content:center;width:100%;}
    header.app .header-actions .btn{width:100%;}
    .global-search{max-width:none;}
  }

  @media (max-width:560px){ header.app .brand-logo{width:170px;} header.app .title, header.app .sub{display:none;} }
  nav.tabs{display:flex;gap:4px;padding:8px 10px;overflow-x:auto;background:var(--blush-s);border-bottom:1px solid var(--line);}
  nav.tabs button{border:none;background:transparent;color:var(--ink-s);font-weight:500;font-size:14px;padding:8px 13px;border-radius:8px;cursor:pointer;white-space:nowrap;font-family:inherit;}
  nav.tabs button.active{background:#fff;color:var(--bordeaux);font-weight:700;}
  main{max-width:920px;margin:0 auto;padding:18px 14px 70px;}
  /* Composants */
  .card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px;margin-bottom:12px;}
  .btn{padding:10px 16px;border-radius:9px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;border:none;white-space:nowrap;}
  .btn.small{padding:6px 12px;font-size:13px;}
  .btn.primary{background:var(--bordeaux);color:#fff;}
  .btn.gold{background:var(--blush);color:#fff;}
  .btn.ghost{background:transparent;color:var(--bordeaux);border:1px solid var(--blush);}
  .btn.soft{background:var(--blush-s);color:var(--bordeaux);}
  .btn.danger{background:transparent;color:#9b3b3b;border:1px solid #e3c0c0;}
  .btn:disabled{opacity:.45;cursor:not-allowed;}

  .btn.doc-download{background:#39434d;color:#fff;border:1px solid #39434d;}
  .btn.doc-print{background:#6b4a56;color:#fff;border:1px solid #6b4a56;}
  .btn.doc-email{background:#b86a45;color:#fff;border:1px solid #b86a45;}
  .btn.doc-edit{background:#245f8f;color:#fff;border:1px solid #245f8f;}
  .btn.doc-marriage{background:#3f6f55;color:#fff;border:1px solid #3f6f55;}
  .btn.doc-close{background:#eee7e2;color:#4b3038;border:1px solid #cdbeb5;}
  .btn.doc-download:hover,.btn.doc-print:hover,.btn.doc-email:hover,.btn.doc-edit:hover,.btn.doc-marriage:hover{filter:brightness(.92);}
  .row-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;}
  label.field{display:block;margin-bottom:12px;}
  label.field>span{display:block;font-size:12px;font-weight:600;color:var(--ink-s);margin-bottom:4px;}
  label.field .hint{font-weight:400;color:var(--ink-s);font-size:11px;margin-top:3px;}
  input,select,textarea{width:100%;padding:9px 11px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:14px;font-family:inherit;color:var(--ink);outline:none;}
  textarea{min-height:60px;resize:vertical;}
  .inline{display:flex;gap:10px;flex-wrap:wrap;}
  .inline>div{flex:1;min-width:120px;}
  .badge{font-size:11px;font-weight:700;padding:3px 9px;border-radius:20px;white-space:nowrap;}
  table{width:100%;border-collapse:collapse;}
  .scroll{overflow-x:auto;}
  .muted{color:var(--ink-s);font-size:13px;}
  .flexb{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;}
  .grid-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:16px;}
  .stat{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--card);}
  .stat .lab{font-size:12px;color:var(--ink-s);font-weight:600;}
  .stat .val{font-family:Georgia,serif;font-weight:700;color:var(--bordeaux);margin-top:4px;}
  .chart{display:flex;align-items:flex-end;gap:6px;height:160px;margin-top:14px;}
  .chart .col{flex:1;display:flex;flex-direction:column;align-items:center;}
  .chart .bars{width:70%;display:flex;flex-direction:column;justify-content:flex-end;height:132px;}
  .jauge .track{height:10px;background:#efe3da;border-radius:6px;overflow:hidden;}
  .jauge .fill{height:100%;border-radius:6px;}
  .dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:3px;}
  .toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);background:var(--bordeaux-d);color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;z-index:80;box-shadow:0 6px 20px rgba(0,0,0,.25);max-width:90%;}
  /* Modal / document */
  .modal{position:fixed;inset:0;background:rgba(58,43,43,.55);z-index:50;overflow:auto;padding:20px 12px;}
  .modal-inner{max-width:760px;margin:0 auto;}
  .modal-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:10px;padding:10px;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.12);}
  .doc{background:#fff;padding:34px 38px;border-radius:8px;box-shadow:0 8px 30px rgba(0,0,0,.18);font-size:13.5px;line-height:1.5;color:var(--ink);}
  .doc table th{background:var(--blush-s);}
  .doc .totrow{display:flex;justify-content:space-between;padding:5px 0;}
  @media print{
    body *{visibility:hidden!important;}
    #doc,#doc *{visibility:visible!important;}
    #doc{position:absolute!important;left:0;top:0;width:100%;box-shadow:none!important;border:none!important;}
    .modal-actions{display:none!important;}
  }
  .thumb{width:84px;height:84px;object-fit:cover;border-radius:10px;border:1px solid var(--line);cursor:pointer;}
  .chip{display:inline-flex;align-items:center;gap:6px;background:var(--blush-s);border:1px solid var(--line);border-radius:20px;padding:6px 10px;font-size:12px;}
  .checkrow{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line);}
  .checkrow input[type=checkbox]{width:20px;height:20px;flex:none;}
  .summary{background:var(--blush-s);border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-bottom:14px;}
  .section-title{font-family:Georgia,serif;color:var(--bordeaux);font-size:16px;margin:20px 0 8px;}
  .pill{font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;display:inline-block;}
  .alert{background:#fbe6df;color:#9b3b3b;border:1px solid #e8c4b8;border-radius:8px;padding:6px 10px;font-size:12px;font-weight:600;display:inline-block;}

  .cal-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;}
  .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;}
  .cal-dayname{text-align:center;font-size:12px;font-weight:700;color:var(--ink-s);padding:6px 0;}
  .cal-cell{min-height:94px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:7px;overflow:hidden;}
  .cal-cell.other{opacity:.38;background:#faf7f4;}
  .cal-cell.today{border:2px solid var(--bordeaux);}
  .cal-num{font-size:12px;font-weight:700;color:var(--bordeaux);margin-bottom:5px;}
  .cal-event{display:block;font-size:11px;line-height:1.25;padding:3px 5px;border-radius:7px;margin:3px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;}
  .cal-event.mariage{background:#f4e4dd;color:#5A2230;}
  .cal-event.atelier{background:#f8dcd2;color:#8a4d3c;}
  .cal-event.paiement{background:#e7eee8;color:#384640;}
  .cal-listitem{padding:8px 0;border-bottom:1px solid var(--line);}


  .purchase-proof{display:inline-flex;align-items:center;gap:6px;background:var(--green-s);border:1px solid var(--line);border-radius:20px;padding:5px 9px;font-size:12px;}
  .achat-cat{font-size:11px;font-weight:700;padding:3px 9px;border-radius:20px;background:var(--blush-s);color:var(--bordeaux);}


  .onboarding-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
  .onboarding-step{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fffaf8;}
  .onboarding-step h3{margin:0 0 6px;color:var(--bordeaux);font-size:15px;}
  .onboarding-step p{margin:0;line-height:1.45;color:var(--ink-s);font-size:12px;}
  .onboarding-number{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bordeaux);color:#fff;font-weight:700;margin-bottom:9px;}
  .status.ok{display:inline-block;background:var(--green-s);color:var(--green);padding:5px 9px;border-radius:999px;font-size:12px;font-weight:700;}
  .badge.ok{background:var(--green-s);color:var(--green);}
  .badge.warn{background:#fff0dc;color:#7a4b0b;}
  @media(max-width:700px){.onboarding-steps{grid-template-columns:1fr;}}


.mybusiness{margin-bottom:4px;font-weight:500;letter-spacing:.3px;}
