*{box-sizing:border-box}
:root{--bg:#120d0a;--panel:#25170f;--panel2:#2e1d13;--border:#68462b;--border2:#8f6236;--gold:#d6a45e;--cream:#f3e7d2;--muted:#b8a38d}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -20%,rgba(151,96,42,.22),transparent 38%),linear-gradient(180deg,#0d0907,#17100c 45%,#120d0a);color:var(--cream);font-family:"Segoe UI",Arial,sans-serif}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.06;background-image:radial-gradient(#fff .6px,transparent .6px);background-size:7px 7px}
.topbar{
    position:sticky;
    top:0;
    z-index:100;
    background:rgba(16,10,7,.98);
    border-bottom:1px solid var(--border2);
    box-shadow:0 8px 30px #0008;
    backdrop-filter:blur(10px);
}
.header-inner{
    max-width:1700px;
    min-height:142px;
    margin:auto;
    padding:10px 28px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    align-items:center;
    column-gap:34px;
}
.brand-logo{
    grid-column:2;
    grid-row:1;
    display:flex;
    align-items:center;
    justify-content:center;
    width:360px;
    height:126px;
    text-decoration:none;
    position:relative;
    z-index:3;
}
.brand-logo img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    filter:drop-shadow(0 7px 12px #000b);
    transition:transform .2s ease,filter .2s ease;
}
.brand-logo:hover img{
    transform:scale(1.025);
    filter:drop-shadow(0 9px 16px #000d);
}
.header-nav{
    display:flex;
    align-items:center;
    gap:5px;
    min-width:0;
}
.header-nav-left{
    grid-column:1;
    grid-row:1;
    justify-content:flex-end;
}
.header-nav-right{
    grid-column:3;
    grid-row:1;
    justify-content:flex-start;
}
.header-nav a{
    position:relative;
    color:#eadbc6;
    text-decoration:none;
    white-space:nowrap;
    padding:13px 14px;
    border:1px solid transparent;
    border-radius:8px;
    font-weight:800;
    font-size:14px;
    letter-spacing:.25px;
    transition:.18s ease;
}
.header-nav a:hover{
    color:#fff;
    background:linear-gradient(180deg,#302016,#21140d);
    border-color:#795231;
    transform:translateY(-1px);
}
.header-nav a:after{
    content:"";
    position:absolute;
    left:14px;
    right:14px;
    bottom:6px;
    height:1px;
    transform:scaleX(0);
    transform-origin:center;
    background:var(--gold);
    transition:.18s ease;
}
.header-nav a:hover:after{
    transform:scaleX(1);
}
.wrap{position:relative;z-index:1;max-width:1500px;margin:auto;padding:30px}
.hero{padding:42px 0 28px}.eyebrow{color:var(--gold);letter-spacing:3px;font-size:12px;font-weight:800}
.hero h1,.section-head h1{font-family:Georgia,"Times New Roman",serif;color:#f5e7d2;font-size:44px;line-height:1.1;margin:8px 0 12px;text-shadow:0 3px 14px #000}
.hero p,.section-head p{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.card,.panel,.receipt,.tablebox{background:linear-gradient(145deg,rgba(49,31,20,.98),rgba(31,19,13,.98));border:1px solid var(--border);border-radius:12px;padding:20px;box-shadow:0 14px 35px #0008,inset 0 1px #ffffff0b}
.card{position:relative;overflow:hidden}.card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold)}
.card strong{font-size:30px;display:block;margin-top:8px;color:#fff}.card span{color:var(--muted)}
.section-head{margin-bottom:22px}.toolbar{display:flex;gap:12px;margin-bottom:18px;flex-wrap:wrap}
input,select,textarea{width:100%;background:#110b08;color:#f3e8d8;border:1px solid #69472c;border-radius:8px;padding:12px 13px;margin-top:7px;outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 2px #d6a45e22}
textarea{min-height:90px;resize:vertical}label{display:block;margin:12px 0;color:#eadbc7;font-weight:600}label small{display:block;color:var(--muted);font-weight:400}
.toolbar input,.toolbar select{width:auto;min-width:220px}.tablebox{overflow:auto;padding:0}
table{width:100%;border-collapse:collapse;min-width:1050px}th{background:#51341f;color:#fff2df;text-align:left;padding:12px 11px;border-bottom:1px solid #8a5c35}
td{padding:10px 11px;border-bottom:1px solid #493124;color:#eadfce}tr:hover td{background:#302016}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(180deg,#a97642,#79502e);color:#fff;border:1px solid #c08b50;border-radius:8px;padding:12px 18px;text-decoration:none;cursor:pointer;font-weight:800;box-shadow:0 5px 15px #0005;transition:.15s}
.btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn.full{width:100%}
.order-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.75fr);gap:22px;align-items:start}
.split{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.receipt{position:sticky;top:116px;height:max-content;background:linear-gradient(145deg,#f0e5d2,#dfd0ba);color:#2b211a;border-color:#b28753}
.receipt-top{display:flex;justify-content:space-between;align-items:center;color:#6e482d;font-weight:900;letter-spacing:1.5px}
.receipt-top b{font-size:24px}.horse-preview{padding:18px 0;border-bottom:1px solid #b8aa98;margin-bottom:8px}
.horse-preview small{display:block;color:#6e6258;margin-top:5px}.receipt-title{margin:12px 0 8px;color:#704726;font-weight:900;text-transform:uppercase;font-size:12px;letter-spacing:1.5px}
.receipt-row,.receipt-total{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #c5b9aa}
.receipt-row strong{color:#4e321f}.receipt-total{margin-top:5px;font-size:20px;border-bottom:0;color:#6e4325}
.alert{padding:13px;border-radius:9px;margin-bottom:16px;border:1px solid}.success{background:#1e4327;border-color:#44744c}.error{background:#54251f;border-color:#914738}
.muted{color:var(--muted)}.badge{display:inline-block;padding:5px 9px;border-radius:20px;background:#68482f;border:1px solid #8b5f39;font-size:12px;color:#f8ead8;margin:2px}
.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.service-check{margin:0;display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #5d3d28;border-radius:10px;background:#1b100b;cursor:pointer;transition:.15s}
.service-check:hover{border-color:#a97642;background:#24160f}.service-check input{width:auto;margin:0;accent-color:#b47c43}
.service-check span{display:block}.service-check b{display:block}.service-check small{margin-top:3px}
.profile-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}
.actions{display:flex;gap:10px;flex-wrap:wrap}
footer{position:relative;z-index:1;text-align:center;color:#8f8172;padding:30px;border-top:1px solid #3f2c20;margin-top:30px}
@media(max-width:1250px){
    .header-inner{
        column-gap:16px;
        padding-left:16px;
        padding-right:16px;
    }
    .brand-logo{width:310px;height:116px}
    .header-nav{gap:2px}
    .header-nav a{padding:11px 9px;font-size:13px}
}
@media(max-width:1050px){
    .header-inner{
        min-height:0;
        display:flex;
        flex-direction:column;
        justify-content:center;
        gap:2px;
        padding:8px 14px 12px;
    }
    .brand-logo{
        order:1;
        width:330px;
        height:112px;
    }
    .header-nav{
        order:2;
        width:100%;
        justify-content:center;
        flex-wrap:wrap;
    }
    .header-nav-left,
    .header-nav-right{
        display:flex;
    }
    .header-nav-left{order:2}
    .header-nav-right{order:3}
    .grid,.stats{grid-template-columns:repeat(2,1fr)}
    .order-layout{grid-template-columns:1fr}
    .receipt{position:static}
}

@media(max-width:700px){.wrap{padding:18px}.grid,.stats,.split,.service-grid{grid-template-columns:1fr}.hero h1,.section-head h1{font-size:34px}.header-nav{gap:2px}.header-nav a{padding:9px 10px;font-size:13px}}
.subpanel{padding:16px;border:1px solid #5d3d28;border-radius:10px;background:#1a100b}

.field-group{margin:12px 0}
.field-label{display:block;color:#eadbc7;font-weight:600;margin-bottom:8px}
.required-mark{color:#e2a55d}
.field-help{display:block;color:#b8a38d;margin-top:8px;font-size:12px}
.age-choice{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.age-card{
    position:relative;
    display:flex;
    align-items:center;
    gap:12px;
    min-height:92px;
    margin:0;
    padding:14px;
    border:1px solid #62432c;
    border-radius:10px;
    background:linear-gradient(145deg,#1b100b,#24160f);
    cursor:pointer;
    transition:.18s ease;
}
.age-card:hover{border-color:#a97642;transform:translateY(-1px)}
.age-card.active{
    border-color:#d6a45e;
    background:linear-gradient(145deg,#3b2617,#2b1a10);
    box-shadow:0 0 0 2px #d6a45e22,inset 0 0 25px #d6a45e0b;
}
.age-card input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.age-icon{font-size:30px;line-height:1}
.age-content{display:flex;flex-direction:column;gap:5px}
.age-content strong{font-size:17px;color:#fff}
.age-content small{color:#b8a38d;line-height:1.35}
.age-content b{color:#f0c982}
.age-check{
    margin-left:auto;
    width:25px;height:25px;
    display:flex;align-items:center;justify-content:center;
    border-radius:50%;
    border:1px solid #735034;
    color:transparent;
    font-weight:900;
}
.age-card.active .age-check{
    color:#1b110b;
    background:#d6a45e;
    border-color:#f0c982;
}
@media(max-width:700px){.age-choice{grid-template-columns:1fr}}

#galopAutoHelp{display:block;margin-top:7px;color:#b8a38d;font-size:12px}

/* ===== COMPTA V8 ===== */
.order-panel{padding:26px}
.step-title{
    display:flex;
    align-items:center;
    gap:13px;
    margin:10px 0 20px;
    padding-bottom:13px;
    border-bottom:1px solid #4e3423;
}
.step-title>span{
    width:38px;height:38px;
    display:flex;align-items:center;justify-content:center;
    border-radius:10px;
    background:#6f492b;
    border:1px solid #a77542;
    color:#fff1dc;
    font-weight:900;
}
.step-title b{display:block;color:#f5e5cf;font-size:18px}
.step-title small{display:block;color:#a99580;margin-top:3px}
.horse-info{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin:10px 0 16px;
}
.horse-info>div{
    background:#160d09;
    border:1px solid #533724;
    border-radius:9px;
    padding:12px;
}
.horse-info span{display:block;color:#9e8b76;font-size:12px}
.horse-info strong{display:block;margin-top:5px;color:#f2d4a7}
.category-title,.field-label{
    color:#eadbc7;
    font-weight:700;
    margin:15px 0 8px;
}
.big-age{margin-bottom:8px}
.age-card{min-height:112px}
.training-box{
    margin-top:20px;
    padding:18px;
    border:1px solid #79532f;
    border-radius:12px;
    background:linear-gradient(145deg,#21140d,#2b1a10);
}
.training-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:15px;
    margin-bottom:16px;
}
.training-head b{font-size:18px;color:#f4dfc3}
.training-head small{display:block;color:#a9947d;margin-top:4px}
.training-head>span{
    padding:8px 11px;
    border-radius:20px;
    background:#68482e;
    border:1px solid #a77542;
    color:#f6dfbd;
    font-size:11px;
    font-weight:900;
}
.auto-date-card{
    margin-top:12px;
    min-height:70px;
    padding:13px;
    border:1px solid #523823;
    border-radius:9px;
    background:#160d09;
}
.auto-date-card span,.deadline-card span{
    display:block;
    font-size:11px;
    color:#a89580;
    letter-spacing:1px;
    font-weight:800;
}
.auto-date-card strong{display:block;color:#f1d19f;font-size:18px;margin-top:7px}
.deadline-card{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-top:13px;
    padding:15px 17px;
    border:1px solid #a77542;
    border-radius:10px;
    background:linear-gradient(90deg,#342012,#21130d);
}
.deadline-card strong{
    display:block;
    margin-top:5px;
    font-size:23px;
    color:#f3ce94;
}
.deadline-card>b{color:#d9c2a5;text-align:right;font-size:12px}
.purchase-deadline{display:none}
.deadline-summary{
    padding:12px;
    border:1px solid #b6a995;
    background:#eadcc8;
    border-radius:8px;
}
.deadline-summary span{display:block;font-size:10px;letter-spacing:1px;color:#75563d;font-weight:900}
.deadline-summary strong{display:block;font-size:22px;color:#6c4325;margin-top:4px}
.deadline-summary small{display:block;color:#806b57;margin-top:4px}
.auto-ok{color:#f0c982!important}
.command-receipt{overflow:hidden}
.free-price-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
@media(max-width:700px){
    .horse-info,.free-price-grid{grid-template-columns:1fr}
    .deadline-card{align-items:flex-start;flex-direction:column}
    .deadline-card>b{text-align:left}
}

/* ===== EMPLOYE / COMMANDE V10 ===== */
.employee-summary{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    margin-top:18px;
}
.employee-summary>div{
    padding:18px;
    border:1px solid #5c3e29;
    border-radius:10px;
    background:#1a100b;
}
.employee-summary span,.detail-grid span,.detail-heading span{
    display:block;
    color:#9f8b76;
    font-size:11px;
    letter-spacing:1px;
    text-transform:uppercase;
    font-weight:800;
}
.employee-summary strong{
    display:block;
    color:#f1d29d;
    font-size:23px;
    margin-top:6px;
}
.clickable-orders tbody tr,.clickable-row{
    cursor:pointer;
}
.clickable-orders tbody tr:hover,.clickable-row:hover{
    background:#3b2516!important;
    box-shadow:inset 3px 0 #d6a45e;
}
.table-sub{
    display:block;
    color:#9e8b76;
    margin-top:3px;
}
.order-detail-grid{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(330px,.65fr);
    gap:22px;
    align-items:start;
}
.detail-heading{
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:center;
    padding-bottom:18px;
    border-bottom:1px solid #4c3221;
}
.detail-heading strong{
    display:block;
    color:#f0d19c;
    font-size:24px;
    margin-top:5px;
}
.order-id{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 12px;
    border:1px solid #825a35;
    border-radius:20px;
    color:#e4bd83;
    font-weight:900;
}
.change-employee{
    display:grid;
    grid-template-columns:1fr auto;
    gap:15px;
    align-items:end;
    margin:20px 0 5px;
    padding:15px;
    background:#180e0a;
    border:1px solid #4e3523;
    border-radius:10px;
}
.change-employee label{margin:0}
.detail-section{
    margin-top:26px;
    padding-top:20px;
    border-top:1px solid #463021;
}
.detail-section h3{
    margin:0 0 14px;
    color:#f0d4aa;
    font-family:Georgia,"Times New Roman",serif;
    font-size:20px;
}
.detail-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
}
.detail-grid>div{
    padding:13px;
    border:1px solid #4d3423;
    border-radius:9px;
    background:#180e0a;
}
.detail-grid strong{
    display:block;
    color:#f1e1cc;
    margin-top:6px;
}
.detail-badges{display:flex;gap:7px;flex-wrap:wrap}
.notes-box{
    margin:0;
    padding:15px;
    border-radius:9px;
    background:#180e0a;
    border:1px solid #4d3423;
    color:#d9c8b5;
    line-height:1.6;
}
.order-receipt{position:sticky;top:116px}
@media(max-width:1050px){
    .order-detail-grid{grid-template-columns:1fr}
    .order-receipt{position:static}
}
@media(max-width:700px){
    .employee-summary,.change-employee,.detail-grid{grid-template-columns:1fr}
}

/* ===== ENTRAINEMENTS V11 ===== */
.training-stats{grid-template-columns:repeat(4,1fr)}
.stat-link{text-decoration:none;color:inherit;transition:.18s}
.stat-link:hover{transform:translateY(-2px);border-color:#a77542}
.training-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}
.training-tabs a{
    color:#d9c8b5;text-decoration:none;padding:10px 15px;
    border:1px solid #5c3e29;border-radius:8px;background:#1b100b;font-weight:700
}
.training-tabs a.active{background:#68482f;border-color:#b27e48;color:#fff0dc}
.training-list{display:flex;flex-direction:column;gap:18px}
.training-card{
    background:linear-gradient(145deg,#2b1b11,#1b100b);
    border:1px solid #62432c;border-radius:13px;padding:22px;
    box-shadow:0 14px 35px #0008
}
.training-card-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid #4d3322;padding-bottom:16px}
.order-number{font-size:11px;letter-spacing:1px;color:#a78e75;font-weight:900}
.training-card h2{margin:5px 0 5px;font-family:Georgia,"Times New Roman",serif;color:#f2dfc4;font-size:25px}
.training-card p{margin:0;color:#aa967f}
.training-status{padding:8px 12px;border-radius:20px;font-size:11px;font-weight:900;letter-spacing:1px;white-space:nowrap}
.status-cours{background:#49351b;border:1px solid #9a743b;color:#f1d090}
.status-termine{background:#1e4728;border:1px solid #4c8a58;color:#bfe6c7}
.status-rendu{background:#273a4a;border:1px solid #557b99;color:#c9e2f5}
.training-info-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin:16px 0}
.training-info-grid>div{padding:11px;border:1px solid #493123;background:#160d09;border-radius:8px}
.training-info-grid span{display:block;color:#9e8a75;font-size:10px;text-transform:uppercase;letter-spacing:.8px;font-weight:800}
.training-info-grid strong{display:block;color:#ead7bd;margin-top:5px}
.training-checklist{border-top:1px solid #4d3322;padding-top:16px}
.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.big-check{
    position:relative;
    display:flex;align-items:center;gap:11px;
    margin:0;padding:13px;border:1px solid #533725;border-radius:9px;
    background:#160d09;cursor:pointer
}
.big-check input{position:absolute;opacity:0;width:1px;height:1px}
.check-box{
    flex:0 0 28px;width:28px;height:28px;
    display:flex;align-items:center;justify-content:center;
    border:1px solid #755033;border-radius:7px;
    color:transparent;font-weight:900;background:#0f0907
}
.big-check input:checked + .check-box{background:#d6a45e;border-color:#f0c982;color:#1a100a}
.big-check:has(input:checked){border-color:#9d6e3e;background:#24160f}
.big-check b{display:block;color:#eadac6}
.big-check small{display:block;color:#9f8b75;margin-top:3px;line-height:1.3}
.training-edit-row{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;margin-top:14px}
.training-edit-row label{margin:0}
.empty-state{display:flex;flex-direction:column;gap:8px;text-align:center;padding:40px}
.empty-state strong{font-size:20px;color:#efd9b9}
@media(max-width:1100px){
    .training-stats{grid-template-columns:repeat(2,1fr)}
    .training-info-grid{grid-template-columns:repeat(3,1fr)}
    .check-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
    .training-stats,.training-info-grid,.training-edit-row{grid-template-columns:1fr}
    .training-card-head{flex-direction:column}
}

.partner-layout,.config-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:20px;align-items:start}.panel-title{display:flex;justify-content:space-between;gap:15px;align-items:center}.panel-title h2{color:#f0d5b1;font-family:Georgia,serif}.partner-form{display:flex;flex-direction:column;gap:14px}.form-two,.stats-editor{display:grid;grid-template-columns:1fr 1fr;gap:12px}.percent-input{display:flex;align-items:center}.percent-input span{padding:11px 14px;background:#3b2617;border:1px solid #65442b;border-left:0}.toggle-line{display:flex!important;align-items:center;gap:10px}.partner-list,.horse-config-list{display:flex;flex-direction:column;gap:10px}.partner-card,.horse-config-card{padding:16px;border:1px solid #533725;border-radius:10px;background:#180e0a}.partner-card-head{display:flex;justify-content:space-between}.partner-card h3,.horse-config-card h3{margin:5px 0;color:#efd8b8}.partner-card p,.horse-config-card p{margin:0;color:#9f8c79}.partner-percent{font-size:22px;color:#e7bd7c;font-weight:900}.partner-actions{display:flex;gap:8px;margin-top:12px}.btn.small{padding:8px 11px;font-size:12px}.inline-search{display:flex;gap:7px}.horse-config-card{display:grid;grid-template-columns:1.3fr .8fr 1.2fr auto;gap:15px;align-items:center}.horse-prices{display:flex;flex-direction:column;gap:4px;color:#9e8a76;font-size:11px}.horse-prices b{color:#e5c18a;font-size:14px}.horse-stats-mini{display:flex;gap:5px;flex-wrap:wrap}.horse-stats-mini span{font-size:10px;color:#cdbba7;background:#25160e;border:1px solid #4b3221;padding:5px 7px;border-radius:5px}.partner-selector{padding:14px;border:1px solid #775333;border-radius:9px;background:#201209;margin-top:5px}.partner-preview{margin-top:8px;color:#d8b67f;font-size:12px}@media(max-width:1050px){.partner-layout,.config-layout{grid-template-columns:1fr}.horse-config-card{grid-template-columns:1fr 1fr}}@media(max-width:650px){.form-two,.stats-editor,.horse-config-card{grid-template-columns:1fr}}

.partner-calculation{margin-top:10px;padding:12px;border:1px solid #775333;border-radius:8px;background:#160c07;color:#d8c7b4;line-height:1.7}.partner-calculation strong{color:#e7bd7c}

.partner-receipt-box{margin:12px 0;padding:12px 14px;border:1px solid #b69a74;border-radius:10px;background:rgba(255,248,234,.42)}
.partner-receipt-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding-bottom:8px;margin-bottom:4px;border-bottom:1px solid #cbb89d;color:#65452e}
.partner-receipt-head span{font-size:12px;font-weight:800;letter-spacing:.08em}.partner-receipt-head strong{font-size:14px;text-align:right}
.partner-percent-row strong{font-size:16px}.partner-discount-row strong{color:#9b2f22}.partner-net-row{font-weight:700}
