:root {
    --ink: #222d35;
    --muted: #6f7880;
    --line: #e5e8ea;
    --surface: #ffffff;
    --canvas: #f6f7f8;
    --nav: #182128;
    --nav-soft: #2b3740;
    --brand: #d72323;
    --brand-bright: #f04b4b;
    --brand-dark: #b31a1a;
    --brand-soft: #fce9e9;
    --brand-rgb: 215, 35, 35;
    --brand-light: #ffc0c0;
    --brand-contrast: #ffffff;
    --accent: #222d35;
    --green: #1fa971;
    --green-soft: #e6f8f1;
    --amber: #d78a12;
    --amber-soft: #fff5dc;
    --red: #d72323;
    --red-soft: #fce9e9;
    --shadow: 0 14px 40px rgba(34, 45, 53, .09);
    --shadow-sm: 0 8px 24px rgba(34, 45, 53, .07);
    --text: var(--ink);
    --border: var(--line);
    --surface-muted: var(--canvas);
    --primary: var(--brand);
    --radius: 18px;
}

.nova-recorder-result[hidden],
.dialog-footer [hidden] {
    display: none !important;
}

/* Nova Marches */
.tender-heading h1 { max-width: 780px; }
.tender-trust { display:flex; align-items:center; gap:18px; margin:0 0 22px; padding:15px 18px; border:1px solid var(--border); border-left:4px solid var(--primary); border-radius:14px; background:var(--surface); }
.tender-trust strong { white-space:nowrap; }
.tender-trust span { color:var(--muted); line-height:1.45; }
.tender-row-urgent td:first-child { border-left:3px solid #c93f31; }
.tender-control-count { font-weight:750; color:#277354; }
.tender-control-count.has-missing,.text-danger { color:#b42318; }
.badge-tender-received,.badge-tender-analysis { background:#eaf1ff;color:#295ba7; }
.badge-tender-waiting_client,.badge-tender-review { background:#fff0df;color:#9a5712; }
.badge-tender-drafting { background:#f2edff;color:#6548b7; }
.badge-tender-ready,.badge-tender-submitted,.badge-tender-won { background:#e7f7ef;color:#18794e; }
.badge-tender-lost,.badge-tender-abandoned { background:#f1f2f4;color:#667085; }
.tender-deadline { display:grid; grid-template-columns:auto auto 1fr; align-items:center; gap:24px; margin-bottom:18px; padding:18px 22px; border:1px solid var(--border); border-radius:18px; background:linear-gradient(135deg,var(--surface),var(--surface-muted)); }
.tender-deadline div { display:grid; gap:3px; }
.tender-deadline span,.tender-deadline small { color:var(--muted); }
.tender-deadline b { padding:8px 12px; border-radius:999px; background:var(--brand-soft); color:var(--brand-dark); }
.tender-deadline small { justify-self:end; }
.tender-deadline.is-urgent { border-color:#e4a398; background:#fff7f5; }
.tender-tabs { position:sticky; top:10px; z-index:4; width:100%; }
.tender-progress-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:22px; }
.tender-progress-card { padding:20px; }
.tender-progress-card > span,.tender-progress-card small { display:block; color:var(--muted); }
.tender-progress-card strong { display:block; margin:7px 0 12px; font-size:1.8rem; }
.tender-progress-card > div { height:8px; overflow:hidden; margin-bottom:9px; border-radius:999px; background:var(--surface-muted); }
.tender-progress-card i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--primary),var(--brand-bright)); }
.tender-progress-card.tender-score { color:#fff; border-color:var(--nav); background:linear-gradient(145deg,var(--nav),var(--nav-soft)); }
.tender-progress-card.tender-score > span,.tender-progress-card.tender-score small { color:rgba(255,255,255,.7); }
.tender-two-columns { display:grid; grid-template-columns:1fr 1fr; gap:22px; align-items:start; margin-bottom:22px; }
.tender-document-list { display:grid; }
.tender-document-list a { display:grid; grid-template-columns:45px 1fr auto; gap:12px; align-items:center; padding:13px 18px; border-top:1px solid var(--border); color:inherit; text-decoration:none; }
.tender-document-list a:hover { background:var(--surface-muted); }
.tender-document-list small { display:block; margin-top:3px; color:var(--muted); }
.tender-file-icon { display:grid; place-items:center; min-height:36px; padding:3px; border-radius:9px; background:var(--brand-soft); color:var(--brand-dark); font-size:.65rem; font-weight:850; }
.tender-upload { display:grid; grid-template-columns:1fr 1.5fr auto; gap:9px; padding:16px 18px; border-top:1px solid var(--border); background:var(--surface-muted); }
.tender-profile,.tender-requirements,.tender-result { margin-bottom:22px; scroll-margin-top:85px; }
.tender-requirement-list,.tender-section-list { display:grid; }
.tender-requirement,.tender-section { border-top:1px solid var(--border); }
.tender-requirement summary,.tender-section summary { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:17px 20px; cursor:pointer; list-style:none; }
.tender-requirement summary::-webkit-details-marker,.tender-section summary::-webkit-details-marker { display:none; }
.tender-requirement summary span:first-child,.tender-section summary span:nth-child(2) { display:grid; gap:5px; }
.tender-requirement summary small,.tender-section summary small { color:var(--muted); }
.tender-requirement > form,.tender-section > form { padding:18px 20px; background:var(--surface-muted); border-top:1px solid var(--border); }
.tender-requirement.status-missing { border-left:3px solid #c13b31; }
.tender-requirement.status-partial { border-left:3px solid #d58a18; }
.tender-requirement.status-covered { border-left:3px solid #23805b; }
.badge-requirement-missing { background:#fff0ed;color:#b42318; }
.badge-requirement-partial { background:#fff4d8;color:#8a5b00; }
.badge-requirement-covered { background:#e7f7ef;color:#18794e; }
.badge-requirement-not_applicable { background:#f2f3f5;color:#667085; }
.tender-add { padding:18px 20px; border-top:1px solid var(--border); }
.tender-add > summary { cursor:pointer; color:var(--primary); font-weight:800; }
.tender-add > form { margin-top:18px; }
.tender-section summary { justify-content:flex-start; }
.tender-section-number { display:grid; place-items:center; width:42px; height:42px; flex:0 0 42px; border-radius:13px; background:var(--surface-muted); color:var(--primary); font-weight:850; }
.tender-content { min-height:300px; line-height:1.6; }
.tender-section-controls { display:flex; justify-content:flex-end; align-items:end; gap:12px; margin-top:12px; }
.tender-section-controls label { display:grid; gap:5px; color:var(--muted); font-size:.78rem; font-weight:750; }
.tender-section-controls input { max-width:90px; }
.tender-fee { display:grid; grid-template-columns:1fr auto; gap:4px 20px; margin:0 20px; padding:20px; border-radius:16px; background:linear-gradient(145deg,#f2faf5,#e7f7ef); }
.tender-fee span { font-weight:750; }
.tender-fee strong { grid-row:1 / 3; grid-column:2; align-self:center; color:#176640; font-size:1.8rem; }
.tender-fee small { color:#4f6f60; }

@media (max-width:1100px){.tender-progress-grid{grid-template-columns:repeat(2,1fr)}.tender-two-columns{grid-template-columns:1fr}.tender-deadline small{justify-self:start}.tender-deadline{grid-template-columns:auto auto}.tender-deadline small{grid-column:1/-1}}
@media (max-width:700px){.tender-trust{align-items:flex-start;flex-direction:column;gap:9px}.tender-trust strong{white-space:normal}.tender-progress-grid{grid-template-columns:1fr 1fr}.tender-deadline{grid-template-columns:1fr}.tender-deadline small{grid-column:auto}.tender-upload{grid-template-columns:1fr}.tender-section-controls{align-items:stretch;flex-direction:column}.tender-section-controls input{max-width:none}.tender-fee{grid-template-columns:1fr}.tender-fee strong{grid-row:auto;grid-column:auto}.tender-requirement summary{align-items:flex-start;flex-direction:column}}
@media (max-width:460px){.tender-progress-grid{grid-template-columns:1fr}}

/* Nova Operations */
.operations-head { align-items: flex-end; }
.operations-head h1 { max-width: 780px; }
.operations-metrics { grid-template-columns: repeat(5,minmax(0,1fr)); }
.metric-alert { border-color: #f0b7ad!important; background: #fff7f4!important; }
.metric-alert strong { color: #b33122!important; }
.operations-module-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin:22px 0; }
.operations-module-card { position:relative; overflow:hidden; min-height:260px; padding:30px; border:1px solid var(--border); border-radius:24px; background:#fff; color:var(--text); text-decoration:none; display:flex; flex-direction:column; justify-content:space-between; box-shadow:var(--shadow-sm); transition:.2s ease; }
.operations-module-card:hover { transform:translateY(-3px); box-shadow:var(--shadow); }
.operations-module-card:before { content:""; position:absolute; width:220px; height:220px; border-radius:50%; right:-70px; top:-90px; opacity:.45; }
.operations-module-card.ov:before { background:#dce8ff; }
.operations-module-card.farm:before { background:#f7e8bd; }
.operations-module-card h2 { margin:6px 0 8px; font-size:1.65rem; }
.operations-module-card p { max-width:520px; margin:0; color:var(--muted); line-height:1.6; }
.operations-module-card > strong { color:var(--primary); }
.module-symbol { position:absolute; right:24px; top:20px; z-index:1; width:72px; height:72px; display:grid; place-items:center; border-radius:22px; font-weight:850; font-size:1.2rem; background:rgba(255,255,255,.82); border:1px solid rgba(0,0,0,.06); }
.operations-flow-panel { margin-top:22px; }
.operations-flow { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.operations-flow span { padding:11px 14px; border-radius:999px; background:var(--surface-muted); border:1px solid var(--border); font-weight:700; }
.operations-flow b { color:var(--primary); }
.split-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.compact-form { gap:14px; }
.compact-form label > span, .delivery-fields label > span, .delivery-form > label > span { display:block; margin-bottom:6px; font-size:.8rem; font-weight:750; color:var(--muted); }
.sync-card { padding:22px; border-radius:18px; background:var(--surface-muted); border:1px solid var(--border); display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.sync-card > strong { font-size:1.05rem; }
.sync-card > span { color:var(--muted); }
.operations-table td small { display:block; margin-top:4px; color:var(--muted); }
.operations-table tr.row-alert td:first-child { border-left:3px solid #d15b47; }
.operations-table .muted { color:var(--muted); }
.status-inline-form { margin:0; }
.status-inline-form select { min-width:130px; padding:7px 9px; font-size:.82rem; }
.operations-forms { margin-top:22px; align-items:start; }
.operations-dashboard-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:22px; margin-bottom:22px; align-items:start; }
.farm-head .eyebrow, .price-recommendation .eyebrow { color:#8b6213; }
.farm-metrics .metric-highlight, .analytics-metrics .metric-highlight { background:linear-gradient(145deg,#173f2b,#245d40); color:#fff; border-color:#173f2b; }
.farm-metrics .metric-highlight span,.farm-metrics .metric-highlight small,.analytics-metrics .metric-highlight span,.analytics-metrics .metric-highlight small { color:#dcebdd; }
.farm-metrics .metric-highlight strong,.analytics-metrics .metric-highlight strong { color:#fff; }
.inline-details { border-top:1px solid var(--border); padding-top:14px; margin-top:18px; }
.inline-details summary { cursor:pointer; color:var(--primary); font-weight:700; }
.inline-form { display:grid; grid-template-columns:1fr 1fr 1fr auto; gap:10px; margin-top:12px; }
.production-list { display:flex; flex-direction:column; }
.production-list article { display:grid; grid-template-columns:48px 1fr auto; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--border); }
.production-list time { width:44px; height:44px; display:grid; place-items:center; border-radius:13px; background:#f6edcf; color:#705111; font-weight:800; }
.production-list small { display:block; color:var(--muted); margin-top:3px; }
.production-list > article > span { color:var(--muted); font-size:.85rem; }
.analytics-grid { margin-bottom:22px; }
.price-recommendation { background:linear-gradient(145deg,#fffdf6,#f6ecd0); border-color:#ead7a3; }
.price-lines { margin:20px 0; }
.price-lines > div { display:flex; justify-content:space-between; gap:18px; padding:12px 0; border-bottom:1px solid rgba(112,81,17,.14); }
.price-recommendation p { color:#665a40; line-height:1.6; }
.cost-breakdown { display:flex; flex-direction:column; gap:14px; }
.cost-breakdown > div { display:grid; grid-template-columns:150px 1fr 100px; gap:12px; align-items:center; }
.cost-breakdown strong { text-align:right; }
.cost-bar { height:9px; border-radius:999px; background:var(--surface-muted); overflow:hidden; }
.cost-bar i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#dcae42,#173f2b); }
.year-picker { padding:12px 16px; background:#fff; border:1px solid var(--border); border-radius:14px; }
.year-picker label { display:flex; align-items:center; gap:10px; font-weight:700; }
.operations-tabs { display:flex; gap:7px; padding:5px; margin-bottom:22px; width:max-content; max-width:100%; overflow:auto; border-radius:14px; background:var(--surface-muted); border:1px solid var(--border); }
.operations-tabs a { padding:9px 15px; border-radius:10px; text-decoration:none; color:var(--muted); white-space:nowrap; font-weight:700; }
.operations-tabs a.active { background:#fff; color:var(--text); box-shadow:0 2px 8px rgba(20,32,45,.07); }
.tour-list { display:flex; flex-direction:column; gap:7px; }
.tour-list > a { display:grid; grid-template-columns:48px 1fr auto; gap:12px; align-items:center; padding:12px; border:1px solid transparent; border-radius:14px; text-decoration:none; color:var(--text); }
.tour-list > a:hover,.tour-list > a.active { background:var(--surface-muted); border-color:var(--border); }
.tour-list time { font-weight:800; color:var(--primary); }
.tour-list small { display:block; color:var(--muted); margin-top:3px; }
.tour-workbench { margin-top:22px; }
.tour-stops-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:22px; }
.tour-stop-stack { display:flex; flex-direction:column; gap:12px; }
.tour-stop { display:grid; grid-template-columns:42px 1fr auto; gap:14px; align-items:center; padding:16px; border:1px solid var(--border); border-radius:17px; background:#fff; }
.tour-stop.status-delivered { background:#f2faf5; border-color:#b9dcc6; }
.stop-number { width:38px; height:38px; border-radius:50%; display:grid; place-items:center; background:var(--primary); color:#fff; font-weight:850; }
.tour-stop p { margin:3px 0; color:var(--muted); }
.tour-stop small { color:var(--muted); }
.stop-actions { display:flex; gap:8px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
.stop-actions > a:not(.btn) { color:var(--primary); font-size:.85rem; }
.available-stops { border-left:1px solid var(--border); padding-left:22px; }
.available-stops h3 { margin-top:0; }
.available-stop { display:grid; grid-template-columns:1fr 72px 72px auto; gap:7px; align-items:center; padding:11px 0; border-bottom:1px solid var(--border); }
.available-stop small { display:block; color:var(--muted); margin-top:3px; }
.available-stop input[type=time] { padding:8px 5px; }
.delivery-mobile-shell { max-width:720px; margin:0 auto; }
.delivery-mobile-head { display:flex; justify-content:space-between; gap:15px; align-items:center; margin-bottom:18px; color:var(--muted); }
.delivery-mobile-head a { color:var(--primary); text-decoration:none; font-weight:750; }
.delivery-recipient-card,.delivery-form,.delivery-done-card { padding:24px; margin-bottom:18px; background:#fff; border:1px solid var(--border); border-radius:24px; box-shadow:var(--shadow-sm); }
.delivery-recipient-card h1 { margin:5px 0; font-size:2rem; }
.delivery-recipient-card > p { color:var(--muted); }
.delivery-quantity { display:flex; justify-content:space-between; align-items:center; margin-top:22px; padding:16px; border-radius:16px; background:#f4f8f5; }
.delivery-quantity strong { font-size:1.25rem; color:#173f2b; }
.delivery-shortcuts { display:flex; gap:12px; margin-top:15px; }
.delivery-shortcuts a { flex:1; padding:11px; border-radius:12px; text-align:center; background:var(--surface-muted); color:var(--primary); text-decoration:none; font-weight:750; }
.delivery-fields { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.signature-card { margin:20px 0; border:1px solid var(--border); border-radius:17px; overflow:hidden; }
.signature-card > div { display:flex; justify-content:space-between; padding:12px 15px; background:var(--surface-muted); font-weight:750; }
.signature-card canvas { display:block; width:100%; height:220px; background:#fff; touch-action:none; }
.delivery-form textarea { width:100%; min-height:90px; }
.delivery-submit { width:100%; margin-top:18px; min-height:52px; }
.delivery-done-card { text-align:center; }
.delivery-check { width:70px; height:70px; margin:0 auto 12px; border-radius:50%; display:grid; place-items:center; background:#dff3e6; color:#176638; font-size:2rem; }
.delivery-done-card img { display:block; max-width:100%; max-height:180px; margin:20px auto 0; border:1px solid var(--border); border-radius:12px; }

@media (max-width:1180px){.operations-metrics{grid-template-columns:repeat(3,1fr)}.tour-stops-grid{grid-template-columns:1fr}.available-stops{border-left:0;border-top:1px solid var(--border);padding:20px 0 0}}
@media (max-width:820px){.operations-module-grid,.split-grid,.operations-dashboard-grid{grid-template-columns:1fr}.operations-metrics{grid-template-columns:1fr 1fr}.inline-form{grid-template-columns:1fr 1fr}.tour-stop{grid-template-columns:38px 1fr}.stop-actions{grid-column:2;justify-content:flex-start}.available-stop{grid-template-columns:1fr auto}.available-stop input[type=time]{display:none}.delivery-fields{grid-template-columns:1fr}.cost-breakdown>div{grid-template-columns:120px 1fr}.cost-breakdown strong{grid-column:2}.signature-card canvas{height:180px}}
@media (max-width:560px){.operations-metrics{grid-template-columns:1fr}.operations-module-card{min-height:230px;padding:22px}.module-symbol{width:58px;height:58px}.delivery-recipient-card,.delivery-form,.delivery-done-card{padding:18px;border-radius:19px}.operations-flow b{display:none}.operations-flow span{width:100%;text-align:center}}

.theme-azimuts {
    --ink: #171717;
    --muted: #786f62;
    --line: #e6dfd4;
    --surface: #ffffff;
    --canvas: #f6f3ee;
    --nav: #0d0d0d;
    --nav-soft: #25221e;
    --brand: #c9b99d;
    --brand-bright: #e0d4c0;
    --brand-dark: #756248;
    --brand-soft: #f1eadf;
    --brand-rgb: 201, 185, 157;
    --brand-light: #eadfcb;
    --brand-contrast: #171717;
    --accent: #171717;
    --shadow: 0 14px 40px rgba(54, 45, 34, .1);
}

.theme-alapagecom {
    --ink: #051e35;
    --muted: #667782;
    --line: #dce4e5;
    --surface: #ffffff;
    --canvas: #fbf7f0;
    --nav: #051e35;
    --nav-soft: #10384a;
    --brand: #f08300;
    --brand-bright: #f7a13a;
    --brand-dark: #bd5c12;
    --brand-soft: #fff0dd;
    --brand-rgb: 240, 131, 0;
    --brand-light: #ffd7ae;
    --brand-contrast: #ffffff;
    --accent: #034956;
    --shadow: 0 14px 40px rgba(5, 30, 53, .1);
}

.theme-neutral {
    --ink: #17202b;
    --muted: #66717d;
    --line: #dde4eb;
    --surface: #ffffff;
    --canvas: #f7f4ee;
    --nav: #183b66;
    --nav-soft: #244f83;
    --brand: #2d6cdf;
    --brand-bright: #e32932;
    --brand-dark: #183b66;
    --brand-soft: #e8eef8;
    --brand-rgb: 45, 108, 223;
    --brand-light: #dbe7f8;
    --brand-contrast: #ffffff;
    --accent: #183b66;
    --shadow: 0 14px 40px rgba(24, 59, 102, .1);
}

.theme-orthopedie_varoise {
    --ink: #3e4045;
    --muted: #74767d;
    --line: #e7dfe3;
    --surface: #ffffff;
    --canvas: #fbf8fa;
    --nav: #484a4f;
    --nav-soft: #595c62;
    --brand: #c9286d;
    --brand-bright: #e65392;
    --brand-dark: #9b194f;
    --brand-soft: #fae8f0;
    --brand-rgb: 201, 40, 109;
    --brand-light: #f4bdd5;
    --brand-contrast: #ffffff;
    --accent: #484a4f;
    --shadow: 0 14px 40px rgba(72, 74, 79, .1);
}

.theme-domortiz {
    --ink: #1b1915;
    --muted: #756e60;
    --line: #e5ded0;
    --surface: #ffffff;
    --canvas: #f7f3eb;
    --nav: #15130f;
    --nav-soft: #2c281f;
    --brand: #c9ac6e;
    --brand-bright: #dfc58e;
    --brand-dark: #8f7540;
    --brand-soft: #f4ecd9;
    --brand-rgb: 201, 172, 110;
    --brand-light: #ead8ae;
    --brand-contrast: #15130f;
    --accent: #201d17;
    --shadow: 0 14px 40px rgba(31, 27, 20, .11);
}

* { box-sizing: border-box; }
html { max-width: 100%; overflow-x: hidden; scroll-behavior: smooth; overscroll-behavior-x: none; }
body {
    max-width: 100%;
    overflow-x: hidden;
    overscroll-behavior-x: none;
    margin: 0;
    color: var(--ink);
    background: var(--canvas);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 14px;
    line-height: 1.5;
}
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, .btn { cursor: pointer; }
img { max-width: 100%; }

.app-shell { width: 100%; max-width: 100%; min-height: 100vh; overflow-x: hidden; overflow-x: clip; }
.sidebar {
    position: fixed;
    z-index: 40;
    inset: 0 auto 0 0;
    width: 252px;
    display: flex;
    flex-direction: column;
    color: #c9cad7;
    background:
        radial-gradient(circle at 20% 5%, rgba(var(--brand-rgb), .28), transparent 32%),
        var(--nav);
    padding: 22px 16px 18px;
}
.brand {
    display: flex;
    align-items: center;
    gap: 11px;
    color: #fff;
    padding: 0 10px 24px;
    font-weight: 800;
    font-size: 19px;
    letter-spacing: -.4px;
}
.brand-mark {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    background: linear-gradient(135deg, var(--brand), var(--brand-bright));
    box-shadow: 0 8px 20px rgba(var(--brand-rgb), .3);
    color: var(--brand-contrast);
    font-weight: 900;
}
.brand-groupedev, .brand-azimuts, .brand-alapagecom, .brand-orthopedie_varoise, .brand-domortiz { display: grid; gap: 5px; padding: 0 6px 18px; }
.brand-logo-frame { width: 100%; height: 58px; display: flex; align-items: center; justify-content: center; padding: 6px 9px; border-radius: 12px; }
.brand-logo-frame img { display: block; width: 100%; max-height: 46px; object-fit: contain; }
.brand-groupedev .brand-logo-frame, .brand-azimuts .brand-logo-frame, .brand-orthopedie_varoise .brand-logo-frame, .brand-domortiz .brand-logo-frame { background: #fff; }
.brand-alapagecom .brand-logo-frame { background: #051e35; }
.brand small { color: #a7a9b5; font-size: 9px; text-align: right; text-transform: uppercase; letter-spacing: .16em; }
.workspace-switch { padding: 0 4px 17px; margin-bottom: 10px; border-bottom: 1px solid rgba(255,255,255,.08); }
.workspace-switch label { display: block; padding: 0 7px 5px; font-size: 10px; text-transform: uppercase; letter-spacing: .12em; color: #85879b; }
.workspace-switch select {
    width: 100%;
    border: 0;
    border-radius: 10px;
    padding: 9px 10px;
    color: white;
    background: var(--nav-soft);
    outline: none;
}
.nav-group-title { padding: 15px 12px 7px; font-size: 10px; text-transform: uppercase; letter-spacing: .13em; color: #717388; font-weight: 700; }
.nav-link {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 10px 12px;
    margin: 2px 0;
    border-radius: 11px;
    font-weight: 600;
    transition: .18s ease;
}
.nav-link:hover { background: rgba(255,255,255,.06); color: white; }
.nav-link.active { color: white; background: linear-gradient(90deg, rgba(var(--brand-rgb), .5), rgba(var(--brand-rgb), .13)); }
.nav-icon { width: 22px; text-align: center; color: #9698aa; font-size: 16px; }
.nav-link.active .nav-icon { color: var(--brand-light); }
.nav-section { margin: 3px 0; }
.nav-section > summary {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 10px 12px;
    border-radius: 11px;
    color: #c9cad7;
    font-weight: 700;
    list-style: none;
    cursor: pointer;
    transition: .18s ease;
}
.nav-section > summary::-webkit-details-marker { display: none; }
.nav-section > summary:hover, .nav-section[open] > summary { color: #fff; background: rgba(255,255,255,.06); }
.nav-section[open] > summary .nav-icon { color: var(--brand-light); }
.nav-chevron { margin-left: auto; color: #818496; font-size: 18px; line-height: 1; transition: transform .18s ease; }
.nav-section[open] .nav-chevron { transform: rotate(90deg); }
.nav-submenu { margin: 2px 0 8px 17px; padding: 2px 0 2px 8px; border-left: 1px solid rgba(255,255,255,.1); }
.nav-submenu .nav-link { gap: 8px; padding: 8px 9px; margin: 1px 0; border-radius: 9px; font-size: 12px; }
.nav-submenu .nav-icon { width: 19px; font-size: 13px; }
.nav-section-nested { margin: 1px 0; }
.nav-section-nested > summary { gap: 8px; padding: 8px 9px; border-radius: 9px; font-size: 12px; }
.nav-section-nested > .nav-submenu { margin-left: 14px; margin-bottom: 3px; }
.sidebar-footer { margin-top: auto; }
.sidebar nav { min-height: 0; overflow-y: auto; padding-right: 3px; }
.user-card { display: flex; align-items: center; gap: 10px; padding: 12px 9px; border-top: 1px solid rgba(255,255,255,.08); }
.avatar {
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: var(--brand-contrast);
    background: linear-gradient(135deg, var(--brand), var(--brand-bright));
    font-size: 12px;
    font-weight: 800;
}
.user-meta { min-width: 0; flex: 1; }
.user-meta strong, .user-meta span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.user-meta strong { color: white; font-size: 13px; }
.user-meta span { font-size: 11px; color: #87899a; text-transform: capitalize; }
.logout-button { border: 0; padding: 6px; background: transparent; color: #85879a; }

.main { width: calc(100% - 252px); min-width: 0; min-height: 100vh; margin-left: 252px; }
.topbar {
    height: 74px;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 0 30px;
    background: rgba(255,255,255,.88);
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--line);
    position: sticky;
    top: 0;
    z-index: 30;
}
.mobile-toggle { display: none; border: 0; background: transparent; font-size: 23px; }
.global-search { width: min(500px, 45vw); position: relative; }
.global-search input {
    width: 100%;
    padding: 10px 14px 10px 40px;
    border: 1px solid transparent;
    background: #f1f3f8;
    border-radius: 12px;
    outline: none;
    transition: .2s;
}
.global-search input:focus { border-color: var(--brand); background: #fff; box-shadow: 0 0 0 4px rgba(var(--brand-rgb), .1); }
.global-search::before { content: "⌕"; position: absolute; left: 14px; top: 6px; color: var(--muted); font-size: 22px; }
.topbar-spacer { flex: 1; }
.locale-switch select {
    min-width: 108px;
    padding: 9px 30px 9px 11px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background-color: #fff;
    color: var(--ink);
    font: inherit;
}
.sr-only {
    position: absolute !important;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0);
    white-space: nowrap; border: 0;
}
.auth-locale-switch { display: flex; justify-content: flex-end; gap: 6px; margin-bottom: 18px; }
.auth-locale-switch a { padding: 5px 8px; border-radius: 8px; color: var(--muted); font-size: 12px; font-weight: 700; }
.auth-locale-switch a[aria-current="true"] { background: var(--canvas); color: var(--brand); }
.quick-add { position: relative; }
.quick-add summary { list-style: none; }
.quick-add summary::-webkit-details-marker { display: none; }
.quick-menu {
    position: absolute;
    right: 0;
    top: 44px;
    min-width: 210px;
    padding: 8px;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 13px;
    box-shadow: var(--shadow);
}
.quick-menu a { display: block; padding: 9px 11px; border-radius: 8px; }
.quick-menu a:hover { background: var(--canvas); }
.content { width: 100%; min-width: 0; padding: 30px; max-width: 1700px; margin: 0 auto; }
.page-heading, .page-header, .page-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
.page-heading h1, .page-header h1, .page-head h1 { margin: 0; font-size: clamp(24px, 3vw, 32px); letter-spacing: -.8px; line-height: 1.2; }
.page-heading p, .page-header p, .page-head p { margin: 7px 0 0; color: var(--muted); }
.page-actions { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 9px 15px;
    border: 1px solid var(--line);
    border-radius: 11px;
    color: var(--ink);
    background: #fff;
    font-weight: 700;
    line-height: 1;
    transition: .18s ease;
}
.btn:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(34,36,60,.09); }
.btn-primary { color: var(--brand-contrast); border-color: var(--brand); background: var(--brand); }
.btn-primary:hover { background: var(--brand-dark); }
.btn-danger { color: var(--red); background: var(--red-soft); border-color: transparent; }
.btn-ghost { border-color: transparent; background: transparent; }
.btn-sm { min-height: 32px; padding: 7px 10px; font-size: 12px; border-radius: 9px; }
.btn-block { width: 100%; }

.flash-stack { display: grid; gap: 8px; margin-bottom: 18px; }
.flash { display: flex; align-items: center; justify-content: space-between; padding: 12px 15px; border-radius: 11px; border: 1px solid; }
.flash-success { color: #166a4a; border-color: #aee2cc; background: var(--green-soft); }
.flash-error { color: #9e3548; border-color: #f0b9c2; background: var(--red-soft); }
.flash button { border: 0; background: transparent; color: inherit; font-size: 18px; }
.flash + .phone-metrics, .flash + .filters { margin-top: 20px; }
.content > .card + .card, .content > .ng-management + .card { margin-top: 20px; }
.api-secret-warning { padding: 15px; border: 1px solid #f0ca80; border-radius: 12px; background: var(--amber-soft); }
.api-secret-warning p { margin: 4px 0 12px; color: var(--muted); }
.api-secret-warning code { overflow-wrap: anywhere; }

.grid { display: grid; gap: 18px; }
.grid-2, .grid-3, .grid-4 { display: grid; gap: 18px; }
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.metrics-row { margin-bottom: 22px; }
.sentinel-metrics { margin-bottom: 20px; }
.sentinel-drive { margin-bottom: 20px; }
.sentinel-drive-body { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.sentinel-drive-body p { margin-bottom: 0; }
.sentinel-level { width: 34px; height: 34px; display: inline-grid; place-items: center; flex: 0 0 auto; border-radius: 11px; font-weight: 900; font-size: 12px; }
.sentinel-level.level-1 { color: #24745a; background: var(--green-soft); }
.sentinel-level.level-2 { color: #3a62a8; background: #eaf1ff; }
.sentinel-level.level-3 { color: var(--brand-dark); background: var(--brand-soft); }
.sentinel-entity-mark { color: var(--brand-dark); background: var(--brand-soft); }
.sentinel-alert-critical { color: #a82b41 !important; background: var(--red-soft) !important; }
.sentinel-alert-warning { color: #a8640c !important; background: var(--amber-soft) !important; }
.sentinel-alert-info { color: #3269a9 !important; background: #eaf3ff !important; }
.sentinel-form { max-width: 1050px; margin: 0 auto; }
.sentinel-level-options { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; }
.sentinel-level-option { display: flex; align-items: flex-start; gap: 11px; padding: 15px; border: 1px solid var(--line); border-radius: 14px; cursor: pointer; }
.sentinel-level-option:has(input:checked) { border-color: var(--brand); box-shadow: 0 0 0 3px rgba(var(--brand-rgb), .1); }
.sentinel-level-option input { position: absolute; opacity: 0; pointer-events: none; }
.sentinel-level-option strong, .sentinel-level-option small { display: block; }
.sentinel-level-option small { margin-top: 4px; color: var(--muted); line-height: 1.4; }
.checkbox-field { align-self: end; min-height: 44px; display: flex; align-items: center; }
.checkbox-field input { width: auto; margin-right: 7px; }
.sentinel-site-heading h1 { margin-top: 8px; }
.sentinel-date-value, .sentinel-agent-value { font-size: 20px; line-height: 1.15; }
.sentinel-tabs { margin: 22px 0; }
.sentinel-tabs + [data-sentinel-panel] { margin-top: 0; }
[data-sentinel-panel][hidden] { display: none !important; }
.sentinel-incident-origin{width:max-content;max-width:100%;margin:10px 0;padding:9px 11px;border:1px solid var(--line);border-radius:12px;color:inherit;background:var(--canvas);text-decoration:none}.sentinel-incident-origin:hover{border-color:var(--brand);background:var(--brand-soft)}.sentinel-incident-origin-compact{margin:0;background:var(--surface)}
@media(max-width:700px){#incidents>.card-header{align-items:flex-start;flex-direction:column}.sentinel-incident-origin-compact{width:100%}}
.sentinel-protection { display: flex; align-items: flex-start; gap: 13px; padding: 18px; opacity: .55; }
.sentinel-protection.active { opacity: 1; border-color: rgba(var(--brand-rgb), .22); }
.sentinel-protection h2 { margin: 0 0 3px; font-size: 15px; }
.sentinel-protection p { margin: 0; color: var(--muted); font-size: 12px; }
.sentinel-protection-grid, #incidents, #integrity, #installation, #backups { margin-bottom: 20px; scroll-margin-top: 92px; }
.sentinel-resolved { opacity: .66; }
.sentinel-path { display: block; max-width: 420px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
#integrity td small { display: block; margin-top: 3px; }
.sentinel-install-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; margin-bottom: 20px; }
.sentinel-install-grid article { display: flex; gap: 11px; }
.sentinel-install-grid h3 { margin: 0 0 4px; font-size: 14px; }
.sentinel-install-grid p { margin: 0; }
.sentinel-install-number { width: 30px; height: 30px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 10px; background: var(--brand-soft); color: var(--brand-dark); font-weight: 900; }
.sentinel-cron-help { margin-top: 20px; }
.sentinel-cron-help code { display: block; margin-top: 8px; }
.sentinel-backup-policy { display: flex; flex-wrap: wrap; gap: 10px; }
.sentinel-backup-policy span { padding: 8px 11px; border-radius: 10px; background: var(--canvas); }
.sentinel-danger-zone { margin-top: 20px; border-color: rgba(215,35,35,.22); }

.card.toolbox-hero { display: flex; align-items: center; justify-content: space-between; gap: 40px; min-height: 230px; margin-bottom: 20px; padding: 34px; overflow: hidden; color: #fff; border: 0; background: radial-gradient(circle at 85% 25%, rgba(var(--brand-rgb),.5), transparent 32%), linear-gradient(135deg,#161d24,#29323c); }
.toolbox-hero-copy { max-width: 760px; }
.toolbox-hero h2 { margin: 5px 0 10px; color: #fff; font-size: 32px; }
.toolbox-hero p { max-width: 720px; margin: 0 0 22px; color: #d7dde3; font-size: 15px; line-height: 1.6; }
.toolbox-hero .text-muted { color: #c7cfd7; }
.toolbox-kicker { color: #ffb5b5; font-size: 11px; font-weight: 900; letter-spacing: .18em; }
.toolbox-wordpress-mark { width: 145px; height: 145px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid rgba(255,255,255,.22); border-radius: 38px; background: rgba(255,255,255,.09); box-shadow: inset 0 1px rgba(255,255,255,.13); transform: rotate(3deg); }
.toolbox-wordpress-mark span { font-family: Georgia,serif; font-size: 72px; line-height: .8; }
.toolbox-wordpress-mark small { font-size: 9px; font-weight: 900; letter-spacing: .2em; }
.toolbox-feature-grid, .toolbox-details { margin-bottom: 20px; }
.toolbox-feature { display: flex; align-items: flex-start; gap: 14px; padding: 20px; }
.toolbox-feature h2 { margin: 1px 0 5px; font-size: 15px; }
.toolbox-feature p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.5; }
.toolbox-feature-icon { width: 40px; height: 40px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 13px; color: var(--brand-dark); background: var(--brand-soft); font-size: 18px; font-weight: 900; }
.toolbox-steps { display: grid; gap: 17px; margin: 0; padding: 0; list-style: none; }
.toolbox-steps li { display: flex; align-items: flex-start; gap: 12px; }
.toolbox-steps li > span { width: 30px; height: 30px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 10px; color: var(--brand-dark); background: var(--brand-soft); font-weight: 900; }
.toolbox-steps p { margin: 3px 0 0; color: var(--muted); font-size: 12px; }
.toolbox-hash { display: block; max-width: 100%; overflow-wrap: anywhere; font-size: 10px; }
.toolbox-security { margin-bottom: 20px; }
.toolbox-security p { margin: 5px 0 0; font-size: 12px; line-height: 1.45; }
.toolbox-intervention-card { margin-top: 20px; scroll-margin-top: 20px; }
.toolbox-connection-panel, .toolbox-session-active { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 18px; border: 1px solid var(--line); border-radius: 14px; background: var(--canvas); }
.toolbox-connection-panel p, .toolbox-session-active p { margin: 4px 0 0; }
.toolbox-session-active { border-color: rgba(30,158,109,.28); background: var(--green-soft); }
.toolbox-live-dot { width: 10px; height: 10px; display: inline-block; margin-right: 7px; border-radius: 50%; background: #1e9e6d; box-shadow: 0 0 0 5px rgba(30,158,109,.12); }
.toolbox-action-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
.toolbox-action { display: grid; grid-template-columns: 40px 1fr auto; align-items: center; gap: 12px; padding: 15px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); }
.toolbox-action > span { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 12px; color: var(--brand-dark); background: var(--brand-soft); font-weight: 900; }
.toolbox-action strong { font-size: 13px; }
.toolbox-action p { margin: 3px 0 0; color: var(--muted); font-size: 11px; line-height: 1.35; }
.toolbox-action:last-child { grid-column: span 2; }
.toolbox-duration, .toolbox-connection-meta { display: flex; flex-wrap: wrap; gap: 8px 18px; margin-top: 15px; color: var(--muted); font-size: 11px; }
.toolbox-connection-meta { padding-top: 15px; border-top: 1px solid var(--line); }
.toolbox-connection-meta strong, .toolbox-duration strong { color: var(--text); }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(300px, .8fr); gap: 20px; margin-top: 20px; }
.dashboard-focus-heading { display: grid; grid-template-columns: minmax(260px, 1fr) auto; align-items: start; }
.dashboard-focus-heading > div:first-child { min-width: 0; }
.dashboard-focus-heading > .page-actions { flex-wrap: nowrap; justify-content: flex-end; }
.dashboard-focus-heading .btn, .dashboard-next-appointment-compact { white-space: nowrap; }
.dashboard-next-appointment-compact { display: grid; gap: 2px; min-width: 128px; padding: 7px 12px; border: 1px solid color-mix(in srgb, var(--brand) 28%, var(--line)); border-radius: 10px; color: var(--ink); background: var(--brand-soft); text-decoration: none; }
.dashboard-next-appointment-compact span { color: var(--muted); font-size: 8px; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.dashboard-next-appointment-compact strong { color: var(--brand-dark); font-size: 11px; line-height: 1.2; }
.dashboard-next-appointment-compact:hover { border-color: var(--brand); box-shadow: 0 4px 12px color-mix(in srgb, var(--brand) 12%, transparent); }
.dashboard-action-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}.dashboard-action-strip>a{display:grid;gap:4px;padding:17px 19px;color:inherit;text-decoration:none}.dashboard-action-strip>a:hover{border-color:color-mix(in srgb,var(--brand) 35%,var(--line));box-shadow:0 7px 22px color-mix(in srgb,var(--brand) 9%,transparent)}.dashboard-action-strip span{color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase}.dashboard-action-strip strong{font-size:25px;line-height:1}.dashboard-action-strip small{color:var(--muted);font-size:8px}.dashboard-priority-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin-bottom:20px}.dashboard-account-list{display:grid}.dashboard-account-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);color:inherit}.dashboard-account-list>a:last-child{border:0}.dashboard-account-list strong,.dashboard-account-list small{display:block}.dashboard-account-list small{margin-top:4px;color:var(--muted);font-size:9px}.dashboard-account-list>a>b{color:var(--muted)}.dashboard-secondary{margin-top:20px;overflow:hidden}.dashboard-secondary>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;cursor:pointer;list-style:none}.dashboard-secondary>summary::-webkit-details-marker{display:none}.dashboard-secondary>summary span,.dashboard-secondary>summary strong,.dashboard-secondary>summary small{display:block}.dashboard-secondary>summary strong{margin:3px 0}.dashboard-secondary>summary small{color:var(--muted)}.dashboard-secondary>summary>b{color:var(--brand);font-size:10px}.dashboard-secondary[open]>summary{border-bottom:1px solid var(--line)}.dashboard-secondary[open]>summary>b{font-size:0}.dashboard-secondary[open]>summary>b:after{content:'Masquer';font-size:10px}.dashboard-secondary-body{display:grid;gap:20px;padding:20px;background:var(--canvas)}.dashboard-analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.dashboard-analysis-grid>section{min-width:0;padding:18px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.dashboard-analysis-grid h3{margin:0 0 15px}.dashboard-forecast-row{display:grid;grid-template-columns:60px minmax(0,1fr) auto;gap:9px;align-items:center;margin:9px 0;font-size:9px}.dashboard-forecast-row>i{height:7px;overflow:hidden;border-radius:99px;background:var(--canvas)}.dashboard-forecast-row>i>b{display:block;height:100%;border-radius:99px;background:var(--brand)}
.dashboard-next-appointment { margin-top: 20px; overflow: hidden; }
.dashboard-appointment-header-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.dashboard-appointment-body { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto; gap: 18px; align-items: center; }
.dashboard-appointment-date { display: grid; place-items: center; align-content: center; width: 72px; height: 72px; border-radius: 18px; color: #fff; background: var(--brand); box-shadow: 0 9px 20px color-mix(in srgb, var(--brand) 22%, transparent); }
.dashboard-appointment-date strong { font-size: 27px; line-height: 1; }
.dashboard-appointment-date span { margin-top: 5px; font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.dashboard-appointment-copy { min-width: 0; }
.dashboard-appointment-when { color: var(--brand-dark); font-size: 10px; font-weight: 900; text-transform: uppercase; }
.dashboard-appointment-copy h3 { margin: 5px 0 4px; font-size: 18px; }
.dashboard-appointment-copy p, .dashboard-appointment-copy small { display: block; margin: 0; color: var(--muted); }
.dashboard-appointment-copy small { margin-top: 5px; }
.dashboard-appointment-actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.dashboard-reminder-status { margin: 0; padding: 10px 20px; border-top: 1px solid var(--line); color: var(--muted); background: var(--canvas); font-size: 9px; }
.dashboard-reminder-status.is-enabled { color: #176d48; background: var(--green-soft); }
.dashboard-reminder-status.is-error { color: var(--red); background: #fff0ed; }
.dashboard-next-appointment .dashboard-appointment-empty { padding: 26px 20px; }
.appointment-reminder-toast { position: fixed; z-index: 10000; right: 22px; bottom: 22px; width: min(390px, calc(100vw - 30px)); padding: 17px 18px; border: 1px solid color-mix(in srgb, var(--brand) 28%, var(--line)); border-radius: 15px; color: var(--ink); background: var(--surface); box-shadow: 0 18px 50px rgba(20,28,35,.2); }
.appointment-reminder-toast strong, .appointment-reminder-toast span { display: block; }
.appointment-reminder-toast span { margin-top: 5px; color: var(--muted); font-size: 11px; }
.agenda-reminder-settings { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 20px; padding: 18px 20px; }
.agenda-reminder-settings h2 { margin: 4px 0; }
.agenda-reminder-settings > div > p { margin: 0; color: var(--muted); }
.agenda-reminder-settings .dashboard-reminder-status { margin-top: 9px; padding: 8px 10px; border: 0; border-radius: 8px; }
.agenda-reminder-settings > .btn { flex: 0 0 auto; }

/* Nova-Pilotage */
.pilotage-heading { align-items:end; }
.period-switch { display:flex; gap:4px; padding:4px; background:var(--surface, #fff); border:1px solid var(--border, #e3e7ea); border-radius:12px; }
.period-switch a { padding:8px 13px; color:var(--muted, #6d747a); border-radius:9px; font-weight:700; font-size:13px; }
.period-switch a.active { color:#fff; background:var(--brand); box-shadow:0 4px 12px rgba(22,31,37,.14); }
.pilotage-hero { display:grid; grid-template-columns:auto minmax(260px,1fr) minmax(270px,.8fr); align-items:center; gap:28px; padding:28px; overflow:hidden; position:relative; }
.pilotage-hero::after { content:""; position:absolute; width:260px; height:260px; border-radius:50%; right:-125px; top:-150px; background:color-mix(in srgb, var(--brand) 8%, transparent); pointer-events:none; }
.pilotage-score { --score:0; --score-color:#2da56f; width:126px; height:126px; border-radius:50%; display:grid; place-items:center; background:conic-gradient(var(--score-color) calc(var(--score)*1%), #e8ecee 0); position:relative; }
.pilotage-score::before { content:""; position:absolute; inset:10px; background:var(--surface, #fff); border-radius:50%; }
.pilotage-score span { position:relative; display:flex; align-items:baseline; gap:2px; }
.pilotage-score strong { font-size:38px; line-height:1; letter-spacing:-2px; }
.pilotage-score small { color:var(--muted); font-weight:700; }
.pilotage-hero.status-attention .pilotage-score { --score-color:#d99b2b; }
.pilotage-hero.status-critical .pilotage-score { --score-color:#d84b4b; }
.pilotage-hero-copy h2 { margin:4px 0 7px; font-size:26px; }
.pilotage-hero-copy p { margin:0; color:var(--muted); max-width:680px; }
.pilotage-hero-facts { display:grid; gap:10px; }
.pilotage-hero-facts div { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:11px 0; border-bottom:1px solid var(--border); }
.pilotage-hero-facts div:last-child { border:0; }
.pilotage-hero-facts span { color:var(--muted); font-size:13px; }
.pilotage-hero-facts strong { text-align:right; }
.pilotage-kpis { margin-top:20px; }
.pilotage-impact { display:grid; gap:20px; margin-top:20px; }
.pilotage-impact-filter { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; padding:22px; }
.pilotage-impact-filter h2 { margin:4px 0 6px; }
.pilotage-impact-filter p { margin:0; color:var(--muted); }
.pilotage-impact-filter form { display:grid; grid-template-columns:minmax(210px,1fr) minmax(160px,220px); gap:10px; min-width:min(100%,500px); }
.pilotage-impact-filter label { display:grid; gap:6px; color:var(--muted); font-size:12px; font-weight:800; }
.pilotage-client-context { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,.65fr); gap:24px; align-items:center; padding:23px; background:linear-gradient(135deg,var(--surface,#fff),color-mix(in srgb,var(--brand) 6%,#fff)); }
.pilotage-client-context h2 { margin:10px 0 5px; }
.pilotage-client-context p { margin:0; color:var(--muted); line-height:1.55; }
.pilotage-client-context dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; margin:0; overflow:hidden; border:1px solid var(--border); border-radius:12px; background:var(--border); }
.pilotage-client-context dl div { display:grid; gap:5px; padding:14px; background:var(--surface,#fff); }
.pilotage-client-context dt { color:var(--muted); font-size:11px; }
.pilotage-client-context dd { margin:0; font-weight:800; overflow-wrap:anywhere; }
.pilotage-impact-details,.pilotage-impact-entry details { overflow:hidden; }
.pilotage-impact-details>summary,.pilotage-impact-entry summary { padding:16px 18px; color:var(--brand); font-weight:800; cursor:pointer; }
.pilotage-impact-details[open]>summary,.pilotage-impact-entry details[open]>summary { border-bottom:1px solid var(--border); }
.pilotage-impact-hint { padding:17px 20px; color:var(--muted); }
.pilotage-impact-kpis { margin:0; }
.pilotage-impact-levels { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.pilotage-impact-levels article { padding:20px; }
.pilotage-impact-levels article>span { color:var(--brand); font-size:11px; font-weight:850; text-transform:uppercase; letter-spacing:.05em; }
.pilotage-impact-levels h3 { margin:6px 0 16px; font-size:21px; }
.pilotage-impact-levels dl { display:grid; gap:1px; margin:0; background:var(--border); }
.pilotage-impact-levels dl div { display:flex; justify-content:space-between; gap:14px; padding:10px; background:var(--surface,#fff); }
.pilotage-impact-levels dt { color:var(--muted); }
.pilotage-impact-levels dd { margin:0; font-weight:850; }
.pilotage-impact-entry { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.pilotage-impact-bottom { display:grid; grid-template-columns:minmax(300px,.7fr) minmax(0,1.3fr); gap:20px; align-items:start; }
.pilotage-source-list { display:grid; gap:11px; padding:16px 18px 20px; }
.pilotage-source-list>div { display:grid; grid-template-columns:minmax(120px,180px) minmax(100px,1fr) 38px; gap:12px; align-items:center; }
.pilotage-source-list i { display:block; height:8px; overflow:hidden; border-radius:999px; background:var(--soft,#eef1f2); }
.pilotage-source-list i b { display:block; height:100%; border-radius:inherit; background:var(--brand); }
.pilotage-source-list strong { text-align:right; }
.pilotage-connectors { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--border); }
.pilotage-connectors article { display:grid; align-content:start; gap:9px; padding:16px; background:var(--surface,#fff); }
.pilotage-connectors article header { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
.pilotage-connectors article p { margin:0; color:var(--muted); font-size:12px; line-height:1.5; }
.pilotage-connectors article small { min-height:34px; color:var(--muted); line-height:1.45; }
.pilotage-connectors article form { margin-top:auto; }
.pilotage-connectors article select { width:100%; }
.pilotage-roadmap { margin-top:20px; overflow:hidden; }
.pilotage-roadmap>.card-header { align-items:flex-start; }
.pilotage-roadmap>.card-header p { margin:5px 0 0; color:var(--muted); }
.roadmap-summary { display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.roadmap-summary span { display:grid; min-width:72px; padding:8px 10px; border:1px solid var(--border); border-radius:10px; color:var(--muted); text-align:center; font-size:10px; }
.roadmap-summary strong { color:var(--text); font-size:18px; }
.roadmap-focus-rule,.roadmap-focus-warning { display:flex; align-items:center; gap:12px; margin:0 20px 15px; padding:11px 14px; border-radius:11px; background:#e9f7f0; color:#176d48; }
.roadmap-focus-rule span,.roadmap-focus-warning span { color:inherit; opacity:.82; font-size:12px; }
.roadmap-focus-warning { background:#fff0db; color:#865400; }
.roadmap-board { display:grid; grid-template-columns:repeat(4,minmax(230px,1fr)); gap:12px; overflow-x:auto; padding:0 20px 20px; }
.roadmap-lane { min-width:0; padding:10px; border:1px solid var(--border); border-radius:14px; background:#f7f8f9; }
.roadmap-lane>header { display:flex; justify-content:space-between; gap:10px; align-items:flex-start; padding:2px 3px 10px; }
.roadmap-lane>header div { display:grid; gap:2px; }
.roadmap-lane>header span { font-weight:900; }
.roadmap-lane>header small { color:var(--muted); font-size:10px; line-height:1.3; }
.roadmap-lane>header b { display:grid; place-items:center; min-width:25px; height:25px; border-radius:50%; color:var(--brand); background:#fff; }
.roadmap-items { display:grid; gap:8px; }
.roadmap-item { padding:11px; border:1px solid #e1e5e7; border-left:4px solid #8c989e; border-radius:11px; background:#fff; }
.roadmap-item.status-in_progress { border-left-color:var(--brand); box-shadow:0 5px 16px color-mix(in srgb,var(--brand) 12%,transparent); }
.roadmap-item.status-done { border-left-color:#2da56f; opacity:.68; }
.roadmap-item.status-done h3 { text-decoration:line-through; }
.roadmap-item.status-blocked { border-left-color:#d84b4b; }
.roadmap-item-head { display:flex; justify-content:space-between; gap:8px; color:var(--muted); font-size:9px; text-transform:uppercase; font-weight:850; }
.roadmap-item-head em { color:var(--brand); font-style:normal; }
.roadmap-item h3 { margin:7px 0 4px; font-size:13px; line-height:1.3; }
.roadmap-item p { margin:0 0 8px; color:var(--muted); font-size:10px; line-height:1.4; }
.roadmap-item>small { color:var(--muted); font-size:9px; }
.roadmap-item-actions { display:grid; grid-template-columns:1fr 1fr auto; gap:4px; margin-top:9px; }
.roadmap-item-actions select,.roadmap-item-actions button { min-width:0; padding:6px; font-size:9px; }
.roadmap-capture { margin:0 20px 20px; border:1px dashed color-mix(in srgb,var(--brand) 45%,var(--border)); border-radius:13px; overflow:hidden; }
.roadmap-capture summary { cursor:pointer; padding:13px 15px; color:var(--brand); font-weight:850; }
.roadmap-capture[open] summary { border-bottom:1px solid var(--border); }
.pilotage-layout { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr); gap:20px; margin-top:20px; align-items:start; }
.pilotage-priorities .card-header { border-bottom:0; padding-bottom:8px; }
.pilotage-count { display:grid; place-items:center; width:31px; height:31px; border-radius:50%; color:var(--brand); background:color-mix(in srgb, var(--brand) 10%, #fff); font-weight:800; }
.pilotage-alert-list { padding:0 18px 18px; display:grid; gap:8px; }
.pilotage-alert { display:grid; grid-template-columns:10px 1fr auto; gap:12px; align-items:center; padding:13px 14px; border:1px solid var(--border); border-radius:12px; color:inherit; transition:.18s ease; }
.pilotage-alert:hover { border-color:color-mix(in srgb, var(--brand) 40%, var(--border)); transform:translateX(2px); }
.pilotage-alert-signal { width:8px; height:8px; border-radius:50%; background:#7c8991; box-shadow:0 0 0 4px #eef1f2; }
.alert-critical .pilotage-alert-signal { background:#d84b4b; box-shadow:0 0 0 4px #fde8e8; }
.alert-warning .pilotage-alert-signal { background:#d99b2b; box-shadow:0 0 0 4px #fff2d8; }
.alert-success .pilotage-alert-signal { background:#2da56f; box-shadow:0 0 0 4px #e0f5eb; }
.pilotage-alert-copy { display:grid; gap:2px; }
.pilotage-alert-copy small { color:var(--muted); }
.pilotage-alert-arrow { color:var(--muted); font-size:20px; }
.pilotage-objectives { padding:0 18px 18px; display:grid; gap:12px; }
.pilotage-objective { padding:16px; border:1px solid var(--border); border-radius:13px; display:grid; grid-template-columns:1fr auto; gap:16px; }
.objective-title-row { display:flex; justify-content:space-between; gap:18px; align-items:start; }
.objective-title-row h3 { margin:5px 0 0; font-size:16px; }
.objective-progress { height:8px; background:#edf0f2; border-radius:10px; overflow:hidden; margin:13px 0 10px; }
.objective-progress span { display:block; height:100%; border-radius:10px; background:linear-gradient(90deg,var(--brand),color-mix(in srgb,var(--brand) 65%,#fff)); }
.objective-meta { display:flex; flex-wrap:wrap; gap:6px 15px; color:var(--muted); font-size:12px; }
.objective-actions { display:flex; align-items:center; gap:8px; }
.objective-actions select { min-width:105px; }
.inline-objective-form { display:flex; align-items:center; gap:5px; }
.inline-objective-form input { width:92px; }
.badge-objective-achieved { background:#e0f5eb; color:#167649; }
.badge-objective-paused { background:#fff2d8; color:#8b5b00; }
.pilotage-new-objective { margin:0 18px 18px; border:1px dashed color-mix(in srgb,var(--brand) 45%,var(--border)); border-radius:13px; overflow:hidden; }
.pilotage-new-objective summary { cursor:pointer; padding:14px 16px; font-weight:800; color:var(--brand); }
.pilotage-new-objective[open] summary { border-bottom:1px solid var(--border); }
.pilotage-side { gap:14px; }
.pilotage-domain { padding:18px; }
.pilotage-domain header { display:flex; align-items:center; gap:12px; margin-bottom:15px; }
.pilotage-domain header div { display:grid; gap:2px; }
.pilotage-domain header span:not(.domain-icon) { color:var(--muted); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.domain-icon { display:grid; place-items:center; width:39px; height:39px; border-radius:12px; background:color-mix(in srgb,var(--brand) 10%,#fff); color:var(--brand); font-weight:900; font-size:18px; }
.pilotage-domain dl { display:grid; gap:9px; margin:0 0 14px; }
.pilotage-domain dl div { display:flex; justify-content:space-between; gap:15px; padding-bottom:9px; border-bottom:1px solid var(--border); }
.pilotage-domain dt { color:var(--muted); }
.pilotage-domain dd { margin:0; font-weight:800; text-align:right; }
.pilotage-domain > a { color:var(--brand); font-weight:800; font-size:13px; }

@media (max-width:1050px) {
    .pilotage-hero { grid-template-columns:auto 1fr; }
    .pilotage-hero-facts { grid-column:1/-1; grid-template-columns:repeat(3,1fr); }
    .pilotage-hero-facts div { display:grid; justify-content:start; border:0; padding:10px; background:var(--soft,#f5f7f8); border-radius:10px; }
    .pilotage-hero-facts strong { text-align:left; }
    .pilotage-layout { grid-template-columns:1fr; }
    .pilotage-impact-filter { align-items:stretch; flex-direction:column; }
    .pilotage-impact-filter form { width:100%; }
    .pilotage-impact-levels,.pilotage-impact-bottom { grid-template-columns:1fr; }
    .roadmap-board { grid-template-columns:repeat(4,270px); }
    .pilotage-side { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px) {
    .pilotage-heading { align-items:start; }
    .period-switch { width:100%; }
    .period-switch a { flex:1; text-align:center; }
    .pilotage-hero { grid-template-columns:1fr; padding:20px; }
    .pilotage-impact-filter form,.pilotage-client-context,.pilotage-impact-entry,.pilotage-connectors { grid-template-columns:1fr; }
    .pilotage-client-context dl { width:100%; }
    .pilotage-score { width:108px; height:108px; }
    .pilotage-hero-facts { grid-column:auto; grid-template-columns:1fr; }
    .pilotage-objective { grid-template-columns:1fr; }
    .pilotage-roadmap>.card-header,.roadmap-focus-rule,.roadmap-focus-warning { align-items:flex-start; flex-direction:column; }
    .roadmap-summary { justify-content:flex-start; }
    .objective-actions { flex-wrap:wrap; }
    .pilotage-side { grid-template-columns:1fr; }
}
.card {
    background: var(--surface);
    border: 1px solid rgba(225, 228, 238, .95);
    border-radius: var(--radius);
    box-shadow: 0 2px 5px rgba(39,42,72,.02);
}
.card-body { padding: 20px; }
.card-header { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 18px 20px; border-bottom: 1px solid var(--line); }
.card-header h2, .card-header h3 { margin: 0; font-size: 16px; letter-spacing: -.2px; }
.metric { padding: 19px; overflow: hidden; position: relative; }
.metric::after { content: ""; position: absolute; width: 85px; height: 85px; border-radius: 50%; right: -35px; top: -32px; background: var(--metric-soft, var(--brand-soft)); }
.metric-label { color: var(--muted); font-weight: 600; font-size: 12px; }
.metric-value { display: block; margin: 8px 0 1px; font-size: clamp(23px, 2.5vw, 30px); line-height: 1; letter-spacing: -.8px; }
.metric-note { color: var(--muted); font-size: 11px; }
.metric-purple { --metric-soft: var(--brand-soft); }
.metric-green { --metric-soft: var(--green-soft); }
.metric-coral { --metric-soft: #fff0ec; }
.metric-amber { --metric-soft: var(--amber-soft); }

.filters { display: flex; align-items: center; gap: 10px; margin-bottom: 16px; flex-wrap: wrap; }
.filters .search-field { flex: 1 1 260px; }
.mail-period-field { display: grid; gap: 4px; }
.mail-period-field label { color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.mail-period-field input { width: 168px; }
.mail-period-help { margin: -7px 0 16px; color: var(--muted); font-size: 10px; }
.mail-pagination { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px 17px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; font-weight: 700; }
.mail-pagination > div { display: flex; gap: 8px; }
.phone-metrics { margin-bottom: 20px; }
.mail-message-body { padding: 24px 20px; border-top: 1px solid var(--line); color: var(--ink); line-height: 1.7; overflow-wrap: anywhere; white-space: normal; }
.mail-reply-draft { margin: 0; padding: 18px; border: 1px solid var(--line); border-radius: 14px; color: var(--ink); background: var(--canvas); font: inherit; line-height: 1.65; white-space: pre-wrap; overflow-wrap: anywhere; }
.phone-tabs {
    display: flex;
    gap: 5px;
    padding: 5px;
    margin-bottom: 18px;
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #fff;
}
.phone-tabs a { padding: 10px 15px; border-radius: 10px; color: var(--muted); font-weight: 750; white-space: nowrap; }
.phone-tabs a:hover { color: var(--ink); background: var(--canvas); }
.phone-tabs a.active { color: #fff; background: var(--nav); }
.phone-tabs a span { display: inline-grid; place-items: center; min-width: 20px; height: 20px; margin-left: 5px; padding: 0 5px; border-radius: 99px; color: var(--brand-dark); background: var(--brand-soft); font-size: 10px; }
.phone-module-nav { display:flex; gap:8px; width:max-content; max-width:100%; margin:0 0 20px; padding:5px; overflow:auto; border:1px solid var(--line); border-radius:16px; background:var(--canvas); }
.phone-module-nav a { display:grid; grid-template-columns:34px auto; column-gap:9px; min-width:190px; padding:10px 14px; border-radius:11px; color:var(--muted); text-decoration:none; }
.phone-module-nav a>span { grid-row:1/3; align-self:center; display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:var(--surface); color:var(--brand-dark); }
.phone-module-nav strong,.phone-module-nav small { display:block; }
.phone-module-nav small { font-size:10px; }
.phone-module-nav a.active { color:#fff; background:var(--nav); box-shadow:0 7px 18px rgba(24,33,40,.16); }
.phone-module-nav a.active>span { background:rgba(255,255,255,.13); color:#fff; }
.phone-setup-progress { position:relative; height:7px; margin-bottom:20px; overflow:hidden; border-radius:99px; background:var(--canvas); }
.phone-setup-progress i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--brand),var(--accent)); transition:width .3s ease; }
.phone-setup-layout { display:grid; grid-template-columns:235px minmax(0,1fr); gap:22px; align-items:start; }
.phone-stepper { display:grid; gap:7px; position:sticky; top:90px; }
.phone-stepper a { display:grid; grid-template-columns:38px 1fr; gap:11px; align-items:center; padding:12px; border:1px solid transparent; border-radius:14px; color:var(--muted); text-decoration:none; }
.phone-stepper a>span { display:grid; place-items:center; width:38px; height:38px; border:1px solid var(--line); border-radius:12px; background:var(--surface); font-weight:850; }
.phone-stepper strong,.phone-stepper small { display:block; }
.phone-stepper small { margin-top:2px; font-size:10px; }
.phone-stepper a.active { border-color:rgba(var(--brand-rgb),.25); color:var(--ink); background:var(--brand-soft); }
.phone-stepper a.complete>span { border-color:#b8e4cf; color:#197a55; background:var(--green-soft); }
.phone-step-card { overflow:hidden; }
.phone-step-card>.card-header { align-items:flex-start; padding:24px 26px; }
.phone-step-card>.card-header h2 { margin:5px 0 5px; font-size:1.45rem; }
.phone-step-card>.card-header p { margin:0; color:var(--muted); }
.phone-step-icon { display:grid; place-items:center; width:48px; height:48px; flex:0 0 auto; border-radius:15px; color:var(--brand-dark); background:var(--brand-soft); font-size:14px; font-weight:900; }
.phone-step-card>.card-body { padding:24px 26px; }
.phone-routing-visual { display:flex; align-items:center; justify-content:center; gap:9px; flex-wrap:wrap; padding:16px; border:1px dashed rgba(var(--brand-rgb),.32); border-radius:15px; background:var(--brand-soft); }
.phone-routing-visual span { padding:9px 12px; border:1px solid var(--line); border-radius:10px; background:#fff; font-weight:750; }
.phone-routing-visual b { color:var(--muted); font-size:10px; text-transform:uppercase; }
.phone-knowledge-links { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.phone-knowledge-links a { padding:14px 16px; border:1px solid var(--line); border-radius:13px; color:var(--ink); text-decoration:none; background:var(--canvas); }
.phone-knowledge-links strong,.phone-knowledge-links span { display:block; }
.phone-knowledge-links span { margin-top:3px; color:var(--muted); font-size:10px; }
.phone-api-setup { display:grid; gap:18px; }
.phone-secret { align-items:center; justify-content:space-between; }
.phone-secret span { display:grid; gap:6px; }
.phone-secret code { padding:7px 9px; border-radius:8px; color:#174f3a; background:#fff; word-break:break-all; }
.phone-config-lines { display:grid; gap:8px; }
.phone-config-lines>div { display:grid; grid-template-columns:180px 1fr; gap:12px; align-items:center; padding:10px 12px; border:1px solid var(--line); border-radius:10px; }
.phone-config-lines span { color:var(--muted); }
.phone-config-lines code { overflow:hidden; text-overflow:ellipsis; }
.phone-key-form { display:grid; grid-template-columns:1fr auto; gap:10px; align-items:end; padding:16px; border-radius:14px; background:var(--canvas); }
.phone-key-form label { display:grid; gap:6px; }
.phone-key-form label>span { font-weight:750; }
.phone-key-status { display:flex; align-items:center; gap:12px; padding:13px 15px; border:1px solid #bfe4d2; border-radius:12px; background:#edf9f3; }
.phone-key-status strong,.phone-key-status small { display:block; }
.phone-key-status small { margin-top:3px; color:var(--muted); }
.phone-test-grid { display:grid; grid-template-columns:1fr 280px; gap:24px; align-items:start; }
.phone-test-grid ol { display:grid; gap:10px; margin:0; padding:0; list-style:none; }
.phone-test-grid li { display:grid; grid-template-columns:34px 1fr; gap:11px; padding:13px; border:1px solid var(--line); border-radius:12px; }
.phone-test-grid li>span { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; color:var(--brand-dark); background:var(--brand-soft); font-weight:850; }
.phone-test-grid li strong,.phone-test-grid li p { display:block; margin:0; }
.phone-test-grid li p { margin-top:3px; color:var(--muted); }
.phone-test-status { display:grid; justify-items:center; padding:24px 18px; border-radius:17px; text-align:center; }
.phone-test-status>span { display:grid; place-items:center; width:56px; height:56px; border-radius:50%; font-size:24px; font-weight:900; }
.phone-test-status h3 { margin:12px 0 4px; }
.phone-test-status p { margin:0 0 14px; color:var(--muted); }
.phone-test-status.waiting { border:1px solid #ead9aa; background:#fff9e8; }
.phone-test-status.waiting>span { color:#9a6700; background:#ffedb8; }
.phone-test-status.success { border:1px solid #bfe4d2; background:#edf9f3; }
.phone-test-status.success>span { color:#197a55; background:#d7f1e4; }
@media(max-width:980px){.phone-setup-layout{grid-template-columns:1fr}.phone-stepper{position:static;grid-template-columns:repeat(5,minmax(145px,1fr));overflow:auto}.phone-test-grid{grid-template-columns:1fr}.phone-test-status{justify-self:stretch}}
@media(max-width:680px){.phone-module-nav{width:100%}.phone-module-nav a{min-width:160px}.phone-step-card>.card-header,.phone-step-card>.card-body{padding:19px}.phone-stepper{grid-template-columns:1fr}.phone-stepper a:not(.active){display:none}.phone-key-form,.phone-config-lines>div,.phone-knowledge-links{grid-template-columns:1fr}.phone-routing-visual b{width:100%;text-align:center}.phone-secret{align-items:stretch;flex-direction:column}}
.voicemail-grid { grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)); }
.voicemail-card audio { display: block; width: 100%; margin-bottom: 14px; }
.voicemail-meta { display: flex; flex-wrap: wrap; gap: 7px 14px; margin-bottom: 16px; color: var(--muted); font-size: 11px; }
.field, .search-field { position: relative; }
label { display: block; color: #454c60; font-size: 12px; font-weight: 700; margin-bottom: 6px; }
input, select, textarea {
    width: 100%;
    border: 1px solid #dfe2eb;
    border-radius: 10px;
    color: var(--ink);
    background: white;
    padding: 10px 12px;
    outline: none;
    transition: .18s ease;
}
input:focus, select:focus, textarea:focus { border-color: var(--brand); box-shadow: 0 0 0 4px rgba(var(--brand-rgb), .1); }
textarea { min-height: 110px; resize: vertical; }
.field-error { color: var(--red); font-size: 11px; margin: 5px 0 0; }
.help { color: var(--muted); font-size: 11px; margin-top: 5px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; }
.form-span-2 { grid-column: 1 / -1; }
.form-section { padding: 22px; }
.form-section + .form-section { border-top: 1px solid var(--line); }
.form-section h2 { font-size: 15px; margin: 0 0 17px; }
.form-footer { display: flex; justify-content: flex-end; gap: 10px; padding: 17px 22px; background: #fafbfc; border-top: 1px solid var(--line); border-radius: 0 0 var(--radius) var(--radius); }

.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th { padding: 11px 16px; color: #858ca0; background: #fafbfc; border-bottom: 1px solid var(--line); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; text-align: left; white-space: nowrap; }
td { padding: 14px 16px; border-bottom: 1px solid #eef0f5; vertical-align: middle; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover { background: #fbfbfe; }
.entity { display: flex; align-items: center; gap: 11px; min-width: 190px; }
.entity-mark { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 11px; background: var(--brand-soft); color: var(--brand-dark); font-weight: 800; font-size: 12px; }
.company-logo-mark { overflow: hidden; padding: 4px; border: 1px solid var(--line); background: #fff; }
.company-logo-mark img { display: block; width: 100%; height: 100%; object-fit: contain; border-radius: inherit; }
.company-logo-upload { display: grid; grid-template-columns: 76px minmax(0, 1fr); align-items: center; gap: 16px; padding: 14px; border: 1px solid var(--line); border-radius: 14px; background: var(--canvas); }
.company-logo-preview { width: 76px; height: 76px; display: grid; place-items: center; overflow: hidden; padding: 6px; border: 1px solid var(--line); border-radius: 18px; color: var(--brand-dark); background: #fff; font-size: 18px; font-weight: 900; }
.company-logo-preview img { width: 100%; height: 100%; object-fit: contain; }
.company-logo-upload input[type="file"] { background: #fff; }
.company-logo-remove { margin: 8px 0 0; color: var(--red); font-size: 11px; }
.company-logo-remove input { width: auto; margin-right: 5px; }
.customer-type-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.customer-type-option{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--canvas);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.customer-type-option:has(input:checked){border-color:var(--brand);background:color-mix(in srgb,var(--brand-soft) 55%,#fff);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand) 15%,transparent)}.customer-type-option input{width:auto;margin-top:3px}.customer-type-option strong,.customer-type-option small{display:block}.customer-type-option small{margin-top:4px;color:var(--muted);font-size:10px;line-height:1.45}.badge-customer-business{color:#245a90;background:#edf5ff}.badge-customer-individual{color:#79510a;background:#fff5dc}
@media(max-width:700px){.customer-type-picker{grid-template-columns:1fr}}
.entity strong, .entity small { display: block; }
.entity small { color: var(--muted); margin-top: 2px; }
.text-muted { color: var(--muted); }
.text-danger { color: var(--red); }
.text-success { color: var(--green); }
.text-right { text-align: right; }
.nowrap { white-space: nowrap; }
.badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 8px;
    color: #596073;
    background: #eff1f6;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .03em;
    white-space: nowrap;
}
.badge::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.badge-active, .badge-customer, .badge-done { color: #197a55; background: var(--green-soft); }
.badge-prospect, .badge-lead, .badge-todo { color: var(--brand-dark); background: var(--brand-soft); }
.badge-qualified, .badge-in_progress { color: #3a73bc; background: #eaf3ff; }
.badge-lost, .badge-urgent { color: #b43d51; background: var(--red-soft); }
.badge-inactive, .badge-cancelled { color: #72798b; background: #eff1f5; }
.badge-high { color: #bd7111; background: var(--amber-soft); }
.badge-accepted { color: #197a55; background: var(--green-soft); }
.badge-sent { color: #3a73bc; background: #eaf3ff; }
.badge-draft { color: var(--brand-dark); background: var(--brand-soft); }
.badge-rejected, .badge-expired { color: #b43d51; background: var(--red-soft); }

/* Nova-Démarchage */
.outreach-safety,.outreach-review-alert,.outreach-installation-alert{display:flex;align-items:flex-start;gap:14px;margin:0 0 20px;padding:16px 18px;border:1px solid #bfe4d2;border-radius:15px;background:#edf9f3}.outreach-safety>span,.outreach-review-alert>span,.outreach-installation-alert>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:11px;color:#197a55;background:#d7f1e4;font-weight:900}.outreach-safety strong,.outreach-safety p,.outreach-review-alert strong,.outreach-review-alert p,.outreach-installation-alert strong,.outreach-installation-alert p{display:block;margin:0}.outreach-safety p,.outreach-review-alert p,.outreach-installation-alert p{margin-top:3px;color:var(--muted);font-size:11px}.outreach-review-alert{border-color:#ead9aa;background:#fff9e8}.outreach-review-alert>span{color:#9a6700;background:#ffedb8}.outreach-installation-alert{border-color:#b8d8ff;background:#eef6ff}.outreach-installation-alert>span{color:#2563a8;background:#d9eaff}
.outreach-campaign-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}.outreach-campaign-card{display:block;padding:20px;color:var(--ink);text-decoration:none;transition:.18s ease}.outreach-campaign-card:hover{transform:translateY(-2px);border-color:rgba(var(--brand-rgb),.28);box-shadow:0 12px 28px rgba(39,42,72,.07)}.outreach-campaign-head{display:flex;align-items:center;justify-content:space-between}.outreach-segment-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:var(--brand-dark);background:var(--brand-soft);font-weight:900}.outreach-campaign-card h2{margin:16px 0 4px;font-size:17px}.outreach-campaign-card>p{margin:0;color:var(--muted);font-size:11px}.outreach-tags{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}.outreach-tags span{padding:5px 8px;border-radius:8px;color:var(--muted);background:var(--canvas);font-size:10px;font-weight:750}.outreach-campaign-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding-top:14px;border-top:1px solid var(--line)}.outreach-campaign-stats strong{font-size:18px}.outreach-campaign-stats small{display:block;margin-top:2px;color:var(--muted);font-size:9px;font-weight:600}.outreach-queue-note{display:block;margin-top:12px;color:var(--brand-dark)}
.outreach-preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.outreach-preset-grid label{margin:0}.outreach-preset-grid input{position:absolute;opacity:0;pointer-events:none}.outreach-preset-grid span{display:block;padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--canvas);cursor:pointer}.outreach-preset-grid strong,.outreach-preset-grid small{display:block}.outreach-preset-grid small{margin-top:4px;color:var(--muted);font-size:10px}.outreach-preset-grid input:checked+span{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 3px rgba(var(--brand-rgb),.08)}
.outreach-import-state{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px;padding:17px 20px}.outreach-import-state>div{display:grid;gap:4px}.outreach-import-state>div:last-child{text-align:right}.outreach-import-state span,.outreach-import-state small{color:var(--muted);font-size:10px}.outreach-bulkbar{display:flex;align-items:center;gap:16px;margin-bottom:12px;padding:12px 15px;border:1px solid var(--line);border-radius:13px;background:var(--canvas)}.outreach-bulkbar label{display:flex;align-items:center;gap:8px;margin:0;white-space:nowrap}.outreach-bulkbar input{width:auto}.outreach-bulkbar>span{flex:1;color:var(--muted);font-size:10px}.table-card td small{display:block;margin-top:3px}.badge-outreach-queued,.badge-outreach-processing{color:#3a73bc;background:#eaf3ff}.badge-outreach-review,.badge-outreach-status-interested{color:#bd7111;background:var(--amber-soft)}.badge-outreach-validated,.badge-outreach-status-partner{color:#197a55;background:var(--green-soft)}.badge-outreach-error,.badge-outreach-status-refused,.badge-outreach-status-do_not_contact{color:#b43d51;background:var(--red-soft)}.badge-outreach-status-to_contact{color:var(--brand-dark);background:var(--brand-soft)}
.outreach-watch-state{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:20px;padding:20px}.outreach-watch-state h2{margin:3px 0 4px;font-size:17px}.outreach-watch-state p{max-width:780px;margin:0;color:var(--muted);font-size:11px;line-height:1.55}.outreach-watch-state small{display:block;margin-top:7px;color:var(--muted)}.badge-installation-new_installation,.badge-installation-reopened{color:#126b47;background:#dff7ea}.badge-installation-moved{color:#2563a8;background:#e5f0ff}.badge-installation-closed{color:#9a3d4d;background:#fdebee}
.outreach-bridge-state{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin:0 0 20px;padding:14px 17px;border:1px solid;border-radius:14px}.outreach-bridge-state.is-online{border-color:#bfe4d2;background:#edf9f3}.outreach-bridge-state.is-offline{border-color:#efd89d;background:#fff8e6}.outreach-bridge-signal{width:10px;height:10px;border-radius:50%;background:#d18a00;box-shadow:0 0 0 5px rgba(209,138,0,.12)}.outreach-bridge-state.is-online .outreach-bridge-signal{background:#1f9d67;box-shadow:0 0 0 5px rgba(31,157,103,.12)}.outreach-bridge-state strong,.outreach-bridge-state p{display:block;margin:0}.outreach-bridge-state p{margin-top:2px;color:var(--muted);font-size:10px}.outreach-bridge-state.is-online>.badge{color:#197a55;background:#d7f1e4}.outreach-bridge-state.is-offline>.badge{color:#8a5b00;background:#ffedb8}
.outreach-detail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.75fr);gap:20px;align-items:start}.outreach-side-stack{display:grid;gap:20px}.outreach-source-list{display:grid;gap:9px}.outreach-source-list>a{display:block;padding:10px 12px;border:1px solid var(--line);border-radius:10px;color:var(--ink);text-decoration:none;background:var(--canvas)}.outreach-source-list strong,.outreach-source-list small{display:block}.outreach-source-list small{margin-top:3px;overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.outreach-activity-grid{margin-top:20px;grid-template-columns:minmax(0,1.35fr) minmax(320px,1fr)}.outreach-timeline{padding:10px 20px}.outreach-timeline article{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:13px 0;border-bottom:1px solid var(--line)}.outreach-timeline article:last-child{border-bottom:0}.outreach-timeline article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;color:var(--brand-dark);background:var(--brand-soft);font-weight:900}.outreach-timeline strong,.outreach-timeline small{display:block}.outreach-timeline small{margin-top:3px;color:var(--muted);font-size:9px}.outreach-timeline p{margin:8px 0 0;line-height:1.55}.outreach-timeline em{display:inline-block;margin-top:7px;color:var(--brand-dark);font-size:10px;font-style:normal;font-weight:750}
.outreach-filters>select{width:auto;min-width:175px}
.outreach-footprint-card{margin-top:20px}.outreach-footprint-card td{vertical-align:top}.outreach-footprint-card td small{display:block;margin-top:5px;color:var(--muted);max-width:420px}.outreach-footprint-actions{display:flex;gap:6px;margin-top:8px}.outreach-footprint-actions .btn{padding:5px 8px;font-size:9px}.badge-outreach-footprint-footer_credit{color:#197a55;background:var(--green-soft)}.badge-outreach-footprint-portfolio,.badge-outreach-footprint-case_study{color:var(--brand-dark);background:var(--brand-soft)}.badge-outreach-footprint-customer_link,.badge-outreach-footprint-other{color:#8a6114;background:var(--amber-soft)}
@media(max-width:900px){.outreach-detail-grid,.outreach-activity-grid{grid-template-columns:1fr}.outreach-import-state,.outreach-bulkbar,.outreach-watch-state{align-items:stretch;flex-direction:column}.outreach-import-state>div:last-child{text-align:left}.outreach-preset-grid{grid-template-columns:1fr}.outreach-filters>select{width:100%}}

.empty { padding: 52px 24px; text-align: center; }
.empty-icon { width: 54px; height: 54px; display: grid; place-items: center; margin: 0 auto 14px; border-radius: 17px; background: var(--brand-soft); color: var(--brand); font-size: 24px; }
.empty h3 { margin: 0 0 6px; }
.empty p { max-width: 420px; margin: 0 auto 18px; color: var(--muted); }

.timeline { display: grid; }
.timeline-item { display: grid; grid-template-columns: 32px 1fr; gap: 11px; padding: 11px 0; position: relative; }
.timeline-item:not(:last-child)::before { content: ""; position: absolute; left: 15px; top: 38px; bottom: -10px; width: 1px; background: var(--line); }
.timeline-dot { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 10px; background: var(--brand-soft); color: var(--brand-dark); font-size: 12px; font-weight: 800; }
.timeline-item p { margin: 0; }
.timeline-item time { color: var(--muted); font-size: 11px; }
.task-row { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 11px; padding: 12px 0; border-bottom: 1px solid #eef0f5; }
.task-row:last-child { border-bottom: 0; }
.task-check { width: 21px; height: 21px; border: 2px solid #ccd0dd; border-radius: 7px; background: white; }
.task-check:hover { border-color: var(--brand); }
.task-info strong, .task-info span { display: block; }
.task-info span { color: var(--muted); font-size: 11px; margin-top: 2px; }
.task-overdue .task-info span { color: var(--red); }

.pipeline-summary { display: flex; gap: 6px; height: 8px; overflow: hidden; border-radius: 99px; background: #eef0f5; margin: 18px 0 10px; }
.pipeline-segment { min-width: 6px; border-radius: 99px; }
.pipeline-labels { display: flex; flex-wrap: wrap; gap: 13px 19px; }
.pipeline-key { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 11px; }
.pipeline-key i { width: 8px; height: 8px; border-radius: 3px; }
.kanban { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(270px, 1fr); gap: 14px; overflow-x: auto; padding-bottom: 15px; scroll-snap-type: x proximity; }
.kanban-column { min-height: 460px; padding: 12px; border: 1px solid var(--line); border-radius: 16px; background: #f1f3f7; scroll-snap-align: start; }
.kanban-column.drag-over { background: var(--brand-soft); border-color: var(--brand); }
.kanban-head { display: flex; align-items: center; justify-content: space-between; padding: 4px 3px 13px; }
.kanban-title { display: flex; align-items: center; gap: 7px; font-weight: 800; }
.kanban-title i { width: 9px; height: 9px; border-radius: 3px; }
.kanban-count { padding: 2px 7px; background: #e2e5ec; border-radius: 99px; font-size: 10px; color: var(--muted); }
.kanban-total { color: var(--muted); font-size: 11px; }
.deal-card { display: block; padding: 14px; margin-bottom: 9px; border: 1px solid #e1e4ed; border-radius: 12px; background: white; box-shadow: 0 3px 10px rgba(38,40,66,.04); cursor: grab; }
.deal-card:active { cursor: grabbing; }
.deal-card.dragging { opacity: .42; }
.deal-card h3 { margin: 0 0 12px; font-size: 13px; }
.deal-amount { display: block; margin-bottom: 8px; font-size: 17px; font-weight: 800; }
.deal-meta { display: flex; align-items: center; justify-content: space-between; gap: 9px; color: var(--muted); font-size: 10px; }

.detail-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(290px, .55fr); gap: 20px; }
.profile-head { display: flex; align-items: center; gap: 16px; }
.profile-mark { width: 58px; height: 58px; display: grid; place-items: center; border-radius: 17px; color: var(--brand-contrast); background: linear-gradient(135deg, var(--brand), var(--brand-bright)); font-size: 17px; font-weight: 900; }
.profile-mark.company-logo-mark { padding: 6px; background: #fff; }
.profile-head h1 { margin: 0 0 4px; }
.profile-head p { margin: 0; color: var(--muted); }
.detail-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.detail-item span { display: block; margin-bottom: 4px; color: var(--muted); font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.detail-item strong { font-size: 13px; }
.section-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 27px 0 12px; }
.section-title h2 { margin: 0; font-size: 17px; }
.note { padding: 14px 0; border-bottom: 1px solid var(--line); }
.note:last-child { border-bottom: 0; }
.note-head { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 6px; }
.note-head strong { font-size: 12px; }
.note-head time { color: var(--muted); font-size: 10px; }
.note p { margin: 0; white-space: pre-wrap; color: #434a5e; }
.inline-form { display: flex; align-items: center; gap: 8px; }
.inline-form select { min-width: 135px; }
.danger-zone { border-color: #f2c9d0; }

.auth-page { min-height: 100vh; display: grid; grid-template-columns: minmax(380px, .85fr) minmax(460px, 1.15fr); background: white; }
.auth-panel { display: flex; align-items: center; justify-content: center; padding: 45px; }
.auth-box { width: min(420px, 100%); }
.auth-brand { margin-bottom: 40px; padding: 0; color: var(--ink); }
.auth-box h1 { margin: 0; font-size: 33px; letter-spacing: -1px; }
.auth-box > p { margin: 9px 0 27px; color: var(--muted); }
.auth-form { display: grid; gap: 15px; }
.auth-form .btn { margin-top: 5px; min-height: 45px; }
.auth-switch { margin-top: 22px; text-align: center; color: var(--muted); }
.auth-switch a { color: var(--brand); font-weight: 800; }
.auth-visual {
    margin: 16px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 60px;
    color: white;
    border-radius: 24px;
    background:
        radial-gradient(circle at 80% 12%, rgba(215,35,35,.72), transparent 26%),
        radial-gradient(circle at 12% 83%, rgba(255,255,255,.1), transparent 28%),
        linear-gradient(145deg, #303c45, #182128 62%);
}
.theme-domortiz .auth-page { background: #fbfaf7; }
.theme-domortiz .auth-visual {
    color: #fff;
    background:
        radial-gradient(circle at 80% 12%, rgba(201,172,110,.48), transparent 28%),
        radial-gradient(circle at 12% 83%, rgba(255,255,255,.08), transparent 30%),
        linear-gradient(145deg, #302a20, #15130f 64%);
}
.theme-domortiz .visual-eyebrow { color: #ead8ae; }
.theme-domortiz .visual-content p,.theme-domortiz .visual-stat span { color: #d8cfbf; }
.theme-domortiz .auth-brand .brand-logo-frame { width: min(280px,100%); height: 58px; padding: 6px 0; background: transparent; }
.theme-domortiz .auth-brand .brand-logo-frame img { width: 100%; height: 100%; object-fit: contain; object-position: left center; }
.theme-domortiz .auth-brand { display: grid; justify-items: start; gap: 4px; }
.theme-domortiz .auth-brand small { color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.auth-visual::before, .auth-visual::after { content: ""; position: absolute; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; }
.auth-visual::before { width: 480px; height: 480px; top: -240px; right: -170px; }
.auth-visual::after { width: 310px; height: 310px; left: -160px; bottom: -120px; }
.visual-content { position: relative; z-index: 1; max-width: 560px; }
.visual-eyebrow { color: #ffc0c0; text-transform: uppercase; letter-spacing: .14em; font-size: 11px; font-weight: 800; }
.visual-content h2 { margin: 16px 0; font-size: clamp(31px, 4vw, 54px); line-height: 1.06; letter-spacing: -2px; }
.visual-content p { color: #c2c3d1; font-size: 16px; max-width: 500px; }
.visual-card { margin-top: 38px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.visual-stat { padding: 17px; border: 1px solid rgba(255,255,255,.1); border-radius: 15px; background: rgba(255,255,255,.06); backdrop-filter: blur(8px); }
.visual-stat strong, .visual-stat span { display: block; }
.visual-stat strong { font-size: 20px; }
.visual-stat span { margin-top: 4px; color: #a5a7ba; font-size: 10px; text-transform: uppercase; letter-spacing: .05em; }

dialog { width: min(650px, calc(100% - 28px)); max-height: calc(100vh - 28px); padding: 0; overflow: hidden; border: 0; border-radius: 18px; box-shadow: 0 24px 80px rgba(24,26,47,.25); }
dialog > form { display: flex; max-height: calc(100vh - 28px); flex-direction: column; }
dialog::backdrop { background: rgba(17,18,35,.55); backdrop-filter: blur(3px); }
.dialog-head { display: flex; justify-content: space-between; align-items: center; padding: 18px 20px; border-bottom: 1px solid var(--line); }
.dialog-head h2 { margin: 0; font-size: 18px; }
.dialog-close { width: 32px; height: 32px; display: grid; place-items: center; border: 0; border-radius: 9px; background: #f1f3f7; color: var(--text); font-size: 18px; line-height: 1; text-decoration: none; }
.dialog-body { min-height: 0; padding: 20px; overflow-y: auto; }
.dialog-footer { display: flex; justify-content: flex-end; gap: 9px; padding: 15px 20px; border-top: 1px solid var(--line); background: #fafbfc; }

.invite-link { display: flex; gap: 8px; align-items: center; padding: 11px; margin: 15px 0; border-radius: 10px; background: var(--green-soft); border: 1px solid #afe5d0; }
.invite-link code { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #176848; }
.role-owner { color: var(--brand-dark); }
.theme-picker { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.theme-option {
    position: relative;
    display: grid;
    gap: 13px;
    padding: 12px;
    margin: 0;
    overflow: hidden;
    border: 2px solid var(--line);
    border-radius: 15px;
    background: #fff;
    cursor: pointer;
    transition: .18s ease;
}
.theme-option:hover { transform: translateY(-2px); border-color: var(--brand); box-shadow: var(--shadow); }
.theme-option input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.theme-option:has(input:checked) { border-color: var(--brand); box-shadow: 0 0 0 4px rgba(var(--brand-rgb), .11); }
.theme-preview { display: grid; grid-template-columns: 42% 58%; height: 94px; overflow: hidden; border: 1px solid rgba(0,0,0,.08); border-radius: 11px; background: #f6f7f8; }
.theme-preview-sidebar { display: flex; align-items: center; justify-content: center; gap: 5px; padding: 9px; color: #fff; background: #182128; }
.theme-preview-sidebar img { width: 100%; max-height: 48px; object-fit: contain; }
.theme-preview-mark { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 8px; background: #d72323; font-size: 11px; }
.theme-preview-sidebar strong { font-size: 9px; }
.theme-preview-content { display: flex; align-items: flex-end; gap: 5px; padding: 12px 8px; background: #f6f7f8; }
.theme-preview-content i { flex: 1; height: 55%; border-radius: 5px; background: #fff; box-shadow: 0 2px 6px rgba(0,0,0,.08); }
.theme-preview-content i:nth-child(2) { height: 78%; }
.theme-preview-content i:nth-child(3) { height: 65%; }
.theme-option-groupedev .theme-preview-sidebar img { padding: 4px; background: #fff; border-radius: 4px; }
.theme-option-azimuts .theme-preview-sidebar { background: #0d0d0d; }
.theme-option-azimuts .theme-preview-sidebar img { padding: 4px; background: #fff; border-radius: 4px; }
.theme-option-azimuts .theme-preview-content { background: #f6f3ee; }
.theme-option-azimuts .theme-preview-content i:first-child { background: #c9b99d; }
.theme-option-alapagecom .theme-preview-sidebar { background: #051e35; }
.theme-option-alapagecom .theme-preview-content { background: #fbf7f0; }
.theme-option-alapagecom .theme-preview-content i:first-child { background: #f08300; }
.theme-option-neutral .theme-preview-sidebar { background: #183b66; }
.theme-option-neutral .theme-preview-mark { background: linear-gradient(135deg, #2d6cdf, #e32932); }
.theme-option-neutral .theme-preview-content { background: #f7f4ee; }
.theme-option-neutral .theme-preview-content i:first-child { background: #2d6cdf; }
.theme-option-orthopedie_varoise .theme-preview-sidebar { background: #484a4f; }
.theme-option-orthopedie_varoise .theme-preview-sidebar img { padding: 4px; background: #fff; border-radius: 4px; }
.theme-option-orthopedie_varoise .theme-preview-content { background: #fbf8fa; }
.theme-option-orthopedie_varoise .theme-preview-content i:first-child { background: #c9286d; }
.theme-option-domortiz .theme-preview-sidebar { background: #15130f; }
.theme-option-domortiz .theme-preview-sidebar img { padding: 4px; background: #fff; border-radius: 4px; }
.theme-option-domortiz .theme-preview-content { background: #f7f3eb; }
.theme-option-domortiz .theme-preview-content i:first-child { background: #c9ac6e; }
.theme-option-copy strong, .theme-option-copy small { display: block; }
.theme-option-copy strong { color: var(--ink); font-size: 13px; }
.theme-option-copy small { min-height: 34px; margin-top: 4px; color: var(--muted); font-weight: 500; line-height: 1.35; }
.theme-check { position: absolute; top: 7px; right: 7px; width: 23px; height: 23px; display: none; place-items: center; border-radius: 50%; color: var(--brand-contrast); background: var(--brand); font-size: 11px; box-shadow: 0 3px 10px rgba(0,0,0,.14); }
.theme-option:has(input:checked) .theme-check { display: grid; }

.relation-feed { padding: 4px 20px; }
.relation-feed.compact { padding: 4px 18px; }
.relation-item { display: grid; grid-template-columns: 44px 1fr auto; gap: 14px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.relation-item:last-child { border-bottom: 0; }
.relation-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; background: var(--brand-soft); color: var(--brand-dark); font-weight: 900; }
.relation-email { color: #3878c7; background: #eaf3ff; }
.relation-meeting { color: #bd7111; background: var(--amber-soft); }
.relation-message { color: #197a55; background: var(--green-soft); }
.relation-visit { color: #b43d51; background: var(--red-soft); }
.relation-content h3 { margin: 7px 0 4px; font-size: 15px; }
.relation-content > p { margin: 8px 0; color: #4b5265; }
.relation-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.relation-head time { color: var(--muted); font-size: 11px; white-space: nowrap; }
.relation-meta { display: flex; flex-wrap: wrap; gap: 6px 14px; color: var(--muted); font-size: 11px; }

.customer-timeline { padding: 8px 22px; }
.customer-event { display: grid; grid-template-columns: 38px 1fr; gap: 14px; position: relative; padding: 16px 0; }
.customer-event:not(:last-child)::before { content: ""; position: absolute; left: 18px; top: 49px; bottom: -3px; width: 1px; background: var(--line); }
.customer-event-icon { position: relative; z-index: 1; width: 37px; height: 37px; display: grid; place-items: center; border-radius: 12px; background: var(--brand-soft); color: var(--brand-dark); font-weight: 800; }
.event-email { color: #3878c7; background: #eaf3ff; }
.event-meeting, .event-task { color: #bd7111; background: var(--amber-soft); }
.event-document { color: #197a55; background: var(--green-soft); }
.customer-event-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.customer-event-head time { color: var(--muted); font-size: 11px; white-space: nowrap; }
.customer-event p { margin: 8px 0 0; color: #4b5265; }

.document-row { display: grid; grid-template-columns: 35px 1fr auto; align-items: center; gap: 9px; padding: 10px 0; border-bottom: 1px solid #eef0f5; }
.document-row:last-child { border-bottom: 0; }
.document-row strong, .document-row small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.document-row small { color: var(--muted); margin-top: 2px; }
.document-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; background: var(--green-soft); color: var(--green); }
.upload-form { display: grid; gap: 8px; padding-top: 14px; margin-top: 8px; border-top: 1px solid var(--line); }
.upload-form input, .upload-form select { font-size: 11px; }
.product-line-form { display: grid; grid-template-columns: 1.3fr 1.4fr .55fr .75fr .65fr .6fr auto; gap: 8px; align-items: end; }
.product-line-form label { font-size: 9px; }
.product-line-form input, .product-line-form select { padding: 8px; }
.product-actions { display: flex; align-items: center; gap: 6px; white-space: nowrap; }

/* Catalogue · formules SaaS Unicapture */
.saas-pricing{margin:0 0 24px}.saas-pricing-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:16px;padding:22px 24px;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary) 7%,var(--surface)))}.saas-pricing-head h2{margin:4px 0 7px}.saas-pricing-head p{max-width:780px;margin:0;color:var(--muted);line-height:1.5}.saas-pricing-head form{flex:0 0 auto}.saas-pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:14px}.saas-plan-card{display:flex;flex-direction:column;min-width:0;padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 8px 22px rgba(21,36,52,.045)}.saas-plan-card.is-continuous{border-top:4px solid var(--primary)}.saas-plan-card.is-growth{border-top:4px solid #c48b22;background:linear-gradient(180deg,#fffaf0 0,var(--surface) 120px)}.saas-plan-card.is-inactive{opacity:.62}.saas-plan-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:9px;min-height:48px}.saas-plan-card>header>div{display:flex;align-items:center;gap:9px;min-width:0}.saas-plan-card h3{margin:0;font-size:1.02rem;line-height:1.25}.saas-plan-index{display:grid;place-items:center;width:27px;height:27px;flex:0 0 auto;border-radius:8px;background:var(--surface-muted);color:var(--muted);font-size:.7rem;font-weight:900}.saas-plan-tagline{min-height:58px;margin:13px 0;color:var(--muted);font-size:.8rem;line-height:1.5}.saas-plan-price{display:flex;align-items:center;gap:10px;padding:15px 0;border-top:1px solid var(--border)}.saas-plan-price strong{font-size:1.72rem;line-height:1;color:var(--text)}.saas-plan-price span{color:var(--muted);font-size:.7rem;line-height:1.35}.saas-plan-annual{display:grid;gap:4px;padding:11px 12px;border-radius:11px;background:color-mix(in srgb,var(--primary) 7%,var(--surface));font-size:.73rem}.saas-plan-annual span{color:var(--muted);line-height:1.35}.saas-plan-annual em{color:var(--green);font-style:normal;font-weight:800}.saas-plan-features{display:grid;gap:9px;margin:17px 0;padding:0;list-style:none}.saas-plan-features li{position:relative;padding-left:20px;font-size:.78rem;line-height:1.42}.saas-plan-features li::before{content:"✓";position:absolute;left:0;top:0;color:var(--green);font-weight:900}.saas-plan-terms{display:grid;gap:8px;margin:auto 0 0;padding:14px 0 0;border-top:1px solid var(--border)}.saas-plan-terms div{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.saas-plan-terms dt{color:var(--muted);font-size:.7rem}.saas-plan-terms dd{max-width:60%;margin:0;font-size:.72rem;font-weight:800;text-align:right;line-height:1.35}.saas-plan-variable{display:grid;gap:5px;margin-top:13px;padding:12px;border:1px solid #c6dfd2;border-radius:10px;background:#f2faf6}.saas-plan-variable.needs-definition{border-color:#efd59d;background:#fff9ec}.saas-plan-variable span{color:var(--muted);font-size:.7rem;line-height:1.45}.saas-plan-exclusions{margin:13px 0 0;color:var(--muted);font-size:.68rem;line-height:1.45}.saas-plan-exclusions strong{color:var(--text)}.saas-plan-editor{margin-top:16px;padding-top:13px;border-top:1px dashed var(--border)}.saas-plan-editor>summary{cursor:pointer;color:var(--primary);font-size:.75rem;font-weight:800}.saas-plan-editor>form{display:grid;gap:13px;margin-top:15px;padding:15px;border-radius:12px;background:var(--surface-muted)}.saas-plan-editor .form-grid{gap:10px}.saas-plan-editor .field{min-width:0}.saas-plan-editor input,.saas-plan-editor textarea{font-size:.76rem}.saas-plan-checks{display:grid;gap:8px}.saas-plan-checks label{display:flex;align-items:flex-start;gap:7px;font-size:.72rem;line-height:1.35}.saas-plan-checks input{width:auto;margin-top:2px}.saas-plan-editor .btn{justify-self:start}
.saas-plan-deployment{display:grid;gap:9px;margin:4px 0 15px;padding:13px;border:1px solid #d9e2ee;border-radius:11px;background:#f7f9fc}.saas-plan-deployment.is-client-owned{border-color:#bfddce;background:#f2faf6}.saas-plan-deployment>strong{font-size:.78rem;color:var(--primary)}.saas-plan-deployment p{display:grid;gap:3px;margin:0;color:var(--muted);font-size:.69rem;line-height:1.45}.saas-plan-deployment p b{color:var(--text);font-size:.64rem;text-transform:uppercase;letter-spacing:.04em}
.saas-plan-group-included{display:grid;gap:5px;margin:13px 0 0;padding:12px;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--primary) 5%,var(--surface))}.saas-plan-group-included strong{font-size:.76rem}.saas-plan-group-included span{color:var(--muted);font-size:.69rem;line-height:1.35}.saas-plan-group-included span:nth-last-child(-n+2){color:var(--green);font-weight:800}
.saas-plan-capacity-policy{margin:9px 0 14px;padding:10px 12px;border-left:3px solid #c48b22;border-radius:0 9px 9px 0;background:#fff9ed;color:var(--muted);font-size:.68rem;line-height:1.45}.saas-plan-capacity-policy strong{color:#8a5b00}
@media(max-width:1350px){.saas-pricing-grid{grid-template-columns:repeat(2,minmax(280px,1fr))}.saas-plan-tagline{min-height:auto}}
@media(max-width:720px){.saas-pricing-head{align-items:stretch;flex-direction:column;padding:18px}.saas-pricing-head .btn{width:100%}.saas-pricing-grid{grid-template-columns:1fr}.saas-plan-card{padding:17px}.saas-plan-card>header{min-height:0}.saas-plan-terms dd{max-width:65%}}

.quote-lines { display: grid; gap: 8px; }
.quote-line { display: grid; grid-template-columns: minmax(220px, 2fr) .55fr .8fr .65fr .6fr; gap: 8px; align-items: center; }
.quote-line-head { padding: 0 10px; color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .05em; font-weight: 700; }
.quote-sheet { max-width: 980px; margin: 0 auto; padding: 55px; border: 1px solid var(--line); border-radius: 20px; background: white; box-shadow: var(--shadow); }
.quote-brand { display: flex; justify-content: space-between; align-items: flex-start; padding-bottom: 35px; border-bottom: 2px solid var(--ink); }
.quote-brand > div:first-child { display: flex; align-items: center; gap: 12px; font-size: 18px; }
.quote-brand-logo { width: 190px; height: 66px; object-fit: contain; padding: 7px 10px; border-radius: 10px; }
.theme-groupedev .quote-brand-logo { border: 1px solid var(--line); background: #fff; }
.theme-azimuts .quote-brand-logo { border: 1px solid var(--line); background: #fff; }
.theme-alapagecom .quote-brand-logo { background: #051e35; }
.quote-brand h1 { margin: 2px 0 8px; font-size: 28px; }
.quote-kicker, .quote-label { display: block; color: var(--muted); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; font-weight: 800; }
.quote-parties { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; padding: 35px 0; }
.quote-parties strong { display: block; margin-top: 8px; font-size: 16px; }
.quote-parties p { color: var(--muted); }
.quote-dates { display: flex; gap: 45px; padding: 17px 20px; margin-bottom: 35px; border-radius: 12px; background: var(--canvas); }
.quote-dates span, .quote-dates strong { display: block; }
.quote-dates span { color: var(--muted); font-size: 10px; text-transform: uppercase; }
.quote-table { margin-top: 20px; }
.quote-table th { background: var(--nav); color: white; }
.quote-table td small { display: block; color: var(--muted); margin-top: 3px; }
.quote-total { display: grid; grid-template-columns: 1fr 330px; gap: 50px; margin-top: 30px; }
.quote-total dl { display: grid; grid-template-columns: 1fr auto; gap: 10px 30px; margin: 0; }
.quote-total dt, .quote-total dd { margin: 0; }
.quote-total dd { text-align: right; font-weight: 700; }
.quote-total .grand { padding-top: 12px; margin-top: 5px; border-top: 2px solid var(--ink); font-size: 18px; }
.quote-terms { padding-top: 30px; margin-top: 40px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }

.report-bars { display: grid; gap: 17px; }
.report-row { display: grid; grid-template-columns: 110px 1fr 40px 100px; gap: 11px; align-items: center; }
.report-row span { font-size: 12px; font-weight: 700; }
.report-row strong { text-align: right; }
.report-row em { color: var(--muted); text-align: right; font-size: 11px; font-style: normal; }
.report-track { height: 10px; overflow: hidden; border-radius: 99px; background: #eff1f5; }
.report-track i { display: block; height: 100%; border-radius: 99px; background: linear-gradient(90deg, var(--brand), var(--brand-bright)); }
.report-bars.compact .report-row { grid-template-columns: 100px 1fr 30px; }
.activity-stat { display: flex; justify-content: space-between; padding: 10px 0; border-bottom: 1px solid var(--line); }
.activity-stat:last-child { border: 0; }

.automation-list { padding: 8px 20px; }
.automation-card { display: grid; grid-template-columns: auto 1fr auto auto 1.3fr auto; align-items: center; gap: 14px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.automation-card:last-child { border: 0; }
.automation-card p { margin: 3px 0 0; color: var(--muted); font-size: 11px; }
.automation-trigger { padding: 5px 8px; border-radius: 7px; color: var(--brand-dark); background: var(--brand-soft); font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.automation-trigger.action { color: var(--green); background: var(--green-soft); }
.automation-arrow { color: var(--muted); font-size: 18px; }

/* Nova-Legal */
.legal-warning { display: flex; align-items: center; gap: 12px; padding: 14px 18px; margin-bottom: 20px; border: 1px solid #f0b8b1; border-left: 5px solid #b42318; border-radius: 12px; color: #6f2017; background: #fff6f5; }
.legal-warning strong { white-space: nowrap; }
.legal-warning span { color: #70443f; font-size: 12px; }
.legal-metrics { margin-top: 20px; }
.legal-template-advanced { padding: 0; }
.legal-template-advanced > summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 22px; cursor:pointer; list-style:none; }
.legal-template-advanced > summary::-webkit-details-marker { display:none; }
.legal-template-advanced > summary span { color:var(--muted); font-size:11px; }
.legal-template-advanced[open] > summary { border-bottom:1px solid var(--line); }
.legal-template-advanced > .form-grid { padding:22px; }
.legal-template-kicker { display:flex; align-items:center; flex-wrap:wrap; gap:6px 16px; margin-bottom:6px; }
.legal-template-kicker .eyebrow { margin:0; }
.legal-signature-card .card-body p { margin:0; color:var(--muted); line-height:1.6; }
.legal-signature-body{display:grid;gap:15px}.legal-signature-send{display:grid;gap:14px}.legal-signer-list{display:grid;gap:10px}.legal-signer-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:10px;padding:13px 38px 13px 13px;border:1px solid var(--border);border-radius:12px;background:var(--surface-muted)}.legal-signer-company{grid-column:1/-1}.legal-signer-remove{position:absolute;top:9px;right:9px;display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:50%;color:var(--muted);background:transparent;font-size:18px;cursor:pointer}.legal-signer-remove:hover{color:#9b2c2c;background:#feecec}.legal-signature-events{border-top:1px solid var(--border);padding-top:13px}.legal-signature-events summary{cursor:pointer;font-weight:750}.legal-signature-events ol{display:grid;gap:8px;margin:12px 0 0;padding:0;list-style:none}.legal-signature-events li{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:12px}.legal-signature-events time{white-space:nowrap}.legal-settings-layout{margin-top:20px}.legal-setup-steps ol{display:grid;gap:16px;margin:0;padding:0;list-style:none;counter-reset:esign-step}.legal-setup-steps li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:2px 10px;counter-increment:esign-step}.legal-setup-steps li::before{content:counter(esign-step);grid-row:1/3;display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:var(--brand-contrast);background:var(--brand);font-weight:800}.legal-setup-steps strong,.legal-setup-steps span{display:block}.legal-setup-steps span{color:var(--muted);line-height:1.5}.settings-form-actions{display:flex;justify-content:flex-end}
@media (max-width:720px){.legal-signer-row{grid-template-columns:1fr}.legal-signer-company{grid-column:auto}.legal-signature-events li{display:grid;gap:2px}.settings-form-actions .btn{width:100%}}
.legal-filters { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(190px, .62fr) minmax(230px, .8fr) auto; gap: 14px; align-items: end; margin-bottom: 16px; padding: 16px 18px; }
.legal-filter-heading { align-self: center; }
.legal-filter-heading strong, .legal-filter-heading span { display: block; }
.legal-filter-heading strong { font-size: 13px; }
.legal-filter-heading span { max-width: 330px; margin-top: 3px; color: var(--muted); font-size: 10px; line-height: 1.45; }
.legal-filter-actions { display: flex; gap: 8px; }
.legal-filter-actions .btn { min-height: 39px; }
.legal-table-card table { min-width: 1040px; }
.legal-table-card th:nth-child(1) { width: 24%; }
.legal-table-card th:nth-child(2) { width: 17%; }
.legal-table-card th:nth-child(3) { width: 20%; }
.legal-document-cell strong, .legal-document-cell small, .legal-parties-cell strong, .legal-parties-cell small { display: block; }
.legal-document-cell small, .legal-parties-cell small { margin-top: 4px; color: var(--muted); font-size: 10px; }
.legal-type-pill { display: inline-flex; max-width: 210px; padding: 6px 9px; border: 1px solid rgba(var(--brand-rgb), .16); border-radius: 8px; color: var(--brand-dark); background: var(--brand-soft); font-size: 10px; font-weight: 750; line-height: 1.35; }
.legal-status-cell, .legal-risk-cell { white-space: nowrap; }
.legal-heading-meta { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.legal-heading-meta > span { display: grid; gap: 3px; min-width: 145px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); }
.legal-heading-meta small { color: var(--muted); font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.legal-heading-meta strong:not(.badge) { font-size: 11px; line-height: 1.35; }
.legal-heading-meta .badge { justify-self: start; }
.legal-layout { grid-template-columns: minmax(0, 1.6fr) minmax(300px, .55fr); align-items: start; }
.legal-risk { display: inline-flex; padding: 5px 8px; border-radius: 7px; font-size: 9px; font-weight: 900; letter-spacing: .08em; }
.legal-risk-low { color: #197a55; background: var(--green-soft); }
.legal-risk-medium { color: #9b5c08; background: var(--amber-soft); }
.legal-risk-high { color: #a43917; background: #fff0e6; }
.legal-risk-critical { color: #a82b41; background: var(--red-soft); }
.badge-generated { color: #3a73bc; background: #eaf3ff; }
.badge-review_required { color: #b43d51; background: var(--red-soft); }
.badge-approved { color: #197a55; background: var(--green-soft); }
.badge-archived { color: #72798b; background: #eff1f5; }
.legal-issues { border-color: #edc6c1; }
.legal-issues ul { margin: 0; padding-left: 20px; color: #85291e; }
.legal-issues li + li { margin-top: 8px; }
.legal-risk-list { display: grid; }
.legal-risk-item { padding: 18px 20px; border-top: 1px solid var(--line); border-left: 5px solid var(--line); }
.legal-risk-item:first-child { border-top: 0; }
.legal-risk-item > div { display: flex; align-items: center; gap: 10px; }
.legal-risk-item p { margin: 10px 0 7px; color: #3d4352; }
.legal-risk-item small { color: var(--muted); }
.legal-risk-border-high, .legal-risk-border-critical { border-left-color: #b42318; }
.legal-risk-border-medium { border-left-color: #d9901b; }
.legal-risk-border-low { border-left-color: #279269; }
.legal-paper { padding: clamp(30px, 6vw, 72px); border: 1px solid #dfe2e8; border-radius: 3px; background: white; box-shadow: 0 10px 35px rgba(26,31,43,.08); }
.legal-paper-head { display: flex; justify-content: space-between; gap: 20px; padding-bottom: 16px; margin-bottom: 42px; border-bottom: 2px solid #b42318; color: #8c2620; font-size: 10px; text-transform: uppercase; letter-spacing: .07em; }
.legal-document-content { color: #17191f; font: 14px/1.7 Georgia, 'Times New Roman', serif; }
.legal-document-content h1 { font-size: 29px; line-height: 1.2; }
.legal-document-content h2 { margin: 32px 0 12px; font-size: 20px; }
.legal-document-content h3 { margin: 25px 0 10px; font-size: 16px; }
.legal-document-content p { margin: 11px 0; text-align: justify; }
.legal-document-content li { margin: 6px 0; }
.legal-consent { display: grid; grid-template-columns: auto 1fr; gap: 9px; align-items: start; padding: 12px; margin: 14px 0; border-radius: 10px; background: var(--canvas); font-size: 11px; line-height: 1.45; }
.legal-consent input { width: auto; margin-top: 2px; }
.legal-checklist { display: grid; gap: 11px; }
.legal-checklist label { display: grid; grid-template-columns: auto 1fr; gap: 9px; align-items: start; font-size: 11px; line-height: 1.45; }
.legal-checklist input { width: auto; margin-top: 2px; }
.legal-versions, .legal-sources { display: grid; }
.legal-versions a, .legal-sources a { display: grid; gap: 3px; padding: 13px 18px; border-top: 1px solid var(--line); text-decoration: none; }
.legal-versions a:first-child, .legal-sources a:first-child { border-top: 0; }
.legal-versions a:hover, .legal-versions a.active, .legal-sources a:hover { background: var(--brand-soft); }
.legal-versions small, .legal-sources small { color: var(--muted); line-height: 1.4; }
.legal-sources strong { color: var(--brand-dark); }
.legal-facts { display: grid; gap: 0; padding-top: 6px; padding-bottom: 6px; }
.legal-fact { display: grid; grid-template-columns: minmax(105px, .72fr) minmax(0, 1fr); gap: 14px; align-items: start; padding: 12px 0; border-bottom: 1px solid var(--line); }
.legal-fact:last-child { border-bottom: 0; }
.legal-fact > span { color: var(--muted); font-size: 9px; font-weight: 800; letter-spacing: .06em; line-height: 1.4; text-transform: uppercase; }
.legal-fact > strong { min-width: 0; font-size: 11px; line-height: 1.45; overflow-wrap: anywhere; }
.legal-fact > strong > small { display: block; margin-top: 3px; color: var(--muted); font-weight: 500; }
.textarea-large { min-height: 170px; }

/* Nova-Achats */
.purchase-safety { display: flex; align-items: center; gap: 13px; padding: 14px 18px; margin-bottom: 20px; border: 1px solid #eed09b; border-left: 5px solid #c27a10; border-radius: 12px; color: #754b0c; background: #fffaf0; }
.purchase-safety strong { white-space: nowrap; }
.purchase-safety span { color: #715d3e; font-size: 12px; }
.purchase-import { display: grid; grid-template-columns: 1fr 1.35fr; align-items: center; gap: 25px; padding: 20px 22px; margin-bottom: 20px; }
.purchase-import > div { display: flex; align-items: center; gap: 14px; }
.purchase-import h2, .purchase-import p { margin: 0; }
.purchase-import p { margin-top: 4px; color: var(--muted); font-size: 11px; }
.purchase-import form { display: grid; grid-template-columns: 1fr 1.35fr auto; align-items: end; gap: 10px; }
.purchase-import-icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 13px; color: var(--brand-dark); background: var(--brand-soft); font-size: 22px; font-weight: 800; }
.purchase-layout { grid-template-columns: minmax(0, 1.55fr) minmax(290px, .45fr); align-items: start; }
.purchase-confirm { display: grid; grid-template-columns: auto 1fr; gap: 9px; align-items: start; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--canvas); font-size: 11px; line-height: 1.45; }
.purchase-confirm input { width: auto; margin-top: 2px; }
.purchase-balance { color: #b43d51; font-size: 17px; }
.purchase-alert { border-color: #edc6c1; }
.purchase-alert ul { margin: 0; padding-left: 20px; color: #85291e; }
.purchase-match-list { display: grid; }
.purchase-match-list article { padding: 16px 19px; border-top: 1px solid var(--line); }
.purchase-match-list article:first-child { border-top: 0; }
.purchase-match-list article > div:first-child { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.purchase-match-list p { margin: 7px 0; color: var(--muted); font-size: 11px; }
.purchase-bank-form { background: #fffdf8; }
.purchase-bank-state { font-size: 21px !important; text-transform: capitalize; }
.purchase-profile { margin-bottom: 20px; }
.purchase-profile summary { cursor: pointer; }
.purchase-profile summary::-webkit-details-marker { display: none; }
.purchase-hash { word-break: break-all; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 10px; }
.badge-purchase-new, .badge-purchase-draft, .badge-purchase-unmatched { color: #72798b; background: #eff1f5; }
.badge-purchase-extracting, .badge-purchase-review, .badge-purchase-suggested { color: #bd7111; background: var(--amber-soft); }
.badge-purchase-validated, .badge-purchase-ready, .badge-purchase-confirmed { color: #3a73bc; background: #eaf3ff; }
.badge-purchase-matched, .badge-purchase-exported { color: #197a55; background: var(--green-soft); }
.badge-purchase-archived, .badge-purchase-cancelled, .badge-purchase-rejected, .badge-purchase-ignored { color: #b43d51; background: var(--red-soft); }
.badge-bank-missing { color: #72798b; background: #eff1f5; }
.badge-bank-unverified { color: #bd7111; background: var(--amber-soft); }
.badge-bank-verified { color: #197a55; background: var(--green-soft); }
.text-success { color: #197a55; }

/* Nova-Frais */
.expense-identity-note { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; padding: 15px 18px; border: 1px solid #cbdced; border-radius: 15px; background: #edf4fa; }
.expense-identity-note strong, .expense-identity-note p { display: block; margin: 0; }
.expense-identity-note p { margin-top: 3px; color: var(--muted); font-size: 12px; }
.expense-identity-icon { width: 40px; height: 40px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 13px; color: #fff; background: var(--accent); font-size: 18px; }
.expense-mobile-access { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 28px; margin-bottom: 20px; padding: 24px 28px; overflow: hidden; background: linear-gradient(135deg, var(--surface) 0%, var(--brand-soft) 100%); }
.expense-mobile-copy h2 { margin: 5px 0 8px; }
.expense-mobile-copy p { max-width: 700px; margin: 0; color: var(--muted); line-height: 1.6; }
.expense-mobile-actions { display: flex; flex-wrap: wrap; gap: 9px; margin: 18px 0 10px; }
.expense-mobile-copy code { display: block; max-width: 700px; overflow: hidden; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.expense-qr-frame { display: grid; justify-items: center; gap: 8px; padding: 14px; border: 1px solid var(--line); border-radius: 18px; background: #fff; box-shadow: 0 12px 28px rgba(24,33,40,.1); }
.expense-qr-frame [data-qr-code] { width: 184px; height: 184px; }
.expense-qr-frame img, .expense-qr-frame canvas { display: block; width: 184px !important; height: 184px !important; }
.expense-qr-frame small { color: var(--muted); font-size: 10px; font-weight: 700; }
.expense-metrics { margin-bottom: 20px; }
.expense-filters { display: grid; grid-template-columns: repeat(4, minmax(140px, 1fr)) auto; gap: 12px; align-items: end; padding: 17px 18px; border-bottom: 1px solid var(--line); }
.expense-capture-page { max-width: 1180px; margin: 0 auto; }
.expense-capture-grid { display: grid; grid-template-columns: minmax(300px, .75fr) minmax(420px, 1.25fr); gap: 20px; align-items: start; }
.expense-camera-card { position: sticky; top: 94px; padding: 32px; text-align: center; }
.expense-camera-card h2 { margin: 13px 0 7px; }
.expense-camera-card > p { color: var(--muted); }
.expense-camera-icon { width: 72px; height: 72px; display: grid; place-items: center; margin: 0 auto; border-radius: 23px; color: var(--brand-contrast); background: linear-gradient(135deg, var(--brand), var(--brand-bright)); box-shadow: 0 16px 35px rgba(var(--brand-rgb), .2); font-size: 30px; }
.expense-camera-button { display: grid; gap: 3px; margin: 24px 0 12px; padding: 24px 18px; border: 2px dashed rgba(var(--brand-rgb), .42); border-radius: 18px; color: var(--brand-dark); background: var(--brand-soft); cursor: pointer; transition: .18s ease; }
.expense-camera-button:hover { transform: translateY(-2px); border-color: var(--brand); }
.expense-camera-button span { font-size: 30px; }
.expense-camera-button strong { font-size: 17px; }
.expense-camera-button small { color: var(--muted); font-weight: 500; }
.expense-file-input { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; pointer-events: none; }
.expense-preview { overflow: hidden; margin: 15px 0; border: 1px solid var(--line); border-radius: 15px; background: var(--canvas); }
.expense-preview img { width: 100%; max-height: 390px; display: block; object-fit: contain; }
.expense-preview span { display: block; padding: 9px; color: var(--muted); font-size: 11px; }
.expense-camera-card.is-reviewing [data-expense-camera-trigger] { display: none; }
.expense-review-actions { display: grid; grid-template-columns: minmax(150px, .72fr) minmax(220px, 1.28fr); gap: 10px; margin: 15px 0 4px; }
.expense-review-actions[hidden], .is-uploading .expense-review-actions { display: none; }
.expense-retake-button { min-height: 58px; justify-content: center; border-color: #e2b5ba; color: #963143; background: #fff7f8; cursor: pointer; }
.expense-retake-button span { font-size: 18px; }
.expense-employee-fixed { display: flex; align-items: center; gap: 11px; min-height: 54px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 11px; background: var(--canvas); }
.expense-employee-fixed strong, .expense-employee-fixed small { display: block; }
.expense-employee-fixed small { color: var(--muted); }
.expense-submit { min-width: 190px; }
.expense-quick-submit { width: 100%; min-height: 58px; display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 9px; align-content: center; margin: 0; text-align: left; }
.expense-quick-submit > span { grid-row: 1 / 3; align-self: center; font-size: 20px; }
.expense-quick-submit > strong, .expense-quick-submit > small { grid-column: 2; }
.expense-quick-submit > small { opacity: .82; font-size: 9px; font-weight: 650; }
.expense-quick-submit:disabled { cursor: not-allowed; filter: grayscale(.35); opacity: .5; }
.expense-upload-progress { display: grid; gap: 9px; margin-top: 13px; padding: 13px 14px; border: 1px solid rgba(var(--brand-rgb), .28); border-radius: 13px; background: var(--brand-soft); text-align: left; }
.expense-upload-progress[hidden], .expense-upload-error[hidden] { display: none; }
.expense-upload-progress-head { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 9px; color: var(--brand-dark); font-size: 11px; }
.expense-upload-progress-head > span:last-child { min-width: 38px; font-variant-numeric: tabular-nums; font-weight: 850; text-align: right; }
.expense-upload-spinner { width: 17px; height: 17px; border: 2px solid rgba(var(--brand-rgb), .22); border-top-color: var(--brand); border-radius: 50%; animation: expense-upload-spin .75s linear infinite; }
.expense-upload-track { height: 8px; overflow: hidden; border-radius: 999px; background: rgba(var(--brand-rgb), .14); }
.expense-upload-track > span { width: 0; height: 100%; display: block; border-radius: inherit; background: linear-gradient(90deg, var(--brand), var(--brand-bright)); transition: width .18s ease; }
.expense-upload-progress small { color: var(--muted); font-size: 10px; }
.expense-upload-error { margin-top: 12px; padding: 11px 13px; border: 1px solid #efc4ca; border-radius: 11px; color: #9d2639; background: #fff1f3; font-size: 11px; font-weight: 700; text-align: left; }
@keyframes expense-upload-spin { to { transform: rotate(360deg); } }
.expense-quick-context .card-body { display: grid; gap: 17px; }
.expense-auto-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.expense-auto-grid span { display: flex; align-items: center; gap: 8px; min-height: 42px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 11px; background: var(--canvas); font-size: 11px; font-weight: 720; }
.expense-auto-grid strong { color: #197a55; }
.expense-optional-context { overflow: hidden; border: 1px solid var(--line); border-radius: 13px; }
.expense-optional-context summary { padding: 13px 15px; cursor: pointer; font-weight: 800; }
.expense-optional-context summary span { color: var(--muted); font-size: 10px; font-weight: 600; }
.expense-optional-context[open] summary { border-bottom: 1px solid var(--line); }
.expense-optional-context .form-grid { padding: 15px; }
.expense-quick-consent { margin: 0; }
.expense-codex-note { display: grid; gap: 3px; padding: 13px 15px; border: 1px solid #bfd5ec; border-radius: 12px; color: #264f7b; background: #eef6ff; }
.expense-codex-note span { color: var(--muted); font-size: 11px; }
.expense-detail-grid { display: grid; grid-template-columns: minmax(320px, .72fr) minmax(520px, 1.28fr); gap: 20px; align-items: start; }
.expense-receipt-panel { position: sticky; top: 94px; overflow: hidden; }
.archive-seal { padding: 6px 9px; border-radius: 999px; color: #197a55; background: var(--green-soft); font-size: 9px; font-weight: 850; white-space: nowrap; }
.expense-receipt-view { min-height: 440px; display: grid; place-items: center; padding: 18px; background: #e9ecef; }
.expense-receipt-view img { width: 100%; max-height: 680px; object-fit: contain; filter: drop-shadow(0 10px 18px rgba(28,34,39,.15)); }
.expense-receipt-view object { width: 100%; height: 660px; border: 0; background: #fff; }
.expense-archive-meta { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; padding: 13px 18px; color: var(--muted); font-size: 9px; }
.expense-archive-meta code { color: var(--ink); }
.expense-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.expense-actions form { margin: 0; }
.expense-reject-form { display: flex; gap: 7px; flex: 1 1 360px; }
.expense-reject-form input { min-width: 180px; flex: 1; border: 1px solid var(--line); border-radius: 10px; padding: 9px 11px; }
.expense-validation-stamp { width: 100%; display: grid; gap: 3px; padding: 15px; border-radius: 13px; color: #176848; background: var(--green-soft); }
.expense-validation-stamp span { font-size: 11px; }
.badge-expense-draft { color: #667085; background: #f2f3f5; }
.badge-expense-review { color: #8a5b00; background: #fff4d8; }
.badge-expense-submitted { color: #315a86; background: #e8eef9; }
.badge-expense-approved { color: #18794e; background: #e7f7ef; }
.badge-expense-rejected { color: #b42318; background: #fff0ed; }
.badge-expense-reimbursed, .badge-expense-exported { color: #197a55; background: var(--green-soft); }
.flash-warning { color: #8a5b00; border-color: #efd89d; background: #fff8e6; }

@media print {
    .sidebar, .topbar, .no-print, .flash-stack { display: none !important; }
    body, .main, .content { margin: 0; padding: 0; background: white; }
    .quote-sheet { max-width: none; padding: 20px; border: 0; border-radius: 0; box-shadow: none; }
}

@media (max-width: 1100px) {
    .grid-4 { grid-template-columns: repeat(2, 1fr); }
    .dashboard-grid, .detail-layout { grid-template-columns: 1fr; }
    .auth-page { grid-template-columns: 1fr; }
    .auth-visual { display: none; }
    .expense-detail-grid { grid-template-columns: minmax(280px, .8fr) minmax(430px, 1.2fr); }
    .legal-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .legal-filter-heading { grid-column: 1 / -1; }
    .legal-filter-actions { justify-self: end; }
}

@media (max-width: 780px) {
    .sidebar { transform: translateX(-100%); transition: transform .22s ease; }
    .sidebar.open { transform: translateX(0); box-shadow: 18px 0 50px rgba(17,18,35,.3); }
    .main { width: 100%; margin-left: 0; }
    .mobile-toggle { display: block; }
    .topbar { height: 66px; padding: 0 16px; }
    .global-search { width: auto; flex: 1; }
    .global-search input { padding-left: 35px; }
    .quick-add .btn span { display: none; }
    .locale-switch select { min-width: 72px; max-width: 82px; }
    .content { padding: 20px 15px 40px; }
    .page-heading, .page-header, .page-head { align-items: stretch; flex-direction: column; }
    .page-actions .btn { flex: 1; }
    .dashboard-next-appointment-compact { flex: 1 1 100%; }
    .agenda-reminder-settings { align-items: stretch; flex-direction: column; }
    .agenda-reminder-settings > .btn { width: 100%; }
    .dashboard-appointment-body { grid-template-columns: 58px minmax(0, 1fr); }
    .dashboard-appointment-date { width: 58px; height: 58px; border-radius: 15px; }
    .dashboard-appointment-actions { grid-column: 1 / -1; justify-content: stretch; }
    .dashboard-appointment-actions .btn { flex: 1; }
    .dashboard-appointment-header-actions { width: 100%; }
    .dashboard-appointment-header-actions .btn { flex: 1; }
    .grid-2, .grid-3, .form-grid, .sentinel-level-options, .sentinel-install-grid, .sms-layout { grid-template-columns: 1fr; }
    .sentinel-drive-body { align-items: flex-start; flex-direction: column; }
    .theme-picker { grid-template-columns: 1fr; }
    .form-span-2 { grid-column: auto; }
    .detail-list { grid-template-columns: 1fr; }
    .legal-filters { grid-template-columns: 1fr; }
    .legal-filter-heading { grid-column: auto; }
    .legal-filter-actions { justify-self: stretch; }
    .legal-filter-actions .btn { flex: 1; justify-content: center; }
    .legal-heading-meta { display: grid; grid-template-columns: 1fr; }
    .legal-heading-meta > span { min-width: 0; }
    .legal-fact { grid-template-columns: 1fr; gap: 5px; }
    .auth-panel { padding: 35px 22px; }
    .product-line-form { grid-template-columns: 1fr 1fr; }
    .quote-line, .quote-line-head { grid-template-columns: 1fr 80px 100px; }
    .quote-line > :nth-child(4), .quote-line > :nth-child(5), .quote-line-head > :nth-child(4), .quote-line-head > :nth-child(5) { display: none; }
    .quote-sheet { padding: 25px 18px; }
    .quote-parties, .quote-total { grid-template-columns: 1fr; gap: 25px; }
    .quote-dates { flex-wrap: wrap; gap: 20px; }
    .automation-card { grid-template-columns: auto 1fr; }
    .automation-arrow { display: none; }
    .report-row { grid-template-columns: 90px 1fr 30px; }
    .report-row em { display: none; }
    .toolbox-hero { align-items: flex-start; flex-direction: column; padding: 25px 20px; }
    .toolbox-wordpress-mark { width: 100px; height: 100px; border-radius: 28px; }
    .toolbox-wordpress-mark span { font-size: 50px; }
    .toolbox-action-grid { grid-template-columns: 1fr; }
    .toolbox-action:last-child { grid-column: auto; }
    .toolbox-connection-panel, .toolbox-session-active { align-items: flex-start; flex-direction: column; }
    .legal-warning, .legal-paper-head { align-items: flex-start; flex-direction: column; }
    .legal-warning strong { white-space: normal; }
    .legal-paper { padding: 28px 20px; }
    .purchase-safety { align-items: flex-start; flex-direction: column; }
    .purchase-safety strong { white-space: normal; }
    .purchase-import { grid-template-columns: 1fr; }
    .purchase-import form { grid-template-columns: 1fr; }
    .expense-capture-grid, .expense-detail-grid { grid-template-columns: 1fr; }
    .expense-mobile-access { grid-template-columns: 1fr; padding: 21px; }
    .expense-qr-frame { justify-self: center; }
    .expense-camera-card, .expense-receipt-panel { position: static; }
    .expense-camera-card.is-reviewing { padding-bottom: 160px; }
    .expense-review-actions { position: fixed; z-index: 35; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); left: 12px; grid-template-columns: 1fr; margin: 0; padding: 10px; border: 1px solid var(--line); border-radius: 17px; background: rgba(255,255,255,.97); box-shadow: 0 18px 45px rgba(24,33,40,.24); backdrop-filter: blur(12px); }
    .expense-retake-button { min-height: 40px; order: 2; padding: 7px 9px; font-size: 10px; text-align: center; }
    .expense-quick-submit { order: 1; padding: 9px 11px; }
    .is-uploading .expense-upload-progress { position: fixed; z-index: 36; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); left: 12px; margin: 0; box-shadow: 0 18px 45px rgba(24,33,40,.24); }
    .expense-filters { grid-template-columns: 1fr; }
    .expense-filters .btn { width: 100%; }
    .expense-receipt-view { min-height: 300px; }
    .expense-receipt-view object { height: 520px; }
    .expense-reject-form { align-items: stretch; flex-direction: column; }
}

/* Nova-Facturation */
.billing-tunnel-ok { display:flex; align-items:center; gap:9px; margin-bottom:18px; padding:11px 15px; border:1px solid #bfe4d2; border-radius:12px; color:#176b4a; background:#edf9f3; }
.billing-tunnel-ok span:last-child { color:var(--muted); font-size:11px; }
.status-dot { width:9px; height:9px; border-radius:50%; background:#1f9d68; box-shadow:0 0 0 4px #d8f2e5; }
.billing-filters { display:grid; grid-template-columns:minmax(220px,320px) auto; align-items:end; justify-content:start; gap:12px; margin-bottom:18px; padding:16px 18px; }
.billing-filters .field { width:100%; }
.billing-filters .btn { min-height:40px; }
.billing-invoice-list { margin-bottom:22px; }
.billing-subscriptions { scroll-margin-top:20px; }
.billing-settings-profile { margin-bottom:22px; }
.billing-settings-provider { scroll-margin-top:20px; }
.billing-subscription-form { margin-top:18px; padding-top:16px; border-top:1px solid var(--line); }
.billing-subscription-form > summary { width:max-content; list-style:none; }
.billing-subscription-form > form { margin-top:16px; }
.billing-lines { display:grid; gap:8px; }
.billing-line { display:grid; grid-template-columns:minmax(240px,2fr) .65fr .55fr .8fr .65fr .55fr; gap:8px; align-items:center; }
.billing-line-head { padding:0 10px; color:var(--muted); font-size:10px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.billing-status-bar { display:flex; flex-wrap:wrap; align-items:center; gap:15px; margin-bottom:18px; padding:12px 16px; border:1px solid var(--line); border-radius:13px; color:var(--muted); background:#fff; font-size:11px; }
.billing-sheet { margin-bottom:22px; }
.billing-transmission { margin-bottom:20px; }
.billing-transmission .card-body { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.billing-provider-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.billing-provider-card { padding:18px; border:1px solid var(--line); border-radius:16px; background:var(--canvas); }
.billing-provider-card.active { border-color:var(--primary); box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 14%,transparent); }
.billing-provider-title, .billing-provider-title > div { display:flex; align-items:center; gap:12px; }
.billing-provider-title { justify-content:space-between; margin-bottom:16px; }
.billing-provider-title h3, .billing-provider-title p { margin:0; }
.billing-provider-title p { color:var(--muted); font-size:11px; }
.billing-provider-card form { display:grid; gap:11px; }
.billing-provider-actions { display:flex; flex-wrap:wrap; gap:7px; margin-top:14px; }
.billing-provider-actions form { margin:0; }
.billing-settings-provider{margin-top:20px}.provider-choice-form{display:grid;gap:18px}.provider-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;padding:0;border:0}.provider-choice-grid>legend{grid-column:1/-1;margin-bottom:2px;font-weight:800}.provider-choice-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--canvas);cursor:pointer}.provider-choice-card.selected{border-color:var(--primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary) 14%,transparent)}.provider-choice-card input{width:auto;margin-top:4px}.provider-choice-card strong,.provider-choice-card small{display:block}.provider-choice-card small{margin-top:2px;color:var(--primary);font-weight:800}.provider-choice-card p{margin:8px 0 0;color:var(--muted);line-height:1.5}.vosfactures-fields{padding-top:2px}.provider-test-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;border-top:1px solid var(--line)}.provider-test-row strong,.provider-test-row span{display:block}.provider-test-row span{margin-top:3px;color:var(--muted);font-size:10px}
.badge-billing-draft { color:#667085; background:#f2f3f5; }
.badge-billing-finalized, .badge-billing-queued { color:#8a5b00; background:#fff4d8; }
.badge-billing-submitted, .badge-billing-delivered { color:#315a86; background:#e8eef9; }
.badge-billing-accepted, .badge-billing-partially_paid { color:#5d3176; background:#f2e8f8; }
.badge-billing-paid { color:#0b6b4b; background:#dff8ec; }
.badge-billing-rejected, .badge-billing-overdue { color:#b43d51; background:#fdebed; }
.billing-print-page { min-height:100vh; padding:30px; background:#edf0f2; }
.print-toolbar { max-width:980px; display:flex; justify-content:flex-end; margin:0 auto 15px; }
.payment-page { min-height:100vh; color:#182128; background:#f4f1e9; }
.payment-shell { width:min(560px,calc(100% - 28px)); margin:0 auto; padding:42px 0; }
.payment-brand { display:flex; align-items:center; gap:12px; margin-bottom:20px; }
.payment-brand div { display:grid; }
.payment-brand small { color:#647079; }
.payment-card { padding:30px; border:1px solid #dfe2e3; border-radius:22px; background:#fff; box-shadow:0 20px 60px rgba(24,33,40,.08); }
.payment-card h1 { margin-bottom:4px; }
.payment-card > p { color:#647079; }
.payment-amount { display:grid; gap:4px; margin:24px 0; padding:20px; border-radius:15px; color:#fff; background:#183b66; }
.payment-amount span { color:#dce7f3; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.payment-amount strong { font-size:30px; }
.payment-details { display:grid; grid-template-columns:120px 1fr; gap:9px; margin:0 0 22px; }
.payment-details dt { color:#647079; }
.payment-details dd { margin:0; text-align:right; font-weight:700; }
.payment-option { margin-top:14px; padding:16px; border:1px solid #dfe2e3; border-radius:13px; }
.payment-option p { margin-bottom:0; color:#647079; line-height:1.65; }
.payment-option code { overflow-wrap:anywhere; color:#182128; }
.payment-card-coming { opacity:.75; }
.payment-option-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.payment-card-stancer form { margin-top:16px; }
.payment-state { padding:10px 12px; border-radius:10px; background:#f4f7fa; }
.payment-refresh { display:block; margin-top:13px; color:#183b66; text-align:center; font-weight:700; }
.payment-shell > footer { margin-top:16px; color:#647079; font-size:11px; text-align:center; }
@media (max-width: 980px) { .billing-provider-grid,.provider-choice-grid { grid-template-columns:1fr; } .billing-line { grid-template-columns:minmax(170px,1fr) 90px 80px; } .billing-line > :nth-child(5), .billing-line > :nth-child(6), .billing-line-head > :nth-child(5), .billing-line-head > :nth-child(6) { display:none; } }
@media (max-width: 620px){.provider-test-row{align-items:stretch;flex-direction:column}.provider-test-row .btn{width:100%}}
@media (max-width: 620px) { .billing-filters { grid-template-columns:1fr; } .billing-filters .btn { width:100%; } .billing-line { grid-template-columns:1fr 90px; padding:10px; border:1px solid var(--line); border-radius:12px; } .billing-line-head { display:none; } .billing-line > *:first-child { grid-column:1/-1; } .billing-print-page { padding:0; } .payment-card { padding:22px; } }
@media print { .print-toolbar { display:none!important; } .billing-print-page { padding:0; background:#fff; } .billing-print-page .quote-sheet { border:0; box-shadow:none; } }
.mobile-pairing { display: flex; align-items: center; gap: 20px; margin-bottom: 22px; padding: 22px; border-color: var(--brand); background: var(--brand-soft); }
.mobile-pairing-icon { width: 64px; height: 64px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 20px; color: #fff; background: var(--brand); font-size: 28px; font-weight: 900; }
.mobile-pairing span, .mobile-pairing strong, .mobile-pairing p { display: block; margin: 0; }
.mobile-pairing strong { margin: 4px 0; color: var(--brand-dark); font-size: 29px; letter-spacing: .18em; }
.mobile-pairing p { color: var(--muted); }
.notification-list { display: grid; }
.notification-row { display: grid; grid-template-columns: auto 1fr auto; gap: 14px; align-items: center; padding: 17px 20px; border-bottom: 1px solid var(--line); }
.notification-row.unread { background: color-mix(in srgb, var(--brand-soft) 40%, white); }
.notification-mark { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; color: var(--brand-dark); background: var(--brand-soft); font-weight: 900; }
.notification-mark.priority-critical { color: #fff; background: var(--red); }
.notification-mark.priority-high { color: #6b4500; background: var(--amber-soft); }
.notification-head { display: flex; justify-content: space-between; gap: 14px; }
.notification-head time, .notification-row small { color: var(--muted); font-size: 11px; }
.notification-row p { margin: 4px 0; }
.notification-actions { display: flex; gap: 6px; }
.mobile-device { display: grid; grid-template-columns: auto 1fr auto; gap: 11px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--line); }
.mobile-device strong, .mobile-device small { display: block; }
.mobile-device small { margin-top: 2px; color: var(--muted); }
.mobile-install { display: grid; justify-items: stretch; gap: 14px; margin-bottom: 18px; }
.mobile-install > strong, .mobile-install > p, .mobile-install > small { margin: 0; }
.mobile-install > p { color: var(--muted); line-height: 1.55; }
.mobile-install .expense-qr-frame { justify-self: center; }
.mobile-install > .btn { justify-content: center; }
.mobile-install > small { text-align: center; }
.mobile-policy { margin-top: 18px; }
.mobile-policy p { margin-bottom: 0; color: var(--muted); }
@media (max-width: 780px) { .notification-row { grid-template-columns: auto 1fr; } .notification-actions { grid-column: 2; } .mobile-pairing { align-items: flex-start; } }

@media (max-width: 480px) {
    .grid-4 { grid-template-columns: 1fr; }
    .metric { padding: 17px; }
    .topbar .quick-add { display: none; }
    .global-search { width: 100%; }
}

/* Nova-SEO */
.seo-safety { display: flex; align-items: center; gap: 16px; margin: 0 0 20px; padding: 14px 18px; border: 1px solid var(--border); border-left: 4px solid var(--primary); border-radius: 10px; background: var(--surface); }
.seo-safety strong { white-space: nowrap; }
.seo-safety span { color: var(--muted); font-size: 13px; line-height: 1.45; }
.seo-mission-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; padding: 18px; }
.seo-mission-card { display: flex; flex-direction: column; gap: 6px; padding: 18px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface); color: inherit; text-decoration: none; transition: .18s ease; }
.seo-mission-card:hover { transform: translateY(-2px); border-color: var(--primary); box-shadow: 0 8px 26px rgba(24,33,40,.08); }
.seo-mission-card strong { font-size: 16px; }
.seo-mission-card p, .seo-mission-card small { margin: 0; color: var(--muted); }
.seo-client { font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--primary); }
.badge-seo-briefing, .badge-seo-brief_ready, .badge-seo-drafting { background: #fff4d8; color: #8a5b00; }
.badge-seo-review { background: #fff0ed; color: #b42318; }
.badge-seo-approved, .badge-seo-published, .badge-seo-active { background: #e7f7ef; color: #18794e; }
.badge-seo-scheduled { background: #eeeafd; color: #5b43b5; }
.badge-seo-archived, .badge-seo-paused { background: #f2f3f5; color: #667085; }
.seo-layout { grid-template-columns: minmax(0,1.65fr) minmax(310px,.7fr); }
.seo-paper h1 { font-size: 34px; line-height: 1.15; margin: 0 0 18px; }
.seo-excerpt { font-size: 18px; line-height: 1.6; color: var(--muted); border-bottom: 1px solid var(--border); padding-bottom: 24px; margin-bottom: 30px; }
.seo-facts { display: grid; gap: 10px; padding: 16px; }
.seo-facts article { padding: 14px; border-left: 3px solid #e5484d; background: #fff6f5; border-radius: 6px; }
.seo-facts p { margin: 5px 0; }
.seo-facts small { color: var(--muted); }
.seo-faq { margin-top: 38px; padding-top: 26px; border-top: 1px solid var(--border); }
.seo-faq h3 { font-size: 17px; margin: 20px 0 6px; }
.seo-consent { display: flex; align-items: flex-start; gap: 10px; margin: 12px 0; font-size: 13px; line-height: 1.4; }
.seo-consent input { width: auto; margin-top: 3px; flex: 0 0 auto; }
.seo-brief summary, .seo-editor summary { cursor: pointer; }
.seo-brief .card-body > .field { margin-bottom: 13px; }
.seo-content-editor { min-height: 620px; font-family: ui-monospace,SFMono-Regular,Menlo,monospace; font-size: 13px; line-height: 1.6; }
.seo-meta small { font-weight: 400; color: var(--muted); }

@media (max-width: 1050px) {
    .seo-mission-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .seo-layout { grid-template-columns: 1fr; }
}

@media (max-width: 650px) {
    .seo-safety { align-items: flex-start; flex-direction: column; gap: 5px; }
    .seo-safety strong { white-space: normal; }
    .seo-mission-grid { grid-template-columns: 1fr; }
    .seo-paper h1 { font-size: 27px; }
}

/* Reporting CEO */
.ceo-reporting-panel { margin-bottom: 22px; }
.ceo-reporting-panel .card-header h2 { margin-top: 3px; }
.ceo-reporting-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(300px,.6fr); gap: 20px; padding: 18px; }
.ceo-report-list { display: grid; gap: 8px; }
.ceo-report-list a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 15px; border: 1px solid var(--border); border-radius: 10px; color: inherit; text-decoration: none; }
.ceo-report-list a:hover { border-color: var(--primary); }
.ceo-report-list span:first-child { display: flex; flex-direction: column; gap: 3px; }
.ceo-report-list small { color: var(--muted); }
.ceo-settings { padding: 16px; border-radius: 12px; background: var(--bg); }
.badge-email-sent { background: #e7f7ef; color: #18794e; }
.badge-email-failed { background: #fff0ed; color: #b42318; }
.badge-email-pending { background: #fff4d8; color: #8a5b00; }
.badge-email-disabled { background: #f2f3f5; color: #667085; }

/* Nova-Restauration */
.restaurant-metrics { margin-bottom: 20px; }
.restaurant-layout { display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(310px, .8fr); gap: 22px; align-items: start; }
.restaurant-insight-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 20px; }
.restaurant-insight-grid article { padding: 15px; border: 1px solid var(--line); border-radius: 14px; background: var(--canvas); }
.restaurant-insight-grid span, .restaurant-insight-grid strong { display: block; }
.restaurant-insight-grid span { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .05em; }
.restaurant-insight-grid strong { margin-top: 5px; font-size: 21px; }
.restaurant-weekday-table { border: 1px solid var(--line); border-radius: 14px; }
.restaurant-send-footer { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.restaurant-send-footer p { margin: 0; max-width: 670px; color: var(--muted); font-size: 12px; }
.restaurant-proposal-form { display: grid; grid-template-columns: 1.5fr 1fr 1fr auto; gap: 12px; align-items: end; border-bottom: 1px solid var(--line); }
.restaurant-proposal-form .btn { min-height: 43px; }
.restaurant-rules-list { border-top: 1px solid var(--line); }
.restaurant-rule { border-bottom: 1px solid var(--line); }
.restaurant-rule > summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 17px 20px; cursor: pointer; list-style: none; }
.restaurant-rule > summary::-webkit-details-marker, .restaurant-new-rule > summary::-webkit-details-marker { display: none; }
.restaurant-rule > summary span:first-child { display: grid; gap: 3px; }
.restaurant-rule > summary small { color: var(--muted); }
.restaurant-rule-form { display: grid; gap: 14px; padding: 20px; background: var(--canvas); border-top: 1px solid var(--line); }
.restaurant-new-rule { padding: 18px 20px; }
.restaurant-new-rule[open] > summary { margin-bottom: 14px; }
.restaurant-new-rule .restaurant-rule-form { border: 1px solid var(--line); border-radius: 14px; }
.restaurant-weekdays { display: grid; grid-template-columns: repeat(7, 1fr); gap: 7px; }
.restaurant-weekdays label { cursor: pointer; }
.restaurant-weekdays input { position: absolute; opacity: 0; pointer-events: none; }
.restaurant-weekdays span { display: grid; place-items: center; min-height: 37px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); font-weight: 700; font-size: 11px; }
.restaurant-weekdays input:checked + span { color: var(--brand-dark); border-color: var(--brand); background: var(--brand-soft); }
.checkbox-line { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--muted); }
.checkbox-line input { width: auto; flex: 0 0 auto; margin: 0; padding: 0; }
.agenda-dialog .checkbox-line { align-items: flex-start; gap: 12px; padding: 14px 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--canvas); color: var(--ink); cursor: pointer; }
.agenda-dialog .checkbox-line input { margin-top: 3px; }
.agenda-dialog .checkbox-line span { display: grid; gap: 4px; }
.agenda-dialog .checkbox-line small { color: var(--muted); line-height: 1.45; }
.restaurant-connection-actions { display: flex; justify-content: space-between; gap: 10px; }
.restaurant-connection-actions form { margin: 0; }
.restaurant-last-sync { display: grid; gap: 3px; border-top: 1px solid var(--line); }
.restaurant-last-sync small { color: var(--muted); }
.restaurant-last-sync p { color: var(--red); margin: 8px 0 0; font-size: 12px; }
.restaurant-api-scope .check-list { display: grid; gap: 12px; padding-left: 19px; margin: 0 0 16px; }
.restaurant-sync-list > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 14px 20px; border-top: 1px solid var(--line); }
.restaurant-sync-list span:first-child { display: grid; gap: 2px; }
.restaurant-sync-list small { color: var(--muted); }
.restaurant-provider-note { margin: 22px 0; border-left: 4px solid var(--brand); }
.restaurant-provider-note p { margin: 7px 0 0; }
.restaurant-row-warning { background: var(--amber-soft); }
.restaurant-status-value { font-size: 24px; text-transform: capitalize; }
.badge-not_sent, .badge-blocked { color: #72798b; background: #eff1f5; }
.badge-exported { color: #5d3176; background: #f2e8f8; }
.badge-failed { color: #b43d51; background: var(--red-soft); }
.sms-layout { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(340px, .75fr); gap: 22px; align-items: start; }
.sms-layout > .card { min-width: 0; }
.sms-send-footer { margin: 0 -20px -20px; align-items: center; justify-content: space-between; }
.sms-counter { margin: 6px 0 0; color: var(--muted); font-size: 11px; }
.sms-callback { display: grid; gap: 7px; padding: 18px 20px; border-top: 1px solid var(--line); background: var(--canvas); }
.sms-callback p, .sms-callback small { margin: 0; color: var(--muted); font-size: 11px; }
.sms-callback code { display: block; overflow-wrap: anywhere; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; color: var(--ink); background: #fff; font-size: 11px; user-select: all; }
.sms-direction { display: inline-flex; align-items: center; gap: 4px; font-size: 11px; font-weight: 800; white-space: nowrap; }
.sms-direction.inbound { color: var(--green); }
.sms-direction.outbound { color: var(--brand-dark); }
.sms-message-cell { min-width: 250px; max-width: 440px; }
@media (max-width: 780px) {
    .sms-layout { grid-template-columns: 1fr; }
    .sms-send-footer { align-items: stretch; flex-direction: column; }
}
.page-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; }
.page-actions form { margin: 0; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.attendance-notice { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; padding: 15px 18px; border: 1px solid #d9e3ef; border-radius: 15px; color: #315a86; background: #edf4fb; }
.attendance-notice > span { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 12px; color: #fff; background: #315a86; font-size: 18px; }
.attendance-notice strong, .attendance-notice p { display: block; margin: 0; }
.attendance-notice p { margin-top: 3px; color: var(--muted); font-size: 12px; }
.attendance-layout { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(340px, .65fr); gap: 22px; align-items: start; }
.attendance-entry-card { position: sticky; top: 94px; }
.attendance-week-nav { display: flex; align-items: center; gap: 7px; }
.attendance-week-nav input { width: 145px; padding: 7px 9px; }
.attendance-positive { color: #b43d51; }
.attendance-alert-list { display: grid; }
.attendance-alert { display: grid; grid-template-columns: auto 1fr auto; gap: 13px; align-items: center; padding: 16px 20px; border-top: 1px solid var(--line); }
.attendance-alert-critical { background: #fff8f7; }
.attendance-alert-warning { background: #fffdf5; }
.attendance-alert-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; color: #fff; background: var(--muted); font-weight: 900; }
.attendance-alert-critical .attendance-alert-icon { background: var(--red); }
.attendance-alert-warning .attendance-alert-icon { color: #5c3b00; background: #f1bd55; }
.attendance-alert-heading { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.attendance-alert p { margin: 4px 0 2px; }
.attendance-alert small { color: var(--muted); }
.table-subline { display: block; margin-top: 3px; color: var(--muted); }
.table-actions { display: flex; align-items: center; gap: 6px; }
.table-actions form { margin: 0; }
.attendance-break { margin: 0; padding: 14px; border: 1px solid var(--line); border-radius: 12px; }
.attendance-break legend { padding: 0 6px; color: var(--muted); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.attendance-break small { color: var(--muted); }
.attendance-form-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.attendance-legal-note { display: grid; gap: 4px; }
.attendance-legal-note p { margin: 0; color: var(--muted); font-size: 11px; }
.ceo-hero { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; margin-bottom: 22px; }
.ceo-hero > div { display: flex; flex-direction: column; gap: 5px; padding: 20px; border-radius: 14px; background: #182128; color: #fff; }
.ceo-hero span { color: #cdd4d8; font-size: 12px; font-weight: 700; }
.ceo-hero strong { font-size: 27px; }
.ceo-hero small { color: #aeb9be; }
.ceo-columns { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(300px,.6fr); gap: 20px; }
.ceo-list { margin: 0; padding: 18px 22px 20px 42px; }
.ceo-list li { margin: 9px 0; line-height: 1.5; }
.ceo-positive li::marker { color: #1f9d68; }
.ceo-alerts li::marker { color: #e5484d; }
.ceo-actions li::marker { color: var(--primary); font-weight: 800; }
@media (max-width: 950px) { .ceo-reporting-grid, .ceo-columns { grid-template-columns: 1fr; } .ceo-hero { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 540px) { .ceo-hero { grid-template-columns: 1fr; } }

/* Nova-Paie */
.payroll-confidential { display: flex; gap: 13px; align-items: center; margin-bottom: 14px; padding: 15px 18px; border: 1px solid #ddc8ec; border-radius: 15px; color: #5d3176; background: #f7f0fb; }
.payroll-confidential > span { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 12px; color: #fff; background: #74508a; }
.payroll-confidential strong, .payroll-confidential p { display: block; margin: 0; }
.payroll-confidential p { margin-top: 3px; color: var(--muted); font-size: 11px; }
.payroll-top-grid { display: grid; grid-template-columns: minmax(480px, 1.2fr) minmax(360px, .8fr); gap: 20px; margin: 20px 0; align-items: start; }
.payroll-documents { margin-top: 20px; }
.payroll-documents .card-header form input { max-width: 175px; }
.payroll-batch-builder { align-items: end; }
.payroll-batch-builder .field { min-width: 230px; }
.payroll-document-grid { display: grid; grid-template-columns: minmax(400px, .9fr) minmax(480px, 1.1fr); gap: 20px; align-items: start; }
.payroll-pdf { position: sticky; top: 94px; overflow: hidden; }
.payroll-pdf object { width: 100%; height: 720px; border: 0; background: #e9ecef; }
.badge-payroll-new { color: #667085; background: #f2f3f5; }
.badge-payroll-review { color: #8a5b00; background: #fff4d8; }
.badge-payroll-validated, .badge-payroll-ready { color: #18794e; background: #e7f7ef; }
.badge-payroll-in_batch, .badge-payroll-draft { color: #315a86; background: #e8eef9; }
.badge-payroll-exported { color: #5d3176; background: #f2e8f8; }
.badge-payroll-confirmed, .badge-payroll-paid { color: #0b6b4b; background: #dff8ec; }
.badge-payroll-cancelled, .badge-payroll-archived { color: #667085; background: #f2f3f5; }
.storage-mode-picker { display:grid; grid-template-columns:1fr 1fr auto; gap:10px; align-items:stretch; margin-bottom:16px; }
.storage-mode-picker label { display:flex; gap:10px; align-items:flex-start; padding:13px; border:1px solid var(--line); border-radius:12px; background:var(--canvas); cursor:pointer; }
.storage-mode-picker input { width:auto; margin-top:3px; }
.storage-mode-picker span { display:grid; gap:3px; }
.storage-mode-picker small { color:var(--muted); }
.storage-gauge-wrap { padding:16px; border:1px solid var(--line); border-radius:12px; margin-bottom:14px; }
.storage-gauge-head, .storage-plan-line { display:flex; justify-content:space-between; gap:12px; align-items:center; }
.storage-gauge-head div { display:flex; gap:7px; align-items:baseline; }
.storage-gauge-head span, .storage-plan-line span { color:var(--muted); }
.storage-gauge { height:12px; background:var(--canvas); border-radius:999px; overflow:hidden; margin:12px 0; }
.storage-gauge i { display:block; height:100%; min-width:2px; background:linear-gradient(90deg,var(--primary),var(--accent)); border-radius:inherit; }
.storage-admin-form { display:flex; gap:8px; align-items:end; }
.storage-admin-form label { display:grid; gap:3px; color:var(--muted); font-size:10px; }
.storage-admin-form input { width:90px; }
@media (max-width: 760px) { .storage-mode-picker { grid-template-columns:1fr; } .storage-admin-form { flex-wrap:wrap; } }
@media (max-width: 980px) { .payroll-top-grid, .payroll-document-grid { grid-template-columns: 1fr; } .payroll-pdf { position: static; } }
@media (max-width: 780px) { .payroll-batch-builder { align-items: stretch; flex-direction: column; } .payroll-batch-builder .field { width: 100%; min-width: 0; } }

@media (max-width: 1180px) {
    .restaurant-layout { grid-template-columns: 1fr; }
    .restaurant-insight-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .attendance-layout { grid-template-columns: 1fr; }
    .attendance-entry-card { position: static; }
}

@media (max-width: 780px) {
    .restaurant-proposal-form, .restaurant-insight-grid { grid-template-columns: 1fr; }
    .restaurant-send-footer { align-items: stretch; flex-direction: column; }
    .restaurant-weekdays { grid-template-columns: repeat(4, 1fr); }
    .attendance-alert { grid-template-columns: auto 1fr; }
    .attendance-alert form { grid-column: 2; }
    .attendance-form-actions { grid-template-columns: 1fr; }
}
.work-time-metrics{margin-bottom:20px}.work-time-filters{display:grid;grid-template-columns:repeat(5,minmax(145px,1fr)) auto;align-items:end;gap:14px}.work-time-filters .field{margin:0}.work-timer-active{display:flex;align-items:center;gap:24px;margin-bottom:20px;border-color:var(--brand)}.work-timer-active>div{flex:1}.work-timer-active h2{margin:8px 0 2px}.work-timer-active p{margin:0;color:var(--muted)}.work-timer-clock{font-size:28px;font-variant-numeric:tabular-nums;letter-spacing:.04em}.table-actions{display:flex;align-items:center;gap:6px}.table-actions form{margin:0}
.work-rate-form{display:flex;align-items:center;gap:5px;min-width:120px}.work-rate-form input{width:76px;padding:7px 8px}.work-rate-form .btn{white-space:nowrap}
.work-treatment-form{display:flex;align-items:center;gap:5px;min-width:210px}.work-treatment-form select{min-width:160px;padding:7px 28px 7px 8px}
.work-time-bulk{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:8px 18px;align-items:center;margin:0;padding:14px 20px;border-top:1px solid var(--line);background:var(--canvas)}.work-time-bulk-selection strong,.work-time-bulk-selection small{display:block}.work-time-bulk-selection small{margin-top:3px;color:var(--muted)}.work-time-bulk-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.work-time-bulk-actions select{width:auto;min-width:190px}.work-time-bulk-feedback{grid-column:1/-1;min-height:0;margin:0;color:var(--green);font-size:10px;font-weight:800}.work-time-bulk-feedback:empty{display:none}.work-time-check-cell{width:42px;text-align:center}.work-time-check-cell input{width:18px;height:18px;margin:0;vertical-align:middle}.work-time-locked{font-size:11px;opacity:.55}
@media(max-width:820px){.work-time-filters{grid-template-columns:1fr}.work-timer-active{align-items:stretch;flex-direction:column}.work-timer-clock{font-size:24px}.work-time-bulk{grid-template-columns:1fr}.work-time-bulk-actions{align-items:stretch;flex-direction:column}.work-time-bulk-actions select,.work-time-bulk-actions .btn{width:100%}}

/* Nova-Revenue · Nova-Résilience · Nova-Métier */
.auth-methods{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.auth-methods>strong{width:100%;font-size:13px}.auth-methods form{margin:0}.auth-methods details{width:100%;margin-top:7px;color:var(--muted);font-size:13px}.auth-recovery{display:flex;gap:7px;margin-top:9px!important}.auth-recovery input{flex:1}

/* Nova-Revenue · Nova-Résilience · Nova-Métier */
.strategic-kpis{margin-bottom:20px}.strategic-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px;padding:17px 20px}.strategic-summary>div{display:flex;align-items:center;gap:13px}.strategic-summary-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border-radius:12px;color:var(--brand-dark);background:var(--brand-soft);font-size:18px;font-weight:900}.strategic-summary strong,.strategic-summary p{display:block;margin:0}.strategic-summary p{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.5}.strategic-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(380px,.7fr);gap:20px;align-items:start}.strategic-layout>aside{position:sticky;top:88px}.strategic-list{display:grid}.strategic-item{padding:20px;border-top:1px solid var(--line)}.strategic-item:first-child{border-top:0}.strategic-item-main,.strategic-item-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.strategic-item-heading{display:flex;align-items:center;gap:12px;min-width:0}.strategic-item-heading>div{min-width:0}.strategic-item-heading h3,.strategic-item-heading p{margin:0}.strategic-item-heading h3{font-size:15px}.strategic-item-heading p{margin-top:3px;color:var(--muted);font-size:10px}.strategic-mark{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border-radius:12px;color:var(--brand-dark);background:var(--brand-soft);font-size:17px;font-weight:900}.strategic-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.strategic-item-values{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:16px 0}.strategic-item-values>div{padding:11px 12px;border-radius:11px;background:var(--canvas)}.strategic-item-values span,.strategic-item-values strong{display:block}.strategic-item-values span{color:var(--muted);font-size:9px}.strategic-item-values strong{margin-top:3px;font-size:14px}.strategic-item-footer{padding-top:12px;border-top:1px dashed var(--line)}.strategic-item-footer>span{color:var(--muted);font-size:9px}.strategic-item-footer>div{display:flex;align-items:center;gap:6px}.strategic-inline{position:relative}.strategic-inline>summary{list-style:none;cursor:pointer}.strategic-inline>summary::-webkit-details-marker{display:none}.strategic-inline[open] .strategic-inline-form{display:grid}.strategic-inline-form{position:absolute;z-index:20;right:0;top:calc(100% + 8px);display:none;grid-template-columns:repeat(2,minmax(145px,1fr));gap:8px;width:min(620px,78vw);padding:14px;border:1px solid var(--line);border-radius:13px;background:var(--surface);box-shadow:0 18px 45px rgba(25,34,44,.16)}.strategic-inline-form .btn{grid-column:1/-1}.strategic-form .card-body{max-height:calc(100vh - 180px);overflow:auto}.strategic-plan,.strategic-trigger{margin:13px 0 0;padding:11px 13px;border-radius:10px;color:var(--muted);background:var(--canvas);font-size:10px;line-height:1.55}.strategic-playbook-preview{display:grid;grid-template-columns:.75fr 1.25fr;gap:9px;margin:14px 0}.strategic-playbook-preview>div{padding:12px;border-radius:11px;background:var(--canvas)}.strategic-playbook-preview span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.strategic-playbook-preview p{margin:5px 0 0;font-size:10px;line-height:1.5}.strategic-consent{display:flex!important;flex-direction:row!important;gap:10px;align-items:flex-start;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--canvas)}.strategic-consent input{width:auto;margin-top:3px}.strategic-consent span,.strategic-consent strong,.strategic-consent small{display:block}.strategic-consent small{margin-top:3px;color:var(--muted)}.badge-revenue-active,.badge-resilience-controlled,.badge-playbook-approved,.badge-nova-ready{color:#197a55;background:var(--green-soft)}.badge-revenue-at_risk,.badge-resilience-exposed,.badge-resilience-incident,.badge-risk-high,.badge-risk-critical{color:#a63346;background:var(--red-soft)}.badge-revenue-draft,.badge-resilience-watch,.badge-playbook-review{color:#8a5b00;background:var(--amber-soft)}.badge-revenue-paused,.badge-revenue-ended,.badge-playbook-draft,.badge-playbook-archived{color:#667085;background:#f0f2f4}.badge-risk-low,.badge-risk-medium{color:#315a86;background:#e8eef9}
.strategic-playbook-library{width:100%}.strategic-library-actions{display:flex;align-items:center;gap:12px}.strategic-library-actions>span{color:var(--muted);font-size:10px}.strategic-playbook-dialog{width:min(920px,calc(100% - 28px))}.strategic-playbook-dialog .dialog-head>div{min-width:0}.strategic-playbook-dialog .dialog-head .eyebrow{display:block;margin-bottom:4px}
@media(max-width:1100px){.strategic-layout{grid-template-columns:1fr}.strategic-layout>aside{position:static}.strategic-form .card-body{max-height:none;overflow:visible}}
@media(max-width:720px){.strategic-summary,.strategic-item-main,.strategic-item-footer{align-items:flex-start;flex-direction:column}.strategic-item-values,.strategic-playbook-preview{grid-template-columns:1fr}.strategic-badges{justify-content:flex-start}.strategic-item-footer>div{flex-wrap:wrap}.strategic-inline-form{position:fixed;top:12vh;right:5vw;left:5vw;width:90vw;max-height:76vh;overflow:auto;grid-template-columns:1fr}}

/* Nova-Agenda */
.agenda-video-preference{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.45fr);gap:18px;align-items:end;margin:4px 0 14px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--brand-soft)}.agenda-video-preference strong,.agenda-video-preference small{display:block}.agenda-video-preference strong{margin:4px 0;font-size:12px}.agenda-video-preference small{color:var(--muted);line-height:1.45}.agenda-video-preference .field{margin:0}.agenda-meeting-url-row{display:flex;gap:7px}.agenda-meeting-url-row input{min-width:0}.agenda-meeting-url-row .btn{flex:0 0 auto;white-space:nowrap}.agenda-meeting-link{display:inline-flex;margin-top:5px;font-weight:800}.agenda-meeting-pending{color:#8a5b00!important;font-weight:700}
.agenda-blackouts-card{grid-column:1/-1}.agenda-blackouts-card .card-header p{max-width:720px;margin:5px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.agenda-blackout-layout{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(0,1.2fr);gap:20px;align-items:start}.agenda-blackout-form{padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--canvas)}.agenda-blackout-form .form-grid{margin-bottom:12px}.agenda-blackout-form .field-span-2{grid-column:1/-1}.agenda-blackout-list{display:grid;gap:8px}.agenda-blackout-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid var(--line);border-radius:11px}.agenda-blackout-item strong,.agenda-blackout-item small{display:block}.agenda-blackout-item small{margin-top:4px;color:var(--muted);font-size:9px}.agenda-blackout-item form{margin:0}
.agenda-hero,.agenda-appointment-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:end;margin-bottom:22px}.agenda-hero>div:first-child,.agenda-appointment-hero>div:first-child{min-width:0}.agenda-hero h1,.agenda-appointment-hero h1{margin:5px 0 0;overflow-wrap:anywhere}.agenda-hero p,.agenda-appointment-hero p{max-width:780px;margin:7px 0 0;color:var(--muted);line-height:1.55}.agenda-hero .page-actions,.agenda-appointment-hero .page-actions{justify-content:flex-end}.agenda-metrics{margin-bottom:20px}.agenda-week-card{overflow:hidden;margin-bottom:20px}.agenda-week-header{align-items:center}.agenda-week-nav{display:flex;flex-wrap:wrap;gap:7px}.agenda-channel-legend{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 13px}.agenda-channel-legend span,.agenda-event-kind{display:inline-flex!important;align-items:center;gap:5px;width:max-content;padding:3px 7px;border-radius:999px;color:var(--channel-color,var(--event-color));background:var(--channel-soft,var(--event-soft));font-size:8px;font-weight:900;line-height:1}.agenda-channel-legend i,.agenda-event-kind i{font-style:normal}.agenda-week-grid{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));min-width:1050px;border-top:1px solid var(--line)}.agenda-week-card{overflow-x:auto}.agenda-day{min-width:0;min-height:360px;border-right:1px solid var(--line);background:var(--surface)}.agenda-day:last-child{border-right:0}.agenda-day>header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--line);color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase}.agenda-day>header strong{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;color:var(--ink);font-size:13px}.agenda-day.is-today{background:color-mix(in srgb,var(--brand-soft) 32%,var(--surface))}.agenda-day.is-today>header strong{color:#fff;background:var(--brand)}.agenda-day-events{display:grid;min-width:0;gap:8px;padding:10px}.agenda-day-empty{margin:14px 4px;color:var(--muted);font-size:9px;text-align:center}.agenda-event{min-width:0;max-width:100%;overflow:hidden;border:1px solid color-mix(in srgb,var(--event-color) 22%,var(--line));border-left:4px solid var(--event-color);border-radius:10px;background:linear-gradient(135deg,var(--event-soft),var(--surface) 58%);box-shadow:0 2px 7px rgba(24,33,40,.04)}.agenda-event>summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:9px;cursor:pointer;list-style:none}.agenda-event>summary::-webkit-details-marker{display:none}.agenda-event>summary time{color:var(--event-color);font-size:10px;font-weight:900}.agenda-event>summary span,.agenda-event>summary strong,.agenda-event>summary small{display:block;min-width:0}.agenda-event>summary>span{overflow:hidden}.agenda-event>summary strong{font-size:10px;line-height:1.35;overflow-wrap:anywhere;white-space:normal}.agenda-event>summary small{margin-top:3px;color:var(--muted);font-size:8px;line-height:1.35;overflow-wrap:anywhere;white-space:normal}.agenda-event-kind{width:auto;max-width:100%;margin-bottom:3px;color:var(--event-color)}.agenda-event.status-cancelled{opacity:.55}.agenda-event.status-tentative{border-left-style:dashed}.agenda-event-detail{min-width:0;padding:0 10px 10px;color:var(--muted);font-size:9px;line-height:1.5;overflow-wrap:anywhere}.agenda-event-detail p{margin:4px 0}.agenda-event-actions{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.agenda-event-actions form{margin:0}.agenda-external-note{padding-top:5px;border-top:1px solid var(--line)}.agenda-connections{margin-bottom:20px}.agenda-connection-list{display:grid;gap:9px}.agenda-connection{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:12px}.agenda-connection.has-error{border-color:#efb3b3;background:#fffafa}.agenda-connection strong,.agenda-connection small,.agenda-connection p{display:block;margin:0}.agenda-connection small,.agenda-connection p{margin-top:3px;color:var(--muted);font-size:9px}.agenda-provider-mark{display:grid;place-items:center;width:36px;height:36px;flex:0 0 auto;border-radius:11px;color:var(--brand-dark);background:var(--brand-soft);font-size:16px;font-weight:900}.agenda-connection-actions{display:flex;gap:6px}.agenda-connect-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.agenda-connect-card{padding:17px;border:1px solid var(--line);border-radius:13px;background:var(--canvas)}.agenda-connect-card>h3{margin:12px 0 5px;font-size:14px}.agenda-connect-card>p{min-height:44px;margin:0 0 14px;color:var(--muted);font-size:9px;line-height:1.55}.agenda-connect-card>summary{display:flex;gap:10px;align-items:center;cursor:pointer;list-style:none}.agenda-connect-card>summary::-webkit-details-marker{display:none}.agenda-connect-card>summary strong,.agenda-connect-card>summary small{display:block}.agenda-connect-card>summary small{margin-top:2px;color:var(--muted);font-size:9px}.agenda-connect-card[open]>summary{margin-bottom:15px}.agenda-feed-box{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.9fr) auto;gap:14px;align-items:center;margin-top:18px;padding:14px;border-radius:12px;background:var(--brand-soft)}.agenda-feed-box strong,.agenda-feed-box p{display:block;margin:0}.agenda-feed-box p{margin-top:3px;color:var(--muted);font-size:9px}.agenda-feed-box code{overflow:hidden;padding:8px 10px;border-radius:8px;background:var(--surface);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.agenda-settings-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;align-items:start}.agenda-general-settings{margin-bottom:14px}.agenda-general-settings .field small{margin-top:4px}.agenda-booking-toggle{display:flex;gap:10px;align-items:flex-start;margin:8px 0 16px;padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--canvas)}.agenda-booking-toggle input{width:auto;margin-top:3px}.agenda-booking-toggle strong,.agenda-booking-toggle small{display:block}.agenda-booking-toggle small{margin-top:3px;color:var(--muted)}.agenda-availability-table{display:grid;margin-bottom:15px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.agenda-availability-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:12px;align-items:center;padding:9px 11px;border-bottom:1px solid var(--line)}.agenda-availability-row:last-child{border-bottom:0}.agenda-availability-row>label{display:flex;gap:7px;align-items:center;font-size:10px;font-weight:800}.agenda-availability-row>label input{width:auto}.agenda-availability-row>div{display:flex;gap:6px;align-items:center}.agenda-availability-row input[type=time]{min-width:0;padding:7px;font-size:9px}.agenda-type-list{display:grid}.agenda-type-item{border-bottom:1px solid var(--line)}.agenda-type-item>summary{display:flex;gap:10px;align-items:center;padding:14px 18px;cursor:pointer;list-style:none}.agenda-type-item>summary::-webkit-details-marker{display:none}.agenda-type-item>summary>span:nth-child(2){flex:1}.agenda-type-item>summary strong,.agenda-type-item>summary small{display:block}.agenda-type-item>summary small{margin-top:3px;color:var(--muted);font-size:9px}.agenda-type-item>form{padding:0 18px 18px}.agenda-type-color{width:12px;height:38px;border-radius:5px}.agenda-active-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px}.agenda-active-check input{width:auto}.agenda-new-type{padding:16px 18px}.agenda-new-type>summary{list-style:none}.agenda-new-type>summary::-webkit-details-marker{display:none}.agenda-dialog{width:min(760px,calc(100vw - 24px))}.agenda-dialog>form>header{display:flex;align-items:flex-start;justify-content:space-between;padding:19px 21px;border-bottom:1px solid var(--line)}.agenda-dialog>form>header h2{margin:3px 0 0}.agenda-dialog>form>header button{border:0;background:none;font-size:22px;cursor:pointer}.agenda-dialog .form-grid{padding:20px}.agenda-dialog footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--line)}
.agenda-appointment-layout{display:grid;grid-template-columns:minmax(240px,.35fr) minmax(0,1fr);gap:20px;align-items:start;margin-bottom:20px}.agenda-appointment-layout>*{min-width:0}.agenda-appointment-links .card-body{display:grid;gap:12px}.agenda-appointment-links .card-body>p,.agenda-appointment-meta{margin:0;line-height:1.55}.agenda-appointment-form .card-header p{margin:5px 0 0;color:var(--muted);line-height:1.5}.agenda-appointment-form .form-grid>*{min-width:0}.agenda-appointment-fieldset{min-width:0;margin:0;padding:0;border:0}.agenda-appointment-fieldset:disabled .card-body{background:color-mix(in srgb,var(--canvas) 65%,var(--surface))}.agenda-appointment-fieldset:disabled :is(input,select,textarea){color:var(--ink);opacity:.82;cursor:not-allowed}.agenda-crm-link{display:grid;gap:3px;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--canvas);text-decoration:none}.agenda-crm-link span{color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}.agenda-crm-link strong{color:var(--ink);overflow-wrap:anywhere}.agenda-crm-link small{color:var(--brand);font-weight:800}.agenda-appointment-meta{display:grid;gap:0}.agenda-appointment-meta>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}.agenda-appointment-meta>div:last-child{border-bottom:0}.agenda-appointment-meta dt{color:var(--muted)}.agenda-appointment-meta dd{margin:0;font-weight:800;text-align:right;overflow-wrap:anywhere}.agenda-appointment-form .form-footer{display:flex;justify-content:flex-end;gap:10px;padding:17px 20px;border-top:1px solid var(--line)}.agenda-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border-color:#efb3b3}.agenda-danger-zone h2{margin:4px 0}.agenda-danger-zone p{margin:0;color:var(--muted)}
@media (max-width:1100px){.agenda-connect-options,.agenda-settings-grid,.agenda-appointment-layout{grid-template-columns:1fr}.agenda-feed-box{grid-template-columns:1fr auto}.agenda-feed-box code{grid-column:1/-1;grid-row:2}.agenda-availability-row{grid-template-columns:110px 1fr 1fr}}
@media (max-width:700px){.agenda-hero,.agenda-appointment-hero{grid-template-columns:1fr;align-items:start}.agenda-hero .page-actions,.agenda-appointment-hero .page-actions{justify-content:flex-start}.agenda-week-nav{width:100%}.agenda-week-nav .btn{flex:1}.agenda-connect-options{grid-template-columns:1fr}.agenda-connection{grid-template-columns:auto 1fr}.agenda-connection-actions{grid-column:1/-1}.agenda-connection-actions form{flex:1}.agenda-connection-actions .btn{width:100%}.agenda-feed-box{grid-template-columns:1fr}.agenda-feed-box code{grid-column:auto;grid-row:auto}.agenda-availability-row{grid-template-columns:1fr}.agenda-availability-row>div{justify-content:space-between}.agenda-availability-row input[type=time]{width:42%}.agenda-settings-grid{display:block}.agenda-settings-grid>.card{margin-bottom:20px}}

@media (max-width:700px){.agenda-video-preference,.agenda-blackout-layout{grid-template-columns:1fr}.agenda-meeting-url-row{align-items:stretch;flex-direction:column}.agenda-meeting-url-row .btn{width:100%}.agenda-blackout-item,.agenda-danger-zone{align-items:flex-start;flex-direction:column}.agenda-blackout-item form,.agenda-blackout-item .btn,.agenda-danger-zone form,.agenda-danger-zone .btn{width:100%}.agenda-appointment-form .form-footer{align-items:stretch;flex-direction:column}}

.agenda-hero{margin-bottom:22px}.agenda-connection-list .empty{padding:18px 16px}.agenda-connection-list .empty p{margin-bottom:0}

/* Agenda unifié : grille horaire, calendriers d'équipe et synchronisation continue */
.agenda-google-grid-card{overflow:hidden}.agenda-calendar-picker{display:grid;grid-template-columns:minmax(150px,.5fr) minmax(0,2fr) auto;gap:16px;align-items:center;padding:14px 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--canvas)}.agenda-calendar-picker>div:first-of-type{display:grid;gap:6px;line-height:1.2}.agenda-calendar-picker>div:first-of-type .eyebrow,.agenda-calendar-picker>div:first-of-type strong{display:block;margin:0}.agenda-calendar-chips{display:flex;flex-wrap:wrap;gap:7px}.agenda-calendar-chip{display:flex;align-items:center;gap:6px;padding:5px 9px 5px 5px;border:1px solid var(--line);border-radius:999px;background:var(--surface);font-size:9px;font-weight:800;cursor:pointer}.agenda-calendar-chip input{position:absolute;opacity:0;pointer-events:none}.agenda-calendar-chip span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;color:var(--brand-dark);background:var(--brand-soft);font-size:8px}.agenda-calendar-chip.is-selected{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.agenda-calendar-picker-actions{display:flex;gap:6px}.agenda-live-badge{margin-left:auto!important}.agenda-time-grid{min-width:1050px}.agenda-time-grid-head{display:grid;grid-template-columns:64px repeat(7,minmax(140px,1fr));position:sticky;top:0;z-index:6;border-bottom:1px solid var(--line);background:var(--surface)}.agenda-time-zone{display:flex;align-items:flex-end;justify-content:center;padding:0 4px 8px;color:var(--muted);font-size:7px}.agenda-time-day-head{display:flex;gap:7px;align-items:center;justify-content:center;min-height:56px;border-left:1px solid var(--line)}.agenda-time-day-head span{color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase}.agenda-time-day-head strong{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;font-size:13px}.agenda-time-day-head.is-today strong{color:#fff;background:var(--brand)}.agenda-time-grid-body{display:grid;grid-template-columns:64px minmax(0,1fr);height:calc(var(--agenda-hours) * 72px);min-height:720px}.agenda-time-axis{position:relative;border-right:1px solid var(--line);background:var(--surface)}.agenda-time-axis span{position:absolute;right:8px;z-index:2;color:var(--muted);font-size:8px;line-height:1;transform:translateY(-50%)}.agenda-time-days{display:grid;grid-template-columns:repeat(7,minmax(140px,1fr));position:relative}.agenda-time-day{position:relative;min-width:0;border-right:1px solid var(--line);background:var(--surface)}.agenda-time-day.is-today{background:color-mix(in srgb,var(--brand-soft) 22%,var(--surface))}.agenda-hour-line{position:absolute;right:0;left:0;height:1px;background:var(--line);pointer-events:none}.agenda-time-event{position:absolute;z-index:3;display:block;min-height:27px;overflow:hidden;padding:4px 6px;border:1px solid color-mix(in srgb,var(--event-color) 30%,var(--line));border-left:3px solid var(--event-color);border-radius:7px;color:var(--ink);background:linear-gradient(135deg,var(--event-soft),var(--surface));box-shadow:0 2px 6px rgba(24,33,40,.08);text-decoration:none;transition:box-shadow .15s ease,transform .15s ease}.agenda-time-event:hover{z-index:5;box-shadow:0 7px 18px rgba(24,33,40,.16);transform:translateY(-1px)}.agenda-time-event time,.agenda-time-event strong,.agenda-time-event small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-time-event time{color:var(--event-color);font-size:8px;font-weight:900}.agenda-time-event strong{margin-top:1px;font-size:9px;line-height:1.25}.agenda-time-event small{margin-top:2px;color:var(--muted);font-size:7px}.agenda-time-event.status-cancelled{opacity:.45;text-decoration:line-through}.agenda-time-event.status-tentative{border-left-style:dashed}.agenda-time-participants{color:var(--event-color)!important;font-weight:800}.agenda-calendar-preferences{position:relative}.agenda-calendar-preferences>summary{list-style:none}.agenda-calendar-preferences>summary::-webkit-details-marker{display:none}.agenda-calendar-preferences>form{position:absolute;right:0;z-index:20;display:grid;width:290px;gap:10px;margin-top:7px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 16px 35px rgba(24,33,40,.18)}.agenda-calendar-preferences label{display:grid;gap:4px;color:var(--muted);font-size:8px;font-weight:800}.agenda-calendar-preferences .checkbox-line{display:flex}.agenda-connection-actions{align-items:center;flex-wrap:wrap}
@media (max-width:900px){.agenda-calendar-picker{grid-template-columns:1fr}.agenda-calendar-picker-actions{justify-content:flex-start}.agenda-google-grid-card{overflow-x:auto}.agenda-time-grid{min-width:980px}}

/* Nova-Etude, Nova-Keynote et Nova-Catalogue */
.content-hero{align-items:flex-end}.content-hero>div:first-child{max-width:780px}.content-hero h1{margin-top:5px}.content-hero p{max-width:760px;line-height:1.65}.back-link{display:block;margin-bottom:14px;color:var(--muted);font-size:10px;font-weight:800}.content-metrics{margin-bottom:20px}.content-dialog{width:min(820px,calc(100vw - 24px))}.textarea-tall{min-height:180px}.study-method{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding:18px 22px}.study-method>div{display:grid;grid-template-columns:auto 1fr;column-gap:11px;align-items:center}.study-method>div>span{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:var(--brand-dark);background:var(--brand-soft);font-size:10px;font-weight:900}.study-method strong,.study-method small{display:block}.study-method small{margin-top:3px;color:var(--muted);font-size:9px}.study-method>i{color:var(--muted);font-style:normal}.study-list{display:grid}.study-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;gap:16px;align-items:center;padding:17px 20px;border-bottom:1px solid var(--line);color:inherit}.study-row:last-child{border-bottom:0}.study-row:hover{background:var(--canvas)}.study-row>span:nth-child(2) strong,.study-row>span:nth-child(2) small,.study-row-stats b,.study-row-stats small{display:block}.study-row>span:nth-child(2) small,.study-row-stats small{margin-top:4px;color:var(--muted);font-size:9px}.study-index{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;color:var(--brand-dark);background:var(--brand-soft);font-size:10px;font-weight:900}.study-row-stats{text-align:right}.study-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.45fr);gap:20px;align-items:start}.study-layout main{display:grid;gap:20px}.sticky-summary{position:sticky;top:20px}.sticky-summary h3{margin:7px 0 14px}.sticky-summary>.btn{width:100%;margin-top:14px}.linked-item{display:block;padding:11px 0;border-bottom:1px solid var(--line);color:inherit}.linked-item strong,.linked-item small{display:block}.linked-item small{margin-top:4px;color:var(--muted);font-size:9px}.competitor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px}.competitor-grid>article{padding:17px;border:1px solid var(--line);border-radius:12px;background:var(--canvas)}.competitor-grid article>header{display:flex;gap:10px;align-items:flex-start;justify-content:space-between}.competitor-grid article>header strong,.competitor-grid article>header a{display:block}.competitor-grid article>header a{margin-top:4px;color:var(--brand-dark);font-size:9px}.competitor-grid article>header>span{color:var(--muted);font-size:9px;white-space:nowrap}.competitor-grid article>p{min-height:42px;color:var(--muted);font-size:10px;line-height:1.5}.competitor-grid article>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.competitor-grid article>div>span{padding:10px;border-radius:9px;background:var(--surface);font-size:9px;line-height:1.5}.competitor-grid article>div b{display:block;margin-bottom:4px}.competitor-grid article>form{margin-top:10px}.card-inline-form{padding:16px 18px;border-top:1px solid var(--line)}.card-inline-form>form{margin-top:16px}
.keynote-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px}.keynote-principles article{position:relative;min-height:135px;padding:22px;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.keynote-principles article>span{position:absolute;top:8px;right:15px;color:var(--brand-soft);font-size:52px;font-weight:900}.keynote-principles strong,.keynote-principles p{position:relative;display:block}.keynote-principles p{max-width:210px;margin:9px 0 0;color:var(--muted);font-size:10px;line-height:1.55}.keynote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:18px}.keynote-card{display:flex;min-height:240px;flex-direction:column;padding:20px;border:1px solid var(--line);border-radius:15px;color:var(--ink);background:#fff;box-shadow:0 8px 25px rgba(24,33,40,.05)}.keynote-card.theme-impact{color:#fff;background:#1d252b}.keynote-card.theme-editorial{background:#f1eadf}.keynote-card-top,.keynote-card footer{display:flex;align-items:center;justify-content:space-between}.keynote-card-top b{font-size:8px;text-transform:uppercase}.keynote-card>strong{display:block;margin-top:34px;font-size:20px;line-height:1.25}.keynote-card>p{margin:12px 0;color:var(--muted);font-size:10px;line-height:1.55}.keynote-card.theme-impact>p{color:#c8d0d5}.keynote-card footer{margin-top:auto;padding-top:15px;border-top:1px solid rgba(127,139,148,.25);font-size:9px;font-weight:800}.theme-choice{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.theme-choice>label{cursor:pointer}.theme-choice input{position:absolute;opacity:0;pointer-events:none}.theme-choice span{display:block;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--canvas)}.theme-choice b,.theme-choice small{display:block}.theme-choice small{margin-top:5px;color:var(--muted)}.theme-choice input:checked+span{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}.keynote-editor-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:22px;align-items:start}.keynote-editor-layout main{min-width:0}.slide-editor{position:relative;margin-bottom:20px}.slide-editor>form{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr);overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.slide-number{position:absolute;z-index:2;top:12px;left:-12px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#fff;background:var(--brand);font-size:9px;font-weight:900}.slide-miniature{display:flex;min-height:335px;flex-direction:column;justify-content:center;padding:42px}.slide-miniature small{margin-bottom:12px;color:var(--brand);font-size:9px;font-weight:900;letter-spacing:.08em}.slide-miniature strong{font-size:26px;line-height:1.22}.slide-miniature p{max-width:390px;margin:18px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.slide-miniature.theme-impact{color:#fff;background:#1d252b}.slide-miniature.theme-impact p{color:#ccd4d8}.slide-miniature.theme-editorial{background:#f1eadf}.slide-fields{padding:22px;background:var(--canvas)}.slide-actions{display:flex;gap:8px}.presentation-body{margin:0;overflow:hidden;background:#111}.presentation-deck{position:relative;width:100vw;height:100vh}.presentation-slide{position:absolute;inset:0;display:none}.presentation-slide.is-active{display:block}.presentation-slide-inner{display:flex;box-sizing:border-box;width:100%;height:100%;flex-direction:column;justify-content:center;padding:8vh 9vw;color:#1d252b;background:#f9fafb}.presentation-slide-inner>small{margin-bottom:2.5vh;color:#c83b32;font-size:clamp(13px,1.2vw,22px);font-weight:900;letter-spacing:.12em}.presentation-slide-inner h1{max-width:82vw;margin:0;font-size:clamp(42px,5vw,88px);line-height:1.08}.presentation-copy{max-width:70vw;margin-top:4vh;color:#58656e;font-size:clamp(21px,2vw,36px);line-height:1.45}.presentation-slide-inner footer{position:absolute;right:9vw;bottom:5vh;left:9vw;display:flex;justify-content:space-between;padding-top:2vh;border-top:1px solid #d9dfe3;font-size:clamp(11px,1vw,17px)}.presentation-deck.theme-impact .presentation-slide-inner{color:#fff;background:#192127}.presentation-deck.theme-impact .presentation-copy{color:#cbd3d7}.presentation-deck.theme-impact footer{border-color:#48545c}.presentation-deck.theme-editorial .presentation-slide-inner{background:#eee7dc}.presentation-slide.type-quote h1{font-family:Georgia,serif;font-style:italic}.presentation-slide.type-action .presentation-slide-inner{color:#fff;background:#c83b32}.presentation-slide.type-action small,.presentation-slide.type-action .presentation-copy{color:#fff}.presentation-controls{position:fixed;z-index:5;right:18px;bottom:18px;display:flex;gap:7px;align-items:center;padding:6px;border-radius:12px;background:rgba(0,0,0,.6)}.presentation-controls button{display:grid;place-items:center;width:38px;height:38px;border:0;border-radius:8px;color:#fff;background:rgba(255,255,255,.12);cursor:pointer}.presentation-controls span{padding:0 9px;color:#fff;font-size:11px}
.catalog-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:20px}.catalog-template-grid article{display:grid;grid-template-columns:auto 1fr;gap:17px;align-items:center;min-height:125px;padding:20px;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.catalog-template-grid article>span{display:grid;place-items:center;width:66px;height:84px;border-radius:7px;font-size:10px;font-weight:900;box-shadow:0 7px 15px rgba(24,33,40,.12)}.template-editorial>span{color:#fff;background:#1d252b;border-left:8px solid #c83b32}.template-grid>span{color:#1d252b;background:repeating-linear-gradient(90deg,#fff 0,#fff 27px,#e2e6e8 28px,#e2e6e8 30px)}.template-commercial>span{color:#fff;background:#c83b32}.catalog-template-grid strong,.catalog-template-grid p{display:block}.catalog-template-grid p{margin:7px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.catalog-list{display:grid}.catalog-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;gap:18px;align-items:center;padding:15px 20px;border-bottom:1px solid var(--line);color:inherit}.catalog-list>a:last-child{border:0}.catalog-list>a:hover{background:var(--canvas)}.catalog-list>a>span:nth-child(2) strong,.catalog-list>a>span:nth-child(2) small,.catalog-list>a>span:nth-child(3) b,.catalog-list>a>span:nth-child(3) small,.catalog-list>a>span:nth-child(4) b,.catalog-list>a>span:nth-child(4) small{display:block}.catalog-list small{margin-top:4px;color:var(--muted);font-size:9px}.catalog-cover-mini{display:grid;place-items:center;width:45px;height:60px;border-radius:5px;color:#fff;background:#1d252b;font-size:8px;font-weight:900}.catalog-cover-mini.template-grid{color:#1d252b;background:#f0f2f3}.catalog-cover-mini.template-commercial{background:#c83b32}.catalog-dialog{width:min(980px,calc(100vw - 24px))}.catalog-builder{display:grid;gap:22px}.catalog-select-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.catalog-select-head label{display:flex;gap:7px;align-items:center;font-size:9px}.catalog-select-head input{width:auto}.catalog-product-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;max-height:360px;overflow:auto}.catalog-product-picker>label{cursor:pointer}.catalog-product-picker>label>input{position:absolute;opacity:0}.catalog-product-picker>label>span{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--canvas)}.catalog-product-picker img,.catalog-product-picker i{grid-row:1/3;width:44px;height:44px;border-radius:8px;object-fit:cover}.catalog-product-picker i{display:grid;place-items:center;background:var(--brand-soft);font-style:normal}.catalog-product-picker b,.catalog-product-picker small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catalog-product-picker small{margin-top:3px;color:var(--muted);font-size:8px}.catalog-product-picker input:checked+span{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 1px var(--brand)}.catalog-detail-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:20px;align-items:start}.catalog-detail-layout main{display:grid;gap:20px}.catalog-product-preview{display:grid}.catalog-product-preview article{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:14px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}.catalog-product-preview article>span{color:var(--muted);font-size:9px;font-weight:900}.catalog-product-preview img,.catalog-product-preview i{width:68px;height:54px;border-radius:8px;object-fit:cover}.catalog-product-preview i{display:grid;place-items:center;background:var(--brand-soft);font-style:normal}.catalog-product-preview strong,.catalog-product-preview p,.catalog-product-preview small{display:block}.catalog-product-preview p{margin:5px 0;color:var(--muted);font-size:9px;line-height:1.45}.catalog-product-preview small{color:var(--muted);font-size:8px}.catalog-qr{display:grid;place-items:center;min-height:214px;margin:15px 0;padding:15px;border:1px solid var(--line);border-radius:13px;background:#fff}.catalog-public-url{display:block;overflow:hidden;padding:9px;border-radius:8px;background:var(--canvas);font-size:8px;text-overflow:ellipsis;white-space:nowrap}.product-catalog-thumb{width:160px;max-height:110px;border-radius:10px;object-fit:cover}
@media(max-width:1100px){.study-layout,.catalog-detail-layout,.keynote-editor-layout{grid-template-columns:1fr}.sticky-summary{position:static}.keynote-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.slide-editor>form{grid-template-columns:1fr}.slide-miniature{min-height:260px}.catalog-product-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.study-method,.study-row,.catalog-list>a{align-items:flex-start;flex-direction:column}.study-method{display:grid;grid-template-columns:1fr 1fr;gap:12px}.study-method>i{display:none}.study-row{display:grid;grid-template-columns:auto 1fr}.study-row>span:nth-child(n+3){grid-column:2}.competitor-grid,.keynote-principles,.keynote-grid,.catalog-template-grid,.theme-choice,.catalog-product-picker{grid-template-columns:1fr}.catalog-list>a{display:grid;grid-template-columns:auto 1fr}.catalog-list>a>span:nth-child(n+3){grid-column:2}.slide-editor>form{display:block}.slide-miniature{padding:34px 28px}.presentation-slide-inner{padding:8vh 7vw}.presentation-copy{max-width:86vw}.presentation-slide-inner footer{right:7vw;left:7vw}.catalog-product-preview article{grid-template-columns:auto 1fr}.catalog-product-preview article>span{grid-row:1/3}.catalog-product-preview article>div{grid-column:2}.content-dialog,.catalog-dialog{width:calc(100vw - 16px)}}
.content-metrics .stat-card{position:relative;min-height:116px;padding:18px 20px;overflow:hidden;border:1px solid var(--line);border-radius:15px;background:var(--surface)}.content-metrics .stat-card::after{position:absolute;top:-25px;right:-20px;width:80px;height:80px;border-radius:50%;background:var(--brand-soft);content:"";opacity:.65}.content-metrics .stat-card>span,.content-metrics .stat-card>strong,.content-metrics .stat-card>small{position:relative;z-index:1;display:block}.content-metrics .stat-card>span{color:var(--muted);font-size:9px;font-weight:800}.content-metrics .stat-card>strong{margin-top:7px;font-size:25px}.content-metrics .stat-card>small{margin-top:5px;color:var(--muted);font-size:8px}

/* Comptes rendus IA et pilotage des livrables */
.meeting-report-metrics{margin-bottom:20px}.meeting-report-zoom{margin-bottom:20px}.meeting-report-connect{display:flex;align-items:center;justify-content:space-between;gap:20px}.meeting-report-connect p{margin:0;color:var(--muted)}.meeting-report-disconnect{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:0 20px 18px;color:var(--muted);font-size:10px}.meeting-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}.meeting-provider-card{min-width:0}.meeting-provider-title{display:flex;align-items:center;gap:12px}.meeting-provider-title h2{margin-top:2px}.meeting-provider-mark{display:grid;place-items:center;width:40px;height:40px;flex:0 0 auto;border-radius:12px;color:var(--brand-dark);background:var(--brand-soft);font-size:17px;font-weight:900}.meeting-provider-body{display:flex;min-height:105px;flex-direction:column;align-items:flex-start;gap:10px}.meeting-provider-body p,.meeting-provider-body small{margin:0;color:var(--muted)}.meeting-provider-body form{margin:0}.meeting-provider-callback{display:grid;width:100%;gap:5px}.meeting-provider-callback span{color:var(--muted);font-size:9px;font-weight:800}.meeting-provider-callback code{display:block;max-width:100%;overflow:auto;padding:8px;border-radius:8px;background:var(--canvas);font-size:9px;white-space:nowrap}.meeting-provider-import{margin-bottom:20px}.meeting-provider-import .card-header span:not(.eyebrow){display:block;margin-top:4px;color:var(--muted)}.meeting-report-inline-action{display:flex;align-items:center;gap:12px}.meeting-report-inline-action small{color:var(--muted)}.meeting-report-dialog{width:min(850px,calc(100vw - 24px))}.meeting-report-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(270px,.6fr);gap:20px;align-items:start}.meeting-report-layout>main,.meeting-report-layout>aside{min-width:0}.meeting-report-visible{align-self:end}.meeting-action-list{display:grid}.meeting-action-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:13px;align-items:center;padding:15px 20px;border-bottom:1px solid var(--line)}.meeting-action-list article:last-child{border-bottom:0}.meeting-action-list strong,.meeting-action-list small{display:block}.meeting-action-list small{margin-top:5px;color:var(--muted);font-size:9px}.meeting-action-kind{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;color:var(--brand);background:var(--brand-soft);font-size:9px;font-weight:900}.meeting-action-kind.decision{color:#1f7a55;background:#e4f5ed}.meeting-task-create{display:flex;align-items:end;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid var(--line);background:var(--canvas)}.meeting-task-create .field{min-width:230px}.meeting-report-meta{display:grid;gap:13px}.meeting-report-meta span,.meeting-report-meta b{display:block}.meeting-report-meta span{color:var(--muted)}.meeting-report-meta b{margin-bottom:4px;color:var(--ink);font-size:9px;text-transform:uppercase}.journey-deliverables,.journey-project-reports{margin-top:20px}.journey-deliverable-list{display:grid}.journey-deliverable-list>form{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(125px,.6fr)) auto auto;gap:10px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}.journey-deliverable-list>form:last-child{border-bottom:0}.journey-deliverable-list strong,.journey-deliverable-list small{display:block}.journey-deliverable-list small{margin-top:4px;color:var(--muted);font-size:9px}.journey-deliverable-list p{margin:6px 0 0;color:var(--muted);font-size:10px}.journey-visible-check{display:flex;gap:5px;align-items:center;font-size:9px}.journey-visible-check input{width:auto}.journey-report-list>a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 20px;border-bottom:1px solid var(--line);color:inherit}.journey-report-list>a:last-child{border-bottom:0}.journey-report-list strong,.journey-report-list small{display:block}.journey-report-list small{margin-top:5px;color:var(--muted);font-size:9px}
@media(max-width:1100px){.meeting-report-layout{grid-template-columns:1fr}.journey-deliverable-list>form{grid-template-columns:1fr 1fr 1fr}.journey-deliverable-list>form>div:first-child{grid-column:1/-1}}
@media(max-width:720px){.meeting-report-connect,.meeting-report-disconnect,.meeting-task-create,.meeting-report-inline-action{align-items:stretch;flex-direction:column}.meeting-provider-grid{grid-template-columns:1fr}.meeting-report-layout{display:block}.meeting-report-layout>aside{margin-top:20px}.meeting-action-list article{grid-template-columns:auto minmax(0,1fr)}.meeting-action-list article>.badge{grid-column:2}.journey-deliverable-list>form{grid-template-columns:1fr}.journey-deliverable-list>form>div:first-child{grid-column:auto}}

/* Compte rendu lisible avant édition */
.meeting-report-glance{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin-bottom:20px;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--line)}.meeting-report-glance>span{padding:13px 16px;background:var(--surface)}.meeting-report-glance small,.meeting-report-glance strong{display:block}.meeting-report-glance small{color:var(--muted);font-size:8px;font-weight:900;text-transform:uppercase}.meeting-report-glance strong{margin-top:4px;font-size:11px}.meeting-report-document{overflow:hidden}.meeting-report-summary{padding:22px 24px;border-bottom:1px solid var(--line);font-size:12px;line-height:1.75}.meeting-report-summary p{margin:0;white-space:normal}.meeting-report-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.meeting-report-section-grid>section{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:19px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.meeting-report-section-grid>section:nth-child(2n){border-right:0}.meeting-report-section-grid>section:nth-last-child(-n+2){border-bottom:0}.meeting-report-section-grid h3{margin:2px 0 9px;font-size:11px}.meeting-report-section-grid ul{display:grid;gap:7px;margin:0;padding-left:16px}.meeting-report-section-grid li,.meeting-report-section-grid p{margin:0;color:var(--muted);font-size:9px;line-height:1.5}.meeting-section-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;color:var(--brand-dark);background:var(--brand-soft);font-size:9px;font-weight:900}.meeting-section-icon.decision{color:#176d48;background:#e4f5ed}.meeting-section-icon.question{color:#8b5900;background:#fff1cf}.meeting-section-icon.risk{color:#9b302b;background:#ffebe9}.meeting-report-editor{overflow:hidden}.meeting-report-editor>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;cursor:pointer;list-style:none}.meeting-report-editor>summary::-webkit-details-marker{display:none}.meeting-report-editor>summary span,.meeting-report-editor>summary strong,.meeting-report-editor>summary small{display:block}.meeting-report-editor>summary strong{margin:3px 0}.meeting-report-editor>summary small{color:var(--muted)}.meeting-report-editor>summary>b{color:var(--brand);font-size:10px}.meeting-report-editor[open]>summary{border-bottom:1px solid var(--line)}.meeting-report-editor[open]>summary>b{font-size:0}.meeting-report-editor[open]>summary>b:after{content:'Fermer';font-size:10px}.meeting-next-step strong{display:block;margin-bottom:6px}.meeting-next-step p{margin:0;color:var(--muted);line-height:1.55}
@media(max-width:900px){.meeting-report-glance{grid-template-columns:repeat(2,minmax(0,1fr))}.meeting-report-section-grid{grid-template-columns:1fr}.meeting-report-section-grid>section{border-right:0;border-bottom:1px solid var(--line)}.meeting-report-section-grid>section:nth-last-child(2){border-bottom:1px solid var(--line)}}

/* Catalogue lisible en fiches */
.product-commercial-settings{margin-bottom:22px;overflow:hidden}.product-commercial-settings>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;cursor:pointer;list-style:none}.product-commercial-settings>summary::-webkit-details-marker{display:none}.product-commercial-settings>summary span,.product-commercial-settings>summary strong,.product-commercial-settings>summary small{display:block}.product-commercial-settings>summary strong{margin:3px 0}.product-commercial-settings>summary small{color:var(--muted)}.product-commercial-settings>summary>b{color:var(--brand);font-size:10px}.product-commercial-settings[open]>summary{border-bottom:1px solid var(--line)}.product-commercial-settings[open]>summary>b{font-size:0}.product-commercial-settings[open]>summary>b:after{content:'Fermer';font-size:10px}.product-commercial-settings-body{padding:20px;background:var(--canvas)}.product-commercial-settings-body>.saas-pricing{margin:0}.product-catalog-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:8px 0 15px}.product-catalog-heading h2{margin:3px 0}.product-catalog-heading p{margin:0;color:var(--muted)}.product-catalog-tools{display:flex;align-items:center;gap:12px}.product-catalog-tools>span{color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}.product-view-toggle{display:flex;gap:4px;padding:3px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.product-view-toggle .btn[aria-pressed="true"]{border-color:var(--brand);color:var(--brand-dark);background:var(--brand-soft)}.product-memory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.product-memory-card{display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto 1fr auto;gap:14px;padding:17px}.product-memory-card.is-inactive{opacity:.62}.product-memory-visual{grid-row:1/3}.product-memory-visual img,.product-memory-visual>span{width:72px;height:72px;border-radius:13px}.product-memory-visual img{object-fit:contain;background:#fff}.product-memory-visual>span{display:grid;place-items:center;color:var(--brand-dark);background:var(--brand-soft);font-size:24px}.product-memory-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.product-memory-meta>span:first-child{overflow:hidden;color:var(--muted);font-size:8px;font-weight:900;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.product-memory-copy h3{margin:7px 0 5px;font-size:15px}.product-memory-copy p{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:9px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:3}.product-memory-copy ul{display:grid;gap:4px;margin:10px 0 0;padding:0;list-style:none}.product-memory-copy li{font-size:8px}.product-memory-copy li:before{content:'✓';margin-right:6px;color:var(--brand);font-weight:900}.product-memory-price{grid-column:1/3;padding:11px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.product-memory-price strong,.product-memory-price span,.product-memory-price small{display:block}.product-memory-price strong{font-size:18px}.product-memory-price span,.product-memory-price small{margin-top:3px;color:var(--muted);font-size:8px}.product-memory-card>footer{grid-column:1/3;display:flex;align-items:center;justify-content:space-between;gap:10px}.product-memory-card>footer>span{color:var(--muted);font-size:8px}.product-memory-card .product-actions{display:flex;gap:6px}.product-memory-card .product-actions form{margin:0}.product-memory-grid.is-list{grid-template-columns:1fr;gap:9px}.product-memory-grid.is-list .product-memory-card{grid-template-columns:70px minmax(0,1fr) 165px 190px;grid-template-rows:auto;align-items:center;gap:16px;padding:12px 14px}.product-memory-grid.is-list .product-memory-visual{grid-row:auto}.product-memory-grid.is-list .product-memory-visual img,.product-memory-grid.is-list .product-memory-visual>span{width:58px;height:58px}.product-memory-grid.is-list .product-memory-copy p{-webkit-line-clamp:2}.product-memory-grid.is-list .product-memory-copy ul{display:none}.product-memory-grid.is-list .product-memory-price{grid-column:auto;padding:0 14px;border:0;border-left:1px solid var(--line)}.product-memory-grid.is-list .product-memory-price strong{font-size:16px}.product-memory-grid.is-list .product-memory-card>footer{grid-column:auto;justify-content:flex-end}.product-memory-grid.is-list .product-memory-card>footer>span{display:none}.product-edit-page{max-width:980px;margin:0 auto}.product-edit-page>.card-header{align-items:center}.product-edit-page-thumb{width:74px;height:74px;object-fit:contain;border:1px solid var(--line);border-radius:14px;background:#fff}.product-edit-page>.dialog-body{padding:22px}.product-edit-page>.card-footer{justify-content:flex-end}.product-edit-page .product-catalog-thumb{max-width:220px;max-height:180px;object-fit:contain}
.product-page-size{display:flex;align-items:center;gap:7px}.product-page-size label{color:var(--muted);font-size:9px;font-weight:800}.product-page-size select{width:auto;min-width:64px;padding:7px 28px 7px 9px;font-size:10px}.product-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:14px 17px;border:1px solid var(--line);border-radius:13px;background:var(--surface);color:var(--muted);font-size:10px;font-weight:750}.product-pagination>div{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.product-pagination-gap{padding:0 3px}
@media(max-width:1180px){.product-memory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-memory-grid.is-list .product-memory-card{grid-template-columns:62px minmax(0,1fr) 145px}.product-memory-grid.is-list .product-memory-card>footer{grid-column:2/4;justify-content:space-between}.product-memory-grid.is-list .product-memory-card>footer>span{display:block}.product-catalog-tools{flex-wrap:wrap;justify-content:flex-end}}
@media(max-width:720px){.product-catalog-heading{align-items:flex-start;flex-direction:column}.product-catalog-tools{width:100%;justify-content:space-between}.product-memory-grid{grid-template-columns:1fr}.product-commercial-settings-body{padding:10px}.product-memory-card{grid-template-columns:58px minmax(0,1fr)}.product-memory-visual img,.product-memory-visual>span{width:58px;height:58px}.product-memory-grid.is-list .product-memory-card{grid-template-columns:52px minmax(0,1fr);grid-template-rows:auto auto auto}.product-memory-grid.is-list .product-memory-visual img,.product-memory-grid.is-list .product-memory-visual>span{width:48px;height:48px}.product-memory-grid.is-list .product-memory-price{grid-column:1/3;padding:9px 0;border-left:0;border-top:1px solid var(--line)}.product-memory-grid.is-list .product-memory-card>footer{grid-column:1/3}.product-edit-page>.dialog-body{padding:15px}}

@media(max-width:720px){.product-page-size{flex-wrap:wrap}.product-pagination{align-items:stretch;flex-direction:column}.product-pagination>div{justify-content:flex-start}}

/* Planning éditorial transversal */
.editorial-heading{margin-bottom:18px}.editorial-toolbar{margin-bottom:20px;padding:14px 18px}.editorial-toolbar form{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.editorial-toolbar label{display:grid;gap:5px;min-width:170px;color:var(--muted);font-size:9px;font-weight:800}.editorial-toolbar select{min-height:36px}.editorial-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px;align-items:start}.editorial-calendar{min-width:0;overflow:hidden}.editorial-calendar-head{justify-content:center;gap:16px;text-align:center}.editorial-calendar-head h2{margin-top:2px}.editorial-weekdays,.editorial-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.editorial-weekdays{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--canvas)}.editorial-weekdays span{padding:9px;text-align:center;color:var(--muted);font-size:8px;font-weight:900;text-transform:uppercase}.editorial-day{min-width:0;min-height:134px;padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface)}.editorial-day:nth-child(7n){border-right:0}.editorial-day.is-outside{background:color-mix(in srgb,var(--canvas) 72%,transparent);opacity:.62}.editorial-day>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.editorial-day>header time{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;font-size:9px;font-weight:900}.editorial-day>header span{color:var(--muted);font-size:8px}.editorial-day.is-today>header time{color:#fff;background:var(--brand)}.editorial-day-items{display:grid;gap:5px}.editorial-item{position:relative;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:7px;background:var(--surface)}.editorial-item.source-campaign{border-left-color:#d99412}.editorial-item.source-video{border-left-color:#ae4ccf}.editorial-item.status-published{opacity:.7}.editorial-item summary{display:block;padding:6px;cursor:pointer;list-style:none}.editorial-item summary::-webkit-details-marker{display:none}.editorial-item small,.editorial-item strong,.editorial-item span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editorial-item small{color:var(--muted);font-size:7px;font-weight:800}.editorial-item strong{margin:2px 0;font-size:8px}.editorial-item span{color:var(--muted);font-size:7px}.editorial-item>div{position:absolute;z-index:15;left:0;width:220px;padding:9px;border:1px solid var(--line);border-radius:9px;background:var(--surface);box-shadow:0 10px 28px rgba(28,35,45,.17)}.editorial-item>div a{font-size:9px;font-weight:800}.editorial-item>div form{display:grid;grid-template-columns:1fr auto;gap:5px;margin-top:8px}.editorial-item input,.editorial-unscheduled input{min-width:0;font-size:9px}.editorial-unscheduled{overflow:hidden}.editorial-unscheduled-list{display:grid}.editorial-unscheduled-list article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:13px 15px;border-bottom:1px solid var(--line)}.editorial-unscheduled-list article:last-child{border-bottom:0}.editorial-source{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;color:var(--brand-dark);background:var(--brand-soft);font-size:9px;font-weight:900}.editorial-source.source-campaign{color:#8b5900;background:#fff1cf}.editorial-source.source-video{color:#75268f;background:#f5e6fb}.editorial-unscheduled small,.editorial-unscheduled strong{display:block}.editorial-unscheduled small{color:var(--muted);font-size:8px}.editorial-unscheduled strong{margin:4px 0 8px;font-size:10px}.editorial-unscheduled form{display:grid;grid-template-columns:1fr auto;gap:6px}
@media(max-width:1180px){.editorial-layout{grid-template-columns:1fr}.editorial-unscheduled-list{grid-template-columns:repeat(2,minmax(0,1fr))}.editorial-unscheduled-list article:nth-child(odd){border-right:1px solid var(--line)}}
@media(max-width:780px){.editorial-toolbar form,.editorial-toolbar label{display:grid;width:100%}.editorial-month-grid{min-width:780px}.editorial-weekdays{min-width:780px}.editorial-calendar{overflow-x:auto}.editorial-day{min-height:110px}.editorial-unscheduled-list{grid-template-columns:1fr}.editorial-unscheduled-list article:nth-child(odd){border-right:0}}
@media(max-width:1000px){.dashboard-action-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-priority-layout,.dashboard-analysis-grid{grid-template-columns:1fr}}
@media(max-width:560px){.dashboard-action-strip{grid-template-columns:1fr 1fr}.dashboard-action-strip>a{padding:14px}.dashboard-action-strip strong{font-size:21px}.dashboard-secondary-body{padding:12px}}

@media (max-width: 1120px) {
    .dashboard-focus-heading { grid-template-columns: 1fr; }
    .dashboard-focus-heading > .page-actions { justify-content: flex-start; flex-wrap: wrap; }
}

@media (max-width: 680px) {
    .dashboard-focus-heading > .page-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
    .dashboard-focus-heading > .page-actions .dashboard-next-appointment-compact { grid-column: 1 / -1; }
    .dashboard-focus-heading > .page-actions .btn { width: 100%; justify-content: center; }
}
.page-heading-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.nova-recorder-state{display:flex;align-items:center;gap:12px;padding:14px 16px;margin-bottom:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface-muted,#f7f8fb)}.nova-recorder-state>div{display:grid;gap:3px;flex:1}.nova-recorder-state small{color:var(--muted)}.nova-recorder-state time{font:700 1rem ui-monospace,SFMono-Regular,Menlo,monospace}.nova-recorder-dot{width:12px;height:12px;border-radius:50%;background:#64748b;box-shadow:0 0 0 5px rgba(100,116,139,.12)}.nova-recorder-state.is-recording .nova-recorder-dot{background:#dc2626;box-shadow:0 0 0 5px rgba(220,38,38,.14);animation:nova-recorder-pulse 1.2s infinite}.nova-recorder-state.is-processing .nova-recorder-dot{background:#d97706;box-shadow:0 0 0 5px rgba(217,119,6,.14)}.nova-recorder-state.is-error .nova-recorder-dot{background:#dc2626}.nova-recorder-fields[inert]{opacity:.58;pointer-events:none}.nova-recorder-result{padding:14px 0 0;text-align:right}@keyframes nova-recorder-pulse{50%{box-shadow:0 0 0 10px rgba(220,38,38,0)}}

/* Sécurité du compte · téléphone de secours international */
.security-phone-form{display:grid;gap:12px}.security-phone-fields{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(220px,1.2fr);gap:12px;align-items:end}.security-phone-fields label{display:grid;gap:7px}.security-phone-fields select,.security-phone-fields input{width:100%}.security-phone-hint{display:block;color:var(--muted);line-height:1.45}.security-phone-form>.btn{justify-self:start}@media(max-width:680px){.security-phone-fields{grid-template-columns:1fr}.security-phone-form>.btn{width:100%}}

/* Opportunités · revenus ponctuels, récurrents et variables */
.deal-recurring,.deal-variable{display:block;margin-top:4px;font-size:10px}.deal-recurring{color:var(--brand-dark);font-weight:800}.deal-variable{color:var(--muted)}
/* Animation réseau & Formation */
.network-hero,.training-hero,.network-detail-hero,.training-detail-hero{background:linear-gradient(135deg,var(--surface) 0%,color-mix(in srgb,var(--primary) 8%,var(--surface)) 100%);border:1px solid var(--border);border-radius:var(--radius);padding:28px;margin-bottom:22px}
.network-metrics,.training-metrics{margin-bottom:24px}
.network-dashboard-grid,.training-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:24px;align-items:start}
.network-main-column,.training-main{min-width:0}.network-side-column,.training-side{display:grid;gap:20px;min-width:0}
.network-program-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:18px}
.training-course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.training-resource-tablist{display:flex;gap:4px;margin-bottom:22px;padding:5px;overflow-x:auto;border:1px solid var(--line);border-radius:13px;background:var(--canvas);scrollbar-width:thin}.training-resource-tablist a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 16px;border-radius:9px;color:var(--muted);font-size:10px;font-weight:850;text-decoration:none;white-space:nowrap;transition:color .15s ease,background .15s ease,box-shadow .15s ease}.training-resource-tablist a:hover{color:var(--ink);background:var(--surface)}.training-resource-tablist a.is-active{color:var(--brand-dark);background:var(--surface);box-shadow:0 2px 8px rgba(24,33,40,.1)}.training-resource-tablist a:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 28%,transparent);outline-offset:1px}@media(max-width:700px){.training-resource-tablist{margin-right:-4px;margin-left:-4px}.training-resource-tablist a{flex:0 0 auto}}
.training-content-tablist{display:flex;gap:6px;margin:0 0 22px;padding:5px;overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--canvas);scrollbar-width:thin}.training-content-tablist a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 17px;border-radius:10px;color:var(--muted);font-size:11px;font-weight:850;text-decoration:none;white-space:nowrap;transition:color .15s ease,background .15s ease,box-shadow .15s ease}.training-content-tablist a:hover{color:var(--ink);background:var(--surface)}.training-content-tablist a.is-active{color:var(--brand-dark);background:var(--surface);box-shadow:0 2px 8px rgba(24,33,40,.1)}.training-content-tablist a>span{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;color:var(--muted);background:var(--surface-muted);font-size:9px}.training-content-tablist a.is-active>span{color:var(--brand-dark);background:var(--brand-soft)}.training-content-tablist a:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 28%,transparent);outline-offset:1px}.training-tab-view .training-layout{display:block}.training-tab-view .training-side{display:block}.training-tab-view.is-courses .training-side,.training-tab-view.is-progress .training-main,.training-tab-view.is-progress .training-side>section:nth-child(2),.training-tab-view.is-cases .training-main,.training-tab-view.is-cases .training-side>section:first-child{display:none}.training-tab-view .training-side>section{width:100%}
.network-program-card,.training-course-card{display:block;color:inherit;text-decoration:none;padding:20px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.network-program-card:hover,.training-course-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:var(--shadow)}
.network-program-card>header{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.network-program-card h3,.training-course-card h3{margin:0;font-size:1.05rem}.network-program-card header p{margin:3px 0 0;color:var(--muted);font-size:.82rem}
.network-program-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.network-program-stats span{background:var(--surface-muted);border-radius:10px;padding:10px;text-align:center;font-size:.76rem;color:var(--muted)}.network-program-stats strong{display:block;color:var(--text);font-size:1.05rem}
.network-program-objective{min-height:42px;color:var(--muted);font-size:.86rem;line-height:1.55}.network-program-card>footer{display:flex;justify-content:space-between;gap:12px;padding-top:14px;border-top:1px solid var(--border);font-size:.76rem;color:var(--muted)}.network-program-card>footer strong{color:var(--primary)}
.network-action-list,.network-case-list,.training-enrollment-list,.training-case-links{display:grid}.network-action-row,.network-case-list a,.training-enrollment-list a{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:13px 16px;border-top:1px solid var(--border);color:inherit;text-decoration:none}.network-action-row:first-child,.network-case-list a:first-child,.training-enrollment-list a:first-child{border-top:0}.network-action-row:hover,.network-case-list a:hover,.training-enrollment-list a:hover{background:var(--surface-muted)}
.network-action-row div,.training-enrollment-list div{min-width:0}.network-action-row strong,.network-action-row small,.training-enrollment-list strong,.training-enrollment-list small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.network-action-row small,.training-enrollment-list small,.network-case-list small{color:var(--muted);font-size:.74rem}.network-action-row time{font-size:.72rem;color:var(--muted);text-align:right}.network-action-row.is-overdue time,.training-enrollment-list a.is-overdue .badge{color:var(--red)}
.network-action-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:color-mix(in srgb,var(--primary) 11%,var(--surface));color:var(--primary);font-weight:800}.network-case-list a{grid-template-columns:auto 1fr}.network-case-list a strong{grid-column:2}.network-case-list a small{grid-column:2}
.network-anchor-nav{display:flex;gap:8px;flex-wrap:wrap;margin:-8px 0 20px}.network-anchor-nav a{padding:8px 13px;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);text-decoration:none;font-size:.82rem}.network-anchor-nav a:hover{border-color:var(--primary);color:var(--primary)}
.network-import-banner{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 22px;margin-bottom:22px;border-left:4px solid var(--primary)}.network-import-banner h2{margin:2px 0 5px}.network-import-banner p{margin:0;color:var(--muted)}.network-import-banner form{display:flex;gap:8px;flex-shrink:0}
.network-section,.training-section{margin-bottom:22px;scroll-margin-top:92px}.network-member-table td:first-child strong,.network-member-table td:first-child small{display:block}.network-member-table td:first-child small{color:var(--muted);margin-top:3px}.network-score{display:flex;align-items:center;gap:8px;min-width:120px}.network-score>span,.training-progress>span{height:7px;flex:1;background:var(--surface-muted);border-radius:99px;overflow:hidden}.network-score i,.training-progress i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--green));border-radius:inherit}.network-score strong{font-size:.76rem}
.network-inline-edit{margin-top:5px}.network-inline-edit summary,.training-enrollment-edit summary{color:var(--primary);font-size:.75rem;cursor:pointer}.network-inline-edit form{position:absolute;right:25px;z-index:4;width:280px;display:grid;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px;box-shadow:var(--shadow)}.network-inline-edit label{display:grid;gap:3px;font-size:.72rem}
.network-member-table td:nth-child(2) strong,.network-member-table td:nth-child(2) small,.network-member-table td:nth-child(6) strong,.network-member-table td:nth-child(6) small,.network-referral-table td strong,.network-referral-table td small{display:block}.network-member-table td:nth-child(2) small,.network-member-table td:nth-child(6) small,.network-referral-table td small{margin-top:3px;color:var(--muted);font-size:.72rem}.network-member-table .network-inline-edit form{width:340px;max-height:min(680px,80vh);overflow:auto}.network-member-table .network-inline-edit .checkbox-line{display:flex}
.network-business .card-header{margin-bottom:0}.network-business-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--border);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.network-business-summary>span{display:grid;gap:4px;padding:15px 18px;background:var(--surface-muted);color:var(--muted);font-size:.76rem}.network-business-summary strong{color:var(--text);font-size:1rem}.network-territory-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;padding:18px}.network-territory-grid>article{padding:16px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.network-territory-grid article>header{display:flex;align-items:center;gap:10px}.network-territory-grid header div{min-width:0}.network-territory-grid header strong,.network-territory-grid header small{display:block}.network-territory-grid header small{margin-top:3px;color:var(--muted);font-size:.72rem}.network-territory-codes{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0}.network-territory-codes span{padding:5px 8px;border-radius:8px;color:var(--brand-dark);background:var(--brand-soft);font-size:.74rem;font-weight:800}.network-territory-codes em{color:var(--muted);font-size:.76rem}.network-territory-grid article>footer{display:flex;justify-content:space-between;gap:8px;padding-top:11px;border-top:1px solid var(--border);font-size:.7rem;color:var(--muted)}.network-territory-grid footer strong{color:var(--text)}.network-referral-table{min-width:1050px}.network-referral-table .network-inline-edit form{width:310px}.network-referral-edit input[readonly]{background:var(--surface-muted);color:var(--muted)}
.network-action-board,.network-case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px}.network-action-card,.network-case-card{border:1px solid var(--border);border-radius:14px;padding:16px;background:var(--surface)}.network-action-card.is-overdue{border-color:color-mix(in srgb,var(--red) 50%,var(--border));box-shadow:inset 3px 0 var(--red)}.network-action-type{color:var(--primary);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.network-action-card h3,.network-case-card h3{margin:7px 0}.network-action-card p{color:var(--muted);line-height:1.5}.network-action-card footer{display:flex;justify-content:space-between;gap:10px;font-size:.72rem;color:var(--muted)}.network-action-card blockquote{margin:12px 0 0;padding:10px 12px;border-left:3px solid var(--green);background:var(--surface-muted)}.network-action-card form{display:flex;gap:6px;margin-top:12px}.network-action-card form input{min-width:0;flex:1}
.network-case-card header{display:flex;justify-content:space-between;gap:10px}.network-case-card dl{display:grid;gap:10px}.network-case-card dl div{border-top:1px solid var(--border);padding-top:9px}.network-case-card dt{font-size:.7rem;text-transform:uppercase;color:var(--muted);font-weight:800}.network-case-card dd{margin:4px 0 0;font-size:.85rem;line-height:1.5}.network-case-metrics{display:block;margin-top:12px;padding:10px;border-radius:10px;background:color-mix(in srgb,var(--green) 10%,var(--surface));color:var(--green)}
.network-case-status{margin-top:12px}.network-case-status select{width:100%}.training-section>summary.card-header{cursor:pointer;list-style:none}.training-section>summary.card-header::-webkit-details-marker{display:none}
.network-course-list{display:grid}.network-course-list>a{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px 18px;border-top:1px solid var(--border);color:inherit;text-decoration:none}.network-course-list>a:first-child{border-top:0}.network-course-list strong,.network-course-list small{display:block}.network-course-list small{color:var(--muted);margin-top:3px}
.training-course-card header{display:flex;justify-content:space-between;align-items:center}.training-course-level{font-size:.72rem;color:var(--primary);font-weight:800;text-transform:uppercase;letter-spacing:.07em}.training-course-card h3{margin:14px 0 8px}.training-course-card p{min-height:45px;color:var(--muted);line-height:1.5}.training-course-meta{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0}.training-course-meta span{font-size:.72rem;background:var(--surface-muted);padding:6px 8px;border-radius:8px}.training-progress{display:flex;align-items:center;gap:10px}.training-progress small{color:var(--muted);font-size:.72rem;white-space:nowrap}.training-case-links span{display:block;padding:13px 16px;border-top:1px solid var(--border)}.training-case-links span:first-child{border-top:0}.training-case-links strong,.training-case-links small{display:block}.training-case-links small{color:var(--muted);margin-top:3px}
.training-media-tags{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.training-media-tags span{font-size:.72rem;font-weight:700;color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,var(--surface));padding:6px 9px;border-radius:8px}.field-help{display:block;margin-top:7px;color:var(--muted);font-size:.75rem;line-height:1.4}.training-upload-note{margin:0;padding:2px 0 0;line-height:1.5}.training-remove-media{margin-top:9px;align-items:flex-start}.training-remove-media span{overflow-wrap:anywhere}.training-resource-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:20px}.training-document-card,.training-video-card{min-width:0;border:1px solid var(--border);border-radius:12px;background:var(--surface-muted)}.training-document-card{display:flex;gap:14px;align-items:center;padding:18px;color:inherit;text-decoration:none}.training-document-card:hover{border-color:var(--primary)}.training-media-icon{display:grid;place-items:center;width:44px;height:44px;flex:0 0 auto;border-radius:10px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);font-size:1.3rem}.training-document-card span:last-child,.training-video-card div{min-width:0}.training-document-card strong,.training-document-card small,.training-video-card strong,.training-video-card small{display:block;overflow-wrap:anywhere}.training-document-card small,.training-video-card small{margin-top:5px;color:var(--muted);font-size:.76rem}.training-video-card{overflow:hidden}.training-video-card video{display:block;width:100%;max-height:360px;background:#111}.training-video-card div{padding:14px 16px}
.training-lesson-list{display:grid}.training-lesson-list>article{display:grid;grid-template-columns:auto 1fr auto;gap:15px;align-items:start;padding:18px;border-top:1px solid var(--border)}.training-lesson-list>article:first-child{border-top:0}.training-lesson-number{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);font-weight:900}.training-lesson-list article header{display:flex;gap:7px;align-items:center}.training-lesson-list h3{margin:7px 0}.training-lesson-list p{margin:0;color:var(--muted);line-height:1.55}.training-case-reference{display:inline-block;margin-top:10px;color:var(--primary);font-size:.8rem}.training-participant-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:18px}.training-participant{border:1px solid var(--border);border-radius:14px;padding:16px}.training-participant>header{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}.training-participant h3,.training-participant p{margin:0}.training-participant p{color:var(--muted);font-size:.76rem;margin-top:3px}.training-participant>.training-progress{margin:14px 0}
.training-participant-lessons{display:grid;gap:6px}.training-participant-lessons form{display:grid;grid-template-columns:minmax(0,1fr) 95px 70px auto;gap:5px;align-items:center;padding:6px;background:var(--surface-muted);border-radius:8px}.training-participant-lessons form span{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.training-participant-lessons select,.training-participant-lessons input{font-size:.72rem;padding:6px}.training-enrollment-edit{margin-top:12px}.training-enrollment-edit form{display:grid;grid-template-columns:1fr 1.3fr 1fr auto;gap:6px;margin-top:8px}
.input-suffix{display:flex;align-items:center}.input-suffix input{border-radius:10px 0 0 10px}.input-suffix span{align-self:stretch;display:grid;place-items:center;padding:0 12px;border:1px solid var(--border);border-left:0;border-radius:0 10px 10px 0;background:var(--surface-muted);color:var(--muted)}
@media(max-width:1100px){.network-dashboard-grid,.training-layout{grid-template-columns:1fr}.network-side-column,.training-side{grid-template-columns:repeat(2,minmax(0,1fr))}.training-participant-list{grid-template-columns:1fr}.training-resource-media-grid{grid-template-columns:1fr}}
@media(max-width:760px){.network-hero,.training-hero,.network-detail-hero,.training-detail-hero{padding:20px}.network-program-grid,.training-course-grid,.network-action-board,.network-case-grid{grid-template-columns:1fr}.network-side-column,.training-side{grid-template-columns:1fr}.network-import-banner{align-items:stretch;flex-direction:column}.network-import-banner form{flex-direction:column}.network-program-stats,.network-business-summary{grid-template-columns:1fr}.training-participant-lessons form{grid-template-columns:1fr 1fr}.training-participant-lessons form span{grid-column:1/-1}.training-enrollment-edit form{grid-template-columns:1fr}.network-action-card footer{flex-direction:column}}

/* Nova-Command */
.command-hero,.command-profile-hero,.command-request-hero{align-items:flex-end}
.command-hero .page-actions .btn:disabled{opacity:.42;cursor:not-allowed;filter:saturate(.25)}
.command-metrics{margin-bottom:28px}
.command-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);gap:28px;align-items:start}
.command-layout>main,.command-layout>aside,.command-profile-layout>main,.command-profile-layout>aside,.command-request-layout>main,.command-request-layout>aside{min-width:0}
.command-layout .section-heading{margin-bottom:14px}
.command-profile-list{display:grid;gap:14px}
.command-profile-card{display:block;padding:20px;color:inherit;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.command-profile-card:hover{transform:translateY(-2px);border-color:var(--primary);box-shadow:0 12px 30px rgba(20,39,61,.09)}
.command-profile-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.command-profile-card h3{font-size:1.08rem;margin:0 0 8px}.command-profile-card p{color:var(--muted);margin:0 0 16px;line-height:1.55}
.command-profile-card dl{display:grid;grid-template-columns:1.4fr .6fr .6fr;gap:10px;margin:0;padding-top:14px;border-top:1px solid var(--border)}
.command-profile-card dl div{display:grid;gap:3px}.command-profile-card dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.command-profile-card dd{font-weight:700;margin:0;font-size:.86rem}
.command-code{font:700 .76rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.03em;color:var(--primary);background:color-mix(in srgb,var(--primary) 9%,transparent);border-radius:999px;padding:6px 9px}
.command-request-table table{min-width:820px}.command-request-table td>a{display:grid;gap:4px;color:inherit;text-decoration:none}.command-request-table td small{display:block;color:var(--muted);font-size:.76rem;margin-top:3px}
.command-profile-layout,.command-request-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(310px,.65fr);gap:28px;align-items:start}
.command-profile-layout>main,.command-profile-layout>aside,.command-request-layout>main,.command-request-layout>aside{display:grid;gap:22px}
.command-profile-content .card-header,.command-history .card-header{margin-bottom:0}
.command-definition{margin:0;padding:4px 24px 24px;display:grid;gap:20px}.command-definition>div{display:grid;gap:8px;padding-top:18px;border-top:1px solid var(--border)}.command-definition dt{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.055em;color:var(--muted)}.command-definition dd{margin:0;line-height:1.65;color:var(--text)}
.command-policy{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;padding:18px 24px;background:var(--surface-muted);border-top:1px solid var(--border)}.command-policy span{display:grid;gap:4px;font-size:.86rem}.command-policy strong{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.command-history-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:16px 20px;border-top:1px solid var(--border);color:inherit;text-decoration:none}.command-history-list>a:hover{background:var(--surface-muted)}.command-history-list a div{display:grid;gap:4px}.command-history-list small,.command-history-list time{color:var(--muted);font-size:.78rem}
.command-version-list{padding:0 20px 18px}.command-version-list details{padding:14px 0;border-top:1px solid var(--border)}.command-version-list summary{display:flex;justify-content:space-between;gap:10px;cursor:pointer}.command-version-list summary span,.command-version-list small{color:var(--muted);font-size:.76rem}.command-version-list p{margin:10px 0 4px;line-height:1.45}
.command-request-brief .card-header{margin-bottom:0}.command-copy{padding:24px}.command-copy>p{margin:0;white-space:normal;line-height:1.72}.command-copy>aside{margin-top:22px;padding:18px 20px;border-radius:12px;background:var(--surface-muted);border-left:3px solid var(--primary)}.command-copy aside p{margin:8px 0 0;line-height:1.6}
.command-request-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:18px 24px;border-top:1px solid var(--border)}.command-request-links span{display:grid;gap:4px;font-size:.86rem}.command-request-links strong{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.command-result .card-header{margin-bottom:0}.command-result-summary{margin:20px 24px 0;padding:18px 20px;border-radius:12px;background:color-mix(in srgb,var(--primary) 7%,var(--surface));border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border))}.command-result-summary p{margin:7px 0 0;line-height:1.55}.command-result-body{padding:24px;line-height:1.72;overflow-wrap:anywhere}.command-checks{padding:20px 24px;border-top:1px solid var(--border);background:var(--surface-muted)}.command-checks ul{margin:12px 0 0;padding-left:20px}.command-checks li+li{margin-top:7px}
.command-review-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px;flex-wrap:wrap}.command-profile-snapshot dl{margin:0;padding:0 20px 20px}.command-profile-snapshot dl>div{padding:16px 0;border-top:1px solid var(--border)}.command-profile-snapshot dt{font-size:.72rem;text-transform:uppercase;font-weight:800;letter-spacing:.05em;color:var(--muted);margin-bottom:6px}.command-profile-snapshot dd{margin:0;line-height:1.55;max-height:240px;overflow:auto}
.command-event-list{padding:0 20px 20px}.command-event-list article{display:grid;grid-template-columns:10px 1fr;gap:12px;padding:14px 0;border-top:1px solid var(--border)}.command-event-list article>span{width:8px;height:8px;border-radius:50%;background:var(--primary);margin-top:6px}.command-event-list article div{display:grid;gap:4px}.command-event-list p{margin:0;line-height:1.4}.command-event-list small{color:var(--muted)}
.priority-urgent{background:#fee2e2;color:#991b1b}.priority-high{background:#ffedd5;color:#9a3412}.priority-normal{background:#dbeafe;color:#1d4ed8}.priority-low{background:#e2e8f0;color:#475569}
.release-status-test_ready{background:#dbeafe;color:#1d4ed8}.release-status-changes_requested{background:#ffedd5;color:#9a3412}.release-status-approved,.release-status-production_ready{background:#dcfce7;color:#166534}.release-status-deployed{background:#d1fae5;color:#065f46}.release-status-cancelled{background:#e2e8f0;color:#475569}
.status-blocked{background:#fff0df;color:#9a5712}.command-blocked-alert{display:flex;align-items:flex-start;gap:12px;margin-bottom:22px;padding:16px 18px;border:1px solid #efd49c;border-radius:14px;background:#fff8e8;color:#79510a}.command-blocked-alert strong,.command-blocked-alert span{display:block}.command-blocked-alert span{color:#8a6725}
.command-dependencies .card-header{margin-bottom:0}.command-dependency-body{padding:20px}.command-dependency-list{display:grid;gap:10px}.command-dependency-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;padding:15px;border:1px solid var(--border);border-radius:12px;color:inherit;text-decoration:none}.command-dependency-list>a.is-approved{border-color:#bfe4d2;background:#f2fbf7}.command-dependency-list>a.is-waiting{border-color:#efd49c;background:#fffaf0}.command-dependency-state{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#ffedb8;color:#8a5b00;font-weight:900}.is-approved .command-dependency-state{background:#d7f1e4;color:#197a55}.command-dependency-list strong,.command-dependency-list small{display:block}.command-dependency-list small{margin-top:3px;color:var(--muted);font-size:.74rem}.command-dependency-list p{margin:8px 0 0;color:var(--muted);font-size:.8rem;line-height:1.45}.command-dependency-autonomous{display:flex;gap:12px;align-items:center;padding:16px;border:1px solid #bfe4d2;border-radius:12px;background:#f2fbf7}.command-dependency-autonomous>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#d7f1e4;color:#197a55;font-weight:900}.command-dependency-autonomous strong,.command-dependency-autonomous p{display:block;margin:0}.command-dependency-autonomous p{margin-top:4px;color:var(--muted);font-size:.8rem}.command-data-contracts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.command-data-contracts article{padding:15px;border-radius:12px;background:var(--surface-muted)}.command-data-contracts span{display:block;color:var(--muted);font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.command-data-contracts p{margin:7px 0 0;line-height:1.5}.command-dependency-edit{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.command-dependency-edit>summary{color:var(--primary);font-weight:800;cursor:pointer}.command-dependency-edit>form{margin-top:15px}.command-dependent-list{display:grid;gap:7px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.command-dependent-list>a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;padding:10px 12px;border-radius:10px;background:var(--surface-muted);color:inherit;text-decoration:none}.command-dependent-list span,.command-dependent-list small{color:var(--muted);font-size:.72rem}.command-review-unlocks .card-header{margin-bottom:0}.command-review-unlock-body{padding:20px}.command-review-unlock-body>p{margin:0 0 14px;color:var(--muted);line-height:1.5}.command-review-unlock-body>article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:13px 0;border-top:1px solid var(--border)}.command-review-unlock-body>article>span{align-self:start;padding:5px 8px;border-radius:8px;background:var(--brand-soft);color:var(--brand-dark);font-size:.72rem;font-weight:800}.command-review-unlock-body strong,.command-review-unlock-body small{display:block}.command-review-unlock-body small{margin-top:2px;color:var(--muted)}.command-review-unlock-body article p{margin:7px 0 0;color:var(--muted);line-height:1.45}
.command-environments .card-header,.command-delivery .card-header{margin-bottom:0}.command-environment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px}.command-environment-card{min-width:0;padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.command-environment-card.is-inactive{opacity:.68}.command-environment-card>header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.command-environment-card>header>div{display:flex;gap:10px;min-width:0}.command-environment-card strong,.command-environment-card small{display:block}.command-environment-card small{margin-top:3px;color:var(--muted);font-size:.75rem}.command-environment-icon{display:grid;place-items:center;width:36px;height:36px;flex:0 0 auto;border-radius:10px;background:color-mix(in srgb,var(--primary) 11%,var(--surface));color:var(--primary);font-weight:900}.command-environment-card>a{display:block;margin:16px 0 12px;color:var(--primary);font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.command-environment-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.command-environment-card dl div{display:grid;gap:3px}.command-environment-card dt{font-size:.68rem;text-transform:uppercase;color:var(--muted)}.command-environment-card dd{margin:0;font-size:.8rem;font-weight:700;overflow-wrap:anywhere}.command-environment-card>p{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--border);color:var(--muted);font-size:.8rem;line-height:1.5}.command-environment-edit{margin-top:15px;padding-top:12px;border-top:1px solid var(--border)}.command-environment-edit>summary{color:var(--primary);font-weight:700;font-size:.8rem;cursor:pointer}.command-environment-inline-form{margin-top:12px}.command-environment-inline-form .dialog-body{padding:0}.command-environment-form-actions{display:flex;justify-content:flex-end;margin-top:12px}
.command-delivery-body{padding:22px}.command-delivery-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0 0 24px;padding:0;list-style:none}.command-delivery-steps li{position:relative;display:flex;gap:10px;align-items:center;padding-right:12px}.command-delivery-steps li:not(:last-child)::after{content:"";position:absolute;left:35px;right:0;top:15px;height:2px;background:var(--border);z-index:0}.command-delivery-steps li>span{position:relative;z-index:1;display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border-radius:50%;background:var(--surface-muted);border:2px solid var(--border);font-weight:800;color:var(--muted)}.command-delivery-steps li.is-done>span{background:var(--primary);border-color:var(--primary);color:#fff}.command-delivery-steps li.is-done:not(:last-child)::after{background:color-mix(in srgb,var(--primary) 42%,var(--border))}.command-delivery-steps strong,.command-delivery-steps small{display:block}.command-delivery-steps strong{font-size:.8rem}.command-delivery-steps small{margin-top:2px;color:var(--muted);font-size:.68rem}.command-release{margin-top:16px;padding:18px;border:1px solid var(--border);border-radius:14px}.command-release>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.command-release>header>div{display:flex;gap:10px;align-items:center}.command-release header strong,.command-release header small{display:block}.command-release header small{margin-top:3px;color:var(--muted);font-size:.75rem}.command-release-links{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:end;margin-top:16px}.command-release-links label{display:grid;gap:5px;font-size:.7rem;color:var(--muted);font-weight:700}.command-release-links input{font-size:.74rem;background:var(--surface-muted)}.command-release-note,.command-release-feedback{margin-top:14px;padding:14px 16px;border-radius:11px;background:var(--surface-muted)}.command-release-feedback{background:color-mix(in srgb,var(--primary) 7%,var(--surface))}.command-release-note p,.command-release-feedback p{margin:6px 0 0;line-height:1.5}.command-release-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.command-release-create{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}.command-release-create>summary{cursor:pointer;color:var(--primary);font-weight:800}.command-release-create>form{margin-top:16px}.command-release-submit{display:flex;justify-content:space-between;align-items:center;gap:14px}.command-release-submit p{margin:0;color:var(--muted);font-size:.78rem}.command-delivery-empty{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px;border-radius:12px;background:var(--surface-muted)}.command-delivery-empty p{margin:0}
.command-review-public-body{min-height:100vh;margin:0;background:#f4f7fb;color:#182536}.command-review-public-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:28px 0 40px}.command-review-public-brand{display:flex;align-items:center;gap:11px;margin-bottom:28px}.command-review-public-brand .brand-mark{width:40px;height:40px}.command-review-public-brand strong,.command-review-public-brand small{display:block}.command-review-public-brand small{margin-top:2px;color:#68778a}.command-review-public-shell>footer{margin-top:28px;padding-top:20px;border-top:1px solid #dce4ed;color:#68778a;font-size:.78rem;text-align:center}.command-review-public-flashes{display:grid;gap:10px;margin-bottom:20px}.command-review-public-hero{position:relative;padding:34px;border:1px solid #dce4ed;border-radius:18px;background:#fff;box-shadow:0 16px 44px rgba(23,43,77,.07)}.command-review-public-hero h1{margin:7px 0 10px;font-size:clamp(1.8rem,4vw,2.7rem)}.command-review-public-hero p{max-width:780px;margin:0;color:#68778a;line-height:1.65}.command-review-public-hero>.badge{position:absolute;right:28px;top:28px}.command-review-public-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:22px;margin-top:22px}.command-review-public-grid>main,.command-review-public-grid>aside{display:grid;align-content:start;gap:22px;min-width:0}.command-review-preview-card .card-header,.command-review-result .card-header,.command-review-decision .card-header{margin-bottom:0}.command-review-preview-body{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px}.command-review-preview-body p{margin:0;color:var(--muted);line-height:1.55}.command-review-public-actions{display:grid;gap:9px;margin-top:16px}.command-review-warning{padding:12px;border-radius:10px;background:#fff7ed;color:#9a3412;font-size:.76rem;line-height:1.45}.command-review-trace{padding:20px}.command-review-trace dl{display:grid;gap:10px;margin:14px 0 0}.command-review-trace dl div{display:flex;justify-content:space-between;gap:12px;padding-top:10px;border-top:1px solid var(--border)}.command-review-trace dt{color:var(--muted)}.command-review-trace dd{margin:0;font-weight:700;text-align:right}.command-review-unavailable{max-width:720px;margin:80px auto;padding:40px;text-align:center}.command-review-unavailable h1{margin:8px 0}.command-review-unavailable p{margin:0;color:var(--muted);line-height:1.6}
@media(max-width:1100px){.command-layout,.command-profile-layout,.command-request-layout{grid-template-columns:1fr}.command-layout>aside{order:-1}.command-profile-list{grid-template-columns:repeat(2,minmax(0,1fr))}.command-policy,.command-request-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.command-review-public-grid{grid-template-columns:1fr}.command-environment-list{grid-template-columns:1fr}.command-delivery-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.command-delivery-steps li::after{display:none}}
@media(max-width:700px){.command-profile-list{grid-template-columns:1fr}.command-policy,.command-request-links,.command-data-contracts{grid-template-columns:1fr}.command-history-list>a{grid-template-columns:1fr}.command-history-list time{justify-self:start}.command-review-actions{display:grid}.command-review-actions .btn{width:100%}.command-delivery-steps{grid-template-columns:1fr}.command-release-links,.command-dependency-list>a,.command-dependent-list>a{grid-template-columns:1fr}.command-release-actions,.command-release-submit,.command-delivery-empty,.command-review-preview-body{align-items:stretch;flex-direction:column}.command-review-public-hero{padding:24px}.command-review-public-hero>.badge{position:static;margin-top:16px}.command-review-public-shell{width:min(100% - 20px,1180px)}}
.command-deployment-pipeline{margin-top:20px}.command-deployment-list{display:grid;gap:16px;padding:20px}.command-deployment-list>article{padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.command-deployment-list>article>header{display:flex;justify-content:space-between;align-items:center;gap:12px}.command-deployment-list>article>header>div{display:flex;align-items:center;gap:10px}.command-deployment-list header strong,.command-deployment-list header small,.command-artifact-summary strong,.command-artifact-summary span,.command-artifact-summary small{display:block}.command-deployment-list header small,.command-artifact-summary span,.command-artifact-summary small{margin-top:3px;color:var(--muted);font-size:.75rem}.command-artifact-summary{margin-top:14px;padding:13px 15px;border-radius:11px;background:var(--surface-muted)}.command-artifact-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:14px}.command-artifact-upload label{display:grid;gap:6px;font-size:.75rem;font-weight:700}.command-artifact-upload small{grid-column:1/-1;color:var(--muted)}.command-deploy-action{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:14px;padding:14px;border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--primary) 6%,var(--surface))}.command-deploy-action strong,.command-deploy-action small{display:block}.command-deploy-action small{margin-top:4px;color:var(--muted)}.command-production-note{margin:14px 0 0;color:var(--muted)}.command-deployment-history{display:grid;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.command-deployment-history>div{display:grid;grid-template-columns:auto auto 1fr;gap:10px;align-items:center}.command-deployment-history small{color:var(--muted)}
@media(max-width:700px){.command-artifact-upload{grid-template-columns:1fr}.command-artifact-upload small{grid-column:auto}.command-deploy-action{align-items:stretch;flex-direction:column}.command-deployment-history>div{grid-template-columns:1fr}}

/* Paramètres · espaces de travail et groupes */
.workspace-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:22px;padding:0;overflow:hidden;background:var(--border)}.workspace-principles article{display:grid;grid-template-columns:auto 1fr;gap:13px;padding:20px;background:var(--surface)}.workspace-principles article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--brand-soft);color:var(--brand-dark);font-weight:900}.workspace-principles strong,.workspace-principles p{display:block}.workspace-principles p{margin:5px 0 0;color:var(--muted);font-size:.8rem;line-height:1.45}.workspace-group-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.workspace-group-card{min-width:0}.workspace-group-card>.card-header{margin-bottom:0}.workspace-group-card>.card-header p{margin:5px 0 0;color:var(--muted)}.workspace-list{display:grid;border-top:1px solid var(--border)}.workspace-list form+form{border-top:1px solid var(--border)}.workspace-list button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;padding:14px 20px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.workspace-list button:hover{background:var(--surface-muted)}.workspace-list button>span:nth-child(2){min-width:0}.workspace-list strong,.workspace-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-list small{margin-top:3px;color:var(--muted);font-size:.72rem}.workspace-list button>span:last-child{color:var(--primary);font-size:.76rem;font-weight:800}.workspace-create,.workspace-attach{padding:15px 20px;border-top:1px solid var(--border)}.workspace-create summary,.workspace-attach summary{cursor:pointer;color:var(--primary);font-size:.8rem;font-weight:800}.workspace-create form,.workspace-attach form{margin-top:15px}.workspace-create .help{margin:10px 0 14px}.workspace-attach form{display:flex;gap:9px}.workspace-attach select{min-width:0;flex:1}
.workspace-capacity{display:grid;grid-template-columns:minmax(120px,1fr) auto;gap:10px;align-items:center;padding:11px 20px;border-top:1px solid var(--border);background:var(--surface-muted)}.workspace-capacity>span{height:7px;overflow:hidden;border-radius:99px;background:var(--border)}.workspace-capacity i{display:block;height:100%;border-radius:inherit;background:var(--green)}.workspace-capacity.is-full i{background:#c48b22}.workspace-capacity small{color:var(--muted);font-size:.7rem}.workspace-custom-required{margin:15px 20px;padding:14px 16px;border:1px solid #efd59d;border-radius:11px;background:#fff9ed}.workspace-custom-required p{margin:5px 0 0;color:var(--muted);font-size:.78rem;line-height:1.5}.workspace-custom-setup{padding:15px 20px;border-top:1px solid var(--border);background:color-mix(in srgb,var(--primary) 4%,var(--surface))}.workspace-custom-setup summary{cursor:pointer;color:var(--primary);font-size:.8rem;font-weight:800}.workspace-custom-setup form{display:grid;gap:12px;margin-top:15px}.workspace-custom-setup .checkbox-line{display:flex}
@media(max-width:900px){.workspace-group-grid{grid-template-columns:1fr}}
@media(max-width:700px){.workspace-principles{grid-template-columns:1fr}.workspace-attach form{align-items:stretch;flex-direction:column}.workspace-list button{padding:13px 15px}}

/* OrtizPro · matrice des droits par profil */
.ortiz-account-rules{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:0;overflow:hidden;background:var(--border)}
.ortiz-account-rules>div{display:grid;gap:.35rem;padding:1rem 1.1rem;background:var(--surface)}
.ortiz-account-rules span{color:var(--muted);font-size:.86rem;line-height:1.4}.profile-permissions-card{overflow:hidden}.profile-permission-scroll{overflow-x:auto;padding:0 1.25rem 1.25rem}.profile-permission-matrix{width:100%;min-width:660px;border-collapse:separate;border-spacing:0}.profile-permission-matrix th,.profile-permission-matrix td{border-bottom:1px solid var(--border)}
.profile-permission-matrix .feature-heading{width:290px;min-width:240px;padding:.8rem 1rem;text-align:left;vertical-align:bottom}.profile-permission-matrix .profile-heading{position:relative;width:74px;min-width:74px;height:145px;padding:0;vertical-align:bottom;overflow:visible}.profile-permission-matrix .profile-heading>span{position:absolute;left:35px;bottom:12px;width:145px;transform:rotate(-55deg);transform-origin:left bottom;white-space:nowrap;text-align:left;font-size:.82rem;color:var(--text)}
.profile-permission-matrix tbody th{padding:.72rem 1rem;text-align:left;font-weight:550}.profile-permission-matrix tbody td{width:74px;min-width:74px;padding:.55rem;text-align:center}.profile-permission-matrix .profile-category th{padding:.65rem 1rem;background:color-mix(in srgb,var(--primary) 8%,var(--surface));color:var(--primary);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.matrix-checkbox{display:inline-grid;place-items:center;width:32px;height:32px;cursor:pointer}.matrix-checkbox input{position:absolute;opacity:0;pointer-events:none}.matrix-checkbox span{width:21px;height:21px;border:1.5px solid var(--border);border-radius:5px;background:var(--surface);transition:.15s ease}.matrix-checkbox input:checked+span{border-color:var(--primary);background:var(--primary);box-shadow:inset 0 0 0 4px var(--surface)}.matrix-checkbox input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--primary) 24%,transparent);outline-offset:2px}.matrix-checkbox input:disabled+span{cursor:not-allowed;opacity:.75}
.profile-matrix-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 92%,var(--primary))}.profile-matrix-footer small{color:var(--muted)}
@media(max-width:900px){.ortiz-account-rules{grid-template-columns:1fr 1fr}}@media(max-width:560px){.ortiz-account-rules{grid-template-columns:1fr}.profile-matrix-footer{align-items:stretch;flex-direction:column}}

/* Équipe & droits · rythme, lisibilité et protection contre les textes collés */
.permissions-hero,.permission-invite-link,.permissions-guide,.ortiz-account-rules,.profile-permissions-card{margin-bottom:22px}
.permissions-hero>div:first-child{max-width:820px}.permissions-hero p{max-width:760px;line-height:1.55}
.permission-invite-link{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);align-items:center;gap:24px;padding:20px 22px}.permission-invite-link h2{margin:5px 0 6px}.permission-invite-link p{margin:0;color:var(--muted);line-height:1.5}.permission-invite-link .invite-link{margin:0}
.permissions-guide{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding:0;overflow:hidden;background:var(--border)}.permissions-guide>div{display:grid;gap:5px;padding:17px 19px;background:var(--surface)}.permissions-guide span{color:var(--muted);font-size:11px;line-height:1.45}
.access-audience-guide{display:grid;gap:16px;margin-bottom:22px}.access-audience-guide h2{margin:3px 0 0}.access-audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.access-audience-grid>div{display:grid;gap:5px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--canvas)}.access-audience-grid span{color:var(--muted);font-size:12px;line-height:1.5}.profile-module-matrix{min-width:980px}.profile-module-matrix .feature-heading{width:240px}.profile-module-matrix .profile-heading{position:static;width:180px;height:auto;padding:14px 9px;text-align:left;vertical-align:middle}.profile-module-matrix .profile-heading>span{position:static;display:block;width:auto;transform:none;white-space:normal;font-size:.82rem}.profile-module-matrix tbody td{width:180px;padding:8px}.profile-module-matrix select{width:100%;min-width:145px;padding:8px;font-size:12px}
.permission-team-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:26px 0 14px}.permission-team-heading h2{margin:4px 0 0}.permissions-members{display:grid;gap:16px;margin-bottom:22px}.permission-member-card{min-width:0;overflow:hidden}.permission-member-header{align-items:flex-start;flex-wrap:wrap}.permission-member{display:flex;align-items:center;gap:12px;min-width:220px}.permission-member>div{min-width:0}.permission-member h2{overflow-wrap:anywhere}.permission-member p{margin:4px 0 0;color:var(--muted);overflow-wrap:anywhere}.permission-member-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:1 1 420px;flex-wrap:wrap}.permission-member-actions form{margin:0}.permission-role-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.permission-role-form select{width:auto;min-width:180px;max-width:260px}.permission-module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:20px}.permission-module-grid label{display:grid;gap:7px;margin:0;padding:13px;border:1px solid var(--border);border-radius:12px;background:var(--surface-muted)}.permission-module-grid label>span{line-height:1.4}.permission-member-card>form>footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 20px;border-top:1px solid var(--border);background:var(--surface-muted)}.permission-member-card>form>footer small{color:var(--muted)}.permission-full-access{display:flex;align-items:center;gap:13px}.permission-full-access>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 auto;border-radius:11px;color:#197a55;background:var(--green-soft);font-weight:900}.permission-full-access p{margin:4px 0 0;color:var(--muted)}.permission-pending{margin-top:22px;overflow:hidden}
.profile-permissions-card>.card-header{align-items:flex-start}.profile-permissions-card>.card-header>div{min-width:0}.profile-permissions-card>.card-header p{margin:6px 0 0;color:var(--muted);line-height:1.5}.profile-permission-matrix th,.profile-permission-matrix td{overflow-wrap:anywhere}.profile-permission-matrix tbody th{line-height:1.4}
.card-header>div,.card-body,.detail-item{min-width:0}.card-header p,.card-body p,.detail-item strong{overflow-wrap:anywhere}.card-header p{line-height:1.5}
@media(max-width:1050px){.permission-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.permissions-guide{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-invite-link{grid-template-columns:1fr}}
@media(max-width:700px){.permission-team-heading{align-items:stretch;flex-direction:column}.permission-team-heading .btn{width:100%}.permission-member-actions{justify-content:flex-start;flex-basis:100%}.permission-role-form{width:100%}.permission-role-form select,.permission-role-form .btn{width:100%;max-width:none}.permission-module-grid{grid-template-columns:1fr;padding:15px}.permission-member-card>form>footer{align-items:stretch;flex-direction:column}.permissions-guide,.access-audience-grid{grid-template-columns:1fr}.permission-invite-link{padding:17px}.permission-invite-link .invite-link{align-items:stretch;flex-direction:column}.permission-invite-link .invite-link .btn{width:100%}}

/* Agenda connecté · choix de couleur lisible */
.agenda-calendar-color{display:grid;gap:7px;color:var(--muted);font-size:8px;font-weight:800}.agenda-calendar-color-current{display:flex!important;align-items:center;gap:10px;padding:6px 9px;border:1px solid var(--line);border-radius:10px;background:var(--canvas);cursor:pointer}.agenda-calendar-color-current input[type=color]{width:46px;height:34px;min-height:0;padding:0;overflow:hidden;border:0;border-radius:7px;background:transparent;cursor:pointer;-webkit-appearance:none;appearance:none}.agenda-calendar-color-current input[type=color]::-webkit-color-swatch-wrapper{padding:0}.agenda-calendar-color-current input[type=color]::-webkit-color-swatch{border:0;border-radius:7px}.agenda-calendar-color-current input[type=color]::-moz-color-swatch{border:0;border-radius:7px}.agenda-calendar-color-current output{color:var(--ink);font-size:10px;font-weight:900;letter-spacing:.04em}.agenda-calendar-color-presets{display:grid;grid-template-columns:repeat(8,1fr);gap:6px}.agenda-calendar-color-presets button{position:relative;width:26px;height:26px;padding:0;border:2px solid var(--surface);border-radius:50%;background:var(--preset-color);box-shadow:0 0 0 1px var(--line);cursor:pointer}.agenda-calendar-color-presets button[aria-pressed=true]::after{content:"✓";position:absolute;inset:0;display:grid;place-items:center;border-radius:inherit;color:#fff;font-size:12px;font-weight:950;text-shadow:0 1px 2px rgba(0,0,0,.55)}.agenda-calendar-color-presets button:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 28%,transparent);outline-offset:2px}

/* Agenda connecté · état de connexion */
.agenda-connection-established{display:grid;gap:3px;margin-top:auto;padding:10px 12px;border:1px solid #bfe4d2;border-radius:10px;color:#197a55;background:#f2fbf7}.agenda-connection-established strong,.agenda-connection-established span{display:block}.agenda-connection-established span{font-size:9px;color:#477564}

/* Paramètres Agenda · une rubrique visible à la fois */
.agenda-settings-tabs{min-width:0}.agenda-settings-tablist{display:flex;gap:4px;margin-bottom:20px;padding:5px;overflow-x:auto;border:1px solid var(--line);border-radius:13px;background:var(--canvas);scrollbar-width:thin}.agenda-settings-tablist button{min-height:38px;padding:9px 14px;border:0;border-radius:9px;color:var(--muted);background:transparent;font:inherit;font-size:10px;font-weight:850;white-space:nowrap;cursor:pointer;transition:color .15s ease,background .15s ease,box-shadow .15s ease}.agenda-settings-tablist button:hover{color:var(--ink);background:var(--surface)}.agenda-settings-tablist button.is-active{color:var(--brand-dark);background:var(--surface);box-shadow:0 2px 8px rgba(24,33,40,.1)}.agenda-settings-tablist button:focus-visible{outline:3px solid color-mix(in srgb,var(--brand) 28%,transparent);outline-offset:1px}.agenda-settings-panel:not(.is-active){display:none!important}.agenda-settings-panel.is-active{width:100%;margin-bottom:20px}.agenda-settings-tabs .agenda-settings-grid{display:block}.agenda-settings-tabs .agenda-blackouts-card{grid-column:auto}@media(max-width:700px){.agenda-settings-tablist{margin-right:-4px;margin-left:-4px}.agenda-settings-tablist button{flex:0 0 auto}.agenda-settings-panel.is-active{margin-bottom:16px}}

/* Agenda · cadrage horizontal limité à la grille */
.agenda-google-grid-card{width:100%;min-width:0;max-width:100%;overflow:hidden;contain:inline-size}.agenda-time-scroll{display:block;width:100%;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain}.agenda-time-scroll>.agenda-time-grid{width:max(100%,1050px)}@media(max-width:900px){.agenda-google-grid-card{overflow:hidden}.agenda-time-scroll>.agenda-time-grid{min-width:1050px}}

/* Agenda · création rapide depuis la grille */
.agenda-dialog{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}.agenda-dialog>form{display:flex;max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);min-height:0;overflow:hidden;flex-direction:column}.agenda-dialog>form>header,.agenda-dialog>form>footer{flex:0 0 auto}.agenda-dialog .form-grid{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}.agenda-dialog>form>footer{position:relative;z-index:2;background:var(--surface)}

.agenda-time-grid.is-agenda-clickable .agenda-time-day{cursor:crosshair}.agenda-time-grid.is-agenda-clickable .agenda-time-event{cursor:pointer}.agenda-time-grid.is-agenda-clickable .agenda-time-event[data-agenda-movable]{cursor:grab}

/* OrtizPro · centre de paramètres et services Unicapture */
.settings-services-heading{align-items:flex-end}.settings-services-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:22px}.settings-services-summary .metric{min-width:0}.settings-services-summary .metric-value{font-size:clamp(1.45rem,2.4vw,2rem);overflow-wrap:anywhere}.settings-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:22px}.settings-service-card{display:flex;flex-direction:column;min-width:0;overflow:hidden}.settings-service-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:22px 24px;border-bottom:1px solid var(--line)}.settings-service-head h2,.settings-service-head h3{margin:2px 0 0}.settings-service-head .badge{justify-self:end}.settings-service-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#f4e9dd;color:#925d2d;font-size:1rem;font-weight:800;letter-spacing:-.02em}.settings-service-icon-blue{background:#e8f0ff;color:#2e63b7}.settings-service-icon-coral{background:#ffebe7;color:#b44f3f}.settings-service-icon-green{background:#e6f5ee;color:#287a5e}.settings-service-body{display:flex;flex:1;flex-direction:column;gap:14px;padding:22px 24px}.settings-service-body>p{margin:0;line-height:1.6;color:var(--muted)}.settings-service-card>footer{display:flex;gap:10px;align-items:center;padding:0 24px 24px}.settings-service-card.is-planned{background:linear-gradient(145deg,#fff,#f8fafc)}.settings-service-state,.settings-service-error{display:flex;flex-direction:column;gap:4px;padding:13px 15px;border:1px solid var(--line);border-radius:12px;background:var(--canvas)}.settings-service-state span,.settings-service-error span{color:var(--muted);line-height:1.45;overflow-wrap:anywhere}.settings-service-error{border-color:#f1c5bc;background:#fff6f3}.settings-service-error strong{color:#a63e30}.settings-prepaid-card{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.8fr);overflow:hidden;margin-bottom:22px}.settings-prepaid-main{padding-bottom:24px}.settings-prepaid-main>.settings-service-head{padding-right:24px;padding-left:24px}.settings-prepaid-main>p{margin:22px 24px;line-height:1.6;color:var(--muted)}.settings-prepaid-main>.btn{margin-left:24px}.settings-wallet-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 24px 22px}.settings-wallet-grid>div{display:flex;flex-direction:column;gap:7px;min-width:0;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--canvas)}.settings-wallet-grid span{font-size:.78rem;color:var(--muted)}.settings-wallet-grid strong{font-size:1rem;overflow-wrap:anywhere}.settings-topup-form{display:flex;flex-direction:column;gap:17px;padding:26px;border-left:1px solid var(--line);background:#faf7f2}.settings-topup-form h3{margin:4px 0 6px}.settings-topup-form p{margin:0;color:var(--muted);line-height:1.5}.settings-topup-form .field{gap:7px}.settings-money-input{position:relative}.settings-money-input input{padding-right:38px}.settings-money-input span{position:absolute;top:50%;right:14px;transform:translateY(-50%);font-weight:700;color:var(--muted)}.settings-topup-disclaimer{display:block;line-height:1.45;color:var(--muted);text-align:center}.settings-unicapture-note{display:flex;align-items:flex-start;gap:13px;padding:17px 19px;border:1px solid #cbdcf5;border-radius:14px;background:#f3f7ff;color:#2a4f7d}.settings-unicapture-note>span{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;background:#dce9fb;font-weight:800}.settings-unicapture-note p{margin:1px 0 0;line-height:1.55}
@media(max-width:1100px){.settings-wallet-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-prepaid-card{grid-template-columns:1fr}.settings-topup-form{border-top:1px solid var(--line);border-left:0}}
@media(max-width:760px){.settings-services-heading{align-items:stretch}.settings-services-summary,.settings-services-grid{grid-template-columns:1fr}.settings-service-head{grid-template-columns:auto minmax(0,1fr);padding:18px}.settings-service-head .badge{grid-column:2;justify-self:start}.settings-service-body{padding:18px}.settings-service-card>footer{padding:0 18px 18px}.settings-wallet-grid{grid-template-columns:1fr;margin-right:18px;margin-left:18px}.settings-prepaid-main>.settings-service-head{padding-right:18px;padding-left:18px}.settings-prepaid-main>p{margin-right:18px;margin-left:18px}.settings-prepaid-main>.btn{margin-left:18px}.settings-topup-form{padding:20px}}

/* Agenda · déplacement et redimensionnement directs */
.agenda-drag-help{color:var(--muted)}.agenda-time-event[data-agenda-movable]{cursor:grab}.agenda-time-event[data-agenda-movable]:active{cursor:grabbing}.agenda-event-resize{position:absolute;right:4px;bottom:0;left:4px;z-index:4;height:8px;border-bottom:2px solid color-mix(in srgb,var(--event-color) 60%,transparent);border-radius:0 0 5px 5px;cursor:ns-resize;opacity:0;transition:opacity .15s ease;touch-action:none}.agenda-time-event[data-agenda-movable]:hover .agenda-event-resize,.agenda-time-event[data-agenda-movable]:focus-visible .agenda-event-resize{opacity:1}.agenda-time-event.is-agenda-dragging{opacity:.25}.agenda-event-preview{z-index:20!important;pointer-events:none;opacity:.9;box-shadow:0 12px 28px rgba(24,33,40,.24)!important}.agenda-time-day.is-agenda-drop-target{background:color-mix(in srgb,var(--brand-soft) 55%,var(--surface));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--brand) 55%,transparent)}.agenda-is-dragging,.agenda-is-dragging *{cursor:grabbing!important;user-select:none}.agenda-drag-status{position:fixed;right:24px;bottom:24px;z-index:1000;max-width:min(380px,calc(100vw - 32px));padding:12px 16px;border:1px solid var(--line);border-radius:11px;color:var(--ink);background:var(--surface);box-shadow:0 14px 35px rgba(24,33,40,.2);font-size:11px;font-weight:800}.agenda-drag-status.is-saving{border-color:var(--brand);color:var(--brand-dark)}.agenda-drag-status.is-success{border-color:#86c9ae;color:#176849;background:#f0fbf6}.agenda-drag-status.is-warning{border-color:#e4be70;color:#86590b;background:#fff9ed}.agenda-drag-status.is-error{border-color:#e4a1a1;color:#9c2929;background:#fff4f4}@media(pointer:coarse){.agenda-event-resize{height:14px;opacity:.7}.agenda-time-event[data-agenda-movable]{touch-action:pan-x}}
.journey-project-directory{margin-bottom:20px;overflow:hidden}.journey-project-directory-list{display:grid}.journey-project-directory-list>a{display:grid;grid-template-columns:auto minmax(220px,1.35fr) minmax(210px,1fr) minmax(150px,.7fr) auto auto;gap:16px;align-items:center;padding:15px 20px;border-bottom:1px solid var(--line);color:inherit}.journey-project-directory-list>a:last-child{border-bottom:0}.journey-project-directory-list>a:hover{background:var(--canvas)}.journey-project-directory-list strong,.journey-project-directory-list small{display:block}.journey-project-directory-list small{margin-top:4px;color:var(--muted);font-size:9px}.journey-project-directory-list i{color:var(--muted);font-style:normal}.journey-project-environment-state{display:flex;flex-wrap:wrap;gap:6px}.journey-project-environment-state b{padding:5px 8px;border-radius:999px;font-size:8px}.journey-project-environment-state .is-ready{color:#16704a;background:#e3f5ec}.journey-project-environment-state .is-missing{color:#9b6415;background:#fff0d5}.journey-dev-pilot{margin-bottom:20px;overflow:hidden}.journey-dev-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}.journey-dev-overview article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:18px;border-right:1px solid var(--line)}.journey-dev-overview article:last-child{border-right:0}.journey-dev-overview article>div{min-width:0}.journey-dev-overview strong,.journey-dev-overview small{display:block}.journey-dev-overview small{margin-top:4px;color:var(--muted);font-size:9px;overflow-wrap:anywhere}.journey-dev-overview article>a,.journey-dev-overview article>span:last-child{grid-column:2;color:var(--brand);font-size:9px;font-weight:800}.journey-dev-step{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;color:var(--brand-dark);background:var(--brand-soft);font-size:10px;font-weight:900}.journey-dev-rule{display:flex;gap:12px;align-items:flex-start;border-top:1px solid var(--line);background:var(--canvas)}.journey-dev-rule strong{white-space:nowrap}.journey-dev-rule span{color:var(--muted)}
@media(max-width:1000px){.journey-project-directory-list>a{grid-template-columns:auto minmax(0,1fr) auto}.journey-project-directory-list>a>.journey-project-environment-state,.journey-project-directory-list>a>span:nth-child(4){grid-column:2}.journey-project-directory-list>a>.badge,.journey-project-directory-list>a>i{grid-column:3}.journey-dev-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-dev-overview article:nth-child(2){border-right:0}.journey-dev-overview article:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:640px){.journey-project-directory-list>a{grid-template-columns:auto minmax(0,1fr)}.journey-project-directory-list>a>.badge,.journey-project-directory-list>a>i{grid-column:2}.journey-dev-overview{grid-template-columns:1fr}.journey-dev-overview article{border-right:0;border-bottom:1px solid var(--line)}.journey-dev-overview article:last-child{border-bottom:0}.journey-dev-rule{flex-direction:column}}
.command-agent-install{display:block;margin:12px 0 18px;padding:11px 13px;overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--canvas);color:var(--ink);font-size:9px;white-space:nowrap}
/* Connexions sociales par espace de travail et par client. */
.social-security-note{margin-bottom:22px}.social-provider-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.social-connect-form{display:grid;gap:14px;margin-top:auto}.social-callback-uri{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;overflow-wrap:anywhere}.social-connections-table{margin-top:4px}.social-connections-table td small{display:block;margin-top:5px}.social-row-actions{display:flex;flex-wrap:wrap;gap:8px}.social-row-actions form{margin:0}.social-api-limit{margin:16px 2px 0;line-height:1.55}
@media(max-width:1000px){.social-provider-grid{grid-template-columns:1fr}}
