@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--brand: #009090;--brand-dark: #006666;--brand-light: #E0F4F4;--marine: #003048;--marine-soft: #4A6580;--coral: #F07848;--coral-dark: #B8470F;--coral-light: #FDE4D4;--gold: #D89030;--gold-dark: #6B4500;--gold-light: #FAEED4;--red: #D83030;--red-dark: #A01818;--red-light: #FCE2E2;--green: #0E8D7A;--green-dark: #04504A;--green-light: #D7EFE9;--purple: #6B3FA0;--purple-light: #EFE6F8;--amber: #D89030;--amber-light: #FAEED4;--bg: #FFFCF8;--bg2: #FFF8F2;--bg3: #F5EBDC;--text: #003048;--muted: #4A6580;--border: rgba(0,48,72,.1);--border2: rgba(0,48,72,.18);--font: "Inter", system-ui, -apple-system, sans-serif;--font-size: 14px;--radius: 8px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--touch: 44px;--grad-signature: linear-gradient(135deg, #003048 0%, #007878 55%, #F07848 100%);--grad-marine-teal: linear-gradient(135deg, #003048 0%, #007878 100%);--grad-marine-gold: linear-gradient(135deg, #003048 0%, #886020 100%)}.dark{--brand: #14B5B5;--brand-dark: #009090;--brand-light: rgba(20,181,181,.15);--marine: #FFF8F2;--marine-soft: rgba(255,248,242,.6);--coral: #FF8A5C;--coral-dark: #FFB89B;--coral-light: rgba(255,138,92,.15);--gold: #F0B040;--gold-dark: #F5C870;--gold-light: rgba(240,176,64,.15);--red: #FF5050;--red-dark: #FF8080;--red-light: rgba(255,80,80,.15);--green: #14B58C;--green-dark: #5FD4B0;--green-light: rgba(20,181,140,.15);--purple: #B89AE6;--purple-light: rgba(184,154,230,.15);--amber: #F0B040;--amber-light: rgba(240,176,64,.15);--bg: #001824;--bg2: #002438;--bg3: #003048;--text: #FFF8F2;--muted: rgba(255,248,242,.6);--border: rgba(255,248,242,.08);--border2: rgba(255,248,242,.18);--grad-signature: linear-gradient(135deg, #000812 0%, #006060 55%, #B85020 100%);--grad-marine-teal: linear-gradient(135deg, #000812 0%, #006060 100%);--grad-marine-gold: linear-gradient(135deg, #000812 0%, #6B4500 100%)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:var(--font-size)}body{font-family:var(--font);font-size:var(--font-size);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .25s,color .25s;overflow-x:hidden;line-height:1.5}button,a,input,select,textarea{font-family:var(--font);font-size:var(--font-size);line-height:1.5}button:not([style*=min-height]):not(.nav-btn){min-height:var(--touch)}input,select{min-height:var(--touch)}:focus-visible{outline:2.5px solid var(--brand);outline-offset:2px;border-radius:var(--radius)}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}.card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;margin-bottom:14px}.stat-card{background:var(--bg2);border-radius:var(--radius-lg);padding:18px 20px;border:1px solid var(--border)}.stat-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:6px}.stat-value{font-size:26px;font-weight:800;color:var(--text);line-height:1}.stat-sub{font-size:12px;color:var(--muted);margin-top:4px}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--touch);padding:0 24px;background:var(--brand);color:#fff;border:none;border-radius:var(--radius);font-size:15px;font-weight:700;cursor:pointer;letter-spacing:.01em;transition:background .12s,transform .1s,box-shadow .12s;-webkit-tap-highlight-color:transparent;white-space:nowrap;box-shadow:0 2px 8px #00909033}.dark .btn-primary{color:#002438;box-shadow:0 2px 8px #14b5b54d}.btn-primary:hover{background:var(--brand-dark)}.btn-primary:active{transform:scale(.97)}.btn-primary:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--touch);padding:0 18px;background:var(--bg2);color:var(--text);border:1px solid var(--border2);border-radius:var(--radius);font-size:14px;font-weight:500;cursor:pointer;transition:background .12s,transform .1s;-webkit-tap-highlight-color:transparent}.btn-secondary:hover{background:var(--bg3)}.btn-secondary:active{transform:scale(.97)}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--touch);padding:0 18px;background:var(--red-light);color:var(--red-dark);border:1px solid rgba(216,48,48,.25);border-radius:var(--radius);font-size:14px;font-weight:600;cursor:pointer;transition:background .12s;-webkit-tap-highlight-color:transparent}.dark .btn-danger{color:var(--red);border-color:#ff50504d}.btn-danger:hover{background:#d8303033}.btn-coral{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--touch);padding:0 24px;background:var(--coral);color:#fff;border:none;border-radius:var(--radius);font-size:15px;font-weight:700;cursor:pointer;transition:background .12s,transform .1s;-webkit-tap-highlight-color:transparent;white-space:nowrap;box-shadow:0 2px 8px #f0784840}.dark .btn-coral{color:#2a1810;box-shadow:0 2px 8px #ff8a5c4d}.btn-coral:hover{background:var(--coral-dark);color:#fff}.btn-coral:active{transform:scale(.97)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--touch);height:var(--touch);border-radius:var(--radius);background:var(--bg2);color:var(--muted);border:1px solid var(--border);cursor:pointer;transition:background .12s,color .12s;flex-shrink:0}.btn-icon:hover{background:var(--bg3);color:var(--text)}.inp{width:100%;min-height:var(--touch);padding:0 14px;border:1.5px solid var(--border2);border-radius:var(--radius-md);font-size:15px;font-family:var(--font);color:var(--text);background:var(--bg);transition:border-color .15s,box-shadow .15s;-webkit-appearance:none}.inp:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #00909026}.dark .inp:focus{box-shadow:0 0 0 3px #14b5b533}.inp::-moz-placeholder{color:var(--muted)}.inp::placeholder{color:var(--muted)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px;white-space:nowrap}.divider{height:1px;background:var(--border);margin:16px 0}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg)}.table-wrap table{width:100%;min-width:480px;border-collapse:collapse;font-size:13px}.table-wrap th{background:var(--bg2);padding:10px 12px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap}.table-wrap td{padding:10px 12px;border-bottom:1px solid var(--border);color:var(--text)}.table-wrap tr:last-child td{border-bottom:none}.table-wrap tr:hover td{background:var(--bg2)}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.alert{padding:12px 16px;border-radius:var(--radius);font-size:13px;font-weight:500;line-height:1.5;margin-bottom:14px}.alert-info{background:var(--brand-light);color:var(--brand-dark)}.alert-warning{background:var(--gold-light);color:var(--gold-dark)}.alert-error{background:var(--red-light);color:var(--red-dark)}.alert-success{background:var(--green-light);color:var(--green-dark)}.dark .alert-info{color:#5fd4d4;border:.5px solid rgba(20,181,181,.3)}.dark .alert-warning{color:var(--gold-dark);border:.5px solid rgba(240,176,64,.3)}.dark .alert-error{color:var(--red-dark);border:.5px solid rgba(255,80,80,.3)}.dark .alert-success{color:var(--green-dark);border:.5px solid rgba(20,181,140,.3)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.nav-btn{min-height:36px}@media print{.no-print{display:none!important}}@keyframes yc-pulse{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.4);opacity:0}}@keyframes yc-bar{0%,to{transform:scaleY(.6)}50%{transform:scaleY(1.2)}}@keyframes ycSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes ycScaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes ycFadeIn{0%{opacity:0}to{opacity:1}}@keyframes ycPulseUrgent{0%,to{background-color:var(--bg)}50%{background-color:var(--red-light)}}@keyframes ycPulseUrgentFast{0%,to{opacity:1}50%{opacity:.7}}@media (max-width: 520px){.yc-thematique-row{grid-template-columns:1fr 36px!important;grid-template-areas:"label trash" "tarif trash"!important}.yc-thematique-row>input[type=text]:first-child{grid-area:label}.yc-thematique-row>div{grid-area:tarif}.yc-thematique-row>button{grid-area:trash;align-self:start;height:auto!important;min-height:36px}}.yc-settings-grid{-moz-column-count:1;column-count:1;-moz-column-gap:16px;column-gap:16px}.yc-settings-grid>*{-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid}.yc-settings-grid>.yc-settings-wide{-moz-column-span:all;column-span:all;-webkit-column-span:all}@media (min-width: 900px){.yc-settings-grid{-moz-column-count:2;column-count:2}}Sur mobile,on masque l'en-tête colonne et on bascule les inputs sur 2 lignes :
description sur sa propre ligne,puis qté + PU + total + delete sur ligne suivante. */ @media (max-width: 520px){.yc-lignes-header{display:none!important}.yc-ligne-row{grid-template-columns:1fr 32px!important;grid-template-areas:"desc del" "qty del" "pu del" "tot del"!important;gap:4px!important;padding:8px;background:var(--bg);border-radius:6px;margin-bottom:8px!important}.yc-ligne-row>input:nth-child(1){grid-area:desc}.yc-ligne-row>input:nth-child(2){grid-area:qty}.yc-ligne-row>input:nth-child(3){grid-area:pu}.yc-ligne-row>div:nth-child(4){grid-area:tot;text-align:left!important}.yc-ligne-row>button{grid-area:del;align-self:start}}.spin{animation:ycSpin 1s linear infinite}@keyframes ycPageEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-transition{animation:ycPageEnter .2s cubic-bezier(.2,.8,.2,1);will-change:opacity,transform}@media (prefers-reduced-motion: reduce){.page-transition{animation:none}}@keyframes ycSpin{to{transform:rotate(360deg)}}.yc-spin{animation:ycSpin .8s linear infinite}
