/* ============================================================
   Trophée Mille – Frontend Styles
   All declarations use !important so the theme cannot override them.
   ============================================================ */

/* ---- Fonts ------------------------------------------------- */
@font-face { font-family: TMGotham; src: url("../fonts/Gotham-Book.ttf") format("truetype"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: TMGotham; src: url("../fonts/Gotham-Bold.woff")  format("woff");      font-weight: 700; font-style: normal; font-display: swap; }
.material-symbols-rounded{font-family:"Material Symbols Rounded"!important;font-weight:600!important;font-style:normal!important;font-size:22px!important;line-height:1!important;letter-spacing:0!important;text-transform:none!important;display:inline-block!important;white-space:nowrap!important;word-wrap:normal!important;direction:ltr!important;-webkit-font-feature-settings:"liga"!important;-webkit-font-smoothing:antialiased!important;font-feature-settings:"liga"!important}

/* ---- Wrappers ---------------------------------------------- */
.tm-front,.tm-register,.tm-dashboard,.tm-etablissement-form,.tm-candidatures-list{max-width:1180px!important;margin:40px auto!important;padding:0 24px!important;color:#111!important;font-family:TMGotham,Arial,sans-serif!important;box-sizing:border-box!important}
.tm-register,.tm-front-card{background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:0 18px 50px rgba(0,0,0,.07)!important;padding:34px!important}
.tm-register h2,.tm-front h2,.tm-dashboard h2,.tm-etablissement-form>h2,.tm-candidatures-list h2{margin:0 0 24px!important;color:#b59a64!important;font-size:30px!important;line-height:1.15!important;text-transform:uppercase!important;letter-spacing:0!important;font-weight:700!important}

/* ---- Header banner ----------------------------------------- */
.tm-front-header{background:#050505!important;color:#fff!important;margin:0 0 34px!important;padding:28px 34px!important;display:flex!important;flex-direction:column!important;gap:14px!important;align-items:flex-start!important}
.tm-front-header img:first-child{width:150px!important;max-width:55%!important;height:auto!important}
.tm-front-header h2{color:#fff!important;margin:0!important;font-size:26px!important;text-transform:uppercase!important;letter-spacing:.04em!important}
.tm-front-signature{display:none!important}

/* ---- Section title ----------------------------------------- */
.tm-section-title{margin:46px 0 24px!important}
.tm-section-title h2{margin:0!important;color:#b59a64!important;font-size:24px!important;line-height:1.15!important;text-transform:uppercase!important}
.tm-section-title img{display:block!important;width:110px!important;margin-top:8px!important}

/* ---- Links ------------------------------------------------- */
.tm-front__back a,.tm-table a{color:#b59a64!important;text-decoration:none!important;font-weight:700!important;text-transform:uppercase!important;font-size:11px!important;letter-spacing:.04em!important}
.tm-front__back a:hover,.tm-table a:hover{color:#050505!important;text-decoration:underline!important}

/* ---- Grid -------------------------------------------------- */
.tm-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px!important}
.tm-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* ---- Fields ------------------------------------------------ */
.tm-field{display:flex!important;flex-direction:column!important;gap:8px!important;min-width:0!important}
.tm-field label,.tm-grid label span{font-size:12px!important;text-transform:uppercase!important;font-weight:700!important;color:#b59a64!important}
.tm-field__required{color:#b59a64!important}
.tm-field input,.tm-field select,.tm-field textarea,.tm-grid input,.tm-grid select{width:100%!important;box-sizing:border-box!important;border:0!important;border-bottom:1px solid rgba(0,0,0,.22)!important;background:#fff!important;padding:13px 0!important;border-radius:0!important;color:#111!important;font:inherit!important;-webkit-appearance:none!important;appearance:none!important}
.tm-field select,.tm-grid select{padding-right:28px!important;background-image:url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M5%206l5%205%205-5%202%201-7%207-7-7%202-1z%22%20fill%3D%22%231e1e1e%22%2F%3E%3C%2Fsvg%3E')!important;background-repeat:no-repeat!important;background-position:right 4px center!important;background-size:16px 16px!important;cursor:pointer!important}
.tm-front .widefat{width:100%!important;box-sizing:border-box!important;border:0!important;border-bottom:1px solid rgba(0,0,0,.22)!important;background:#fff!important;padding:13px 0!important;border-radius:0!important;color:#111!important;font:inherit!important}
.tm-front form p{margin:0 0 20px!important}
.tm-front form p label strong{font-size:12px!important;text-transform:uppercase!important;font-weight:700!important;color:#b59a64!important}
.tm-field textarea{resize:vertical!important;line-height:1.55!important}
.tm-field input:focus,.tm-field select:focus,.tm-field textarea:focus,.tm-grid input:focus,.tm-grid select:focus{outline:0!important;border-color:#b59a64!important;box-shadow:0 2px 0 #b59a64!important}
.tm-field input.tm-field--error,.tm-field select.tm-field--error,.tm-field textarea.tm-field--error{border-color:#b83232!important;box-shadow:0 2px 0 #b83232!important}
.tm-auth-tabs{display:flex!important;gap:0!important;margin-bottom:28px!important;border-bottom:2px solid rgba(0,0,0,.1)!important}
.tm-auth-tab{background:none!important;border:none!important;border-bottom:2px solid transparent!important;margin-bottom:-2px!important;padding:12px 22px!important;font-size:13px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.04em!important;cursor:pointer!important;color:#888!important;font-family:TMGotham,Arial,sans-serif!important;transition:color .15s,border-color .15s!important}
.tm-auth-tab.is-active{color:#b59a64!important;border-bottom-color:#b59a64!important}
.tm-auth-tab:hover{color:#050505!important}
.tm-checkbox{grid-column:1/-1!important;display:flex!important;gap:12px!important;align-items:flex-start!important}
.tm-checkbox input{width:auto!important;margin-top:3px!important}

/* ---- Buttons ----------------------------------------------- */
.tm-btn,.tm-button,.button.tm-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;background:#fff!important;border:2px solid #111!important;color:#111!important;padding:13px 26px!important;text-transform:uppercase!important;font-size:12px!important;font-weight:700!important;line-height:1!important;text-decoration:none!important;cursor:pointer!important;border-radius:0!important;transition:background .18s ease,color .18s ease,border-color .18s ease!important;font-family:TMGotham,Arial,sans-serif!important;box-sizing:border-box!important}
.tm-btn:hover,.tm-button:hover,.button.tm-button:hover{background:#050505!important;border-color:#050505!important;color:#fff!important;text-decoration:none!important}
/* Primary: gold */
.tm-button--primary,.tm-btn,.tm-register .tm-btn{background:#b59a64!important;border-color:#b59a64!important;color:#fff!important}
.tm-button--primary:hover,.tm-btn:hover,.tm-register .tm-btn:hover{background:#8a7349!important;border-color:#8a7349!important;color:#fff!important}
/* Dark */
.tm-button--dark{background:#050505!important;border-color:#050505!important;color:#fff!important}
.tm-button--dark:hover{background:#333!important;border-color:#333!important;color:#fff!important}
/* Outline */
.tm-button--outline{background:#fff!important;border:2px solid #050505!important;color:#050505!important}
.tm-button--outline:hover{background:#050505!important;border-color:#050505!important;color:#fff!important}
/* Disabled */
.tm-button[disabled],.tm-btn[disabled],.button.tm-button[disabled]{opacity:.45!important;cursor:not-allowed!important;pointer-events:none!important}

/* ---- Messages --------------------------------------------- */
.tm-help{margin:14px 0 0!important;font-size:14px!important;opacity:.75!important}
[data-tm-auth-panel] form .tm-btn{margin-top:24px!important}
[data-tm-auth-panel] .tm-grid{margin-bottom:8px!important}
.tm-message{margin:16px 0!important;padding:14px 18px!important;background:#fff!important;border-left:3px solid #b59a64!important;box-shadow:0 10px 30px rgba(0,0,0,.06)!important;font-size:14px!important;color:#111!important}
.tm-message:empty{display:none!important}
.tm-message ul{margin:0!important;padding-left:18px!important}
.tm-message.is-ok{border-left-color:#2d7d46!important}
.tm-message.is-err{border-left-color:#b83232!important}
.tm-hp{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* ================================================================
   WIZARD
   ================================================================ */

.tm-wizard{display:flex!important;flex-direction:column!important;gap:0!important}

/* ---- Frise chronologique ----------------------------------- */
.tm-progress{display:flex!important;align-items:flex-start!important;position:relative!important;margin:0 0 40px!important;padding:0!important;background:none!important;gap:0!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
.tm-progress::before{display:none!important}
.tm-progress__item{flex:1 1 0!important;min-width:72px!important;display:flex!important;flex-direction:column!important;align-items:center!important;gap:8px!important;padding:0 4px!important;position:relative!important;z-index:1!important;background:transparent!important;border:0!important;border-radius:0!important;cursor:pointer!important;font-family:TMGotham,Arial,sans-serif!important;text-align:center!important;box-shadow:none!important;outline:0!important;appearance:none!important;-webkit-appearance:none!important}
.tm-front .tm-progress button.tm-progress__item,
.tm-front .tm-progress button.tm-progress__item:hover,
.tm-front .tm-progress button.tm-progress__item:focus,
.tm-front .tm-progress button.tm-progress__item:focus-visible,
.tm-front .tm-progress button.tm-progress__item:active{background:transparent!important;border:0!important;box-shadow:none!important;outline:0!important;color:inherit!important}
.tm-progress__item::after{content:""!important;position:absolute!important;top:23px!important;left:50%!important;width:100%!important;height:3px!important;background:#e7dfd1!important;z-index:-1!important}
.tm-progress__item:last-child::after{display:none!important}
.tm-front .tm-progress button.tm-progress__item.is-done::after,
.tm-progress__item.is-done::after{background:#242424!important}
.tm-progress__item.is-active::after,.tm-progress__item.is-open::after{background:#cbb98f!important}
.tm-progress__item strong{display:block!important;font-size:10px!important;line-height:1.3!important;text-transform:uppercase!important;color:#7a725f!important;font-weight:700!important;letter-spacing:.03em!important}
.tm-progress__bubble{width:46px!important;height:46px!important;border-radius:50%!important;background:#fbfaf7!important;border:2px solid #e7dfd1!important;display:flex!important;align-items:center!important;justify-content:center!important;font-weight:700!important;color:#7a725f!important;transition:background .2s,border-color .2s,color .2s,box-shadow .2s!important;font-size:14px!important;flex-shrink:0!important}
.tm-progress__icon{display:none!important}
.tm-progress__check{display:none!important}
.tm-progress__num{display:block!important}
/* is-active */
.tm-progress__item.is-active .tm-progress__bubble{background:#b59a64!important;border-color:#b59a64!important;color:#fff!important;box-shadow:0 0 0 4px #efe7d6!important;font-size:20px!important}
.tm-progress__item.is-active .tm-progress__num{display:none!important}
.tm-progress__item.is-active .tm-progress__icon{display:block!important}
.tm-progress__item.is-active strong{color:#b59a64!important;font-weight:700!important}
/* is-done */
.tm-progress__item.is-done .tm-progress__bubble,
.tm-progress__item.is-done:hover .tm-progress__bubble,
.tm-progress__item.is-done:focus .tm-progress__bubble,
.tm-progress__item.is-done:focus-visible .tm-progress__bubble,
.tm-progress__item.is-done:focus-within .tm-progress__bubble,
.tm-progress__item.is-done:active .tm-progress__bubble,
.tm-front .tm-progress button.tm-progress__item.is-done .tm-progress__bubble,
.tm-front .tm-progress button.tm-progress__item.is-done:hover .tm-progress__bubble,
.tm-front .tm-progress button.tm-progress__item.is-done:focus .tm-progress__bubble,
.tm-front .tm-progress button.tm-progress__item.is-done:focus-visible .tm-progress__bubble,
.tm-front .tm-progress button.tm-progress__item.is-done:active .tm-progress__bubble{background:#242424!important;border-color:#242424!important;color:#fff!important;box-shadow:none!important}
.tm-progress__item.is-done .tm-progress__num{display:none!important}
.tm-progress__item.is-done .tm-progress__check{display:block!important;font-size:18px!important}
.tm-progress__item.is-done strong{color:#555!important}
/* is-open */
.tm-progress__item.is-open .tm-progress__bubble{background:#fff!important;border-color:#b59a64!important;color:#b59a64!important}
.tm-progress__item.is-open strong{color:#b59a64!important}
/* is-locked */
.tm-progress__item.is-locked{cursor:not-allowed!important;pointer-events:none!important}
.tm-progress__item.is-locked .tm-progress__bubble{background:#fbfaf7!important;border-color:#e7dfd1!important;color:#8f846d!important}
.tm-progress__item.is-locked strong{color:#8f846d!important}
/* hover */
.tm-progress__item:not(.is-locked):not(.is-active):not(.is-done):hover .tm-progress__bubble{border-color:#b59a64!important;color:#b59a64!important}
.tm-progress__item.is-done .tm-progress__check,
.tm-progress__item.is-done:hover .tm-progress__check,
.tm-progress__item.is-done:focus .tm-progress__check,
.tm-progress__item.is-done:focus-visible .tm-progress__check,
.tm-progress__item.is-done:focus-within .tm-progress__check,
.tm-progress__item.is-done:active .tm-progress__check{color:#fff!important}

/* ---- Wizard panel ------------------------------------------ */
.tm-wizard-panel{position:relative!important;background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;padding:28px!important;box-shadow:0 16px 42px rgba(0,0,0,.055)!important;margin-bottom:0!important}

/* ---- Step title -------------------------------------------- */
.tm-step{display:flex!important;gap:18px!important;align-items:flex-start!important;margin-top:0!important;padding-bottom:24px!important;margin-bottom:24px!important;border-bottom:1px solid rgba(0,0,0,.08)!important}
.tm-step__index{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:42px!important;height:42px!important;background:#050505!important;color:#fff!important;font-weight:700!important;flex-shrink:0!important;font-size:18px!important}
.tm-step h3{margin:0!important;color:#111!important;font-size:21px!important;text-transform:uppercase!important;letter-spacing:0!important}
.tm-step p{margin:6px 0 0!important;color:#555!important;font-size:14px!important}
.tm-extra-instructions{margin:0 0 18px!important;color:#333!important;font-size:15px!important;line-height:1.65!important}
.tm-extra-instructions p{margin:0 0 10px!important}
.tm-extra-instructions p:last-child{margin-bottom:0!important}

/* ---- Step-nav --------------------------------------------- */
.tm-step-nav{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-top:28px!important;padding-top:24px!important;border-top:1px solid rgba(0,0,0,.08)!important;gap:16px!important}

/* ---- Sticky form actions ----------------------------------- */
.tm-form-actions{position:sticky!important;bottom:0!important;background:#fff!important;border-top:2px solid #b59a64!important;padding:18px 28px!important;display:flex!important;gap:16px!important;align-items:center!important;flex-wrap:wrap!important;z-index:10!important;box-shadow:0 -4px 20px rgba(0,0,0,.08)!important;margin-top:0!important}
.tm-form-actions [hidden]{display:none!important}
.tm-form-actions__hint{flex:1 1 100%!important;margin:0!important;font-size:12px!important;color:#b83232!important}
/* Auto-save indicator */
.tm-autosave-indicator{font-size:12px!important;color:#777!important;font-style:italic!important;margin-right:auto!important}
.tm-autosave-indicator--hint{color:#777!important}
.tm-autosave-indicator[data-state="saving"]{color:#b59a64!important}
.tm-autosave-indicator[data-state="saved"]{color:#177245!important}
.tm-autosave-indicator[data-state="error"]{color:#b83232!important}

/* ---- Signature --------------------------------------------- */
.tm-signature-flow{display:grid!important;grid-template-columns:1fr 1fr!important;gap:22px!important;align-items:start!important}
.tm-signature-flow__download,
.tm-signature-flow__upload{background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;border-top:4px solid #050505!important;padding:22px!important;box-shadow:0 14px 36px rgba(0,0,0,.045)!important}
.tm-signature-flow__download h4,
.tm-signature-flow__upload h4{margin:0 0 10px!important;color:#111!important;font-size:15px!important;text-transform:uppercase!important;letter-spacing:0!important}
.tm-signature-flow__download p{margin:0 0 16px!important;color:#444!important;line-height:1.55!important}
.tm-signature-flow__upload .tm-field{margin:0!important}
.tm-signature-flow__upload .tm-field label{margin-top:0!important}

/* ---- Person card ------------------------------------------- */
.tm-person-field{position:relative!important}
.tm-person-card{background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;border-top:4px solid #050505!important;padding:18px!important;margin-top:10px!important;font-size:13px!important;color:#111!important;line-height:1.5!important;box-shadow:0 12px 32px rgba(0,0,0,.045)!important}
.tm-person-card__dl{margin:0!important;padding:0!important;display:grid!important;grid-template-columns:minmax(118px,.42fr) 1fr!important;gap:0 16px!important}
.tm-person-card__dl dt{font-weight:700!important;font-size:10px!important;text-transform:uppercase!important;color:#b59a64!important;align-self:baseline!important;border-bottom:1px solid rgba(0,0,0,.06)!important;padding:8px 0!important}
.tm-person-card__dl dd{margin:0!important;color:#111!important;align-self:baseline!important}
.tm-person-card__dl dd{border-bottom:1px solid rgba(0,0,0,.06)!important;padding:8px 0!important;overflow-wrap:anywhere!important}
.tm-person-card__dl a{color:#b59a64!important;text-decoration:none!important}
.tm-person-card__dl a:hover{text-decoration:underline!important}

/* ---- Read-only recap --------------------------------------- */
.tm-concours-preview{margin-top:22px!important}
.tm-concours-preview__empty{background:#fff!important;border:1px dashed rgba(0,0,0,.22)!important;padding:18px!important;color:#555!important;font-size:14px!important}
.tm-data-panel,.tm-wizard-panel>.tm-readonly-rows{background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;border-top:4px solid #050505!important;padding:20px!important;box-shadow:0 14px 36px rgba(0,0,0,.05)!important}
.tm-data-panel--chef h4{margin:0 0 14px!important;color:#111!important;font-size:15px!important;text-transform:uppercase!important;letter-spacing:0!important}
.tm-data-panel--chef .tm-readonly-rows{display:block!important}
.tm-data-panel--chef .tm-readonly-rows__row{display:grid!important;grid-template-columns:1fr!important;gap:3px!important;padding:12px 0!important}
.tm-data-panel--chef .tm-readonly-rows dt{border:0!important;padding:0!important}
.tm-data-panel--chef .tm-readonly-rows dd{border:0!important;padding:0!important;font-size:15px!important}
.tm-recap{display:grid!important;gap:22px!important}
.tm-recap-status{border:1px solid currentColor!important;background:#fff!important;padding:18px 20px!important;display:grid!important;gap:8px!important}
.tm-recap-status strong{font-size:15px!important;text-transform:uppercase!important;letter-spacing:0!important}
.tm-recap-status span{color:#333!important}
.tm-recap-status ul{margin:0!important;padding-left:18px!important;columns:2!important;column-gap:28px!important}
.tm-recap-status li{break-inside:avoid!important;margin:0 0 6px!important}
.tm-recap-status--ok{color:#177245!important}
.tm-recap-status--missing{color:#b42318!important}
.tm-recap__section{border:1px solid rgba(0,0,0,.1)!important;background:#fff!important;border-top:4px solid #050505!important;padding:22px!important;box-shadow:0 14px 36px rgba(0,0,0,.045)!important}
.tm-recap__section h4{margin:0 0 16px!important;color:#111!important;font-size:17px!important;text-transform:uppercase!important;letter-spacing:0!important}
.tm-recap__section h5,.tm-recap-card h5{margin:18px 0 12px!important;color:#b59a64!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.03em!important}
.tm-recap__cards{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;gap:18px!important}
.tm-recap-card{background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;padding:16px!important;min-width:0!important}
.tm-recap-card h5{margin-top:0!important}
.tm-recap-card .tm-readonly-rows{grid-template-columns:1fr!important}
.tm-recap-card .tm-readonly-rows__row{grid-template-columns:1fr!important;gap:3px!important}
.tm-readonly-rows{margin:0!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px 18px!important}
.tm-readonly-rows__row{display:grid!important;grid-template-columns:minmax(128px,.42fr) 1fr!important;gap:14px!important;align-items:start!important;border-bottom:1px solid rgba(0,0,0,.06)!important;padding:9px 0!important;min-width:0!important}
.tm-readonly-rows__row--wide{grid-column:1/-1!important}
.tm-readonly-rows dt{font-weight:700!important;font-size:11px!important;text-transform:uppercase!important;color:#b59a64!important}
.tm-readonly-rows dd{margin:0!important;color:#111!important;min-width:0!important;overflow-wrap:anywhere!important;white-space:pre-line!important}
.tm-recap-files{margin:0!important;padding-left:18px!important}
.tm-recap-files li{margin:0 0 4px!important}
.tm-recap-image{margin:0!important}
.tm-recap-image img{display:block!important;width:min(100%,520px)!important;height:auto!important;max-height:360px!important;object-fit:contain!important;background:#f4f0e8!important;border:1px solid rgba(0,0,0,.1)!important;padding:8px!important}

/* ---- Front card variants ----------------------------------- */
.tm-front-card--compact{display:flex!important;justify-content:space-between!important;gap:18px!important;align-items:center!important;padding:22px!important}
.tm-front-card--notice{background:#faf8f3!important}

/* ---- Product grid ------------------------------------------ */
.tm-product-grid{display:grid!important;gap:0!important;margin-top:16px!important}
.tm-product-item{display:grid!important;grid-template-columns:7fr 3fr!important;gap:20px!important;align-items:center!important;border-bottom:1px solid rgba(0,0,0,.08)!important;padding:18px 0!important}
.tm-product-item:last-child{border-bottom:0!important}
.tm-product-row{display:block!important;margin-top:0!important}
.tm-product-row input[type="hidden"]{display:none!important}
.tm-product-row__qty{display:flex!important;flex-direction:column!important;gap:3px!important}
.tm-product-row__qty-line{display:flex!important;align-items:center!important;gap:8px!important}
.tm-product-row__qty-line input[type="number"]{flex:1!important}
.tm-product-unit{font-weight:600!important;font-size:13px!important;color:#555!important;white-space:nowrap!important}
.tm-qty-constraints{font-size:11px!important;color:#888!important;line-height:1.3!important;display:block!important}
/* Carte ingrédient */
.tm-ingredient-card{display:grid!important;grid-template-columns:80px minmax(0,1fr)!important;gap:14px!important;align-items:center!important}
.tm-ingredient-card figure{display:flex!important;margin:0!important;background:#f4f1ea!important;min-height:80px!important;border-radius:4px!important;overflow:hidden!important}
.tm-ingredient-card figure img{display:block!important;width:80px!important;height:80px!important;object-fit:cover!important}
.tm-ingredient-card__placeholder{display:flex!important;align-items:center!important;justify-content:center!important;width:80px!important;min-height:80px!important;background:#f4f1ea!important;color:#b59a64!important;border-radius:4px!important}
.tm-ingredient-card__placeholder .material-symbols-rounded{font-size:32px!important;line-height:1!important;font-variation-settings:'FILL' 0,'wght' 400,'GRAD' 0,'opsz' 40!important}
.tm-ingredient-card__body{display:flex!important;flex-direction:column!important;gap:3px!important}
.tm-ingredient-card__body h5{margin:0!important;color:#111!important;font-size:14px!important;line-height:1.25!important;text-transform:uppercase!important}
.tm-ingredient-card__producer{margin:0!important;font-size:11px!important;color:#b59a64!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.04em!important}
.tm-ingredient-card__producer-label{font-weight:400!important;color:#888!important;text-transform:none!important;letter-spacing:0!important}
.tm-ingredient-card__description{color:#444!important;font-size:12px!important;line-height:1.5!important;margin-top:2px!important}
.tm-ingredient-card__description p{margin:0 0 4px!important}
.tm-ingredient-card__description p:last-child{margin-bottom:0!important}
.tm-qty-constraints{font-size:11px!important;color:#888!important;line-height:1.3!important;display:block!important}

/* ---- Recipe fields ----------------------------------------- */
.tm-recipe-fields-inner{display:grid!important;gap:24px!important;margin-top:20px!important}
.tm-recipe-hint{margin:0 0 6px!important;color:#666!important;font-size:13px!important;line-height:1.55!important;font-style:italic!important}

/* ---- Legacy .tm-actions ------------------------------------ */
.tm-actions{margin-top:30px!important;display:flex!important;gap:18px!important;align-items:center!important;flex-wrap:wrap!important}

/* ---- File fields ------------------------------------------- */
.tm-file-current{font-size:13px!important;color:#555!important}
.tm-field small{font-size:12px!important;color:#777!important}

/* ---- Secure documents -------------------------------------- */
.tm-doc-templates{display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:wrap!important;background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;border-top:4px solid #050505!important;padding:18px!important;margin:0 0 20px!important;box-shadow:0 14px 36px rgba(0,0,0,.045)!important}
.tm-doc-templates h4{flex:1 1 100%!important;margin:0!important;color:#111!important;font-size:15px!important;text-transform:uppercase!important;letter-spacing:0!important}
.tm-doc-template{display:inline-flex!important;align-items:center!important;justify-content:center!important;background:#050505!important;color:#fff!important;text-decoration:none!important;padding:11px 16px!important;font-weight:700!important;font-size:13px!important}
.tm-doc-template:hover{background:#b59a64!important;color:#fff!important;text-decoration:none!important}
.tm-doc-status-panel{background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;border-top:4px solid #050505!important;padding:20px!important;margin-top:22px!important;box-shadow:0 14px 36px rgba(0,0,0,.045)!important}
.tm-doc-status-panel h4{margin:0 0 14px!important;color:#111!important;font-size:15px!important;text-transform:uppercase!important;letter-spacing:0!important}
.tm-doc-status-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
.tm-doc-status-card{display:grid!important;gap:7px!important;border:1px solid rgba(0,0,0,.08)!important;padding:15px!important;background:#fbfaf7!important}
.tm-doc-status-card strong{color:#111!important;font-size:13px!important;text-transform:uppercase!important}
.tm-doc-status-card>span:not(.tm-secure-status){color:#555!important;font-size:14px!important}
.tm-secure-status{display:inline-flex!important;align-items:center!important;width:max-content!important;max-width:100%!important;padding:7px 10px!important;font-size:12px!important;font-weight:700!important;line-height:1.2!important;border:1px solid currentColor!important;background:#fff!important}
.tm-secure-status--red{color:#b42318!important}
.tm-secure-status--orange{color:#b45309!important}
.tm-secure-status--green{color:#177245!important}

/* ---- Team photo -------------------------------------------- */
.tm-team-photo{display:grid!important;grid-template-columns:minmax(0,1fr) 340px!important;gap:26px!important;align-items:start!important}
.tm-team-photo__main{display:grid!important;gap:20px!important}
.tm-photo-guidelines{background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;border-top:4px solid #050505!important;padding:20px!important;box-shadow:0 14px 36px rgba(0,0,0,.045)!important}
.tm-photo-guidelines h4{margin:0 0 12px!important;color:#111!important;font-size:15px!important;text-transform:uppercase!important;letter-spacing:0!important}
.tm-photo-guidelines ul{margin:0!important;padding-left:18px!important;color:#333!important;line-height:1.65!important}
.tm-photo-guidelines li{margin:0 0 7px!important}
.tm-team-photo__upload{background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;padding:20px!important}
.tm-team-photo__aside{display:grid!important;gap:14px!important}
.tm-team-photo__preview{margin:0!important;background:#fff!important;border:1px solid rgba(0,0,0,.1)!important;padding:10px!important;box-shadow:0 14px 36px rgba(0,0,0,.045)!important}
.tm-team-photo__preview img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;background:#f4f0e8!important}
.tm-team-photo__preview{border-top:4px solid #b59a64!important}
.tm-team-photo__preview figcaption{margin:8px 0 0!important;color:#666!important;font-size:12px!important;line-height:1.4!important}

/* ---- Table ------------------------------------------------- */
.tm-table{width:100%!important;border-collapse:collapse!important;background:#fff!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:0 14px 38px rgba(0,0,0,.05)!important}
.tm-table th{padding:16px!important;text-align:left!important;color:#b59a64!important;font-size:12px!important;text-transform:uppercase!important;border-bottom:1px solid rgba(0,0,0,.1)!important;font-family:TMGotham,Arial,sans-serif!important}
.tm-table td{padding:16px!important;border-bottom:1px solid rgba(0,0,0,.06)!important;vertical-align:top!important;color:#111!important;font-family:TMGotham,Arial,sans-serif!important}
.tm-table td a+a{margin-left:0!important}
.tm-table-actions{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:6px!important}

/* ---- Person form ------------------------------------------- */
.tm-person-form h3{grid-column:1/-1!important;margin:24px 0 0!important;font-size:17px!important;text-transform:uppercase!important;color:#111!important}
.tm-etablissement-people{margin-top:44px!important}

/* ---- Modal ------------------------------------------------- */
.tm-front-modal{position:fixed!important;inset:0!important;z-index:99999!important;background:rgba(0,0,0,.62)!important;display:none!important;align-items:center!important;justify-content:center!important;padding:24px!important}
.tm-front-modal.is-open{display:flex!important}
.tm-front-modal__box{position:relative!important;background:#fff!important;max-width:440px!important;width:100%!important;padding:34px!important;box-shadow:0 24px 80px rgba(0,0,0,.26)!important}
.tm-front-modal__box h3{margin:0 0 10px!important;text-transform:uppercase!important;color:#b59a64!important}
.tm-front-modal__box p{margin:0!important;color:#444!important}
.tm-front-modal__close{position:absolute!important;top:12px!important;right:12px!important;border:0!important;background:#050505!important;color:#fff!important;width:34px!important;height:34px!important;cursor:pointer!important;font-size:22px!important;line-height:1!important}
.tm-front-modal__close:hover{background:#333!important}

/* ================================================================
   RESPONSIVE
   ================================================================ */

@media (max-width:900px){
  .tm-grid,.tm-grid--three{grid-template-columns:1fr!important}
  .tm-recap__cards,.tm-readonly-rows{grid-template-columns:1fr!important}
  .tm-signature-flow{grid-template-columns:1fr!important}
  .tm-recap-status ul{columns:1!important}
  .tm-product-item{grid-template-columns:1fr!important;gap:12px!important}
  .tm-product-row__qty{flex:1!important}
  .tm-ingredient-card{grid-template-columns:64px minmax(0,1fr)!important;gap:10px!important}
  .tm-ingredient-card figure{min-height:64px!important}
  .tm-ingredient-card figure img{width:64px!important;height:64px!important}
  .tm-ingredient-card__placeholder{width:64px!important;min-height:64px!important}
  .tm-doc-status-grid{grid-template-columns:1fr!important}
  .tm-team-photo{grid-template-columns:1fr!important}
  .tm-nappage-preview,.tm-nappage-card{grid-template-columns:1fr!important}
  .tm-nappage-preview>div{padding:18px!important}
  .tm-nappage-modal__panel{padding:22px!important}
  .tm-front-card--compact{align-items:flex-start!important;flex-direction:column!important}
  .tm-front-header{align-items:flex-start!important;flex-direction:column!important}
  .tm-front-header img:first-child{max-width:220px!important;width:70%!important}
  .tm-progress{flex-wrap:wrap!important;gap:8px!important}
  .tm-progress::before{display:none!important}
  .tm-progress__item::after{display:none!important}
  .tm-progress__item{flex:0 0 calc(50% - 4px)!important;min-width:0!important}
}

@media (max-width:560px){
  .tm-front,.tm-register,.tm-dashboard,.tm-etablissement-form,.tm-candidatures-list{padding:0 16px!important;margin:24px auto!important}
  .tm-register,.tm-front-card,.tm-wizard-panel{padding:18px!important}
  .tm-front-header{padding:18px!important}
  .tm-front-header h2{font-size:22px!important}
  .tm-table{display:block!important;overflow-x:auto!important}
  .tm-button,.tm-btn{width:100%!important}
  .tm-form-actions{padding:14px 18px!important;flex-direction:column!important}
  .tm-form-actions .tm-button,.tm-form-actions .tm-btn{width:100%!important;justify-content:center!important}
  .tm-progress{gap:6px!important}
  .tm-progress__item{flex:0 0 100%!important;flex-direction:row!important;gap:12px!important}
  .tm-progress__item strong{text-align:left!important}
}
/* ---- Mon Espace unified page ----------------------------------- */
.tm-espace-nav{display:flex!important;gap:0!important;border-bottom:2px solid #b59a64!important;margin-bottom:28px!important;flex-wrap:wrap!important}
.tm-espace-nav__item{padding:12px 24px!important;font-family:TMGotham,Arial,sans-serif!important;font-size:13px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:.06em!important;color:#666!important;text-decoration:none!important;border-bottom:3px solid transparent!important;margin-bottom:-2px!important;transition:color .15s,border-color .15s!important}
.tm-espace-nav__item:hover{color:#b59a64!important}
.tm-espace-nav__item.is-active{color:#b59a64!important;border-bottom-color:#b59a64!important}
.tm-espace-section{display:none!important}
.tm-espace-section.is-active{display:block!important}
.tm-espace-section-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;margin-bottom:20px!important;flex-wrap:wrap!important}
.tm-espace-section-head h2{margin:0!important}
.tm-espace-etab-tabs{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin-bottom:20px!important}
.tm-espace-etab-tab{padding:8px 18px!important;border:1px solid #ccc!important;border-radius:4px!important;font-size:13px!important;text-decoration:none!important;color:#444!important}
.tm-espace-etab-tab.is-active{background:#b59a64!important;border-color:#b59a64!important;color:#fff!important}
.tm-espace-filter{margin-bottom:16px!important}
.tm-espace-filter label{display:block!important;font-size:12px!important;margin-bottom:4px!important;font-weight:600!important}
.tm-espace-panel{margin-bottom:24px!important}
@media (max-width:560px){
  .tm-espace-nav__item{padding:10px 14px!important;font-size:11px!important}
}

/* ---- Mon Espace additions ---- */
.tm-espace-section-head{display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:12px!important;margin-bottom:20px!important}
.tm-espace-section-head__actions{display:flex!important;gap:10px!important;flex-wrap:wrap!important}
.tm-espace-section__title{font-size:22px!important;color:#b59a64!important;margin:0!important;text-transform:uppercase!important;font-weight:700!important;letter-spacing:.03em!important}
.tm-panel-title{font-size:16px!important;margin:0 0 20px!important;color:#111!important;font-weight:700!important}
.tm-empty-state{color:#666!important;font-style:italic!important;padding:16px 0!important}
.tm-field-info{margin:0 0 16px!important;color:#444!important;font-size:14px!important}
.tm-state-badge{display:inline-block!important;padding:3px 10px!important;border-radius:3px!important;font-size:11px!important;font-weight:700!important;text-transform:uppercase!important;background:#eee!important;color:#555!important}
.tm-state-badge--draft{background:#fff3cd!important;color:#856404!important}
.tm-state-badge--submitted{background:#d1ecf1!important;color:#0c5460!important}
.tm-state-badge--validated{background:#d4edda!important;color:#155724!important}
.tm-espace-etab-tabs{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin-bottom:20px!important}
.tm-espace-etab-tab{padding:7px 16px!important;border:1px solid #ccc!important;border-radius:4px!important;text-decoration:none!important;color:#444!important;font-size:13px!important}
.tm-espace-etab-tab.is-active{background:#b59a64!important;border-color:#b59a64!important;color:#fff!important}
.tm-button--danger{background:#c0392b!important;border-color:#c0392b!important;color:#fff!important;text-transform:uppercase!important}
.tm-button--danger:hover{background:#a93226!important;border-color:#a93226!important}
.tm-delete-blocked{display:inline-block!important;padding:8px 18px!important;border:1px solid #ccc!important;border-radius:4px!important;color:#999!important;font-size:12px!important;cursor:not-allowed!important;font-weight:700!important;text-decoration:none!important;text-transform:uppercase!important;letter-spacing:.04em!important}
[data-tm-lightbox]{cursor:zoom-in!important}
.tm-lightbox-overlay{position:fixed!important;inset:0!important;background:rgba(0,0,0,.9)!important;z-index:999999!important;display:flex!important;align-items:center!important;justify-content:center!important;cursor:zoom-out!important}
.tm-lightbox-overlay img{max-width:92vw!important;max-height:92vh!important;object-fit:contain!important;box-shadow:0 8px 48px rgba(0,0,0,.7)!important;cursor:default!important}
.tm-lightbox-close{position:fixed!important;top:16px!important;right:24px!important;background:none!important;border:none!important;color:#fff!important;font-size:42px!important;line-height:1!important;cursor:pointer!important;padding:0!important;z-index:1000000!important;opacity:.85!important}
.tm-lightbox-close:hover{opacity:1!important}
/* Radio groups — pill-button style */
.tm-radio-group{display:flex!important;gap:0!important;flex-wrap:wrap!important;margin-top:10px!important;margin-bottom:16px!important;border:1px solid #ccc!important;border-radius:6px!important;overflow:hidden!important;width:fit-content!important}
.tm-radio-option{display:flex!important;align-items:center!important;gap:0!important;cursor:pointer!important}
.tm-radio-option input[type="radio"]{position:absolute!important;opacity:0!important;width:0!important;height:0!important;pointer-events:none!important}
.tm-radio-option span,.tm-radio-option>*:not(input){display:inline-block!important;padding:9px 22px!important;font-size:14px!important;font-weight:600!important;color:#555!important;background:#fff!important;border-right:1px solid #ccc!important;transition:background .15s,color .15s!important;user-select:none!important}
.tm-radio-option:last-child span,.tm-radio-option:last-child>*:not(input){border-right:none!important}
.tm-radio-option input[type="radio"]:checked+*{background:#b59a64!important;color:#fff!important}
.tm-team-member-field{min-width:0!important}
.tm-team-member-field>.tm-field{margin-bottom:0!important}
.tm-service-role-assignment{margin-top:14px!important}
.tm-service-role-assignment__legend{margin:0 0 8px!important;font-size:11px!important;line-height:1.25!important;text-transform:uppercase!important;font-weight:700!important;color:#b59a64!important}
.tm-service-role-assignment .tm-radio-option{display:inline-flex!important;width:calc(50% - 5px)!important;min-width:118px!important;margin:0 10px 0 0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;cursor:pointer!important}
.tm-service-role-assignment .tm-radio-option:last-child{margin-right:0!important}
.tm-service-role-assignment .tm-radio-option input[type="radio"]{position:absolute!important;opacity:0!important;width:0!important;height:0!important;margin:0!important;pointer-events:none!important}
.tm-service-role-assignment .tm-radio-option span{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:46px!important;padding:12px 14px!important;border:0!important;background:#f4f1ea!important;color:#1f1f1f!important;font-size:13px!important;font-weight:700!important;line-height:1.15!important;text-align:center!important;text-transform:uppercase!important;letter-spacing:.02em!important;transition:background .16s,color .16s,box-shadow .16s!important}
.tm-service-role-assignment .tm-radio-option input[type="radio"]:checked+span{background:#b59a64!important;color:#fff!important;box-shadow:inset 0 -3px 0 rgba(0,0,0,.16)!important}
.tm-service-role-assignment .tm-radio-option input[type="radio"]:focus+span{box-shadow:0 0 0 2px rgba(181,154,100,.24),inset 0 -3px 0 rgba(0,0,0,.12)!important}
[data-tm-service-role-scope].tm-field--error .tm-service-role-assignment__legend{color:#b83232!important}
[data-tm-service-role-scope].tm-field--error .tm-service-role-assignment .tm-radio-option span{background:#fff4f4!important;color:#b83232!important}
.tm-nappage-actions{margin:16px 0 0!important}
.tm-button--ghost{background:#fff!important;color:#111!important;border:1px solid rgba(181,154,100,.65)!important;box-shadow:none!important}
.tm-button--ghost:hover,.tm-button--ghost:focus{background:#b59a64!important;color:#fff!important;border-color:#b59a64!important}
.tm-nappage-preview{display:grid!important;grid-template-columns:160px minmax(0,1fr)!important;gap:18px!important;align-items:stretch!important;margin-top:18px!important;background:#fff!important;border-top:4px solid #b59a64!important;box-shadow:0 14px 36px rgba(0,0,0,.045)!important}
.tm-nappage-preview[hidden]{display:none!important}
.tm-nappage-preview figure{display:flex!important;margin:0!important;background:#f4f1ea!important;min-height:120px!important}
.tm-nappage-preview img{display:block!important;width:100%!important;height:120px!important;object-fit:cover!important}
.tm-nappage-preview__placeholder,.tm-nappage-card__placeholder{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:120px!important;background:#f4f1ea!important;color:#b59a64!important}
.tm-nappage-preview__placeholder .material-symbols-rounded,.tm-nappage-card__placeholder .material-symbols-rounded{font-size:42px!important;line-height:1!important;font-variation-settings:'FILL' 0,'wght' 500,'GRAD' 0,'opsz' 40!important}
.tm-nappage-preview>div{padding:18px 18px 18px 0!important}
.tm-nappage-preview h4{margin:0 0 8px!important;color:#111!important;font-size:18px!important;line-height:1.2!important;text-transform:uppercase!important}
.tm-nappage-preview p{margin:0!important;color:#333!important;font-size:14px!important;line-height:1.55!important}
.tm-modal-open{overflow:hidden!important}
.tm-nappage-modal[hidden]{display:none!important}
.tm-nappage-modal{position:fixed!important;inset:0!important;z-index:999999!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:24px!important;box-sizing:border-box!important}
.tm-nappage-modal__overlay{position:absolute!important;inset:0!important;background:rgba(0,0,0,.62)!important}
.tm-nappage-modal__panel{position:relative!important;width:min(900px,100%)!important;max-height:calc(100vh - 48px)!important;margin:0!important;background:#fff!important;color:#111!important;overflow-y:auto!important;overflow-x:hidden!important;padding:28px!important;box-shadow:0 28px 80px rgba(0,0,0,.34)!important;box-sizing:border-box!important;-webkit-overflow-scrolling:touch!important}
.tm-nappage-modal__panel h4{margin:0 56px 22px 0!important;color:#b59a64!important;font-size:23px!important;line-height:1.15!important;text-transform:uppercase!important}
.tm-nappage-modal__close.tm-nappage-modal__close{position:absolute!important;top:18px!important;right:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;width:38px!important;height:38px!important;min-width:38px!important;min-height:38px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:#111!important;color:#fff!important;font-family:Arial,sans-serif!important;font-size:28px!important;font-weight:400!important;line-height:1!important;text-align:center!important;text-decoration:none!important;box-shadow:none!important;cursor:pointer!important;appearance:none!important;-webkit-appearance:none!important}
.tm-nappage-modal__close.tm-nappage-modal__close:hover,.tm-nappage-modal__close.tm-nappage-modal__close:focus{background:#b59a64!important;color:#fff!important;outline:0!important}
.tm-nappage-modal__list{display:grid!important;gap:18px!important}
.tm-nappage-card{display:grid!important;grid-template-columns:170px minmax(0,1fr)!important;gap:20px!important;border-top:1px solid rgba(0,0,0,.12)!important;padding-top:18px!important}
.tm-nappage-card:first-child{border-top:0!important;padding-top:0!important}
.tm-nappage-card figure{display:flex!important;margin:0!important;background:#f4f1ea!important;min-height:128px!important}
.tm-nappage-card img{display:block!important;width:100%!important;height:128px!important;object-fit:cover!important}
.tm-nappage-card__placeholder{min-height:128px!important}
.tm-nappage-card h5{margin:0 0 8px!important;color:#111!important;font-size:17px!important;line-height:1.25!important;text-transform:uppercase!important}
.tm-nappage-card__description{color:#333!important;font-size:14px!important;line-height:1.55!important}
.tm-nappage-card__description p{margin:0 0 10px!important}
.tm-nappage-card__description p:last-child{margin-bottom:0!important}
.tm-field--editor .wp-editor-wrap{margin-top:8px!important}
.tm-word-limit-counter{margin:8px 0 0!important;color:#666!important;font-size:12px!important;line-height:1.4!important;text-align:right!important}
.tm-word-limit-counter.is-full{color:#b59a64!important;font-weight:700!important}
.tm-word-limit-counter.is-below-min{color:#b59a64!important}

/* ---- WP Editor — neutralise les surcharges de Hello Elementor (reset.css) ---- */
/* Hello Elementor impose sur button/[type=button] : border #c36, color #c36, bg transparent, font-size 1rem, padding .5rem 1rem */

/* Onglets Visuel / Texte */
.tm-front .wp-switch-editor{float:left!important;box-sizing:content-box!important;position:relative!important;top:1px!important;background:#f0f0f1!important;color:#646970!important;cursor:pointer!important;font-size:13px!important;line-height:1.46153846!important;height:20px!important;margin:15px 0 0 5px!important;padding:3px 8px 4px!important;border:1px solid #dcdcde!important;text-shadow:none!important;box-shadow:none!important;transition:none!important;font-weight:400!important;text-transform:none!important}
.tm-front .wp-switch-editor:hover,.tm-front .wp-switch-editor:focus{background:#e0e0e0!important;color:#1d2327!important;border-color:#b5b5b5!important;text-decoration:none!important}
.tm-front .tmce-active .switch-tmce,.tm-front .html-active .switch-html{background:#fff!important;color:#b59a64!important;border-bottom-color:#fff!important;border-color:#dcdcde!important;z-index:1!important;margin-bottom:-1px!important}

/* Boutons Quicktags */
.tm-front .quicktags-toolbar input.ed_button{font-size:12px!important;font-weight:600!important;padding:0 8px!important;height:26px!important;line-height:26px!important;width:auto!important;background-color:#f1f1f1!important;border:1px solid rgba(0,0,0,.2)!important;color:#444!important;text-shadow:none!important;box-shadow:none!important;border-radius:3px!important;transition:none!important}
.tm-front .quicktags-toolbar input.ed_button:hover,.tm-front .quicktags-toolbar input.ed_button:focus{background-color:#e5e5e5!important;border-color:rgba(0,0,0,.3)!important;color:#111!important;outline:0!important}
@media (max-width:900px){
  .tm-nappage-preview,.tm-nappage-card{grid-template-columns:1fr!important}
  .tm-nappage-preview>div{padding:18px!important}
  .tm-nappage-modal{padding:16px!important}
  .tm-nappage-modal__panel{padding:22px!important}
}
/* Bragard section */
.tm-bragard-section{margin-top:12px!important;padding:18px!important;background:#fafafa!important;border:1px solid #e8e8e8!important;border-radius:6px!important}
.tm-bragard-layout{display:grid;grid-template-columns:1fr min(260px,35%);gap:32px;align-items:start}
.tm-bragard-layout__aside figure{margin:0;text-align:center}
.tm-bragard-layout__aside img{width:100%;border-radius:6px;border:1px solid #e4dace}
.tm-bragard-layout__aside figcaption{margin-top:6px;font-size:12px;color:#7a6e5f;text-align:center}
@media(max-width:680px){.tm-bragard-layout{grid-template-columns:1fr}.tm-bragard-layout__aside{order:-1}}
/* Private file list */
.tm-private-file-list{list-style:none!important;margin:0 0 16px!important;padding:0!important}
.tm-private-file-item{display:flex!important;align-items:center!important;gap:10px!important;padding:8px 12px!important;background:#f8f8f8!important;border:1px solid #e5e5e5!important;border-radius:4px!important;margin-bottom:6px!important;flex-wrap:wrap!important}
.tm-private-file-kind{font-weight:700!important;font-size:12px!important;text-transform:uppercase!important;color:#666!important}
.tm-private-file-name{font-size:13px!important;color:#333!important;flex:1!important}
.tm-button--link{background:none!important;border:none!important;padding:0!important;cursor:pointer!important;text-decoration:underline!important;font-size:13px!important}
.tm-color-danger{color:#c0392b!important}

.tm-file-status{display:block!important;font-size:12px!important;font-style:italic!important;margin-top:4px!important;color:#777!important}
.tm-file-status[data-state="uploading"]{color:#b59a64!important}
.tm-file-status[data-state="ok"]{color:#177245!important}
.tm-file-status[data-state="error"]{color:#b83232!important}

/* Validated docs badge */
.tm-docs-validated-badge{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:8px 14px!important;background:#edfae1!important;border:1px solid #4caf50!important;border-radius:6px!important;color:#276728!important;font-size:14px!important;font-weight:500!important;margin:8px 0!important}
