/* FDS ASANAM 1.0.20 — provider UI only. No calendar/filter selectors. */
.fds-provider-portal,
.fds-provider-account-card {
 --fp-ink:#29251f; --fp-text:#514b42; --fp-muted:#71685d;
 --fp-border:#e6dacc; --fp-soft:#fbf8f2; --fp-accent:#f2a100; --fp-dark:#724500;
 --asanam-ink:var(--fp-ink); --asanam-text:var(--fp-text); --asanam-muted:var(--fp-muted);
 --asanam-surface:#fff; --asanam-border:var(--fp-border); --asanam-radius-lg:20px;
 --asanam-shadow-sm:0 12px 34px rgba(56,42,21,.05);
 color:var(--fp-text); font-family:inherit; font-size:16px; line-height:1.65;
 text-align:left; max-width:1160px; margin:0 auto 64px; min-width:0;
}
.fds-provider-portal *, .fds-provider-account-card * { box-sizing:border-box; }
body.fds-asanam-provider-page #main-content { background:linear-gradient(135deg,#fbf7ef 0,#fff 48%); }
body.fds-asanam-provider-page #main-content .container { max-width:1280px!important; }
/* Hide only title nodes explicitly identified next to the local FDS shell. */
body.fds-portal-v23 .fds-duplicate-page-title { display:none!important; }
.fds-provider-toolbar { background:#fff; border:1px solid var(--fp-border); border-radius:18px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 24px; margin:0 0 28px; }
.fds-provider-identity { display:flex; align-items:center; gap:12px; min-width:0; }
.fds-provider-identity > div { min-width:0; }
.fds-provider-identity strong { color:var(--fp-ink); display:block; line-height:1.35; font-size:17px; overflow-wrap:anywhere; }
.fds-provider-eyebrow { color:var(--fp-dark); display:block; font-size:12px; font-weight:750; text-transform:uppercase; letter-spacing:.09em; margin:0 0 4px; }
.fds-provider-account-label { display:block; color:var(--fp-muted); font-size:13px; overflow-wrap:anywhere; }
.fds-provider-avatar { width:42px; height:42px; border:1px solid #f0d399; border-radius:50%; color:var(--fp-dark); background:#fff5de; flex:none; display:flex; align-items:center; justify-content:center; }
.fds-provider-nav { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.fds-provider-portal a.fds-provider-nav-link,
.fds-provider-account-card a.fds-provider-nav-link { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 14px; border:1px solid var(--fp-border); background:#fff; border-radius:9px; color:var(--fp-ink); font-size:13px; font-weight:700; line-height:1.4; text-decoration:none; }
.fds-provider-portal a.fds-provider-nav-link.is-primary,
.fds-provider-account-card a.fds-provider-nav-link.is-primary { background:var(--fp-accent); border-color:var(--fp-accent); color:#211807; }
.fds-provider-portal a.fds-provider-nav-link.is-current,
.fds-provider-account-card a.fds-provider-nav-link.is-current { background:#fff5de; border-color:#d6aa64; }
.fds-provider-portal a.fds-provider-nav-link:hover,
.fds-provider-account-card a.fds-provider-nav-link:hover { background:#fff2d2; border-color:#bf934c; }
.fds-provider-portal a.fds-provider-logout,
.fds-provider-account-card a.fds-provider-logout { display:inline-flex; align-items:center; min-height:44px; color:var(--fp-muted); font-size:13px; font-weight:600; padding:8px; text-decoration:underline; text-underline-offset:3px; }
.fds-provider-heading { margin:0 0 28px; padding:0; background:transparent; }
.fds-provider-heading h1 { font-size:clamp(28px,3.5vw,42px)!important; line-height:1.15; color:var(--fp-ink)!important; font-family:inherit!important; font-weight:750; letter-spacing:-.035em; margin:0 0 14px; padding:0; overflow-wrap:anywhere; }
.fds-provider-heading > p:last-child { margin:0; padding:0; color:var(--fp-muted); max-width:840px; }
.fds-provider-panel { border:1px solid var(--fp-border); border-radius:22px; background:#fff; padding:clamp(18px,3vw,32px); box-shadow:0 18px 44px rgba(60,42,18,.055); position:relative; min-width:0; }
.fds-provider-panel::before { content:""; position:absolute; left:22px; right:22px; top:0; height:3px; border-radius:3px; background:linear-gradient(90deg,var(--fp-accent),#ffe0a0,transparent); }
.fds-provider-content { min-width:0; }
.fds-provider-content .asanam-event-submission { padding:0; border:0; box-shadow:none; border-radius:0; margin:0; max-width:none; }
.fds-provider-content .asanam-event-submission > h2.fds-provider-duplicate-heading { display:none; }
.fds-provider-content #em-wrapper, .fds-provider-content .em { max-width:100%; min-width:0; }
.fds-provider-content h2, .fds-provider-content h3 { color:var(--fp-ink)!important; font-size:clamp(21px,2.2vw,28px); font-weight:700; font-family:inherit; line-height:1.25; letter-spacing:-.02em; margin:28px 0 16px; padding:0; }
.fds-provider-content h4 { color:var(--fp-ink); font-family:inherit; font-size:20px; font-weight:700; line-height:1.35; }
.fds-provider-content p { padding-bottom:0; }
.fds-provider-content .em-notice, .fds-provider-content .em-warning, .fds-provider-content .em-notice-success { background:#eef8f0; color:#20543a; border:1px solid #b8dcc1; border-radius:10px; padding:16px 18px; margin:0 0 22px; }
.fds-provider-content .em-error, .fds-provider-content .em-notice-error, .fds-provider-content .em-warning { background:#fff3ed; border-color:#e9b899; color:#833a13; }
.fds-provider-content .em-notice a, .fds-provider-content .em-error a { color:inherit; text-decoration:underline; }
.fds-provider-content .subsubsub { float:none!important; display:flex; flex-wrap:wrap; gap:6px; margin:0 0 16px; padding:0!important; list-style:none; align-items:center; }
.fds-provider-content .subsubsub li { display:inline-flex; align-items:center; margin:0; padding:0; }
.fds-provider-content .subsubsub a { display:inline-flex; align-items:center; min-height:44px; padding:8px 12px; color:var(--fp-text); border:1px solid var(--fp-border); background:var(--fp-soft); border-radius:9px; text-decoration:none; font-size:14px; }
.fds-provider-content .subsubsub a > span { margin-left:4px; }
.fds-provider-content .fds-provider-list-search { display:flex; align-items:center; gap:8px; max-width:680px; margin:14px 0; }
.fds-provider-content .fds-provider-list-search input:not([type=submit]):not([type=hidden]) { flex:1 1 220px; width:220px; }
.fds-provider-content .fds-provider-list-search input[type=submit] { width:auto; flex:none; }
.fds-provider-content .subsubsub a.current { background:#fff1cf; border-color:#d2a151; color:#674000; font-weight:700; }
.fds-provider-content input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=file]),
.fds-provider-content select,
.fds-provider-content textarea { box-sizing:border-box; color:var(--fp-ink); background:#fff; border:1px solid #cfc6bb; border-radius:8px; max-width:100%; min-width:0; min-height:44px; padding:10px 12px; font:inherit; font-size:16px; line-height:1.4; box-shadow:none; }
.fds-provider-content input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=file]) { width:100%; }
.fds-provider-content select { width:100%; }
.fds-provider-content textarea { width:100%; min-height:180px; resize:vertical; }
.fds-provider-content input[name*=time]:not([type=hidden]):not([type=checkbox]),
.fds-provider-content input[name*=duration]:not([type=hidden]),
.fds-provider-content input[name*=buffer]:not([type=hidden]),
.fds-provider-content input[name*=frequency]:not([type=hidden]),
.fds-provider-content .em-time-input { width:112px!important; display:inline-block; }
.fds-provider-content input[type=file] { display:block; max-width:100%; width:100%; min-width:0; margin:8px 0; font-size:14px; }
.fds-provider-content input[type=checkbox], .fds-provider-content input[type=radio] { width:17px; height:17px; min-height:17px; flex:none; accent-color:#ab7100; margin:2px 4px 0 0; }
.fds-provider-content label { line-height:1.5; }
.fds-provider-content .description, .fds-provider-content .asanam-form-help { color:var(--fp-muted); line-height:1.5; font-size:14px; margin:5px 0 12px; }
.fds-provider-content a.button, .fds-provider-content button:not(.mce-open):not(.mce-close),
.fds-provider-content input[type=submit], .fds-provider-content input[type=button] { color:var(--fp-dark); background:#fff7e5; border:1px solid #d6b77f; min-height:44px; border-radius:8px; box-shadow:none; padding:10px 16px; font-family:inherit; font-size:14px; line-height:1.45; text-decoration:none; white-space:normal; cursor:pointer; max-width:100%; }
.fds-provider-content .fds-provider-submit-button { background:var(--fp-accent)!important; border-color:var(--fp-accent)!important; color:#231900!important; font-size:16px!important; font-weight:700!important; padding:13px 22px!important; margin-top:16px; }
.fds-provider-content .mce-tinymce { border:1px solid var(--fp-border); border-radius:8px; overflow:hidden; }
.fds-provider-content .mce-container button { min-height:0!important; padding:2px!important; border:0!important; border-radius:0!important; font-size:14px!important; background:transparent!important; box-shadow:none!important; }
.fds-provider-content .mce-container input { width:auto; }
.fds-provider-content .asanam-submission-fields { border-color:var(--fp-border); border-radius:14px; padding:22px; margin-top:32px; }
.fds-provider-content .asanam-submission-fields legend { color:var(--fp-dark); font-size:19px; padding:0 8px; font-weight:750; }
.fds-provider-content .asanam-admin-grid { gap:22px 24px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.fds-provider-content .asanam-admin-field { min-width:0; }
.fds-provider-content .asanam-field-label, .fds-provider-content .asanam-admin-field > label { color:var(--fp-ink); font-size:16px; font-weight:650; }
.fds-provider-content .asanam-option-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin-top:10px; }
.fds-provider-content .asanam-option-grid label { display:flex; gap:6px; align-items:flex-start; background:var(--fp-soft); padding:9px 10px; min-height:42px; border:1px solid var(--fp-border); border-radius:7px; font-size:14px; font-weight:400; margin:0; cursor:pointer; overflow-wrap:anywhere; }
.fds-provider-content .asanam-option-grid label:has(input:checked) { background:#fff3d6; border-color:#d6b26e; }
.fds-provider-content .asanam-focus-groups { max-height:420px; overflow:auto; padding:0 3px 6px 0; scrollbar-width:thin; }
.fds-provider-content .asanam-focus-group { min-width:0; padding:8px 0 4px; border:0; margin:0 0 10px; }
.fds-provider-content .asanam-focus-group legend { font-size:14px; letter-spacing:.02em; padding:0; }
.fds-provider-content .asanam-focus-group.has-mismatch { padding:10px; background:#fff1e6; border:1px solid #e5b88d; border-radius:8px; }
.fds-provider-content [hidden] { display:none!important; }
.fds-provider-content .asanam-submission-advanced { border-top:1px solid var(--fp-border); margin:24px 0 0; padding:16px 0 0; }
.fds-provider-content .asanam-submission-advanced > summary { color:var(--fp-dark); cursor:pointer; min-height:44px; font-weight:700; padding:8px 0; margin-bottom:12px; }
.fds-provider-content .asanam-provider-fields { margin-top:24px; padding-top:22px; }
.fds-provider-content .asanam-provider-fields h4 { margin:0 0 20px; }
.fds-provider-content .fds-provider-field-help { color:var(--fp-muted); font-size:13px; line-height:1.5; margin:8px 0 16px; }
.fds-provider-content .fds-provider-url-help { display:block; color:var(--fp-muted); font-size:13px; margin:8px 0 0; }
.fds-provider-content .fds-provider-url-help.is-error { color:#8b2e18; font-weight:600; }
.fds-provider-content .fds-provider-event-table { border:1px solid var(--fp-border); border-spacing:0; border-collapse:separate; border-radius:12px; width:100%!important; table-layout:auto; margin:22px 0; overflow:hidden; font-size:15px; }
.fds-provider-content .fds-provider-event-table th { background:var(--fp-soft); color:var(--fp-muted); padding:14px 16px; font-size:13px; font-weight:650; text-align:left; border:0; }
.fds-provider-content .fds-provider-event-table td { border:0; border-top:1px solid var(--fp-border); padding:18px 16px; vertical-align:middle; overflow-wrap:anywhere; }
.fds-provider-content .fds-provider-event-table td:first-child { width:52%; }
.fds-provider-content .fds-provider-event-table td a { color:var(--fp-dark); text-underline-offset:3px; }
.fds-provider-content .fds-provider-event-table td:first-child > a { font-weight:700; }
.fds-provider-portal :where(a,button,input,select,textarea,summary):focus-visible,
.fds-provider-account-card :where(a,button):focus-visible { outline:3px solid #916114!important; outline-offset:3px; box-shadow:0 0 0 5px #fff5db; }
.fds-provider-portal :where(input,select,textarea,summary,a,button) { scroll-margin-top:calc(var(--fds-asanam-document-header-offset,130px) + 18px); }
.fds-provider-account-card { max-width:100%; border:1px solid var(--fp-border); border-radius:16px; background:var(--fp-soft); padding:22px; margin:26px 0; }
.fds-provider-account-card .fds-provider-toolbar { padding:0; background:none; border:0; margin:0 0 20px; }
.fds-provider-account-card h2 { font-size:24px; color:var(--fp-ink); line-height:1.25; }
@media (max-width:1100px) {
 .fds-provider-toolbar { align-items:flex-start; flex-direction:column; gap:16px; }
}
@media (max-width:680px) {
 .fds-provider-portal { margin-bottom:40px; }
 .fds-provider-toolbar { padding:18px; border-radius:14px; }
 .fds-provider-nav { width:100%; }
 .fds-provider-nav .fds-provider-nav-link { flex:1 1 45%; }
 .fds-provider-nav .fds-provider-logout { padding-left:0; }
 .fds-provider-content .fds-provider-list-search { flex-wrap:wrap; }
 .fds-provider-panel { padding:18px 14px; border-radius:16px; }
 .fds-provider-content .asanam-submission-fields { padding:14px 12px; }
 .fds-provider-content .asanam-admin-grid { grid-template-columns:minmax(0,1fr); gap:20px; }
 .fds-provider-content .fds-provider-event-table, .fds-provider-content .fds-provider-event-table tbody { display:block; }
 .fds-provider-content .fds-provider-event-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
 .fds-provider-content .fds-provider-event-table tr { display:block; padding:12px; border-top:1px solid var(--fp-border); }
 .fds-provider-content .fds-provider-event-table tbody tr:first-child { border-top:0; }
 .fds-provider-content .fds-provider-event-table td { display:block; width:100%!important; padding:6px 0; border:0; }
 .fds-provider-content .fds-provider-event-table td[data-fds-label]:not(:first-child)::before { content:attr(data-fds-label) ": "; font-size:13px; font-weight:650; color:var(--fp-muted); }
 .fds-provider-content .fds-provider-event-table td:empty { display:none; }
 .fds-provider-content input[type=submit], .fds-provider-content .fds-provider-submit-button { width:100%; }
}
@media (max-width:380px) {
 .fds-provider-toolbar { padding:14px; }
 .fds-provider-identity { gap:9px; }
 .fds-provider-identity strong { font-size:16px; }
 .fds-provider-content .asanam-option-grid { grid-template-columns:minmax(0,1fr); }
}
@media (prefers-reduced-motion:reduce) {
 .fds-provider-portal *, .fds-provider-account-card * { scroll-behavior:auto!important; animation:none!important; transition:none!important; }
}

/* v1.0.22: stored status and completeness are two distinct facts. */
.fds-provider-portal .fds-provider-event-state { display:flex; flex-wrap:wrap; gap:.35rem; margin:0 0 .55rem; font-size:.78rem; line-height:1.4; }
.fds-provider-portal .fds-provider-status { display:inline-block; border:1px solid #d8d3cc; border-radius:999px; background:#f6f3ef; color:#4e463c; padding:.28rem .65rem; font-weight:700; }
.fds-provider-portal .fds-provider-status.is-pending { background:#fff3d6; border-color:#e9b957; color:#754300; }
.fds-provider-portal .fds-provider-status.is-publish { background:#edf6ef; border-color:#a5c8b0; color:#245333; }
.fds-provider-portal .fds-provider-completeness { display:inline-flex; align-items:center; padding:.28rem .4rem; color:#526257; }
.fds-provider-portal .fds-provider-completeness.is-incomplete { color:#8b4116; font-weight:650; }
.fds-provider-portal .fds-provider-status-panel { border:1px solid #e8d4b0; border-radius:12px; padding:1rem; background:#fffaf1; margin:0 0 1.5rem; }
.fds-provider-portal .fds-provider-status-panel .fds-provider-event-state { margin:.6rem 0; }
.fds-provider-portal .fds-provider-status-panel p,.fds-provider-portal .fds-provider-view-note { margin:.5rem 0 1rem; font-size:.86rem; line-height:1.6; }
.fds-provider-portal .fds-provider-view-scope .subsubsub a.current { border-color:#e8ded1; background:#fff; font-weight:400; }
.fds-provider-portal .fds-provider-view-scope .subsubsub a.fds-current-view { border-color:#da9900; background:#fff4da; color:#603c05; font-weight:700; }
.fds-provider-portal .fds-provider-event-table td { min-width:0; overflow-wrap:anywhere; }
@media(max-width:640px){
 .fds-provider-portal .fds-provider-event-table td:empty { display:none; }
 .fds-provider-portal .fds-provider-status-panel { padding:.85rem; }
}

/* Native editor controls are consolidated in editor.css (v1.0.29). */

/* v1.0.30: saved-state validation reasons, always visible in the protected UI.
   No hover, script, disclosure control, truncation or additional form fields. */
html body .fds-provider-portal .fds-provider-readiness-issues {
 display:block; max-width:100%; min-width:0; margin:.65rem 0 .9rem;
 padding:.8rem 1rem; border-left:3px solid #bd7131; border-radius:0 8px 8px 0;
 background:#fff5eb; color:#78390e; font-size:.9rem; line-height:1.55;
 text-align:left; white-space:normal; overflow-wrap:anywhere;
}
html body .fds-provider-portal .fds-provider-readiness-issues > strong {
 display:block; margin:0 0 .35rem; font-size:inherit; line-height:inherit;
}
html body .fds-provider-portal .fds-provider-readiness-issues > ul {
 display:block; list-style:disc outside!important; margin:0!important;
 padding:0 0 0 1.2em!important; font-size:inherit; line-height:inherit;
}
html body .fds-provider-portal .fds-provider-readiness-issues > ul > li {
 display:list-item; margin:.3rem 0; padding:0; white-space:normal;
 overflow-wrap:anywhere; font-size:inherit; line-height:inherit;
}
html body .fds-provider-portal .fds-provider-readiness-issues > ul > li:last-child { margin-bottom:0; }
html body .fds-provider-portal .fds-provider-status-panel .fds-provider-readiness-saved-note { color:var(--fp-muted,#71685d); }
@media(max-width:380px) {
 html body .fds-provider-portal .fds-provider-readiness-issues { padding:.7rem .75rem; }
}
