:root{color-scheme:light;--anchor:#5d0a14;--anchor-deep:#39050d;--coral:#fe7e80;--sand:#fee8b9;--harmony:#426242;--sky:#bde5fe;--ink:#24171a;--cream:#fffaf5;--line:rgba(93,10,20,.16);--shadow:0 18px 50px rgba(57,5,13,.1);font-family:"DM Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--cream);font-size:16px;line-height:1.55}*{box-sizing:border-box}body{margin:0;min-height:100vh}.skip-link{position:absolute;left:-10000px;top:12px;padding:10px 14px;background:var(--sand);color:var(--anchor);border-radius:8px}.skip-link:focus{left:12px;z-index:2}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100vw - 1080px)/2));border-bottom:1px solid var(--line);background:#fffaf5}.brand{font-size:1.65rem;font-weight:800;letter-spacing:-.06em;text-decoration:none;color:var(--anchor)}.brand span{color:#bc5957}.topbar p{margin:0;color:#715a5e;font-size:.9rem}
.topbar-right{display:flex;align-items:center;gap:16px}
.topbar-link{color:var(--anchor);text-decoration:none;font-weight:650;font-size:.92rem;padding:8px 14px;border-radius:99px;background:var(--sand)}
.topbar-link:hover{background:#f7dca4}.page-shell{width:min(100% - 36px,1080px);margin:clamp(34px,7vw,76px) auto;min-height:calc(100vh - 220px)}h1,h2,h3,p{margin-top:0}h1{margin-bottom:12px;color:var(--anchor);font-size:clamp(2.2rem,5vw,3.8rem);letter-spacing:-.045em;line-height:1.05}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:700;font-size:.76rem;color:var(--anchor);margin-bottom:14px}.eyebrow span{display:inline-block;margin-left:8px;padding:3px 8px;border-radius:99px;background:var(--sand);font-size:.7rem;letter-spacing:.04em}.intro{color:#624d51;max-width:660px}.panel{width:min(100%,480px);margin:0 auto;padding:clamp(24px,5vw,42px);background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}#dashboard>.panel{width:100%;margin:28px 0 0}form{display:grid;gap:10px;margin-top:26px}label{font-weight:650;font-size:.93rem}input,select{min-height:48px;width:100%;padding:10px 12px;border:1px solid rgba(57,5,13,.28);border-radius:10px;background:#fff;color:var(--ink)}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--coral);outline-offset:3px}.button{min-height:44px;padding:10px 17px;border:0;border-radius:999px;font:inherit;font-weight:700;cursor:pointer}.button-primary{margin-top:8px;background:var(--anchor);color:#fff}.button-outline{border:1px solid var(--line);background:#fff;color:var(--anchor)}.button:disabled{opacity:.6;cursor:wait}.small-note{margin:22px 0 0;color:#715a5e;font-size:.86rem}.message{min-height:1.55em;margin:12px 0 0;color:var(--anchor);font-weight:600}.message:empty{display:none}.dashboard-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.dashboard-heading .button{flex:0 0 auto}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px;margin:28px 0 8px;background:#fff;border:1px solid var(--line);border-radius:16px}.toolbar label{margin-left:4px}.toolbar select{width:auto;min-width:200px}.toolbar .count{margin-left:auto;color:#715a5e;font-size:.9rem}.request-list{display:grid;gap:14px;margin-top:18px}.request-card{padding:22px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 5px 20px rgba(57,5,13,.045)}.request-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.request-type{margin-bottom:6px;color:var(--anchor);font-weight:800}.request-card h2{margin:0 0 4px;font-size:1.25rem;letter-spacing:-.02em}.request-date,.request-meta{color:#715a5e;font-size:.91rem}.request-details{display:grid;gap:5px;margin-top:16px;overflow-wrap:anywhere}.request-message{margin-top:13px;padding:12px 14px;border-radius:10px;background:#fff8e9;white-space:pre-wrap;overflow-wrap:anywhere}.status-control{display:grid;gap:5px;min-width:170px}.status-control label{font-size:.77rem;text-transform:uppercase;letter-spacing:.06em;color:#715a5e}.status-control select{min-height:42px}.empty-state{margin:38px auto;text-align:center;color:#715a5e}footer{padding:24px max(22px,calc((100vw - 1080px)/2));border-top:1px solid var(--line);color:#715a5e;font-size:.88rem}footer a{color:var(--anchor);font-weight:700}@media(max-width:620px){.topbar{height:64px}.page-shell{width:min(100% - 24px,1080px);margin:28px auto}.dashboard-heading{display:grid;gap:16px}.dashboard-heading .button{justify-self:start}.toolbar{align-items:stretch}.toolbar label{align-self:center}.toolbar select{flex:1;min-width:150px}.toolbar .button{width:100%}.toolbar .count{width:100%;margin:0 4px}.request-top{display:grid}.status-control{width:100%}.request-card{padding:17px}}

/* === Pawkedog admin: grouped, coloured, responsive cards + toast === */
.request-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:18px;align-items:start}
.request-card{padding:22px;border:1px solid rgba(93,10,20,.12);border-left-width:6px;border-radius:16px;background:#fff;box-shadow:0 5px 20px rgba(57,5,13,.045);transition:transform 150ms ease,box-shadow 150ms ease}
.request-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(57,5,13,.09)}
.request-top{flex-wrap:wrap}
/* Group colours (charte) : a saturated accent per group, a lighter tint per card */
footer{text-align:center;padding:26px 18px 40px;color:#715a5e;font-size:.9rem}
footer a{color:var(--anchor);text-decoration:none;font-weight:650}
footer a:hover{text-decoration:underline}

/* --- Personnes : table fusionnée (comptes + profils) --- */
.admin-table tbody tr.person-row{cursor:pointer}
.admin-table tbody tr.person-row:hover{background:#f3f7f3}
.col-person{font-weight:700}
.dog-cell{display:flex;flex-direction:column;align-items:flex-start;gap:6px;white-space:normal}
.dog-cell .dog-info{margin:0}
.dog-btn{white-space:nowrap}
.dog-btn:disabled{opacity:.55;cursor:not-allowed}
.role-manage-btn{white-space:nowrap}

/* --- Modal « Gérer les rôles » --- */
.role-modal-list{display:grid;gap:10px;margin:16px 0}
.role-modal-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--cream)}
.role-modal-row .role-btn{white-space:nowrap}
.role-modal-status{min-height:0}
@media(max-width:560px){
  .topbar-right{gap:10px}
  .role-modal-row{grid-template-columns:1fr;align-items:flex-start}
}
#request-list .request-card{border-left-color:#5d0a14;background:#faf1f2}
#guild-review-list .request-card{border-left-color:#e86466;background:#ffeaea}
#client-review-list .request-card,#published-review-list .request-card{border-left-color:#c47a1a;background:#fdeeda}
#client-access-list .request-card{border-left-color:#3f8fd0;background:#e7f3fc}
#identity-list .request-card,#profile-list .request-card,#people-list .request-card{border-left-color:#426242;background:#e6ece6}
#guild-event-admin-list .request-card{border-left-color:#7a2a3a;background:#f5e8ec}
#booking-slot-admin-list .request-card{border-left-color:#b8770a;background:#fbf2dc}
/* coloured group headings */
#client-access-management .eyebrow{color:#3f8fd0}
#identity-management .eyebrow{color:#426242}
#guild-event-management .eyebrow{color:#7a2a3a}
#booking-slot-management .eyebrow{color:#b8770a}
#member-moderation h2{color:#5d0a14}
/* toast (click to close) */
.toast-region{position:fixed;bottom:22px;right:22px;z-index:60;display:grid;gap:10px;max-width:min(92vw,420px)}
.toast{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;background:#2f5a34;color:#fff;font-weight:600;box-shadow:0 14px 34px rgba(57,5,13,.22);cursor:pointer;animation:toast-in .18s ease}
.toast[data-kind="warn"]{background:#7a3c13}
.toast[data-kind="error"]{background:#8c1d2b}
.toast .toast-icon{margin-right:2px;font-weight:800}
.toast .toast-close{margin-left:10px;font-size:1.15rem;line-height:1;opacity:.85}
@keyframes toast-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:620px){.toast-region{left:14px;right:14px;bottom:14px;max-width:none}}

/* === DatePicker français (date / datetime / heure) === */
}

/* === Configuration page === */
.choice-grid.two{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.choice-card{display:flex;align-items:center;gap:10px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--cream);transition:transform 150ms ease,box-shadow 150ms ease;cursor:pointer}
.choice-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(57,5,13,.08)}
.choice-card:has(input:checked){border-color:var(--anchor);background:var(--sand)}
.choice-card input{width:auto;min-height:auto}
.choice-card strong{font-weight:700}
fieldset#settings-position-fieldset{border:0;padding:0;margin:18px 0 0}
fieldset#settings-position-fieldset legend{font-weight:700;font-size:.93rem;padding:0}

/* === Toast positions (owner-configurable) === */
.toast-region-bottom-right{right:22px;left:auto;bottom:22px;top:auto;align-items:flex-end}
.toast-region-bottom-left{left:22px;right:auto;bottom:22px;top:auto;align-items:flex-start}
.toast-region-top-right{right:22px;left:auto;top:22px;bottom:auto;align-items:flex-end}
.toast-region-top-left{left:22px;right:auto;top:22px;bottom:auto;align-items:flex-start}
@media(max-width:620px){
  .toast-region-bottom-right,.toast-region-bottom-left{left:14px;right:14px;bottom:14px}
  .toast-region-top-right,.toast-region-top-left{left:14px;right:14px;top:14px}
}

/* === Owner space redesign === */
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand-logo{height:44px;width:auto}
.section-nav{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 2px}
.section-nav a{padding:8px 14px;border-radius:99px;background:var(--sand);color:var(--anchor);text-decoration:none;font-weight:650;font-size:.9rem}
.section-nav a:hover{background:#f7dca4}
.section-nav a.owner-only{display:none}
body.is-owner .section-nav a.owner-only{display:inline-block}
.section-box{border:1px solid var(--line);border-radius:24px;padding:clamp(18px,3vw,30px);margin:24px 0;background:#fff}
.requests-box{background:#fbf4f5}
.section-heading{margin-bottom:6px}
.check{display:flex;align-items:center;gap:8px;font-weight:600;font-size:.9rem}
.check input{width:auto;min-height:auto}
.button-ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}
.button-ghost:hover{background:var(--cream)}
.archive-btn{font-size:.85rem;padding:7px 12px}
.request-card.is-archived{opacity:.6}
.archived-badge{display:inline-block;margin-top:8px;padding:3px 10px;border-radius:99px;background:#e9e2e3;color:#5d0a14;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.role-btn{font-weight:650}
.role-btn.role-guild{border-color:#426242;color:#426242}
.role-btn.role-guild.is-assigned{background:#426242;color:#fff}
.role-btn.role-client{border-color:#3f8fd0;color:#3f8fd0}
.role-btn.role-client.is-assigned{background:#3f8fd0;color:#fff}
.role-btn.role-owner{border-color:rgba(93,10,20,.22);color:#7a6a6e;font-size:.8rem;padding:6px 10px}
.role-btn.role-owner.is-assigned{background:#efe8e9;color:#5d0a14}
.modal{position:fixed;inset:0;background:rgba(57,5,13,.45);display:grid;place-items:center;z-index:80;padding:20px}
.modal[hidden]{display:none}
.modal-panel{width:min(100%,460px);background:#fff;border-radius:20px;padding:26px;box-shadow:var(--shadow)}
body.modal-open{overflow:hidden}
@media(max-width:680px){.section-nav a{margin:2px 0}}

/* === Card layout refresh: aligned header/actions, readable flex === */
.request-card{display:flex;flex-direction:column;gap:6px}
.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;width:100%}
.card-summary{flex:1 1 auto;min-width:0}
.card-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex:0 0 auto}
.card-actions .archive-btn{min-height:34px;padding:6px 12px;font-size:.8rem;white-space:nowrap;align-self:flex-end}
.request-details p,.request-message{font-size:.92rem;line-height:1.55;color:#4f3a3f}
.person-card{cursor:pointer}
.person-card:hover{border-left-color:currentColor}
/* === Detail modal === */
.modal-wide .modal-panel{width:min(100%,680px);max-height:86vh;overflow:auto}
.detail-body .detail-list{margin:0;display:block}
.detail-body .detail-list h3{margin:18px 0 8px;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--anchor);border-bottom:1px solid var(--line);padding-bottom:6px}
.detail-body .detail-group{display:grid;gap:7px;margin:0 0 6px}
.detail-body .detail-row{display:grid;grid-template-columns:170px 1fr;gap:12px;align-items:baseline;font-size:.94rem}
.detail-body .detail-row dt{color:#715a5e;font-weight:600}
.detail-body .detail-row dd{margin:0;color:var(--ink)}
.detail-body .detail-image{max-width:230px;border-radius:12px;margin:4px 0 10px}
.detail-body .detail-block{font-size:.92rem;color:var(--ink);margin-bottom:10px;overflow-wrap:anywhere}
@media(max-width:620px){
  .card-header{flex-direction:column;align-items:stretch}
  .card-actions{align-items:stretch}
  .card-actions .status-control{width:100%;min-width:0}
  .card-actions .archive-btn{align-self:stretch}
  .detail-body .detail-row{grid-template-columns:1fr;gap:2px}
}

/* Nav groups + role chips */
.nav-group{border:1px solid var(--line);border-radius:10px;margin-bottom:6px;padding:4px 8px}
.nav-group summary{cursor:pointer;font-weight:700;font-family:var(--font-heading);color:var(--anchor);padding:6px 2px}
.nav-group a{display:block;padding:5px 10px;border-radius:6px;color:var(--ink);text-decoration:none}
.nav-group a:hover{background:rgba(93,10,20,.06)}
.role-chips{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}
.chip{display:inline-block;padding:3px 10px;border-radius:99px;font:600 .72rem/1 var(--font-heading);letter-spacing:.02em}
.chip-client{background:#6d4a3a;color:#fff}
.chip-guild{background:#fee8b9;color:#5d0a14}
.chip-owner{background:#426242;color:#fff}
.chip-none{background:#eee;color:#666}
.person-card h3{display:flex;align-items:center;gap:8px;flex-wrap:wrap}

/* --- Tables admin (replaces cards for readability at scale) --- */
#request-list,#guild-review-list,#client-review-list,#published-review-list,
#client-access-list,#people-list,#guild-event-admin-list,
#booking-slot-admin-list,#theme-admin-list{display:block}
.admin-table-wrap{width:100%;overflow-x:auto;background:#fff;border:1px solid rgba(93,10,20,.12);border-radius:16px;margin-top:18px}
.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}
.admin-table thead th{position:sticky;top:0;z-index:1;background:#faf1f2;color:var(--anchor);text-align:left;padding:12px 14px;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--line);white-space:nowrap}
.admin-table tbody td{padding:12px 14px;border-bottom:1px solid rgba(93,10,20,.07);vertical-align:top;color:var(--ink)}
.admin-table tbody tr{transition:background .12s}
.admin-table tbody tr:hover{background:#fffaf5}
.admin-table tbody tr:last-child td{border-bottom:0}
.admin-table tbody tr.is-archived td{opacity:.5}
.admin-table tbody tr.is-archived .col-main{text-decoration:line-through}
.col-main{max-width:360px;white-space:pre-line;word-break:break-word}
.col-type,.col-roles,.col-status,.col-action{white-space:nowrap}
.col-action{text-align:right}
.row-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.status-ok{color:#2f6b37;font-weight:600}
.status-muted{color:#8a6a6f;font-weight:500}
.stack{display:flex;flex-direction:column;gap:6px}
.thumb{max-width:72px;height:auto;border-radius:10px;border:1px solid var(--line)}
.admin-table details p{margin:2px 0;font-size:.82rem;color:#5f4c51}
.status-control{display:flex;flex-direction:column;gap:4px}
.status-control label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:#8a6a6f}
.status-control select{min-width:132px;min-height:38px}
#identity-table .role-btn{white-space:nowrap}

/* --- Cohérence globale (charte) : compact & harmonisé --- */
textarea{width:100%;min-height:96px;padding:10px 12px;border:1px solid rgba(57,5,13,.28);border-radius:10px;background:#fff;color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;font-size:.95rem;line-height:1.5;resize:vertical}
form textarea:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
.nav-group{gap:4px}
.nav-group summary{padding:8px 10px;border-radius:8px}
.nav-group a{margin:2px 4px;border-radius:8px}
.row-actions .button,.admin-table .button{padding:5px 11px;min-height:30px;font-size:.78rem;font-weight:700;border-radius:999px}
.role-btn{min-height:30px;padding:5px 10px;font-size:.78rem;font-weight:700}
.role-btn.role-guild,.role-btn.role-client,.role-btn.role-owner{font-size:.78rem}
.role-btn.role-guild{border-color:#fee8b9;color:#7a5b00}
.role-btn.role-guild.is-assigned{background:#fee8b9;border-color:#fee8b9;color:#5d0a14}
.role-btn.role-client{border-color:#6d4a3a;color:#6d4a3a}
.role-btn.role-client.is-assigned{background:#6d4a3a;color:#fff;border-color:#6d4a3a}
.role-btn.role-owner{border-color:#426242;color:#426242;font-size:.78rem;padding:5px 10px}
.role-btn.role-owner.is-assigned{background:#426242;color:#fff}
.status-control select{min-height:34px}

/* Barre d'outils markdown Thématiques */
.md-toolbar{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.md-btn{padding:6px 10px;min-height:0;min-width:34px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font:700 .9rem/1 var(--font-heading);cursor:pointer}
.md-btn:hover{background:var(--cream)}
.md-upload{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:.85rem;cursor:pointer}
.md-upload:hover{background:var(--cream)}

/* === Calendrier Owner (jour / semaine / mois + blocs d'indisponibilité) === */
.owner-cal-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:.82rem;color:var(--muted,#7c6269);margin-bottom:10px}
.owner-cal-legend span{display:inline-flex;align-items:center;gap:6px}
.oc-dot{width:9px;height:9px;border-radius:50%;display:inline-block}
.oc-dot.oc-booking{background:#5d0a14}
.oc-dot.oc-block{background:repeating-linear-gradient(45deg,#7c6269,#7c6269 2px,#b8a4ab 2px,#b8a4ab 4px)}
.owner-cal-grid{display:grid;gap:4px}
.owner-cal-grid-month{grid-template-columns:repeat(7,1fr)}
.owner-cal-grid-week{grid-template-columns:repeat(7,1fr);min-width:760px}
.owner-calendar-grid{overflow:auto}
.oc-dow{text-align:center;font-size:.7rem;color:#7c6269;padding:4px 0;font-weight:700;text-transform:uppercase}
.oc-day{display:flex;flex-direction:column;gap:4px;align-items:stretch;min-height:64px;border:1px solid var(--line,#e8d8d2);border-radius:10px;background:#fff;padding:5px;cursor:pointer;font-family:var(--font-body)}
.oc-day:hover{border-color:#5d0a14}
.oc-day.oc-today{box-shadow:inset 0 0 0 2px rgba(93,10,20,.4)}
.oc-daynum{font:700 .78rem/1 var(--font-heading);color:#5d0a14}
.oc-dots{display:flex;gap:3px;flex-wrap:wrap}
.oc-pill{width:7px;height:7px;border-radius:50%;display:inline-block;pointer-events:none}
.oc-pill.oc-booking{background:#5d0a14}
.oc-pill.oc-block{background:repeating-linear-gradient(45deg,#7c6269,#7c6269 2px,#b8a4ab 2px,#b8a4ab 4px)}
.oc-pill-wide{width:auto;height:auto;border-radius:999px;padding:5px 9px;font-size:.74rem;font-weight:700;pointer-events:auto}
.oc-pill-wide.oc-booking{background:#5d0a14;color:#fff}
.oc-pill-wide.oc-block{background:#b8a4ab;color:#3c2329}
.oc-weekday{min-height:120px}
.oc-day-entries{display:flex;flex-direction:column;gap:4px;margin-top:4px}
.oc-daybox{background:#fff;border:1px solid var(--line,#e8d8d2);border-radius:14px;padding:16px;min-height:120px}
.oc-entries-col{gap:6px}

/* Owner messaging inbox (P1) */
.admin-messaging-layout{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:20px;margin-top:18px}
.admin-messaging-conversations{background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}
.admin-messaging-unread{justify-self:start;padding:5px 10px;border-radius:999px;background:var(--coral);color:#fff;font-size:.72rem;font-weight:700}
.admin-conv-item{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;width:100%;padding:12px 14px;margin-bottom:8px;border:1px solid var(--line);border-radius:12px;background:var(--cream);cursor:pointer;font-family:inherit}
.admin-conv-item:hover{border-color:var(--anchor)}
.admin-conv-item strong{color:var(--anchor);font-weight:750;position:relative;padding-right:24px}
.admin-conv-item span{font-size:.85rem;color:#715a5e}
.admin-conv-item small{font-size:.72rem;color:#9b8a8e}
.admin-conv-unread{position:absolute;right:0;top:0;background:var(--coral);color:#fff;border-radius:99px;font:700 .7rem/1 inherit;font-style:normal;padding:3px 7px}
.admin-messaging-thread{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.admin-thread-header{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--line);background:var(--cream)}
.admin-thread-header strong{color:var(--anchor)}
.admin-thread-messages{display:flex;flex-direction:column;gap:8px;padding:16px;max-height:460px;overflow:auto}
.admin-thread-msg{padding:9px 12px;border-radius:12px;background:var(--cream);max-width:82%;align-self:flex-start}
.admin-thread-msg-body{font-size:.92rem;line-height:1.45}
.admin-thread-msg-body p{margin:0}
.admin-thread-msg-body a{color:var(--anchor)}
.admin-thread-msg-image{display:block;max-width:100%;max-height:280px;border-radius:10px;margin:6px 0 4px}
.admin-thread-msg time{display:block;font-size:.72rem;color:#9b8a8e;margin-top:4px}
.admin-thread-composer{display:flex;align-items:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--line)}
.admin-thread-composer textarea{flex:1;min-height:48px;padding:10px 12px;border:1px solid rgba(57,5,13,.28);border-radius:10px;font-family:inherit;font-size:.9rem;resize:vertical}
.admin-thread-composer .button{margin-top:0;flex:0 0 auto}
.admin-thread-attach{display:inline-flex;align-items:center;justify-content:center;min-height:44px;width:44px;border:1px solid var(--line);border-radius:10px;background:var(--cream);color:var(--anchor);cursor:pointer;flex:0 0 auto}
.admin-thread-attach:hover{background:var(--sand)}
@media(max-width:760px){.admin-messaging-layout{grid-template-columns:1fr}}

/* === Blocs d'indisponibilité : formulaire pleine largeur + édition === */
#block-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;align-items:end;padding:20px;background:var(--cream);border:1px solid var(--line);border-radius:18px}
#block-form > label{min-width:0;margin-bottom:-6px;color:var(--anchor)}
#block-form > input{min-width:0}
#block-form > label[for="block-start"]{grid-column:1}
#block-form > input#block-start{grid-column:1;grid-row:2}
#block-form > label[for="block-end"]{grid-column:2;grid-row:1}
#block-form > input#block-end{grid-column:2;grid-row:2}
#block-form > label[for="block-reason"]{grid-column:1/-1;grid-row:3}
#block-form > input#block-reason{grid-column:1/-1;grid-row:4}
#block-form > .message{grid-column:1/-1;margin:0}
.block-form-actions{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}
.block-form-actions .button{margin-top:0}
#block-list{display:block;width:100%}
#block-list>.admin-table-wrap{width:100%;margin-top:0}
.theme-body-label{display:flex;align-items:center;gap:8px}
.help-tooltip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 20px;border:1px solid var(--line);border-radius:50%;background:var(--cream);color:var(--anchor);font-size:.78rem;font-weight:800;cursor:help}
.help-tooltip-content{position:absolute;left:50%;bottom:calc(100% + 10px);z-index:5;width:min(300px,calc(100vw - 48px));padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-size:.82rem;font-weight:500;line-height:1.45;box-shadow:0 10px 30px rgba(57,5,13,.16);opacity:0;visibility:hidden;transform:translate(-50%,4px);transition:opacity .15s ease,transform .15s ease,visibility .15s}
.help-tooltip-content::after{position:absolute;top:100%;left:50%;width:9px;height:9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;content:"";transform:translate(-50%,-50%) rotate(45deg)}
.help-tooltip:focus-visible{outline:3px solid var(--coral);outline-offset:3px}
.help-tooltip:hover .help-tooltip-content,.help-tooltip:focus .help-tooltip-content{opacity:1;visibility:visible;transform:translate(-50%,0)}
@media(max-width:760px){#block-form{grid-template-columns:minmax(0,1fr);padding:16px}#block-form > label[for="block-start"],#block-form > label[for="block-end"],#block-form > label[for="block-reason"],#block-form > input#block-start,#block-form > input#block-end,#block-form > input#block-reason{grid-column:1;grid-row:auto}#block-form > label{margin:0 0 -6px}}

/* === Owner admin refresh: quiet workspace, clear navigation, preserved controls === */
:root{--anchor:#5d0a14;--anchor-deep:#39050d;--cream:#fffaf5;--ink:#24171a;--line:rgba(93,10,20,.16);--shadow:0 18px 50px rgba(57,5,13,.1)}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{background:var(--cream);color:var(--ink)}
[hidden]{display:none!important}
.topbar{position:fixed;inset:0 auto 0 0;z-index:45;width:256px;height:100vh;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:30px 20px 20px;border:0;border-right:1px solid rgba(255,255,255,.08);background:var(--anchor-deep);box-shadow:8px 0 28px rgba(57,5,13,.08)}
.brand{display:flex;align-items:center;min-height:54px;padding:0 10px}
.brand{background:var(--sand);border-radius:14px}
.brand-logo{width:auto;height:46px;max-width:100%;object-fit:contain;object-position:left center}
.topbar-right{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%;margin-top:auto}
.topbar-right p{margin:0;padding:0 10px;color:var(--sand);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}
.topbar-link{display:block;padding:12px 13px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:#fff;border-radius:12px;font-size:.86rem}
.topbar-link:hover{background:rgba(255,255,255,.13)}
.page-shell{width:auto;max-width:1560px;min-height:100vh;margin:0 0 0 256px;padding:38px clamp(24px,4vw,62px) 60px}
#dashboard:not([hidden]){max-width:1380px;margin:0 auto}
#dashboard .dashboard-heading{align-items:center;gap:24px;padding:6px 0 26px;border-bottom:1px solid var(--line)}
#dashboard .dashboard-heading .eyebrow{margin-bottom:8px;color:var(--harmony);font-size:.7rem;letter-spacing:.15em}
#dashboard .dashboard-heading h1{margin:0;color:var(--anchor);font-family:var(--font-heading);font-size:clamp(2rem,3vw,2.65rem);letter-spacing:-.045em;line-height:1.08}
#dashboard .dashboard-heading .intro{margin:10px 0 0;color:#715f5f;font-size:.95rem}
#logout-button{border-color:var(--line);background:#fff;color:var(--anchor)}
#logout-button:hover{background:#fff1cf}
.section-nav{position:fixed;inset:120px auto 20px 0;z-index:46;width:256px;display:flex;flex-direction:column;flex-wrap:nowrap;gap:8px;overflow-y:auto;margin:0;padding:15px 14px 24px;background:var(--anchor-deep)}
.nav-group{margin:0;padding:5px 0;border:0;border-radius:0;background:transparent}
.nav-group summary{position:relative;padding:10px 12px;color:var(--sand);font:700 .7rem/1.3 var(--font-heading);letter-spacing:.14em;text-transform:uppercase;list-style:none}
.nav-group summary::-webkit-details-marker{display:none}
.nav-group summary::after{position:absolute;right:13px;content:"+";font-size:.95rem;line-height:1}
.nav-group[open] summary::after{content:"−"}
.nav-group a{margin:2px 0;padding:10px 12px;border-radius:10px;color:#fffaf5;font-size:.88rem;font-weight:550;line-height:1.35;text-decoration:none;transition:background .15s,color .15s}
.nav-group a:not([href="#les-demandes"]):hover,.nav-group a:not([href="#les-demandes"]):focus-visible{background:rgba(254,126,128,.2);color:#fff}
.nav-group a[href="#les-demandes"]{background:var(--sand);color:var(--anchor);font-weight:700}
.nav-group a.owner-only{display:none}
body.is-owner .section-nav a.owner-only{display:block}
#dashboard .section-box,#dashboard>.panel{width:100%;max-width:none;margin:24px 0 0;padding:clamp(20px,2.6vw,34px);border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 5px 18px rgba(57,5,13,.04)}
#dashboard .requests-box{background:#fff}
#dashboard .section-heading h2,#dashboard>.panel>h2{margin:0 0 8px;color:var(--anchor);font-family:var(--font-heading);font-size:1.35rem;letter-spacing:-.025em}
#dashboard .section-heading .intro{max-width:720px;margin:0;color:#715f5f;font-size:.9rem}
#dashboard .eyebrow{color:var(--harmony)}
#dashboard .small-note{color:#715f5f}
#dashboard .toolbar{gap:10px;padding:13px;margin:18px 0 10px;border:1px solid var(--line);border-radius:14px;background:#fff8eb}
#dashboard .toolbar select{min-width:190px}
#dashboard .toolbar .count{color:#715f5f;font-weight:650}
#dashboard .request-list{gap:12px;margin-top:16px}
#dashboard .request-card{border:1px solid var(--line);border-left:4px solid var(--coral);border-radius:14px;background:#fff;box-shadow:0 3px 10px rgba(57,5,13,.035)}
#dashboard .request-card:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(57,5,13,.075)}
#dashboard .admin-table-wrap{margin-top:16px;border-color:var(--line);border-radius:14px;box-shadow:0 3px 10px rgba(57,5,13,.025)}
#dashboard .admin-table thead th{background:#fff1cf;color:var(--anchor);border-bottom:1px solid var(--line);font-size:.68rem;letter-spacing:.09em}
#dashboard .admin-table tbody td{padding:13px 15px;border-bottom-color:rgba(93,10,20,.08);font-size:.87rem;line-height:1.45}
#dashboard .admin-table tbody tr:hover{background:#fffaf5}
#dashboard .button-primary{background:var(--anchor)}
#dashboard .button-primary:hover{background:var(--anchor-deep)}
#dashboard .button-outline{border:1px solid var(--line);background:#fff;color:var(--anchor)}
#dashboard .button-outline:hover{background:#fff1cf}
#dashboard input,#dashboard select,#dashboard textarea{border-color:var(--line);border-radius:10px;background:#fff}
#dashboard input:focus-visible,#dashboard select:focus-visible,#dashboard textarea:focus-visible,#dashboard button:focus-visible,#dashboard a:focus-visible,.section-nav a:focus-visible{outline:3px solid var(--coral);outline-offset:2px}
#dashboard .owner-calendar-grid{padding:4px 0}
#dashboard .oc-day{border-color:var(--line);border-radius:12px;background:#fff}
#dashboard .oc-day:hover{border-color:var(--coral);background:#fffaf5}
#dashboard .oc-day.oc-today{box-shadow:inset 0 0 0 2px var(--coral)}
#dashboard #block-form{border-color:var(--line);border-radius:15px;background:#fff8eb}
#dashboard #block-list>.admin-table-wrap{width:100%;margin-top:16px}
#dashboard .admin-messaging-conversations,#dashboard .admin-messaging-thread{border-color:var(--line);border-radius:16px;background:#fff}
#dashboard .admin-thread-header{background:#fff8eb}
#dashboard .modal{background:rgba(57,5,13,.48);backdrop-filter:blur(3px)}
#dashboard .modal-panel{border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 70px rgba(57,5,13,.22)}
footer{margin-left:256px;padding:20px 24px 30px;border-top:1px solid #e9e1dc;color:#827678}
footer a{color:var(--anchor)}
.skip-link:focus{z-index:100}
@media(max-width:900px){.topbar{width:224px;padding-inline:15px}.section-nav{width:224px}.page-shell{margin-left:224px;padding:30px 24px 48px}footer{margin-left:224px}}
@media(max-width:680px){
  .topbar{position:relative;inset:auto;width:100%;height:auto;min-height:68px;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-right:0;border-bottom:1px solid rgba(255,255,255,.08)}
  .brand{min-height:44px;padding:0}.brand-logo{height:38px}
  .topbar-right{flex:0 1 auto;flex-direction:row;align-items:center;justify-content:flex-end;gap:8px;width:auto;margin:0}
  .topbar-right p{display:none}.topbar-link{padding:9px 11px;font-size:.78rem}
  .page-shell{width:100%;min-height:0;margin:0;padding:18px 14px 34px}
  #dashboard .dashboard-heading{align-items:flex-start;padding:5px 0 18px}
  #dashboard .dashboard-heading h1{font-size:1.9rem}
  #logout-button{min-height:38px;padding:8px 12px;font-size:.8rem}
  .section-nav{position:sticky;inset:auto;z-index:35;width:auto;flex-direction:row;flex-wrap:nowrap;gap:8px;overflow-x:auto;overflow-y:visible;margin:0 -14px 16px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--cream);scrollbar-width:thin}
  .nav-group{position:relative;flex:0 0 auto;margin:0;padding:0;border:1px solid #e5dcd7;border-radius:11px;background:#fff}
  .nav-group summary{padding:9px 30px 9px 11px;color:var(--anchor);font-size:.65rem;letter-spacing:.09em;white-space:nowrap}
  .nav-group summary::after{right:10px}
  .nav-group[open]{z-index:40}
  .nav-group a{padding:9px 11px;color:var(--ink);font-size:.8rem;white-space:nowrap}
  .nav-group a[href="#les-demandes"]{background:var(--sand);color:var(--anchor)}
  .nav-group a:not([href="#les-demandes"]):hover,.nav-group a:not([href="#les-demandes"]):focus-visible{background:rgba(93,10,20,.08);color:var(--anchor)}
  .nav-group[open] a{display:block}
  .nav-group[open] a.owner-only{display:none}
  body.is-owner .nav-group[open] a.owner-only{display:block}
  #dashboard .section-box,#dashboard>.panel{margin-top:14px;padding:19px 15px;border-radius:16px}
  #dashboard .section-heading h2,#dashboard>.panel>h2{font-size:1.2rem}
  #dashboard .toolbar{align-items:stretch;padding:12px}
  #dashboard .toolbar select{min-width:0;width:100%}
  #dashboard .toolbar .count{width:100%;margin:0 4px}
  #dashboard .admin-table-wrap{margin-inline:-2px;width:calc(100% + 4px)}
  #dashboard .admin-table{min-width:640px}
  #dashboard .admin-table tbody td{padding:11px 12px}
  #dashboard #block-form{padding:14px}
  #dashboard .admin-messaging-layout{grid-template-columns:minmax(0,1fr)}
  footer{margin-left:0;padding:18px 14px 26px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Charte PawkeDog: exact brand palette, rounded titles, warm cream workspace */
:root{--anchor:#5d0a14;--anchor-deep:#39050d;--coral:#fe7e80;--sand:#fee8b9;--harmony:#426242;--sky:#bde5fe;--ink:#24171a;--cream:#fffaf5;--white:#fff;--line:rgba(93,10,20,.16);--shadow:0 18px 50px rgba(57,5,13,.1);--font-heading:"Ambit","DM Sans",sans-serif;--font-body:"DM Sans",sans-serif}
body{background:var(--cream);color:var(--ink);font-family:var(--font-body)}
.topbar,.section-nav{background:var(--anchor-deep)}
.topbar-link{background:var(--sand);color:var(--anchor);border-color:transparent}
.topbar-link:hover{background:var(--coral);color:var(--anchor)}
.topbar-right p{color:var(--sand)}
.nav-group summary{font-family:var(--font-heading)}
.nav-group a[href="#les-demandes"]{background:var(--sand);color:var(--anchor)}
.nav-group a:hover,.nav-group a:focus-visible{background:rgba(254,126,128,.2);color:#fff}
#dashboard .dashboard-heading h1,#dashboard .section-heading h2,#dashboard>.panel>h2,#dashboard h3{font-family:var(--font-heading);color:var(--anchor)}
#dashboard .dashboard-heading .eyebrow{color:var(--harmony)}
#dashboard .section-box,#dashboard>.panel{background:var(--white);border-color:var(--line);box-shadow:0 5px 18px rgba(57,5,13,.04)}
#dashboard .toolbar,#dashboard #block-form{border-color:var(--line);background:#fff8eb}
#dashboard .admin-table thead th{background:#fff1cf;color:var(--anchor);border-bottom-color:var(--line)}
#dashboard .button-primary{background:var(--anchor)}
#dashboard .button-primary:hover{background:var(--anchor-deep)}
#dashboard .button-outline,#logout-button{border-color:var(--line);color:var(--anchor)}
#dashboard .button-outline:hover,#logout-button:hover{background:#fff1cf}
#dashboard input:focus-visible,#dashboard select:focus-visible,#dashboard textarea:focus-visible,#dashboard button:focus-visible,#dashboard a:focus-visible,.section-nav a:focus-visible{outline-color:var(--coral)}
.modal{background:rgba(57,5,13,.48);backdrop-filter:blur(3px)}
.modal-panel{border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 70px rgba(57,5,13,.22)}
@media(max-width:680px){.section-nav{background:var(--cream)}.nav-group summary{color:var(--anchor)}.nav-group a[href="#les-demandes"]{background:var(--sand);color:var(--anchor)}}
.brand{background:var(--sand);border-radius:14px}
.nav-group a{background:transparent;color:#fffaf5}
.nav-group a[href="#les-demandes"]{background:var(--sand);color:var(--anchor)}
.nav-group a:not([href="#les-demandes"]):hover,.nav-group a:not([href="#les-demandes"]):focus-visible{background:rgba(254,126,128,.2);color:#fff}
@media(max-width:680px){.nav-group a{background:transparent;color:var(--ink)}.nav-group a[href="#les-demandes"]{background:var(--sand);color:var(--anchor)}.nav-group a:not([href="#les-demandes"]):hover,.nav-group a:not([href="#les-demandes"]):focus-visible{background:rgba(93,10,20,.08);color:var(--anchor)}}

/* Owner feedback: compact responsive header navigation and consistent admin chips */
body{overflow-x:hidden}
.topbar{position:sticky;inset:auto;top:0;z-index:50;display:flex;width:100%;height:auto;min-height:0;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:10px;margin:0;padding:12px clamp(16px,3vw,40px);border:0;border-bottom:1px solid var(--line);background:var(--cream);box-shadow:0 5px 18px rgba(57,5,13,.06)}
.topbar-main{display:flex;align-items:center;gap:18px;min-width:0}
.brand{display:flex;flex:0 1 210px;align-items:center;min-width:0;min-height:0;padding:0;background:transparent;border-radius:0}
.brand-logo{display:block;width:auto;height:auto;max-width:100%;max-height:44px;object-fit:contain;object-position:left center}
.topbar-right{display:flex;flex:1 1 auto;align-items:center;justify-content:flex-end;gap:10px;width:auto;margin:0}
.topbar-right p{margin:0;color:var(--harmony);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.topbar-link{padding:8px 12px;background:var(--sand);color:var(--anchor);font-size:.82rem;white-space:nowrap}
.topbar .button{min-height:38px;padding:7px 13px;border:1px solid var(--line);background:#fff;color:var(--anchor);font-size:.82rem;white-space:nowrap}
.topbar .button:hover{background:var(--sand)}
.section-nav{position:static;inset:auto;z-index:auto;display:flex;width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:6px;overflow:visible;margin:0;padding:0;background:transparent}
.nav-group{position:relative;flex:0 0 auto;margin:0;padding:0;border:0;border-radius:10px;background:transparent}
.nav-group summary{padding:8px 12px;border-radius:10px;color:var(--anchor);font:700 .82rem/1.3 var(--font-heading);letter-spacing:0;text-transform:none;cursor:pointer}
.nav-group summary:hover,.nav-group[open] summary{background:var(--sand);color:var(--anchor)}
.nav-group summary::after{position:static;display:inline-block;margin-left:8px;content:"⌄";font-size:.8rem;line-height:1}
.nav-group[open] summary::after{content:"⌃"}
.nav-dropdown{position:absolute;top:calc(100% + 6px);left:0;z-index:70;display:none;min-width:230px;max-width:min(320px,calc(100vw - 32px));padding:7px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 14px 36px rgba(57,5,13,.14)}
.nav-group[open] .nav-dropdown{display:grid;gap:2px}
.nav-dropdown a,.nav-direct{display:block;margin:0;padding:9px 11px;border-radius:9px;background:transparent;color:var(--anchor);font-size:.83rem;font-weight:600;line-height:1.35;text-decoration:none;white-space:normal}
.nav-dropdown a:hover,.nav-dropdown a:focus-visible,.nav-direct:hover,.nav-direct:focus-visible{background:#fff1cf;color:var(--anchor)}
.nav-dropdown a.owner-only,.nav-direct.owner-only{display:none}
body.is-owner .nav-dropdown a.owner-only,body.is-owner .nav-direct.owner-only{display:block}
.nav-direct{flex:0 0 auto;padding:8px 12px}
.page-shell{width:min(calc(100% - 32px),1480px);max-width:none;min-height:calc(100vh - 190px);margin:28px auto 48px;padding:0 clamp(0px,1.5vw,20px)}
#dashboard:not([hidden]){max-width:none;margin:0 auto}
#dashboard .dashboard-heading{align-items:flex-start;gap:20px;padding:4px 0 22px;border-bottom:1px solid var(--line)}
#dashboard .dashboard-heading h1{color:var(--anchor);font-family:var(--font-heading)}
#dashboard .dashboard-heading .intro{max-width:720px}
#dashboard .section-box,#dashboard>.panel{scroll-margin-top:170px}
footer{margin:0;padding:20px max(16px,calc((100vw - 1440px)/2));border-top:1px solid var(--line)}
.status-control{display:block;min-width:0}
.status-control select{width:100%;min-width:116px;min-height:38px}
.request-summary{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.request-summary>span:last-child{color:var(--ink);font-size:.88rem;font-weight:500}
.request-service-name{color:var(--anchor);font-weight:650}
.chip,.button.dog-btn.chip{display:inline-flex;min-height:26px;height:26px;align-items:center;justify-content:center;padding:0 10px;border:0;border-radius:999px;font:600 .72rem/1 var(--font-body);letter-spacing:.01em;white-space:nowrap}
.chip-client{background:var(--coral);color:var(--anchor)}
.chip-guild{background:var(--sand);color:var(--anchor)}
.chip-owner{background:var(--harmony);color:#fff}
.chip-none{border:1px solid var(--line);background:#fff;color:var(--anchor)}
.chip-dog{background:var(--sky);color:var(--anchor)}
.chip-service-education{background:var(--harmony);color:#fff}
.chip-service-petsitting{background:var(--sky);color:var(--anchor)}
.button.dog-btn.chip{margin:2px 0 0;box-shadow:none;cursor:pointer}
.button.dog-btn.chip:disabled{opacity:.65;cursor:not-allowed}
.role-chips{align-items:center;gap:6px;margin:0}
.chip-service{font-weight:700}
.dog-info{display:block;margin-bottom:4px}
@media(max-width:760px){
  .topbar{gap:8px;padding:9px 12px}
  .topbar-main{gap:8px}
  .brand{flex:0 1 clamp(88px,27vw,150px);max-width:150px}
  .brand-logo{max-height:38px;max-width:100%;width:auto;height:auto}
  .topbar-right{gap:6px}
  .topbar-right p{display:none}
  .topbar-link{padding:7px 9px;font-size:.72rem}
  .topbar .button{min-height:34px;padding:6px 9px;font-size:.72rem}
  .section-nav{justify-content:flex-start;gap:3px}
  .nav-group summary,.nav-direct{padding:7px 9px;font-size:.76rem}
  .nav-dropdown{min-width:220px;max-width:calc(100vw - 24px)}
  .nav-group:nth-of-type(n+2) .nav-dropdown{right:0;left:auto}
  .page-shell{width:100%;min-height:0;margin:18px auto 34px;padding:0 14px}
  #dashboard .dashboard-heading{padding:4px 0 17px}
  #dashboard .dashboard-heading h1{font-size:1.85rem}
  #dashboard .section-box,#dashboard>.panel{scroll-margin-top:128px}
  #dashboard .admin-table-wrap{margin-inline:0;width:100%}
  #dashboard .admin-table{min-width:640px}
  #dashboard .admin-table tbody td{padding:10px 11px}
  #dashboard .admin-messaging-layout{grid-template-columns:minmax(0,1fr)}
  footer{padding:18px 14px 26px}
}
@media(max-width:380px){
  .topbar{padding-inline:9px}
  .brand{flex-basis:clamp(76px,25vw,96px)}
  .topbar-main{gap:6px}
  .topbar-right{gap:4px}
  .topbar-link{padding:6px 7px;font-size:.68rem}
  .topbar .button{padding:5px 7px;font-size:.68rem}
  .nav-group summary,.nav-direct{padding-inline:7px;font-size:.72rem}
}

/* Owner feedback: keep the complete admin header on one shared navigation row */
.topbar{flex-direction:row;align-items:center;gap:clamp(14px,2vw,28px)}
.topbar>.brand{flex:0 0 auto;width:clamp(112px,12vw,168px);max-width:none}
.topbar>.brand .brand-logo{width:100%;max-height:46px}
.section-nav{flex:1 1 auto;min-width:0;align-items:center;gap:clamp(2px,.55vw,9px);margin:0;padding:0}
.topbar-right,.topbar-main{display:contents}
.topbar-right p{display:none}
.nav-actions.owner-only{display:none;align-items:center;justify-content:flex-end;gap:8px;margin-left:auto}
body.is-owner .nav-actions.owner-only{display:flex}
.nav-actions .topbar-link,.nav-actions .button{margin:0}
.section-nav .nav-direct{white-space:nowrap}
.admin-thread-attach{position:relative}
.admin-thread-attach input[type=file]{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.admin-thread-attach:focus-within{outline:3px solid var(--coral);outline-offset:2px}
.admin-thread-attach .material-symbols-outlined{font-family:"Material Symbols Outlined";font-size:1.25rem;font-weight:normal;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;font-feature-settings:"liga";-webkit-font-smoothing:antialiased}
@media(max-width:980px){
  .topbar{align-items:flex-start;flex-wrap:wrap;gap:7px 14px}
  .topbar>.brand{width:clamp(112px,22vw,150px)}
  .section-nav{flex-basis:100%;order:2}
  .nav-actions.owner-only{margin-left:auto}
}
.admin-table details .questionnaire-answer-group{margin:14px 0 0;padding-top:10px;border-top:1px solid var(--line)}
.admin-table details .questionnaire-answer-group h4{margin:0 0 7px;color:var(--anchor);font:700 .86rem/1.35 var(--font-heading)}
.admin-table details .questionnaire-answer-group dl{display:grid;grid-template-columns:minmax(115px,.8fr) minmax(0,1.2fr);gap:5px 12px;margin:0}
.admin-table details .questionnaire-answer-group dt{color:#715a5e;font-size:.78rem;font-weight:700}
.admin-table details .questionnaire-answer-group dd{margin:0;color:var(--ink);font-size:.82rem;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:760px){.admin-table details .questionnaire-answer-group dl{grid-template-columns:minmax(0,1fr);gap:2px}.admin-table details .questionnaire-answer-group dd{margin-bottom:7px}}
@media(max-width:760px){
  .topbar{align-items:center}
  .topbar>.brand{width:clamp(88px,27vw,130px)}
  .section-nav{order:2;flex:1 0 100%;flex-wrap:wrap}
  .nav-actions.owner-only{margin-left:auto}
}
