@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url("../fonts/manrope-400.ttf") format("truetype");
}

@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: url("../fonts/manrope-500.ttf") format("truetype");
}

@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url("../fonts/manrope-600.ttf") format("truetype");
}

@font-face {
    font-family: "Manrope";
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url("../fonts/manrope-700.ttf") format("truetype");
}

:root {
    --color-black: #111111;
    --color-graphite: #1a1a1a;
    --color-gold: #d2ad58;
    --color-gold-dark: #a98436;
    --color-ivory: #f7f2e9;
    --color-white: #ffffff;
    --color-gray-light: #e8e3da;
    --color-text-reference: #767676;
    --color-text: #616161;
    --color-success: #2e7d5b;
    --color-warning: #c99024;
    --color-danger: #b64949;
    --color-alert: var(--color-danger);
    --shadow-soft: 0 20px 50px rgb(17 17 17 / 8%);
    --radius-sm: 10px;
    --radius-md: 18px;
    --radius-lg: 28px;
    --sidebar-width: 270px;
    --font-title: "Manrope", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-body: "Manrope", ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Cada peça de lavanderia possui vínculo, descrição, quantidade e valor unitário. */
body .laundry-row {
    grid-template-columns: 36px minmax(190px, 2fr) minmax(150px, 1fr) minmax(110px, .55fr) minmax(120px, .7fr);
}

@media (max-width: 780px) {
    body .laundry-row { grid-template-columns: 1fr; }
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
    margin: 0;
    background: var(--color-ivory);
    color: var(--color-black);
    font-family: var(--font-body);
    line-height: 1.5;
}

a { color: inherit; }

.skip-link {
    position: fixed;
    z-index: 100;
    top: 12px;
    left: 12px;
    padding: 10px 16px;
    border-radius: 6px;
    background: var(--color-white);
    color: var(--color-black);
    transform: translateY(-150%);
}

.skip-link:focus { transform: translateY(0); }

.app-shell { min-height: 100vh; }

.sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: var(--sidebar-width);
    display: flex;
    flex-direction: column;
    padding: 34px 24px;
    background:
        radial-gradient(circle at 10% 95%, rgb(210 173 88 / 14%), transparent 30%),
        var(--color-black);
    color: var(--color-white);
}

.brand {
    display: flex;
    align-items: center;
    gap: 13px;
    color: var(--color-white);
    text-decoration: none;
    letter-spacing: .18em;
}

.brand span { display: grid; line-height: 1.1; }
.brand strong { font-size: .9rem; font-weight: 600; }
.brand small { margin-top: 4px; color: var(--color-gold); font-size: .58rem; letter-spacing: .42em; }
.sidebar__nav { flex: 1; min-height: 0; margin-top: 60px; margin-bottom: 20px; overflow-y: auto; }
.menu-sidebar {
    overflow-y: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    -webkit-overflow-scrolling: touch;
}
.menu-sidebar::-webkit-scrollbar { display: none; width: 0; height: 0; }
.nav-section + .nav-section { margin-top: 24px; }
.nav-section__title {
    margin: 0 0 9px;
    padding: 0 14px;
    color: var(--color-gold);
    font-size: .6rem;
    font-weight: 750;
    letter-spacing: .13em;
    line-height: 1.45;
}
.nav-section__items { display: grid; gap: 2px; }

.nav-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 13px 14px;
    border-radius: var(--radius-sm);
    color: #c8c8c8;
    font-size: .88rem;
    text-decoration: none;
}

.nav-item--active { background: rgb(255 255 255 / 8%); color: var(--color-white); }
.nav-item__mark { display: none; flex: 0 0 7px; width: 7px; height: 7px; border-radius: 50%; background: var(--color-gold); box-shadow: 0 0 0 5px rgb(210 173 88 / 12%); }
.nav-item--active .nav-item__mark { display: block; }
.nav-group { margin: 2px 0; }
.nav-group__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 14px;
    border-radius: var(--radius-sm);
    color: #c8c8c8;
    cursor: pointer;
    font-size: .88rem;
    list-style: none;
}
.nav-group__toggle::-webkit-details-marker { display: none; }
.nav-group__toggle::marker { content: ""; }
.nav-group__toggle:hover, .nav-group__toggle:focus-visible { background: rgb(255 255 255 / 5%); color: var(--color-white); }
.nav-group__toggle:focus-visible { outline: 3px solid var(--color-gold); outline-offset: -1px; }
.nav-group__chevron { color: var(--color-gold); font-size: 1rem; transition: transform .2s ease; }
.nav-group[open] .nav-group__chevron { transform: rotate(180deg); }
.nav-group--active > .nav-group__toggle { background: rgb(210 173 88 / 10%); color: var(--color-white); }
.nav-group__items { display: grid; gap: 2px; margin: 2px 0 8px 13px; padding-left: 10px; border-left: 1px solid rgb(210 173 88 / 32%); }
.nav-item--child { padding: 10px 12px; font-size: .81rem; }
.sidebar__footer { margin-top: auto; color: #777; font-size: .82rem; }
.sidebar__footer p { font-family: var(--font-title); font-size: .92rem; }
.sidebar__footer form { margin-top: 8px; }
.text-button { padding: 0; border: 0; background: transparent; color: var(--color-gold); cursor: pointer; font: inherit; }
.workspace { min-height: 100vh; margin-left: var(--sidebar-width); }

.topbar {
    min-height: 92px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 20px clamp(24px, 4vw, 60px);
    border-bottom: 1px solid var(--color-gray-light);
    background: rgb(247 242 233 / 90%);
    backdrop-filter: blur(14px);
}

.topbar > div { display: grid; gap: 4px; }
.eyebrow { color: var(--color-text); font-size: .68rem; font-weight: 700; letter-spacing: .18em; }
.eyebrow--gold { color: var(--color-gold); }

.status-pill, .badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    padding: 7px 11px;
    border: 1px solid #d8d2c7;
    border-radius: 999px;
    background: rgb(255 255 255 / 55%);
    color: #414141;
    font-size: .72rem;
    font-weight: 650;
}

.status-pill span { width: 7px; height: 7px; border-radius: 50%; background: var(--color-success); }
.content { padding: clamp(24px, 4vw, 60px); outline: none; }

.hero-card {
    min-height: 420px;
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(240px, .7fr);
    overflow: hidden;
    border-radius: var(--radius-lg);
    background: var(--color-graphite);
    color: var(--color-white);
    box-shadow: var(--shadow-soft);
}

.hero-card__content { padding: clamp(36px, 6vw, 76px); }
.hero-card h1, .section-heading h2, .error-state h1 {
    margin: 14px 0 20px;
    font-family: var(--font-title);
    font-weight: 400;
    line-height: .98;
}

.hero-card h1 { font-size: clamp(2.8rem, 5vw, 5.4rem); }
.hero-card h1 em { color: var(--color-gold); font-weight: 400; }
.hero-card p { max-width: 660px; color: #bfbfbf; font-size: 1.02rem; }
.hero-card__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }

.button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-height: 46px;
    padding: 0 20px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: .82rem;
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s ease, background-color .2s ease;
}

.button:hover { transform: translateY(-2px); }
.button:focus-visible, a:focus-visible { outline: 3px solid var(--color-gold); outline-offset: 3px; }
.button--gold { background: var(--color-gold); color: var(--color-black); }
.button--gold:hover { background: #e1c170; }
.button--ghost { border-color: #555; color: var(--color-white); }
.hero-card__ornament { display: grid; place-items: center; background: linear-gradient(145deg, #242424, #141414); }

.hero-card__ornament span {
    display: grid;
    place-items: center;
    width: min(18vw, 190px);
    aspect-ratio: 1;
    border: 1px solid rgb(210 173 88 / 55%);
    border-radius: 50%;
    color: var(--color-gold);
    font-family: var(--font-title);
    font-size: clamp(2.2rem, 5vw, 4rem);
}

.section-block { padding: 60px 0 20px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 24px; }
.section-heading h2 { margin-bottom: 0; font-size: clamp(2rem, 3vw, 3.2rem); }
.badge--progress { border-color: rgb(201 144 36 / 35%); background: rgb(201 144 36 / 9%); color: #7a5311; }
.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }

.metric-card {
    min-height: 210px;
    padding: 25px;
    border: 1px solid var(--color-gray-light);
    border-radius: var(--radius-md);
    background: var(--color-white);
    box-shadow: 0 10px 30px rgb(17 17 17 / 4%);
}

.metric-card__index { color: var(--color-gold-dark); font-family: var(--font-title); font-size: 1.35rem; }
.metric-card h3 { margin: 34px 0 8px; font-family: var(--font-title); font-size: 1.35rem; font-weight: 500; }
.metric-card p { margin: 0; color: var(--color-text); font-size: .88rem; }

.dashboard-welcome { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 34px; }
.dashboard-welcome h1 { margin: 10px 0; font-family: var(--font-title); font-size: clamp(2.5rem, 5vw, 5rem); font-weight: 400; line-height: 1; }
.dashboard-welcome p { max-width: 720px; color: var(--color-text); }
.metric-card--number strong { display: block; margin: 26px 0 8px; font-family: var(--font-title); font-size: 3.5rem; font-weight: 400; }

.auth-body { min-height: 100vh; background: var(--color-black); }
.auth-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(380px, .95fr) minmax(440px, 1.05fr); }
.auth-brand-panel { display: flex; flex-direction: column; justify-content: space-between; padding: clamp(34px, 6vw, 80px); background: radial-gradient(circle at 20% 80%, rgb(210 173 88 / 16%), transparent 38%), var(--color-black); color: var(--color-white); }
.auth-brand-panel h1 { margin: 18px 0; font-family: var(--font-title); font-size: clamp(3rem, 6vw, 6.5rem); font-weight: 400; line-height: .92; }
.auth-brand-panel h1 em { color: var(--color-gold); font-weight: 400; }
.auth-brand-panel p { max-width: 540px; color: #aaa; }
.auth-form-panel { display: grid; place-items: center; padding: 32px; border-radius: 34px 0 0 34px; background: var(--color-ivory); }
.auth-form-wrap { width: min(100%, 460px); }
.auth-form-wrap h2 { margin: 12px 0; font-family: var(--font-title); font-size: clamp(2.5rem, 4vw, 4.2rem); font-weight: 400; line-height: 1; }
.auth-form-wrap > p { margin-bottom: 30px; color: var(--color-text); }
.field { display: grid; gap: 8px; margin-bottom: 18px; }
.field label { font-size: .78rem; font-weight: 700; letter-spacing: .05em; }
.field input { width: 100%; min-height: 52px; padding: 0 15px; border: 1px solid #d5cec2; border-radius: 12px; background: var(--color-white); color: var(--color-black); font: inherit; }
.field input:focus { border-color: var(--color-gold-dark); outline: 3px solid rgb(210 173 88 / 20%); }
.field__error { color: var(--color-danger); font-size: .76rem; }
.button--full { width: 100%; margin-top: 6px; border: 0; cursor: pointer; }
.alert { margin: 0 0 20px; padding: 12px 14px; border-radius: 10px; font-size: .84rem; }
.alert--danger { border: 1px solid rgb(182 73 73 / 30%); background: rgb(182 73 73 / 9%); color: #8e3030; }
.alert--success { border: 1px solid rgb(46 125 91 / 30%); background: rgb(46 125 91 / 9%); color: #215c43; }
.auth-link { display: block; margin-top: 18px; color: #735918; font-size: .82rem; font-weight: 700; text-align: center; }
.page-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.page-heading h1 { margin: 7px 0; font-family: var(--font-title); font-size: clamp(2.7rem, 5vw, 5rem); font-weight: 400; line-height: 1; }
.page-heading p { margin: 0; color: var(--color-text); }
.button--dark { border: 0; background: var(--color-black); color: var(--color-white); cursor: pointer; }
.button--outline { border-color: #c8c0b3; }
.button--danger { border-color: var(--color-danger); background: transparent; color: var(--color-danger); cursor: pointer; }
.filter-bar { display: flex; gap: 10px; margin-bottom: 18px; }
.filter-bar input { flex: 1; min-height: 46px; padding: 0 14px; border: 1px solid #d5cec2; border-radius: 12px; background: var(--color-white); font: inherit; }
.table-card, .form-card, .danger-zone { border: 1px solid var(--color-gray-light); border-radius: var(--radius-md); background: var(--color-white); box-shadow: 0 10px 30px rgb(17 17 17 / 4%); }
.table-scroll { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 17px 20px; border-bottom: 1px solid #eee9e1; text-align: left; font-size: .84rem; }
th { color: var(--color-text); font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }
td strong, td small { display: block; }
td small { margin-top: 3px; color: var(--color-text); }
.table-link { color: #725611; font-weight: 700; }
.empty-state { padding: 70px 24px; text-align: center; }
.empty-state h2 { font-family: var(--font-title); font-size: 2rem; font-weight: 400; }
.pagination { display: flex; gap: 7px; margin-top: 20px; }
.pagination a { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid #d5cec2; border-radius: 9px; text-decoration: none; }
.pagination a.is-active { border-color: var(--color-black); background: var(--color-black); color: var(--color-white); }
.form-card { padding: clamp(22px, 4vw, 42px); }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 20px; }
.field select { min-height: 52px; padding: 0 15px; border: 1px solid #d5cec2; border-radius: 12px; background: var(--color-white); font: inherit; }
.field > small:not(.field__error) { color: var(--color-text); font-size: .72rem; }
.role-picker { margin: 24px 0; padding: 20px; border: 1px solid #ddd5c9; border-radius: 14px; }
.role-picker legend { padding: 0 8px; font-family: var(--font-title); font-size: 1.25rem; }
.role-picker > div { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.role-picker label { display: flex; gap: 10px; padding: 12px; border: 1px solid #ebe5dc; border-radius: 10px; cursor: pointer; }
.role-picker label span { display: grid; }
.role-picker label small { color: var(--color-text); }
.form-actions { display: flex; justify-content: flex-end; }
.danger-zone { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 22px; padding: 22px; border-color: rgb(182 73 73 / 25%); }
.danger-zone p { margin: 4px 0 0; color: var(--color-text); font-size: .82rem; }
.role-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.role-card { display: flex; min-height: 260px; flex-direction: column; justify-content: space-between; padding: 24px; border: 1px solid var(--color-gray-light); border-radius: var(--radius-md); background: var(--color-white); }
.role-card h2 { margin: 9px 0; font-family: var(--font-title); font-size: 1.8rem; font-weight: 400; }
.role-card p { color: var(--color-text); font-size: .84rem; }
.role-card dl { display: flex; gap: 24px; margin: 20px 0; }
.role-card dl div { display: grid; }
.role-card dt { color: var(--color-text); font-size: .68rem; text-transform: uppercase; }
.role-card dd { margin: 0; font-family: var(--font-title); font-size: 1.8rem; }
.permission-groups { display: grid; gap: 16px; margin: 24px 0; }
.permission-groups fieldset { padding: 18px; border: 1px solid #ddd5c9; border-radius: 14px; }
.permission-groups legend { padding: 0 8px; font-family: var(--font-title); font-size: 1.25rem; }
.permission-groups fieldset > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.permission-groups label { display: flex; gap: 9px; padding: 9px; border-radius: 8px; background: #faf8f4; font-size: .75rem; cursor: pointer; }
.permission-groups label span { display: grid; }
.permission-groups label small { color: var(--color-text); }
.field textarea { width: 100%; padding: 13px 15px; border: 1px solid #d5cec2; border-radius: 12px; background: var(--color-white); font: inherit; resize: vertical; }
.filter-grid { display: grid; grid-template-columns: minmax(220px,2fr) repeat(3,minmax(140px,1fr)) auto; gap: 10px; margin-bottom: 18px; }
.filter-grid--compact { grid-template-columns: minmax(220px,2fr) minmax(180px,1fr) auto; }
.filter-grid input,.filter-grid select { min-height: 46px; padding: 0 13px; border: 1px solid #d5cec2; border-radius: 11px; background: var(--color-white); font: inherit; }
.action-zone { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding:22px;border:1px solid rgb(46 125 91 / 25%);border-radius:var(--radius-md);background:var(--color-white); }
.action-zone p { margin:4px 0 0;color:var(--color-text);font-size:.82rem; }
.kanban { display:grid;grid-auto-flow:column;grid-auto-columns:minmax(300px,340px);gap:14px;overflow-x:auto;padding:2px 2px 18px;scroll-snap-type:x proximity; }
.kanban-column { min-height:520px;padding:14px;border:1px solid #ddd6cc;border-radius:16px;background:#eee9e1;scroll-snap-align:start; }
.kanban-column>header { display:flex;justify-content:space-between;gap:10px;padding:5px 4px 14px; }
.kanban-column>header div { display:grid; }.kanban-column>header span{font-weight:750;font-size:.82rem}.kanban-column>header small{color:var(--color-text)}
.kanban-column>header>strong{font-family:var(--font-title);font-size:1.4rem;color:var(--color-gold-dark)}
.kanban-column__cards{display:grid;gap:10px}.kanban-empty{padding:30px 10px;color:var(--color-text);font-size:.8rem;text-align:center}
.opportunity-card{padding:17px;border:1px solid #e1dbd1;border-radius:13px;background:var(--color-white);box-shadow:0 8px 18px rgb(17 17 17 / 5%)}
.opportunity-card h2{margin:7px 0;font-family:var(--font-title);font-size:1.35rem;font-weight:500}.opportunity-value{display:block;margin:12px 0;color:#6b5112}.opportunity-card>p{color:var(--color-text);font-size:.74rem}
.opportunity-card form{display:grid;gap:7px;margin-top:14px;padding-top:12px;border-top:1px solid #eee9e1}.opportunity-card label{display:grid;gap:4px;color:var(--color-text);font-size:.68rem}.opportunity-card select,.opportunity-card input{min-height:36px;padding:0 9px;border:1px solid #d8d1c6;border-radius:8px;background:white;font:inherit;font-size:.74rem}.button--small{min-height:36px;padding:0 13px;background:white;cursor:pointer}
.activity-list{display:grid;gap:10px}.activity-card{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:18px;padding:16px 20px;border:1px solid var(--color-gray-light);border-radius:14px;background:var(--color-white)}.activity-card time{display:grid;place-items:center;padding:8px;border-right:1px solid #ece6dc}.activity-card time strong{font-family:var(--font-title);font-size:2rem;line-height:1}.activity-card time span,.activity-card time small{color:var(--color-text);font-size:.65rem}.activity-card h2{margin:4px 0;font-family:var(--font-title);font-size:1.4rem;font-weight:500}.activity-card p{margin:0;color:var(--color-text);font-size:.78rem}

.check-card{display:flex;align-items:center;gap:10px;margin:8px 0 24px;font-size:.86rem}.catalog-picker{margin:24px 0;padding:20px;border:1px solid #ddd5c9;border-radius:14px}.catalog-picker legend{padding:0 8px;font-family:var(--font-title);font-size:1.35rem}.catalog-picker__row{display:grid;grid-template-columns:minmax(260px,1fr) 140px 160px;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid #eee9e1}.catalog-picker__row:last-child{border-bottom:0}.catalog-picker__row>label{display:flex;align-items:center;gap:12px;cursor:pointer}.catalog-picker__row strong,.catalog-picker__row small{display:block}.catalog-picker__row small{margin-top:3px;color:var(--color-text)}.catalog-picker__row .field{margin:0}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:22px 0}.summary-grid .metric-card{min-height:140px}.summary-grid .metric-card strong{display:block;margin-top:20px;font-family:var(--font-title);font-size:1.8rem;font-weight:400}.commercial-action{margin-top:22px}.commercial-action h2{margin-top:0;font-family:var(--font-title);font-size:2rem;font-weight:400}.document-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:22px;padding:26px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:var(--color-white)}
.pipeline-options{display:flex;flex-wrap:wrap;gap:24px;margin:18px 0}.pipeline-options .check-card{margin:0}[data-pipeline-form] .task-fieldset{box-sizing:border-box;min-width:0;width:100%}.pipeline-stage-list{display:grid;min-width:0;gap:12px;margin-bottom:16px}.pipeline-stage-row{position:relative;display:grid;grid-template-columns:34px minmax(150px,1.4fr) minmax(120px,1fr) 120px minmax(180px,1fr);align-items:end;min-width:0;gap:12px;padding:16px;border:1px solid #ebe5dc;border-radius:12px;background:#faf8f4}.pipeline-stage-row__number{display:grid;place-items:center;width:30px;height:30px;margin-bottom:8px;border:1px solid var(--color-gold);border-radius:50%;font-family:var(--font-title)}.pipeline-stage-row .field{margin:0}.pipeline-stage-flags{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:12px;font-size:.72rem}.pipeline-stage-flags label{display:flex;align-items:center;gap:5px}.pipeline-stage-actions{display:flex;grid-column:2/-1;align-items:center;justify-content:flex-end;gap:8px}.pipeline-stage-actions small{max-width:110px;color:var(--color-text);font-size:.66rem}
.structure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.structure-card,.onboarding-step{padding:22px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:var(--color-white)}.structure-card h3,.onboarding-step h2{margin:0 0 12px;font-family:var(--font-title);font-size:1.5rem;font-weight:500}.structure-card li{margin:7px 0;color:var(--color-text)}.onboarding-board{display:grid;gap:14px}.onboarding-step>header{display:flex;justify-content:space-between;gap:20px}.onboarding-step.is-complete{border-color:rgb(46 125 91 / 35%)}.checklist-stack{display:grid;gap:7px;margin:16px 0}.checklist-button{display:flex;gap:10px;width:100%;padding:11px;border:1px solid #e6dfd4;border-radius:9px;background:#faf8f4;color:inherit;text-align:left;cursor:pointer}.checklist-button:disabled{cursor:default;opacity:.75}
.compact-form{margin-bottom:22px}.compact-form h2{margin-top:0;font-family:var(--font-title);font-weight:500}.method-structure{display:grid;gap:14px}.method-sector{padding:20px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:var(--color-white)}.method-sector header{display:grid;grid-template-columns:1fr 100px auto auto;align-items:end;gap:12px}.method-sector header .field,.method-sector header .check-card{margin:0}.environment-list{display:grid;gap:6px;margin:16px 0}.environment-list form,.environment-add{display:grid;grid-template-columns:1fr 90px 90px auto;align-items:center;gap:10px;padding:8px;border-radius:9px;background:#f8f5ef}.environment-list input,.environment-add input{min-height:38px;padding:0 9px;border:1px solid #ddd5c9;border-radius:8px;font:inherit}.protocol-editor{display:grid;gap:13px;margin:24px 0;padding:20px;border:1px solid #ddd5c9;border-radius:14px}.protocol-editor legend{padding:0 8px;font-family:var(--font-title);font-size:1.4rem}.protocol-editor article{position:relative;padding:18px 18px 5px 56px;border:1px solid #ebe5dc;border-radius:12px}.protocol-editor__number{position:absolute;top:18px;left:18px;color:var(--color-gold-dark);font-family:var(--font-title);font-size:1.6rem}.protocol-actions{display:flex;gap:10px;margin-bottom:22px}.protocol-steps{display:grid;gap:12px}.protocol-steps article{padding:24px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:white}.protocol-steps header{display:flex;gap:15px}.protocol-steps header>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--color-gold);border-radius:50%;font-family:var(--font-title);font-size:1.3rem}.protocol-steps h2{margin:0;font-family:var(--font-title);font-weight:500}.protocol-steps small{color:var(--color-text)}.protocol-steps dl{display:grid;grid-template-columns:1fr 1fr;gap:12px}.protocol-steps dl div{padding:12px;background:#f8f5ef}.protocol-steps dt{font-size:.7rem;font-weight:700;text-transform:uppercase}.protocol-steps dd{margin:4px 0 0}
.sensitive-fieldset{margin:22px 0;padding:20px;border:1px solid rgb(182 73 73 / 22%);border-radius:14px;background:#fffafa}.sensitive-fieldset legend{padding:0 8px;color:var(--color-danger);font-family:var(--font-title);font-size:1.35rem}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.detail-card{padding:24px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:var(--color-white)}.detail-card--sensitive{border-color:rgb(182 73 73 / 25%)}.detail-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.detail-card dl div{padding:12px;border-radius:10px;background:#f8f5ef}.detail-card dt{font-size:.68rem;font-weight:750;text-transform:uppercase}.detail-card dd{margin:5px 0 0;overflow-wrap:anywhere}.schedule-timeline,.time-entry-list,.request-board{display:grid;gap:12px}.schedule-timeline article,.time-entry-list article,.request-board article{display:grid;align-items:center;gap:18px;padding:20px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:var(--color-white)}.schedule-timeline article{grid-template-columns:180px 1fr auto}.schedule-timeline h2,.time-entry-list h2,.request-board h2{margin:0;font-family:var(--font-title);font-size:1.35rem;font-weight:500}.schedule-timeline p,.time-entry-list p{margin:5px 0;color:var(--color-text)}.time-entry-list article{grid-template-columns:90px 1fr minmax(160px,auto)}.time-entry-mark{display:grid;place-items:center;padding-right:18px;border-right:1px solid #ece6dc}.time-entry-mark strong{font-family:var(--font-title);font-size:2rem}.time-entry-mark small{color:var(--color-text)}.time-entry-actions details form{display:grid;gap:7px;margin-top:8px}.time-entry-actions input,.request-decision input{min-height:36px;padding:0 9px;border:1px solid #d8d1c6;border-radius:8px;font:inherit}.request-board{grid-template-columns:repeat(2,minmax(0,1fr))}.request-board article{display:block}.request-board header{display:flex;align-items:start;justify-content:space-between;gap:16px}.request-board blockquote{margin:14px 0;padding:12px;border-left:3px solid var(--color-gold);background:#f8f5ef}.request-decision{display:grid;grid-template-columns:1fr auto auto;gap:8px;margin-top:16px}

.task-filter{grid-template-columns:minmax(220px,2fr) repeat(4,minmax(130px,1fr)) auto}.badge--urgent,.task-status--rejected,.task-status--overdue{border-color:rgb(182 73 73 / 32%);background:rgb(182 73 73 / 9%);color:#8e3030}.badge--high,.task-status--paused,.task-status--pending_validation{border-color:rgb(201 144 36 / 35%);background:rgb(201 144 36 / 10%);color:#76510c}.task-status--completed{border-color:rgb(46 125 91 / 30%);background:rgb(46 125 91 / 9%);color:#215c43}.task-status--in_progress{border-color:rgb(210 173 88 / 40%);background:rgb(210 173 88 / 14%);color:#674d0e}.field--wide{grid-column:1/-1}.task-fieldset{margin:26px 0;padding:22px;border:1px solid #ddd5c9;border-radius:14px}.task-fieldset legend{padding:0 9px;font-family:var(--font-title);font-size:1.45rem}.fieldset-help{margin:-4px 0 18px;color:var(--color-text);font-size:.8rem}.task-repeat-grid{display:grid;gap:9px}.task-repeat-row{display:grid;grid-template-columns:36px 2fr 1fr;align-items:center;gap:14px;padding:12px;border:1px solid #ebe5dc;border-radius:11px;background:#faf8f4}.task-repeat-row>span{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-gold);border-radius:50%;font-family:var(--font-title)}.task-repeat-row .field,.task-repeat-row .check-card{margin:0}.task-repeat-row--check{grid-template-columns:36px 2fr 1fr minmax(130px,auto)}.weekday-picker{display:flex;flex-wrap:wrap;gap:6px}.weekday-picker label{display:flex;gap:5px;padding:8px;border:1px solid #ddd5c9;border-radius:8px;background:white;font-size:.72rem}.task-summary{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px}.task-summary__main,.task-summary__side,.task-panel,.task-validation,.task-corrections{padding:25px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:var(--color-white)}.task-summary__main>p{margin:22px 0;line-height:1.7}.task-summary dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.task-summary dl div{padding:12px;border-radius:9px;background:#f8f5ef}.task-summary dt{font-size:.66rem;font-weight:750;text-transform:uppercase}.task-summary dd{margin:5px 0 0}.task-summary__side h2,.task-panel h2,.task-validation h2,.task-corrections h2,.task-complete-card h2{margin:0 0 12px;font-family:var(--font-title);font-size:1.7rem;font-weight:500}.task-summary__side ul{display:grid;gap:8px;padding:0;list-style:none}.task-summary__side li{display:grid;padding:11px;border-bottom:1px solid #eee9e1}.task-summary__side small{margin-top:3px;color:var(--color-text)}.action-zone select{min-height:42px;padding:0 12px;border:1px solid #d5cec2;border-radius:10px;background:white}.task-validation{margin-top:18px;border-color:rgb(210 173 88 / 45%)}.task-validation form,.task-corrections form{display:grid;grid-template-columns:1fr auto auto;gap:9px}.task-validation input,.task-corrections input{min-height:44px;padding:0 12px;border:1px solid #d5cec2;border-radius:10px;font:inherit}.task-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.task-checklist-preview{display:grid;gap:7px;padding-left:24px}.task-checklist-preview li{padding:10px;border-bottom:1px solid #eee9e1}.task-checklist-preview span{float:right;color:#755916;font-size:.68rem;font-weight:750;text-transform:uppercase}.task-events{display:grid;gap:10px}.task-events article{position:relative;display:grid;gap:5px;padding:13px;border-radius:10px;background:#f8f5ef}.task-events article .badge{position:absolute;top:10px;right:10px}.task-events small,.task-events p{color:var(--color-text);font-size:.75rem}.task-history{margin-top:18px}.task-history .task-events article{grid-template-columns:18px 1fr;background:transparent;border-bottom:1px solid #eee9e1}.task-history__mark{width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--color-gold);box-shadow:0 0 0 5px rgb(210 173 88 / 12%)}.task-corrections{margin-top:18px;border-color:rgb(182 73 73 / 23%)}.task-execution-heading h1{font-size:clamp(2.4rem,5vw,4.2rem)}.task-execution-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:18px 22px;border-radius:14px;background:var(--color-graphite);color:white}.task-execution-toolbar div{display:grid}.task-execution-toolbar small{margin-top:4px;color:#bdbdbd}.task-mobile-checklist{display:grid;gap:13px;max-width:820px;margin:0 auto}.task-mobile-item{padding:22px;border:1px solid var(--color-gray-light);border-radius:16px;background:white;box-shadow:0 9px 24px rgb(17 17 17 / 4%)}.task-mobile-item.is-complete{border-color:rgb(46 125 91 / 35%)}.task-mobile-item header{display:flex;gap:13px;margin-bottom:18px}.task-mobile-item header>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:var(--color-black);color:white;font-family:var(--font-title);font-size:1.2rem}.task-mobile-item h2{margin:0;font-family:var(--font-title);font-size:1.45rem;font-weight:500}.task-mobile-item header small{color:var(--color-text)}.task-choice{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.task-choice label{display:flex;align-items:center;justify-content:center;gap:8px;min-height:50px;border:1px solid #d5cec2;border-radius:11px;cursor:pointer}.task-complete-card{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:900px;margin:24px auto 0;padding:28px;border-radius:18px;background:var(--color-graphite);color:white}.task-complete-card>div:first-child{grid-row:span 2}.task-complete-card p{color:#bdbdbd}.task-complete-card .field textarea{background:#242424;color:white;border-color:#555}.task-complete-card .button{justify-self:start}.button:disabled{cursor:not-allowed;opacity:.55}

.task-assign-form{display:grid;grid-template-columns:auto minmax(220px,1fr) minmax(180px,1fr) auto;align-items:center;gap:10px;margin-top:18px;padding:16px 20px;border:1px solid var(--color-gray-light);border-radius:14px;background:white}.task-assign-form select,.task-assign-form input{min-height:42px;padding:0 11px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}

.supply-status--active,.purchase-status--approved,.purchase-status--delivered{border-color:rgb(46 125 91 / 30%);background:rgb(46 125 91 / 9%);color:#215c43}.purchase-status--pending_approval,.purchase-status--quoting,.purchase-status--awaiting_delivery{border-color:rgb(201 144 36 / 35%);background:rgb(201 144 36 / 10%);color:#76510c}.purchase-status--rejected,.purchase-status--cancelled{border-color:rgb(182 73 73 / 32%);background:rgb(182 73 73 / 9%);color:#8e3030}.supply-profile{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.detail-card h2,.purchase-panel h2,.purchase-decision h2{margin:0 0 14px;font-family:var(--font-title);font-size:1.75rem;font-weight:500}.supply-link-list{display:grid;gap:8px}.supply-link-list article{display:grid;padding:12px;border-bottom:1px solid #eee9e1}.supply-link-list small,.supply-link-list p{margin:3px 0 0;color:var(--color-text);font-size:.76rem}.supply-inline-form{display:grid;grid-template-columns:auto repeat(3,minmax(170px,1fr)) auto;align-items:end;gap:12px;padding:22px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:white}.supply-inline-form h2{margin:0;font-family:var(--font-title);font-weight:500}.supply-inline-form .field{margin:0}.stack-form{display:grid;gap:9px;margin-top:18px;padding-top:18px;border-top:1px solid #eee9e1}.stack-form input,.stack-form select,.stack-form textarea,.purchase-decision textarea,.action-zone>input{min-height:42px;padding:9px 11px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.stack-form>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.purchase-items{margin:26px 0;padding:22px;border:1px solid #ddd5c9;border-radius:14px}.purchase-items legend{padding:0 9px;font-family:var(--font-title);font-size:1.45rem}.purchase-item-row{position:relative;display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:12px;margin-bottom:13px;padding:22px 20px 16px 60px;border:1px solid #ebe5dc;border-radius:13px;background:#faf8f4}.purchase-item-row__number{position:absolute;top:20px;left:18px;display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-gold);border-radius:50%;font-family:var(--font-title)}.purchase-item-row .field{margin:0}.purchase-remove{grid-column:1/-1;justify-self:end;color:var(--color-danger)}.purchase-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.purchase-summary article{display:grid;gap:12px;padding:20px;border:1px solid var(--color-gray-light);border-radius:14px;background:white}.purchase-summary article>span{color:var(--color-text);font-size:.68rem;font-weight:750;text-transform:uppercase}.purchase-summary article>strong{font-family:var(--font-title);font-size:1.4rem;font-weight:500}.purchase-panel{margin-bottom:18px;padding:25px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:white}.section-inline{display:flex;align-items:center;justify-content:space-between;gap:16px}.section-inline h2{margin-bottom:0}.purchase-quote-entry{border-color:rgb(210 173 88 / 42%)}.quote-item-grid{display:grid;gap:8px;margin:18px 0}.quote-item-grid article{display:grid;grid-template-columns:minmax(200px,1.5fr) repeat(3,minmax(140px,1fr));align-items:end;gap:10px;padding:12px;border-radius:10px;background:#f8f5ef}.quote-item-grid article>div{display:grid}.quote-item-grid small{color:var(--color-text)}.quote-item-grid .field{margin:0}.quote-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.quote-card{padding:20px;border:1px solid #e2dcd2;border-radius:14px}.quote-card.is-selected{border-color:var(--color-gold);box-shadow:0 0 0 3px rgb(210 173 88 / 10%)}.quote-card header{display:flex;align-items:start;justify-content:space-between;gap:14px}.quote-card h3{margin:4px 0;font-family:var(--font-title);font-size:1.5rem;font-weight:500}.quote-card header>strong{font-family:var(--font-title);font-size:1.45rem;color:#6b5112}.quote-card dl,.purchase-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.quote-card dl div,.purchase-facts div{padding:10px;border-radius:8px;background:#f8f5ef}.quote-card dt,.purchase-facts dt{font-size:.64rem;font-weight:750;text-transform:uppercase}.quote-card dd,.purchase-facts dd{margin:4px 0 0}.quote-card details{margin:14px 0}.quote-card summary{cursor:pointer;font-weight:700}.quote-card ul{display:grid;gap:6px;padding:0;list-style:none}.quote-card li{display:flex;justify-content:space-between;gap:10px;padding-bottom:6px;border-bottom:1px solid #eee9e1;font-size:.76rem}.purchase-decision{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:18px;padding:28px;border-radius:var(--radius-md);background:var(--color-graphite);color:white}.purchase-decision p{color:#bdbdbd}.purchase-decision form{display:grid;gap:10px}.purchase-decision textarea{min-height:88px}.purchase-decision form>div{display:flex;gap:8px}.purchase-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.purchase-events{display:grid;gap:8px}.purchase-events article{position:relative;display:grid;gap:4px;padding:13px;border-radius:9px;background:#f8f5ef}.purchase-events article>.badge{position:absolute;top:10px;right:10px}.purchase-events small,.purchase-events p{color:var(--color-text);font-size:.75rem}.purchase-history .purchase-events article{grid-template-columns:18px 1fr;background:transparent;border-bottom:1px solid #eee9e1}.purchase-history__mark{width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--color-gold);box-shadow:0 0 0 5px rgb(210 173 88 / 12%)}

.page-actions{display:flex;gap:9px}.maintenance-status--validated,.maintenance-status--completed{border-color:rgb(46 125 91 / 30%);background:rgb(46 125 91 / 9%);color:#215c43}.maintenance-status--pending_approval,.maintenance-status--quoting,.maintenance-status--scheduled{border-color:rgb(201 144 36 / 35%);background:rgb(201 144 36 / 10%);color:#76510c}.maintenance-status--rejected,.maintenance-status--cancelled{border-color:rgb(182 73 73 / 32%);background:rgb(182 73 73 / 9%);color:#8e3030}.asset-form{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px;padding:22px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:white}.asset-form h2{grid-column:1/-1;margin:0;font-family:var(--font-title)}.asset-form input,.asset-form select{width:100%;min-height:42px;padding:8px 10px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.asset-form label{font-size:.72rem}.asset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.asset-grid article{padding:22px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:white}.asset-grid h2{margin:6px 0;font-family:var(--font-title);font-weight:500}.asset-grid p{color:var(--color-text)}.asset-grid dl{display:grid;gap:7px}.asset-grid dl div{padding:9px;border-radius:8px;background:#f8f5ef}.asset-grid dt{font-size:.64rem;font-weight:750;text-transform:uppercase}.asset-grid dd{margin:3px 0 0}.maintenance-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.maintenance-summary article{display:grid;gap:9px;padding:19px;border:1px solid var(--color-gray-light);border-radius:14px;background:white}.maintenance-summary span{color:var(--color-text);font-size:.66rem;font-weight:750;text-transform:uppercase}.maintenance-summary strong{font-family:var(--font-title);font-size:1.3rem;font-weight:500}

.inventory-alert{background:rgb(201 144 36 / 7%)}.inventory-config{margin-top:18px;padding:20px;border:1px solid var(--color-gray-light);border-radius:14px;background:white}.inventory-config summary{cursor:pointer;font-family:var(--font-title);font-size:1.3rem}.inventory-config>div{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.inventory-config form{display:grid;gap:8px;margin-top:16px}.inventory-config input,.inventory-config select,.count-start input,.count-start select,.laundry-row input,.laundry-row select,.count-sheet input{min-height:42px;padding:8px 10px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.inventory-balance{display:grid;justify-items:center;gap:4px;margin-bottom:18px;padding:32px;border-radius:var(--radius-md);background:var(--color-graphite);color:white}.inventory-balance span,.inventory-balance small{color:#bdbdbd}.inventory-balance strong{font-family:var(--font-title);font-size:3rem;font-weight:500}.inventory-ledger{display:grid;gap:8px}.inventory-ledger article{display:grid;grid-template-columns:auto 100px 1fr auto;align-items:center;gap:12px;padding:13px;border-bottom:1px solid #eee9e1}.inventory-ledger p,.inventory-ledger small{margin:0;color:var(--color-text)}.inventory-ledger em{grid-column:1/-1;color:var(--color-danger);font-size:.7rem}.count-start{display:grid;grid-template-columns:auto 1fr 1fr 1fr auto;align-items:end;gap:10px;padding:20px;border:1px solid var(--color-gray-light);border-radius:14px;background:white}.count-start h2{margin:0;font-family:var(--font-title)}.count-sheet{display:grid;gap:8px}.count-sheet article{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(140px,1fr));align-items:center;gap:9px;padding:13px;border-radius:10px;background:#f8f5ef}.count-sheet article>div{display:grid}.count-sheet small,.count-sheet em{color:var(--color-text)}.laundry-row{display:grid;grid-template-columns:36px 2fr 1fr 1fr;gap:9px;align-items:center;margin-bottom:8px}.laundry-row>span{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-gold);border-radius:50%;font-family:var(--font-title)}

.quality-status--completed,.quality-status--closed{border-color:rgb(46 125 91 / 30%);background:rgb(46 125 91 / 9%);color:#215c43}.quality-status--in_progress,.quality-status--resolved{border-color:rgb(201 144 36 / 35%);background:rgb(201 144 36 / 10%);color:#76510c}.quality-config{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:20px}.quality-config>div,.quality-sheet>article,.action-plan-list>article{padding:22px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:white}.quality-config h2,.action-plan-list h2{margin:0 0 12px;font-family:var(--font-title);font-weight:500}.quality-config form{display:grid;gap:8px}.quality-config input,.quality-config select,.quality-answer input,.quality-answer select,.quality-plan-items input,.quality-plan-items select,.action-plan-list input,.quality-actions textarea{min-height:42px;padding:8px 10px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.quality-config article{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px;border-bottom:1px solid #eee9e1}.quality-config article div{display:grid}.quality-template-items{display:grid;gap:8px;margin:24px 0;padding:20px;border:1px solid #ddd5c9;border-radius:14px}.quality-template-items legend{padding:0 8px;font-family:var(--font-title);font-size:1.4rem}.quality-template-items article{display:grid;grid-template-columns:36px 1.5fr 1fr auto;align-items:center;gap:9px}.quality-template-items article>span{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-gold);border-radius:50%;font-family:var(--font-title)}.quality-template-items input,.quality-template-items select{min-height:42px;padding:8px 10px;border:1px solid #d5cec2;border-radius:9px;font:inherit}.quality-score{display:grid;justify-items:center;gap:4px;margin-bottom:18px;padding:28px;border-radius:var(--radius-md);background:var(--color-graphite);color:white}.quality-score strong{font-family:var(--font-title);font-size:3rem}.quality-sheet{display:grid;gap:12px;margin-top:18px}.quality-sheet article>header{display:flex;gap:14px}.quality-sheet article>header>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:var(--color-black);color:white;font-family:var(--font-title)}.quality-sheet h2{margin:0;font-family:var(--font-title);font-weight:500}.quality-sheet p{margin:4px 0;color:var(--color-text)}.quality-answer{display:grid;grid-template-columns:repeat(5,minmax(140px,1fr));gap:8px;margin-top:14px}.quality-sheet dl{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.quality-sheet dl div{padding:10px;border-radius:8px;background:#f8f5ef}.quality-sheet dt{font-size:.65rem;text-transform:uppercase}.quality-sheet dd{margin:4px 0}.quality-item--critical{border-color:rgb(182 73 73 / 35%)!important}.quality-item--adjustment{border-color:rgb(201 144 36 / 35%)!important}.occurrence-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.occurrence-card{padding:22px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:white}.occurrence-card--critical{border-color:rgb(182 73 73 / 45%)}.occurrence-card header{display:flex;justify-content:space-between}.occurrence-card h2{font-family:var(--font-title);font-weight:500}.occurrence-card p,.occurrence-card small{color:var(--color-text)}.occurrence-card dl,.occurrence-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.occurrence-card dl div,.occurrence-summary article{padding:12px;border-radius:9px;background:#f8f5ef}.occurrence-card dt,.occurrence-summary span{font-size:.65rem;text-transform:uppercase}.occurrence-card dd{margin:4px 0}.occurrence-summary{margin-bottom:18px}.occurrence-summary strong{display:block;margin-top:6px;font-family:var(--font-title);font-size:1.2rem}.action-plan-list{display:grid;gap:14px}.action-plan-list article>div>form{display:grid;grid-template-columns:1fr minmax(180px,1fr) auto;align-items:center;gap:9px;padding:11px;border-bottom:1px solid #eee9e1}.action-plan-list form div{display:grid}.action-plan-list small{color:var(--color-text)}.quality-actions{display:grid;grid-template-columns:2fr 1fr;gap:18px;margin-top:18px}.quality-plan-items{display:grid;gap:7px;margin:14px 0}.quality-plan-items article{display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px}

.financial-summary,.financial-entry-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.financial-entry-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.financial-summary article,.financial-entry-summary article{padding:20px;border:1px solid var(--color-gray-light);border-radius:14px;background:white}.financial-summary span,.financial-entry-summary span{display:block;color:var(--color-text);font-size:.67rem;text-transform:uppercase}.financial-summary strong,.financial-entry-summary strong{display:block;margin-top:12px;font-family:var(--font-title);font-size:1.5rem;font-weight:500}.financial-value--income{color:#215c43;font-weight:700}.financial-value--expense{color:#8e3030;font-weight:700}.financial-receivables{display:grid;gap:7px}.financial-receivables>a{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:14px;padding:12px;border-bottom:1px solid #eee9e1}.financial-receivables a div{display:grid}.financial-receivables small{color:var(--color-text)}.financial-config{margin-top:18px;padding:20px;border:1px solid var(--color-gray-light);border-radius:14px;background:white}.financial-config summary{cursor:pointer;font-family:var(--font-title);font-size:1.35rem}.financial-config>div{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.financial-config form{display:grid;gap:8px;margin-top:16px}.financial-config input,.financial-config select,.financial-allocations input,.financial-allocations select,.financial-payment-form input,.financial-payment-form select,.financial-payments input,.danger-zone input{min-height:42px;padding:8px 10px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.financial-allocations{display:grid;gap:8px;margin:24px 0;padding:20px;border:1px solid #ddd5c9;border-radius:14px}.financial-allocations legend{padding:0 8px;font-family:var(--font-title);font-size:1.4rem}.financial-allocations article{display:grid;grid-template-columns:36px 2fr 1fr;align-items:center;gap:8px}.financial-allocations article>span{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--color-gold);border-radius:50%;font-family:var(--font-title)}.financial-allocation-list{display:grid;gap:7px}.financial-allocation-list article{display:grid;grid-template-columns:1fr auto auto;gap:18px;padding:11px;border-bottom:1px solid #eee9e1}.financial-receivable-balance{display:grid;justify-items:center;padding:22px;border-radius:14px;background:#f8f5ef}.financial-receivable-balance strong{font-family:var(--font-title);font-size:2rem}.financial-payment-form{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:8px;margin:16px 0}.financial-payments{display:grid;gap:7px}.financial-payments article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border-bottom:1px solid #eee9e1}.financial-payments article div{display:grid}.financial-payments small{color:var(--color-text)}

.dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-metrics a{color:inherit;text-decoration:none}.dashboard-metrics a:hover{border-color:var(--color-gold);transform:translateY(-2px)}.dashboard-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.dashboard-shortcuts a{display:grid;gap:6px;padding:22px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:white;color:inherit;text-decoration:none}.dashboard-shortcuts a:hover{border-color:var(--color-gold)}.dashboard-shortcuts span{color:var(--color-text)}
.dashboard-insights{margin-top:24px}.dashboard-insights header h2{margin:5px 0;font-family:var(--font-title);font-size:2rem;font-weight:500}.dashboard-insights header p{margin:0;color:var(--color-text)}.dashboard-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.dashboard-chart{padding:22px;border:1px solid var(--color-gray-light);border-radius:var(--radius-md);background:white}.dashboard-chart h3{margin:0 0 16px;font-family:var(--font-title);font-size:1.45rem;font-weight:500}.dashboard-bars{display:grid;gap:10px}.dashboard-bars>div{display:grid;grid-template-columns:minmax(90px,.55fr) minmax(140px,1.6fr) auto;align-items:center;gap:10px}.dashboard-bars span,.dashboard-bars small{color:var(--color-text);font-size:.7rem}.dashboard-bars strong{font-size:.72rem}.dashboard-bars progress{width:100%;height:12px;border:0;border-radius:999px;background:#eee8dd;accent-color:var(--color-gold-dark)}.dashboard-bars progress::-webkit-progress-bar{border-radius:999px;background:#eee8dd}.dashboard-bars progress::-webkit-progress-value{border-radius:999px;background:var(--color-gold-dark)}.dashboard-bars--financial>div{grid-template-columns:minmax(70px,.35fr) 1fr}.dashboard-bars--financial label{display:grid;grid-template-columns:60px minmax(100px,1fr) minmax(100px,auto);align-items:center;gap:7px}.dashboard-bars--financial .is-income{accent-color:#2e7d5b}.dashboard-bars--financial .is-income::-webkit-progress-value{background:#2e7d5b}.dashboard-bars--financial .is-expense{accent-color:#b64949}.dashboard-bars--financial .is-expense::-webkit-progress-value{background:#b64949}
.notification-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(360px,.8fr);gap:20px}.notification-list{display:grid;align-content:start;gap:10px}.notification-card{padding:20px;border:1px solid var(--color-gray-light);border-radius:14px;background:white}.notification-card.is-unread{border-left:4px solid var(--color-gold);background:rgb(210 173 88 / 5%)}.notification-card header,.notification-card footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.notification-card h2{margin:13px 0 5px;font-family:var(--font-title);font-weight:500}.notification-card p,.notification-card time,.notification-card small{color:var(--color-text)}.notification-card footer{margin-top:14px}.notification-preferences{align-self:start;padding:24px;border-radius:var(--radius-md);background:var(--color-graphite);color:white}.notification-preferences h2{margin-top:0;font-family:var(--font-title);font-size:1.8rem;font-weight:500}.notification-preferences>p{color:#bdbdbd}.preference-head,.preference-row{display:grid;grid-template-columns:1fr repeat(3,60px);align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid rgb(255 255 255 / 10%)}.preference-head{font-size:.66rem;text-transform:uppercase;color:#bdbdbd}.preference-row label{text-align:center}.preference-row strong{font-size:.76rem}.notification-preferences .button{margin-top:18px;width:100%}
.report-generator{display:grid;grid-template-columns:1.5fr repeat(3,minmax(140px,1fr)) auto;align-items:end;gap:12px;margin-bottom:20px;padding:24px;border-radius:var(--radius-md);background:var(--color-graphite);color:white}.report-generator h2{margin:5px 0 0;font-family:var(--font-title);font-weight:500}.report-generator label{display:grid;gap:6px;font-size:.7rem}.report-generator input,.report-generator select{min-height:44px;padding:9px 11px;border:1px solid #5b5b5b;border-radius:9px;background:white;font:inherit}.report-status--completed{border-color:rgb(46 125 91 / 30%);background:rgb(46 125 91 / 9%);color:#215c43}.report-status--failed{border-color:rgb(182 73 73 / 32%);background:rgb(182 73 73 / 9%);color:#8e3030}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.pwa-body{min-height:100vh;padding-bottom:110px;background:var(--color-ivory);color:var(--color-black)}.pwa-header{position:sticky;z-index:20;top:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px max(20px,env(safe-area-inset-right)) 14px max(20px,env(safe-area-inset-left));background:rgb(17 17 17 / 96%);color:white;backdrop-filter:blur(12px)}.pwa-header .brand{position:static}.pwa-header>div{display:grid;text-align:right;font-size:.72rem}.pwa-header>div strong{color:var(--color-gold)}.pwa-content{width:min(1120px,100%);margin:auto;padding:0 22px 40px}.pwa-hero{margin:0 -22px 24px;padding:clamp(42px,8vw,88px) 22px 44px;background:var(--color-graphite);color:white}.pwa-hero h1{max-width:720px;margin:10px 0;font-family:var(--font-title);font-size:clamp(2.7rem,8vw,5rem);font-weight:400;line-height:.95}.pwa-hero p{max-width:650px;color:#c6c6c6}.sync-chip{display:inline-flex;margin-top:14px;padding:8px 12px;border:1px solid rgb(210 173 88 / 35%);border-radius:999px;color:var(--color-gold);font-size:.7rem}.pwa-stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:-54px;margin-bottom:28px}.pwa-stat-row article{display:grid;gap:4px;padding:18px;border:1px solid var(--color-gray-light);border-radius:14px;background:white;box-shadow:0 8px 30px rgb(0 0 0 / 6%)}.pwa-stat-row strong{font-family:var(--font-title);font-size:2rem;font-weight:400}.pwa-stat-row span{color:var(--color-text);font-size:.68rem}.pwa-section{margin:20px 0;padding:22px;border:1px solid var(--color-gray-light);border-radius:18px;background:white}.pwa-section>header{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:16px}.pwa-section h2{margin:4px 0 0;font-family:var(--font-title);font-size:1.8rem;font-weight:400}.pwa-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pwa-residence-card{min-height:160px;padding:20px;border-radius:14px;background:var(--color-graphite);color:white}.pwa-residence-card h3{margin:24px 0 4px;font-family:var(--font-title);font-size:1.55rem}.pwa-residence-card p,.pwa-residence-card small{color:#bbb}.pwa-list{display:grid}.pwa-list article,.pwa-list>a{display:grid;grid-template-columns:80px 1fr auto;align-items:center;gap:12px;min-height:64px;padding:10px 0;border-bottom:1px solid #eee9e1;color:inherit;text-decoration:none}.pwa-list article:last-child,.pwa-list>a:last-child{border-bottom:0}.pwa-list time{color:#6b5112;font-weight:700}.pwa-list div{display:grid}.pwa-list small{color:var(--color-text)}.pwa-empty{padding:20px;border-radius:10px;background:#f7f4ef;color:var(--color-text)}.pwa-clock form{display:grid;grid-template-columns:repeat(3,1fr) auto;align-items:end;gap:9px}.pwa-clock label{display:grid;gap:6px;font-size:.68rem}.pwa-clock select{min-height:46px;padding:9px;border:1px solid #d5cec2;border-radius:9px;background:white}.pwa-bottom{position:fixed;z-index:30;right:0;bottom:0;left:0;display:flex;justify-content:center;padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:rgb(17 17 17 / 98%);box-shadow:0 -5px 24px rgb(0 0 0 / 15%)}.pwa-bottom a{display:grid;place-items:center;gap:2px;min-width:70px;min-height:52px;padding:4px 8px;color:#bbb;font-size:.62rem;text-decoration:none}.pwa-bottom a:hover,.pwa-bottom a:focus{color:var(--color-gold)}.pwa-bottom span{font-size:1.1rem}.pwa-logout{display:flex;justify-content:center;margin:10px}.connectivity{position:fixed;z-index:50;top:0;right:0;left:0;padding:10px;background:var(--color-warning);color:#241800;text-align:center;font-size:.72rem}.is-offline .pwa-header{top:36px}

.read-cache-status{width:min(1076px,calc(100% - 44px));margin:12px auto 0;padding:9px 12px;border:1px solid #dfd3b9;border-radius:10px;background:#fff8e8;color:#614a17;font-size:.7rem;text-align:center}.is-offline .read-cache-status{border-color:#c99725;background:#fff0c8;color:#382800}
.sync-issues{margin:20px 0;padding:20px;border:1px solid rgb(182 73 73 / 35%);border-radius:14px;background:rgb(182 73 73 / 6%)}.sync-issues h2{margin-top:0;font-family:var(--font-title)}.sync-issues article{padding:10px 0;border-bottom:1px solid rgb(182 73 73 / 18%)}.sync-issues article:last-child{border-bottom:0}.sync-issues p{margin:3px 0;color:var(--color-text)}.sync-issue-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.task-checklist-progress{display:grid;gap:10px;margin:16px 0;padding:16px;border:1px solid rgb(210 173 88 / 38%);border-radius:14px;background:#fffaf0}.task-checklist-progress>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.task-checklist-progress small{color:var(--color-text)}.task-checklist-progress progress{width:100%;height:10px;border:0;border-radius:999px;overflow:hidden;background:#e9e3d8}.task-checklist-progress progress::-webkit-progress-bar{background:#e9e3d8}.task-checklist-progress progress::-webkit-progress-value{background:var(--color-gold)}.task-checklist-progress progress::-moz-progress-bar{background:var(--color-gold)}
.pwa-page-heading{padding:40px 0 20px}.pwa-page-heading h1{margin:8px 0;font-family:var(--font-title);font-size:clamp(2.4rem,7vw,4rem);font-weight:400;line-height:1}.pwa-page-heading p{color:var(--color-text)}.pwa-page-heading .button{margin-top:12px}.pwa-filters{display:grid;grid-template-columns:minmax(180px,1fr) minmax(150px,.4fr) auto;gap:8px;margin-bottom:16px}.pwa-filters label{display:grid}.pwa-filters input,.pwa-filters select{width:100%;min-height:46px;padding:9px 12px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.pwa-notifications{display:grid;gap:10px}.pwa-notifications .notification-card{box-shadow:0 8px 24px rgb(0 0 0 / 5%)}.pwa-notifications .text-button{margin-top:8px}.pwa-bottom a[aria-current="page"]{color:var(--color-gold)}.pwa-device-list{display:grid}.pwa-device-list>article{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid #eee9e1}.pwa-device-list>article:last-child{border-bottom:0}.pwa-device-list>article>div{display:grid;gap:5px}.pwa-device-list>article>div>div{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.pwa-device-list small{color:var(--color-text)}.pwa-device-list .badge--current{background:rgb(46 125 91 / 12%);color:#215c43}.pwa-device-list .is-revoked{opacity:.68}.pwa-device-list .button{flex:0 0 auto}.pwa-device-panel>header>div{display:grid}
.task-pwa-summary>p{margin:20px 0;line-height:1.65}.task-pwa-summary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.task-pwa-summary dl div{padding:12px;border-radius:10px;background:#f8f5ef}.task-pwa-summary dt{font-size:.66rem;font-weight:750;text-transform:uppercase}.task-pwa-summary dd{margin:5px 0 0}.pwa-compact-list{display:grid;gap:8px}.pwa-compact-list article{display:grid;padding:12px;border-bottom:1px solid #eee9e1}.pwa-compact-list small{margin-top:4px;color:var(--color-text)}.task-item-actions{display:flex;align-items:center;gap:12px}.task-item-actions small{color:#215c43;font-weight:700}.task-pwa-back{margin-top:18px}.task-photo-preview{display:block;overflow:hidden;margin:12px 0;border-radius:12px;background:#eee8dd}.task-photo-preview img{display:block;width:100%;max-height:320px;object-fit:cover}.task-mobile-item input[type="file"]{width:100%;padding:10px;border:1px dashed #bba879;border-radius:10px;background:#fffaf0}
.operational-evidence__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:16px 0}.operational-evidence figure{overflow:hidden;margin:0;border:1px solid var(--color-gray-light);border-radius:12px;background:#fff}.operational-evidence figure img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.operational-evidence figcaption{display:grid;gap:3px;padding:10px}.operational-evidence figcaption span,.operational-evidence figcaption small{color:var(--color-text)}.operational-evidence__form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(220px,2fr) auto;align-items:end;gap:10px;margin-top:16px}.operational-evidence__form--staged{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) minmax(220px,2fr) auto}.operational-evidence__form .field{margin:0}.operational-evidence__form input,.operational-evidence__form select{width:100%}
.pwa-request-form{display:grid;gap:16px}.pwa-request-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pwa-request-form .field{margin:0}.pwa-request-form select,.pwa-request-form input,.pwa-request-form textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.pwa-request-form .form-help{color:var(--color-text)}
.pwa-inventory-list{display:grid}.pwa-inventory-list>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 4px;border-bottom:1px solid #eee9e1;color:inherit;text-decoration:none}.pwa-inventory-list>a.is-alert{border-left:4px solid var(--color-alert);padding-left:12px}.pwa-inventory-list>a>div,.pwa-inventory-list>a>span{display:grid}.pwa-inventory-list>a>span{text-align:right}.pwa-inventory-list small{color:var(--color-text)}.pwa-inventory-move{display:grid;gap:16px}.pwa-inventory-move select,.pwa-inventory-move input,.pwa-inventory-move textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}
.pwa-maintenance-filters{grid-template-columns:minmax(180px,1fr) repeat(2,minmax(145px,.45fr)) auto;margin-top:18px}.pwa-maintenance-list{display:grid}.pwa-maintenance-list>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 4px;border-bottom:1px solid #eee9e1;color:inherit;text-decoration:none}.pwa-maintenance-list>a>div{display:grid;gap:4px}.pwa-maintenance-list small{color:var(--color-text)}.pwa-maintenance-form{display:grid;gap:16px}.pwa-maintenance-form select,.pwa-maintenance-form input,.pwa-maintenance-form textarea{width:100%;min-height:46px;padding:10px 12px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.pwa-mobile-shortcut{display:flex;align-items:center;justify-content:space-between;gap:18px}.pwa-mobile-shortcut h2{margin:4px 0}.pwa-mobile-shortcut p{margin-bottom:0;color:var(--color-text)}
.pwa-purchase-list,.pwa-occurrence-list{display:grid}.pwa-purchase-list>a,.pwa-occurrence-list>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 4px;border-bottom:1px solid #eee9e1;color:inherit;text-decoration:none}.pwa-purchase-list>a>div,.pwa-occurrence-list>a>div,.pwa-purchase-list>a>span,.pwa-occurrence-list>a>span{display:grid;gap:4px}.pwa-purchase-list>a>span,.pwa-occurrence-list>a>span{justify-items:end;text-align:right}.pwa-purchase-list small,.pwa-occurrence-list small{color:var(--color-text)}.pwa-occurrence-list>a{padding-left:12px;border-left:3px solid transparent}.pwa-occurrence-list>a.criticality--high{border-left-color:var(--color-warning)}.pwa-occurrence-list>a.criticality--critical{border-left-color:var(--color-danger)}.pwa-occurrence-filters{grid-template-columns:minmax(180px,1fr) repeat(2,minmax(145px,.45fr)) auto;margin-top:18px}.pwa-purchase-form,.pwa-occurrence-form{display:grid;gap:16px}.pwa-purchase-form select,.pwa-purchase-form input,.pwa-purchase-form textarea,.pwa-occurrence-form select,.pwa-occurrence-form input,.pwa-occurrence-form textarea,.staff-action-plans input{width:100%;min-height:46px;padding:10px 12px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.pwa-purchase-items{display:grid}.pwa-purchase-items>article{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #eee9e1}.pwa-purchase-items>article>div,.pwa-purchase-items>article>span{display:grid;gap:4px}.pwa-purchase-items>article>span{text-align:right}.pwa-purchase-items small,.pwa-purchase-items p{margin:0;color:var(--color-text)}.staff-detail-note{margin-top:18px;padding:16px;border-radius:12px;background:#f8f5ef}.staff-detail-note p{margin:6px 0 0}.staff-quote-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.staff-quote-list>article{padding:16px;border:1px solid #e2dcd2;border-radius:12px}.staff-quote-list>article.is-selected{border-color:var(--color-gold);box-shadow:0 0 0 3px rgb(210 173 88 / 10%)}.staff-quote-list header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.staff-quote-list header>div{display:grid}.staff-quote-list details{margin-top:12px}.staff-quote-list summary{cursor:pointer;font-weight:700}.staff-quote-list ul{display:grid;gap:8px;padding:0;list-style:none}.staff-quote-list li{display:flex;justify-content:space-between;gap:10px;padding-bottom:7px;border-bottom:1px solid #eee9e1;font-size:.76rem}.staff-purchase-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px}.staff-purchase-facts .pwa-section{margin-top:0}.staff-occurrence-description>p{white-space:normal}.staff-occurrence-description ul{display:grid;gap:8px;padding:0;list-style:none}.staff-occurrence-description li{display:grid;gap:3px;padding:12px;border-radius:10px;background:#f8f5ef}.staff-occurrence-description li span,.staff-occurrence-description li small{color:var(--color-text)}.staff-action-plans{display:grid;gap:12px}.staff-action-plans>article{overflow:hidden;border:1px solid #e2dcd2;border-radius:14px}.staff-action-plans>article>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px;background:#f8f5ef}.staff-action-plans>article>header>div{display:grid;gap:4px}.staff-action-plans>article>div>form{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.65fr) auto;align-items:center;gap:10px;padding:13px 16px;border-top:1px solid #eee9e1}.staff-action-plans form>div{display:grid;gap:3px}.staff-action-plans p{margin:5px 0 0}.staff-plan-items{display:grid;gap:9px}.staff-plan-items>article{display:grid;grid-template-columns:1.5fr 1fr;gap:9px;padding:12px;border-radius:10px;background:#f8f5ef}.staff-plan-items .field{margin:0}
.pwa-laundry-list,.pwa-inspection-list{display:grid}.pwa-laundry-list>a,.pwa-inspection-list>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 4px;border-bottom:1px solid #eee9e1;color:inherit;text-decoration:none}.pwa-laundry-list>a>div,.pwa-laundry-list>a>span,.pwa-inspection-list>a>div,.pwa-inspection-list>a>span{display:grid;gap:4px}.pwa-laundry-list>a>span,.pwa-inspection-list>a>span{text-align:right}.pwa-laundry-list small,.pwa-inspection-list small{color:var(--color-text)}.pwa-inspection-list>a.has-critical{border-left:4px solid var(--color-alert);padding-left:12px}.pwa-laundry-form,.pwa-laundry-return,.pwa-inspection-form{display:grid;gap:16px}.pwa-laundry-form select,.pwa-laundry-form input,.pwa-laundry-return input,.pwa-inspection-form select,.pwa-inspection-form input,.pwa-recheck select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.pwa-laundry-items{display:grid;gap:10px;padding:18px;border:1px solid var(--color-gray-light);border-radius:14px}.pwa-laundry-items legend{padding:0 8px;font-family:var(--font-title);font-size:1.4rem}.pwa-laundry-items article{display:grid;grid-template-columns:38px 2fr 1fr;align-items:end;gap:10px}.pwa-laundry-items article>span,.pwa-inspection-items article>header>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--color-black);color:white;font-family:var(--font-title)}.pwa-laundry-items label,.pwa-laundry-return-fields label,.pwa-inspection-answer label,.pwa-recheck label{display:grid;gap:6px;font-size:.72rem}.pwa-inspection-items{display:grid;gap:12px}.pwa-inspection-items>article{padding:17px;border:1px solid var(--color-gray-light);border-radius:14px}.pwa-inspection-items article>header{display:flex;align-items:flex-start;gap:12px}.pwa-inspection-items h3{margin:1px 0 4px;font-family:var(--font-title);font-size:1.3rem;font-weight:500}.pwa-inspection-items p{margin:0;color:var(--color-text)}.pwa-laundry-return-fields,.pwa-inspection-answer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.pwa-inspection-items dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0 0}.pwa-inspection-items dl div{padding:10px;border-radius:9px;background:#f8f5ef}.pwa-inspection-items dt{font-size:.65rem;font-weight:700;text-transform:uppercase}.pwa-inspection-items dd{margin:5px 0 0}.pwa-recheck{display:grid;grid-template-columns:1fr auto;align-items:end;gap:9px;margin-top:12px}

.pwa-laundry-items article{grid-template-columns:38px 2fr 1fr 1fr}
.pwa-residence-card{text-decoration:none}.client-residence-summary{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr);gap:18px}.client-residence-summary>p{grid-column:1/-1;margin:0;line-height:1.65}.client-residence-summary h2{margin:18px 0 8px;font-family:var(--font-title);font-size:2rem;font-weight:500}.client-residence-summary>div p{margin:5px 0;color:var(--color-text)}.client-residence-summary dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}.client-residence-summary dl div{padding:12px;border-radius:10px;background:#f8f5ef}.client-residence-summary dt{font-size:.66rem;font-weight:750;text-transform:uppercase}.client-residence-summary dd{margin:6px 0 0}.client-sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.client-sector-grid article{padding:16px;border:1px solid var(--color-gray-light);border-radius:12px}.client-sector-grid h3{margin:0 0 7px;font-family:var(--font-title);font-size:1.3rem;font-weight:500}.client-sector-grid p{margin:0;color:var(--color-text)}.client-summary-list{display:grid}.client-summary-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 4px;border-bottom:1px solid #eee9e1}.client-summary-list article>div,.client-summary-list article>span{display:grid;gap:4px}.client-summary-list article>span{text-align:right}.client-summary-list small{color:var(--color-text)}.client-summary-list article.is-alert{border-left:4px solid var(--color-alert);padding-left:12px}.client-checklist-results{display:grid;gap:8px}.client-checklist-results article{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;background:#f8f5ef}.client-checklist-results article>span{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:50%;background:var(--color-success);color:white}.client-checklist-results article>div{display:grid}.client-checklist-results small{margin-top:4px;color:var(--color-text)}.client-execution-meta{margin:16px 0 0;color:var(--color-text)}.client-task-timeline{display:grid}.client-task-timeline article{display:grid;grid-template-columns:130px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #eee9e1}.client-task-timeline article>div{display:grid}.client-task-timeline time,.client-task-timeline small{color:var(--color-text)}

.error-state {
    max-width: 760px;
    margin: 8vh auto;
    padding: clamp(36px, 7vw, 80px);
    border-radius: var(--radius-lg);
    background: var(--color-graphite);
    color: var(--color-white);
    text-align: center;
}

.error-state h1 { font-size: clamp(2.4rem, 6vw, 5rem); }
.error-state p, .error-state small { display: block; margin: 0 auto 24px; color: #bcbcbc; }

.pwa-approval-hero{padding-bottom:92px}.pwa-approval-counters{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:-62px 0 22px}.pwa-approval-counters a{display:grid;grid-template-columns:1fr auto;gap:4px;padding:20px;border:1px solid var(--color-gray-light);border-radius:16px;background:white;box-shadow:0 12px 30px rgb(17 17 17 / 7%);color:inherit;text-decoration:none}.pwa-approval-counters span,.pwa-approval-counters small{color:var(--color-text);font-size:.72rem}.pwa-approval-counters strong{grid-row:span 2;font-family:var(--font-title);font-size:2.5rem;font-weight:500;color:#745916}.pwa-online-note,.approval-integrity{padding:13px 15px;border-left:3px solid var(--color-gold);background:rgb(210 173 88 / 9%);color:var(--color-text);font-size:.76rem;line-height:1.55}.approval-value{font-family:var(--font-title);font-size:1.08rem;color:#6b5112}.approval-filter{grid-template-columns:minmax(220px,2fr) minmax(180px,1fr) auto}.approval-filter:has(label:nth-of-type(3)){grid-template-columns:minmax(220px,2fr) repeat(2,minmax(150px,1fr)) auto}.approval-card-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0}.approval-card-list>a{display:grid;gap:8px;padding:20px;border:1px solid var(--color-gray-light);border-radius:15px;background:white;color:inherit;text-decoration:none}.approval-card-list>a:hover{border-color:var(--color-gold);transform:translateY(-1px)}.approval-card-list header{display:flex;align-items:center;justify-content:space-between;gap:10px}.approval-card-list header>strong{font-family:var(--font-title);font-size:1.3rem;color:#6b5112}.approval-card-list h2{margin:2px 0;font-family:var(--font-title);font-size:1.45rem;font-weight:500}.approval-card-list p{margin:0;color:var(--color-text);font-size:.76rem}.approval-card-list h2,.approval-summary h2,.approval-quote h2,.pwa-page-heading h1{max-width:100%;overflow-wrap:anywhere}.approval-summary{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,1fr);gap:20px}.approval-summary>*,.approval-quote>header>*{min-width:0;max-width:100%}.approval-summary h2{margin:14px 0 8px;font-family:var(--font-title);font-size:1.8rem;font-weight:500}.approval-summary>div>p{line-height:1.65}.approval-summary dl,.approval-quote dl,.approval-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.approval-summary dl div,.approval-quote dl div,.approval-facts div{padding:11px;border-radius:9px;background:#f8f5ef}.approval-summary dt,.approval-quote dt,.approval-facts dt{font-size:.64rem;font-weight:750;text-transform:uppercase}.approval-summary dd,.approval-quote dd,.approval-facts dd{margin:4px 0 0;overflow-wrap:anywhere}.approval-resolution{grid-column:1/-1;padding-top:14px;border-top:1px solid var(--color-gray-light)}.approval-resolution h3{font-family:var(--font-title);font-size:1.35rem;font-weight:500}.approval-item-list{display:grid;gap:7px}.approval-item-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid #eee9e1}.approval-item-list article>div{display:grid;min-width:0}.approval-item-list strong,.approval-item-list small{overflow-wrap:anywhere}.approval-item-list small{margin-top:3px;color:var(--color-text)}.approval-item-list article>span{font-size:.77rem;text-align:right}.approval-quote{border-color:rgb(210 173 88 / 42%)}.approval-quote>header{align-items:start}.approval-quote>header>strong{font-family:var(--font-title);font-size:1.75rem;color:#6b5112}.approval-quote>p{line-height:1.65}.client-approval-decision{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:18px;padding:28px;border-radius:var(--radius-md);background:var(--color-graphite);color:white}.client-approval-decision>*{min-width:0}.client-approval-decision h2{margin:8px 0;font-family:var(--font-title);font-size:2.35rem;font-weight:500;overflow-wrap:anywhere}.client-approval-decision p,.client-approval-decision small{color:#bdbdbd}.client-approval-decision .field{margin:0}.client-approval-decision textarea{width:100%;min-height:105px;padding:11px;border:1px solid #555;border-radius:10px;background:#242424;color:white;font:inherit}.approval-actions{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.approval-event-list{display:grid;gap:8px}.approval-event-list article{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:13px;border-bottom:1px solid #eee9e1}.approval-event-list article>div{display:grid}.approval-event-list strong,.approval-event-list small,.approval-event-list p{overflow-wrap:anywhere}.approval-event-list small,.approval-event-list p{margin:4px 0 0;color:var(--color-text);font-size:.75rem}

.communication-panel{overflow:hidden}.communication-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:8px}.communication-heading h2{margin:4px 0 0;font-family:var(--font-title);font-size:1.8rem;font-weight:500}.communication-count{flex:0 0 auto;color:var(--color-text);font-size:.7rem}.communication-help{margin:0 0 18px;color:var(--color-text);font-size:.78rem;line-height:1.55}.comment-timeline{display:grid;margin-bottom:18px}.comment-card{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:14px 0;border-bottom:1px solid #eee9e1}.comment-card__mark{width:10px;height:10px;margin-top:5px;border-radius:50%;background:var(--color-gold);box-shadow:0 0 0 5px rgb(210 173 88 / 12%)}.comment-card--internal .comment-card__mark{background:#555}.comment-card--team .comment-card__mark{background:#41708a}.comment-card__body,.comment-card__body>header{min-width:0}.comment-card__body>header{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.comment-card__body>small{display:block;margin-top:3px;color:var(--color-text);font-size:.7rem}.comment-card__body>p{margin:9px 0 0;overflow-wrap:anywhere;line-height:1.6}.comment-audience{padding:3px 7px;border-radius:999px;background:#f1eee8;color:#4e4a44;font-size:.62rem;font-weight:750;text-transform:uppercase}.comment-audience--team{background:#e9f2f6;color:#31596d}.comment-audience--client{background:#f8f0db;color:#6b5112}.comment-card.is-deleted{opacity:.7}.comment-removed{font-style:italic;color:var(--color-text)}.comment-controls{margin-top:10px}.comment-controls summary{cursor:pointer;color:#6b5112;font-size:.72rem;font-weight:700}.comment-controls form,.comment-compose{display:grid;gap:9px}.comment-controls form:first-of-type{margin-top:10px}.comment-controls textarea,.comment-compose textarea,.comment-compose select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.comment-controls label,.comment-compose label{font-size:.7rem;font-weight:700}.comment-controls .button{justify-self:start}.comment-delete{justify-self:start;color:var(--color-danger)}.comment-compose{grid-template-columns:minmax(0,1fr) minmax(200px,.35fr) auto;align-items:end;padding-top:18px;border-top:1px solid #eee9e1}.comment-compose__message{margin:0}.comment-compose__message textarea{min-height:96px}.comment-compose>.field{margin:0}.comment-compose>small{grid-column:1/-1;color:var(--color-text)}
.client-financial-sharing{margin:22px 0;padding:20px;border:1px solid rgb(210 173 88 / 45%);border-radius:14px;background:#fffcf5}.client-financial-sharing legend{padding:0 8px;font-family:var(--font-title);font-size:1.35rem}.client-financial-sharing .field{margin:0}.client-financial-sharing small{color:var(--color-text)}.client-visibility-summary{display:flex;align-items:center;justify-content:space-between;gap:18px}.client-visibility-summary h2{margin:5px 0}.client-visibility-summary p{margin:0;color:var(--color-text)}
.client-financial-hero,.client-report-hero{background:linear-gradient(135deg,#111 0%,#25221c 100%)}.client-financial-metrics{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:-52px 0 20px}.client-financial-metrics article{display:grid;min-width:0;padding:18px;border:1px solid var(--color-gray-light);border-radius:15px;background:white;box-shadow:0 12px 28px rgb(17 17 17 / 7%)}.client-financial-metrics span,.client-financial-metrics small{color:var(--color-text);font-size:.68rem}.client-financial-metrics strong{margin:9px 0 4px;font-family:var(--font-title);font-size:1.35rem;font-weight:500;overflow-wrap:anywhere}.client-financial-filters,.client-report-generator{display:grid;grid-template-columns:minmax(190px,1.3fr) repeat(4,minmax(130px,.75fr)) auto;align-items:end;gap:10px}.client-financial-filters h2,.client-report-generator h2{margin:4px 0;font-family:var(--font-title);font-size:1.55rem;font-weight:500}.client-financial-filters label,.client-report-generator label{display:grid;gap:6px;font-size:.7rem;font-weight:700}.client-financial-filters select,.client-financial-filters input,.client-report-generator select,.client-report-generator input{width:100%;min-height:44px;padding:9px 11px;border:1px solid #d5cec2;border-radius:9px;background:white;font:inherit}.client-financial-list,.client-report-list{display:grid}.client-financial-list>a,.client-report-list>article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 4px;border-bottom:1px solid #eee9e1;color:inherit;text-decoration:none}.client-financial-list>a>div,.client-report-list article>div{display:grid;min-width:0;gap:4px}.client-financial-list h3,.client-report-list h3{margin:2px 0;font-family:var(--font-title);font-size:1.28rem;font-weight:500;overflow-wrap:anywhere}.client-financial-list small,.client-report-list small,.client-report-unavailable{color:var(--color-text);font-size:.7rem}.client-financial-list>a>strong{flex:0 0 auto;font-family:var(--font-title);font-size:1.18rem;color:#6b5112}.client-financial-detail{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);gap:18px}.client-financial-detail__value{display:grid;align-content:center;padding:24px;border-radius:14px;background:var(--color-graphite);color:white}.client-financial-detail__value span{color:#bdbdbd}.client-financial-detail__value strong{margin-top:12px;font-family:var(--font-title);font-size:2.1rem;font-weight:500}.client-financial-detail dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0}.client-financial-detail dl div{padding:13px;border-radius:10px;background:#f8f5ef}.client-financial-detail dt{font-size:.65rem;font-weight:750;text-transform:uppercase}.client-financial-detail dd{margin:5px 0 0;overflow-wrap:anywhere}.client-receivable-progress{grid-column:1/-1;display:grid;gap:5px;padding:15px;border-left:3px solid var(--color-gold);background:#fffcf5}.client-receivable-progress small{color:var(--color-text)}.client-privacy-note{display:flex;align-items:flex-start;gap:14px}.client-privacy-note>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:var(--color-black);color:var(--color-gold)}.client-privacy-note h2{margin:0 0 6px;font-family:var(--font-title);font-weight:500}.client-privacy-note p{margin:0;color:var(--color-text);line-height:1.6}.client-dashboard-financial>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.client-dashboard-financial article{display:grid;padding:13px;border-radius:10px;background:#f8f5ef}.client-dashboard-financial article span{color:var(--color-text);font-size:.68rem}.client-dashboard-financial article strong{margin-top:7px;font-family:var(--font-title);font-size:1.25rem;font-weight:500}.client-report-generator>div p{margin:4px 0 0;color:var(--color-text);font-size:.7rem;line-height:1.45}

@media (max-width: 1050px) {
    .metric-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 780px) {
    .sidebar { position: static; width: 100%; min-height: auto; padding: 20px; }
    .sidebar__nav { display:flex;align-items:flex-start;gap:18px;margin:18px 0 0;padding:2px 2px 8px;overflow-x:auto; }
    .sidebar__nav .nav-section { flex:0 0 auto; }
    .sidebar__nav .nav-section + .nav-section { margin-top:0; }
    .nav-section__title { position:sticky;left:10px;z-index:1;width:max-content;margin-bottom:8px;padding:0 10px;white-space:nowrap; }
    .nav-section__items { display:flex;align-items:flex-start;gap:7px; }
    .sidebar__nav .nav-item, .sidebar__nav .nav-group { flex:0 0 auto;white-space:nowrap; }
    .nav-group__toggle { white-space: nowrap; }
    .nav-group__items { margin-left: 5px; }
    .sidebar__footer { display: none; }
    .workspace { margin-left: 0; }
    .topbar { min-height: 74px; overflow: hidden; }
    .topbar > div, .page-heading > * { min-width: 0; max-width: 100%; }
    .topbar .eyebrow, .page-heading h1, .page-heading p { overflow-wrap: anywhere; }
    .status-pill { display: none; }
    .hero-card { grid-template-columns: 1fr; }
    .hero-card__ornament { display: none; }
    .metric-grid { grid-template-columns: 1fr; }
    .auth-shell { grid-template-columns: 1fr; }
    .auth-brand-panel { min-height: 280px; padding: 28px; }
    .auth-brand-panel > div { margin-top: 70px; }
    .auth-brand-panel h1 { font-size: 3rem; }
    .auth-form-panel { min-height: 62vh; border-radius: 28px 28px 0 0; }
    .dashboard-welcome { align-items: start; flex-direction: column; }
    .page-heading { align-items: start; flex-direction: column; max-width: 100%; }
    .page-heading .form-actions { justify-content: flex-start; flex-wrap: wrap; max-width: 100%; }
    .form-grid, .role-picker > div { grid-template-columns: 1fr; }
    .pipeline-stage-row{grid-template-columns:1fr}.pipeline-stage-row__number{display:none}.pipeline-stage-actions{grid-column:auto;justify-content:flex-start}
    .danger-zone { align-items: start; flex-direction: column; }
    .role-grid, .permission-groups fieldset > div { grid-template-columns: 1fr; }
    .filter-grid,.filter-grid--compact,.task-filter,.task-assign-form { grid-template-columns:1fr; }
    .activity-card{grid-template-columns:60px 1fr}.activity-card form{grid-column:1/-1}.activity-card .button{width:100%}
    .catalog-picker__row,.document-card,.structure-grid,.method-sector header,.environment-list form,.environment-add,.protocol-steps dl,.detail-grid,.detail-card dl,.request-board,.schedule-timeline article,.time-entry-list article,.request-decision,.task-repeat-row,.task-repeat-row--check,.task-summary,.task-summary dl,.task-detail-grid,.task-validation form,.task-corrections form,.task-complete-card,.supply-profile,.supply-inline-form,.purchase-item-row,.purchase-summary,.quote-item-grid article,.quote-cards,.purchase-decision,.purchase-detail-grid,.asset-form,.asset-grid,.maintenance-summary,.inventory-config>div,.inventory-ledger article,.count-start,.count-sheet article,.laundry-row,.quality-config,.quality-template-items article,.quality-answer,.quality-sheet dl,.occurrence-board,.occurrence-card dl,.occurrence-summary,.action-plan-list article>div>form,.quality-actions,.quality-plan-items article,.financial-summary,.financial-entry-summary,.financial-receivables>a,.financial-config>div,.financial-allocations article,.financial-allocation-list article,.financial-payment-form,.dashboard-shortcuts,.dashboard-chart-grid,.notification-layout,.report-generator{grid-template-columns:1fr}.summary-grid{grid-template-columns:1fr}.time-entry-mark{justify-items:start;border-right:0;border-bottom:1px solid #ece6dc;padding:0 0 12px}.protocol-actions,.page-actions{flex-wrap:wrap}.task-repeat-row>span,.purchase-item-row__number,.laundry-row>span,.quality-template-items article>span,.financial-allocations article>span{display:none}.task-complete-card>div:first-child{grid-row:auto}.task-execution-toolbar{align-items:flex-start;flex-direction:column}.purchase-item-row{padding:18px}.section-inline,.action-zone{align-items:flex-start;flex-direction:column}.purchase-decision form>div{flex-wrap:wrap}.asset-form h2{grid-column:auto}.dashboard-bars--financial>div,.dashboard-bars--financial label{grid-template-columns:1fr}.dashboard-bars--financial label{gap:3px}
    .pwa-content{padding-right:14px;padding-left:14px}.pwa-hero{margin-right:-14px;margin-left:-14px}.pwa-stat-row,.pwa-card-grid,.pwa-clock form,.pwa-filters,.pwa-request-grid,.pwa-maintenance-filters,.pwa-laundry-items article,.pwa-laundry-return-fields,.pwa-inspection-answer,.pwa-inspection-items dl,.pwa-recheck,.client-residence-summary,.client-residence-summary dl,.client-sector-grid,.pwa-approval-counters,.approval-filter,.approval-filter:has(label:nth-of-type(3)),.approval-card-list,.approval-summary,.approval-summary dl,.approval-quote dl,.approval-facts,.client-approval-decision,.comment-compose,.client-financial-metrics,.client-financial-filters,.client-financial-detail,.client-financial-detail dl,.client-dashboard-financial>div,.client-report-generator,.operational-evidence__form,.operational-evidence__form--staged{grid-template-columns:1fr}.pwa-stat-row{margin-top:-42px}.pwa-stat-row article{grid-template-columns:auto 1fr;align-items:center}.pwa-list article,.pwa-list>a{grid-template-columns:64px 1fr}.pwa-list .badge{grid-column:2}.pwa-list .approval-value{grid-column:2}.pwa-header .brand span{display:grid}.pwa-header>div span{display:none}.pwa-bottom{justify-content:flex-start;overflow-x:auto}.pwa-mobile-shortcut{align-items:flex-start;flex-direction:column}.pwa-laundry-items article>span{display:none}.pwa-laundry-list>a,.pwa-inspection-list>a{align-items:flex-start}.pwa-laundry-list>a>span,.pwa-inspection-list>a>span{min-width:96px}.client-residence-summary>p,.approval-resolution,.client-receivable-progress{grid-column:auto}.client-summary-list article{align-items:flex-start}.client-task-timeline article{grid-template-columns:1fr}.approval-item-list article{align-items:flex-start;flex-direction:column}.approval-item-list article>span{text-align:left}.approval-quote>header,.communication-heading,.client-visibility-summary,.client-financial-list>a,.client-report-list>article{align-items:flex-start;flex-direction:column}.comment-compose>small{grid-column:auto}.client-financial-metrics{margin:-34px 0 18px}.client-financial-list>a>strong{align-self:flex-start}.client-report-list .button,.operational-evidence__form .button{width:100%}
}

@media (max-width: 780px) {
    .staff-quote-list,.staff-purchase-facts,.staff-action-plans>article>div>form,.staff-plan-items>article{grid-template-columns:1fr}
    .pwa-purchase-list>a,.pwa-occurrence-list>a,.pwa-purchase-items>article,.staff-quote-list header,.staff-action-plans>article>header{align-items:flex-start;flex-direction:column}
    .pwa-purchase-list>a>span,.pwa-occurrence-list>a>span,.pwa-purchase-items>article>span{justify-items:start;text-align:left}
    .staff-quote-list li{align-items:flex-start;flex-direction:column}
    .staff-action-plans>article>div>form .button{width:100%}
    .pwa-device-list>article{align-items:stretch;flex-direction:column}.pwa-device-list .button{width:100%}
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Fluxos móveis de compras e ocorrências da equipe. */

.client-projection-fields{margin:22px 0;padding:20px;border:1px solid rgb(210 173 88 / 45%);border-radius:14px;background:#fffcf5}.client-projection-fields legend{padding:0 8px;font-family:var(--font-title);font-size:1.35rem}.client-projection-fields>p{margin:0 0 18px;color:var(--color-text);font-size:.8rem;line-height:1.55}.client-projection-fields .field{margin:0}
.client-domain-filter{display:grid;grid-template-columns:minmax(210px,1.5fr) repeat(2,minmax(145px,.75fr)) auto;align-items:end;gap:10px;margin-bottom:18px}.client-domain-filter--occurrences{grid-template-columns:minmax(210px,1.5fr) repeat(3,minmax(145px,.75fr)) auto}.client-domain-filter label{display:grid;min-width:0}.client-domain-filter input,.client-domain-filter select{width:100%;min-height:46px;padding:0 12px;border:1px solid #d5cec2;border-radius:10px;background:white;font:inherit}
.client-inventory-grid,.client-occurrence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-inventory-card,.client-occurrence-card{display:grid;min-width:0;gap:10px;padding:20px;border:1px solid var(--color-gray-light);border-radius:15px;background:white;color:inherit;text-decoration:none}.client-inventory-card:hover,.client-occurrence-card:hover{border-color:var(--color-gold);transform:translateY(-1px)}.client-inventory-card.is-alert{border-left:4px solid var(--color-alert)}.client-inventory-card header,.client-occurrence-card header{display:flex;align-items:center;justify-content:space-between;gap:9px}.client-inventory-card h2,.client-occurrence-card h2{margin:0;font-family:var(--font-title);font-size:1.5rem;font-weight:500;overflow-wrap:anywhere}.client-inventory-card p,.client-occurrence-card p{margin:0;color:var(--color-text);font-size:.78rem;line-height:1.55;overflow-wrap:anywhere}.client-inventory-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:4px 0}.client-inventory-card dl div{padding:11px;border-radius:9px;background:#f8f5ef}.client-inventory-card dt{font-size:.64rem;font-weight:750;text-transform:uppercase}.client-inventory-card dd{margin:4px 0 0;font-family:var(--font-title);font-size:1.2rem}.client-inventory-card>small,.client-occurrence-card>small{color:var(--color-text);font-size:.7rem}
.client-inventory-detail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}.client-inventory-detail article{display:grid;min-width:0;padding:20px;border:1px solid var(--color-gray-light);border-radius:14px;background:white}.client-inventory-detail article.is-alert{border-color:rgb(182 73 73 / 38%);background:#fffafa}.client-inventory-detail span,.client-inventory-detail small{color:var(--color-text);font-size:.68rem}.client-inventory-detail strong{margin:9px 0 3px;font-family:var(--font-title);font-size:2rem;font-weight:500;overflow-wrap:anywhere}.client-movement-history>div{display:grid}.client-movement-history article{display:grid;grid-template-columns:125px minmax(0,1fr) auto;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid #eee9e1}.client-movement-history article>div{display:grid;min-width:0}.client-movement-history time,.client-movement-history small{color:var(--color-text);font-size:.7rem}
.client-occurrence-card{border-top:3px solid var(--color-gray-light)}.client-occurrence-card--high{border-top-color:var(--color-warning)}.client-occurrence-card--critical{border-top-color:var(--color-alert)}.client-occurrence-progress{display:grid;gap:7px}.client-occurrence-progress progress{width:100%;height:8px;border:0;border-radius:999px;background:#e8e3da;overflow:hidden}.client-occurrence-progress progress::-webkit-progress-bar{border-radius:999px;background:#e8e3da}.client-occurrence-progress progress::-webkit-progress-value{border-radius:999px;background:var(--color-gold-dark)}.client-occurrence-progress progress::-moz-progress-bar{border-radius:999px;background:var(--color-gold-dark)}.client-occurrence-progress small{color:var(--color-text);font-size:.68rem}.client-occurrence-description>p{line-height:1.75}.client-occurrence-treatment>header{align-items:center}.client-occurrence-treatment>header>strong{font-family:var(--font-title);font-size:2rem;font-weight:500;color:#6b5112}.client-summary-list>a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 4px;border-bottom:1px solid #eee9e1;color:inherit;text-decoration:none}.client-summary-list>a>div,.client-summary-list>a>span{display:grid;gap:4px}.client-summary-list>a>span{text-align:right}.client-summary-list>a.is-alert{border-left:4px solid var(--color-alert);padding-left:12px}

@media (max-width:780px){.client-domain-filter,.client-inventory-grid,.client-occurrence-grid,.client-inventory-detail,.client-inventory-card dl{grid-template-columns:1fr}.client-movement-history article{grid-template-columns:1fr}.client-movement-history article .badge{justify-self:start}.client-inventory-card header,.client-occurrence-card header{align-items:flex-start;flex-wrap:wrap}.client-summary-list>a{align-items:flex-start}.client-occurrence-treatment>header{align-items:flex-start}}

/* Agenda própria do cliente. */
.client-agenda-hero{padding-bottom:88px;background:linear-gradient(135deg,#111 0%,#25221c 100%)}
.client-agenda-toolbar{position:relative;z-index:2;display:grid;grid-template-columns:54px minmax(0,1fr) 54px;align-items:center;gap:16px;margin:-64px 0 20px;padding:18px;border:1px solid var(--color-gray-light);border-radius:18px;background:white;box-shadow:0 12px 30px rgb(17 17 17 / 8%)}
.client-agenda-toolbar>div{display:grid;justify-items:center;text-align:center}.client-agenda-toolbar span,.client-agenda-toolbar small{color:var(--color-text);font-size:.68rem}.client-agenda-toolbar h2{margin:3px 0;font-family:var(--font-title);font-size:1.9rem;font-weight:500}.client-agenda-month-link{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--color-gray-light);border-radius:50%;color:#6b5112;font-size:1.25rem;text-decoration:none}.client-agenda-month-link:last-child{justify-self:end}.client-agenda-month-link:hover,.client-agenda-month-link:focus-visible{border-color:var(--color-gold);background:#fffcf5}
.client-agenda-filter{display:grid;grid-template-columns:minmax(150px,.65fr) minmax(190px,1fr) minmax(170px,.8fr) auto;align-items:end;gap:10px;margin-bottom:18px}.client-agenda-filter label{display:grid;gap:6px;min-width:0;color:var(--color-text);font-size:.7rem;font-weight:700}.client-agenda-filter input,.client-agenda-filter select{width:100%;min-height:46px;padding:0 12px;border:1px solid #d5cec2;border-radius:10px;background:white;font:inherit}
.client-agenda-calendar{padding:18px;border:1px solid var(--color-gray-light);border-radius:18px;background:white}.client-agenda-weekdays,.client-agenda-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.client-agenda-weekdays{margin-bottom:7px}.client-agenda-weekdays span{text-align:center;color:var(--color-text);font-size:.65rem;font-weight:750;text-transform:uppercase}.client-agenda-days article{position:relative;display:grid;place-items:center;min-height:58px;border-radius:11px;background:#f8f5ef}.client-agenda-days article>span{font-family:var(--font-title);font-size:1.05rem}.client-agenda-days article>strong{position:absolute;right:5px;bottom:5px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:var(--color-gold-dark);color:white;font-size:.61rem}.client-agenda-days article.is-outside{opacity:.34}.client-agenda-days article.is-today{box-shadow:inset 0 0 0 2px var(--color-gold-dark);background:#fffcf5}
.client-agenda-counts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:14px 0}.client-agenda-counts article{display:grid;min-width:0;padding:13px;border-top:3px solid var(--color-gray-light);border-radius:10px;background:white}.client-agenda-counts span{overflow:hidden;color:var(--color-text);font-size:.66rem;text-overflow:ellipsis;white-space:nowrap}.client-agenda-counts strong{margin-top:5px;font-family:var(--font-title);font-size:1.5rem;font-weight:500}.client-agenda-counts .client-agenda-type--task{border-color:#6f8c6d}.client-agenda-counts .client-agenda-type--maintenance{border-color:#ba8436}.client-agenda-counts .client-agenda-type--inspection{border-color:#6f789b}.client-agenda-counts .client-agenda-type--purchase,.client-agenda-counts .client-agenda-type--delivery{border-color:var(--color-gold-dark)}.client-agenda-counts .client-agenda-type--occurrence{border-color:var(--color-alert)}
.client-agenda-list{display:grid;gap:14px;margin:22px 0}.client-agenda-day{display:grid;grid-template-columns:150px minmax(0,1fr);overflow:hidden;border:1px solid var(--color-gray-light);border-radius:16px;background:white}.client-agenda-day>header{display:flex;align-items:flex-start;gap:12px;padding:20px;background:#f8f5ef}.client-agenda-day>header time{display:grid;place-items:center;flex:0 0 52px;height:58px;border-radius:12px;background:var(--color-graphite);color:white}.client-agenda-day>header time strong{font-family:var(--font-title);font-size:1.45rem;font-weight:500}.client-agenda-day>header time span{color:var(--color-gold);font-size:.6rem}.client-agenda-day>header div{display:none}.client-agenda-day>div{display:grid;padding:4px 18px}.client-agenda-event{display:grid;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;padding:15px 4px;border-bottom:1px solid #eee9e1;border-left:3px solid var(--color-gray-light);color:inherit;text-decoration:none}.client-agenda-event:last-child{border-bottom:0}.client-agenda-event>time{display:grid;padding-left:10px;color:#6b5112;font-weight:750}.client-agenda-event>time small{color:var(--color-text);font-size:.62rem;font-weight:400}.client-agenda-event>div{display:grid;min-width:0}.client-agenda-event>div>span{color:var(--color-text);font-size:.62rem;font-weight:750;text-transform:uppercase}.client-agenda-event h3{margin:3px 0;font-family:var(--font-title);font-size:1.25rem;font-weight:500;overflow-wrap:anywhere}.client-agenda-event>div small{color:var(--color-text);font-size:.68rem}.client-agenda-event--task{border-left-color:#6f8c6d}.client-agenda-event--maintenance{border-left-color:#ba8436}.client-agenda-event--inspection{border-left-color:#6f789b}.client-agenda-event--purchase,.client-agenda-event--delivery{border-left-color:var(--color-gold-dark)}.client-agenda-event--occurrence{border-left-color:var(--color-alert)}

@media (max-width:780px){.client-agenda-filter,.client-agenda-counts{grid-template-columns:1fr}.client-agenda-toolbar{grid-template-columns:46px minmax(0,1fr) 46px;gap:8px;padding:14px 10px}.client-agenda-toolbar h2{font-size:1.5rem}.client-agenda-month-link{width:42px;height:42px}.client-agenda-calendar{padding:10px}.client-agenda-weekdays,.client-agenda-days{gap:4px}.client-agenda-days article{min-height:44px}.client-agenda-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.client-agenda-day{grid-template-columns:1fr}.client-agenda-day>header{align-items:center;padding:13px}.client-agenda-day>header time{flex-basis:48px;height:50px}.client-agenda-day>header div{display:grid}.client-agenda-day>header h2{margin:0;font-family:var(--font-title);font-size:1.15rem;font-weight:500}.client-agenda-day>header small{color:var(--color-text);font-size:.65rem}.client-agenda-day>div{padding:3px 12px}.client-agenda-event{grid-template-columns:64px minmax(0,1fr);gap:9px}.client-agenda-event>.badge{grid-column:2;justify-self:start}.client-agenda-event h3{font-size:1.1rem}}

/* Arquivos privados por audiência. */
.attachment-security-note{display:flex;align-items:flex-start;gap:16px;margin-bottom:18px;padding:18px;border-left:4px solid var(--color-gold-dark);border-radius:12px;background:#fffcf5}.attachment-security-note>span{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:50%;background:var(--color-graphite);color:var(--color-gold)}.attachment-security-note h2,.attachment-security-note p{margin:0}.attachment-security-note h2{font-family:var(--font-title);font-weight:500}.attachment-security-note p{margin-top:5px;color:var(--color-text);line-height:1.55}
.attachment-upload{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1.45fr);gap:22px}.attachment-upload>div:first-child h2{margin:5px 0;font-family:var(--font-title);font-size:1.8rem;font-weight:500}.attachment-upload>div:first-child p{color:var(--color-text);line-height:1.55}.attachment-upload__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.attachment-upload__fields .field{margin:0}.attachment-upload__title,.attachment-upload__file,.attachment-upload__caption{grid-column:1/-1}.attachment-upload__file input{padding:7px;background:white}.attachment-upload__file input::file-selector-button{margin-right:12px;padding:10px 14px;border:0;border-radius:8px;background:var(--color-graphite);color:white;font:inherit;font-weight:700;cursor:pointer}.attachment-upload>.button{grid-column:2;justify-self:start}
.attachment-grid,.client-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.attachment-grid>.empty-state,.client-document-grid>.pwa-empty{grid-column:1/-1}.attachment-card,.client-document-card{display:grid;min-width:0;overflow:hidden;border:1px solid var(--color-gray-light);border-radius:16px;background:white}.attachment-card__preview,.client-document-card__preview{display:block;aspect-ratio:16/8;overflow:hidden;background:#ede8de}.attachment-card__preview img,.client-document-card__preview img,.client-residence-files img{width:100%;height:100%;object-fit:cover}.attachment-card__document,.client-document-card__file{display:grid;place-items:center;min-height:150px;background:linear-gradient(135deg,#1a1a1a,#34302a);color:var(--color-gold)}.attachment-card__document span,.client-document-card__file span{display:grid;place-items:center;width:70px;height:86px;border:1px solid rgb(210 173 88 / 55%);border-radius:8px;font-family:var(--font-title);font-size:1.1rem}.attachment-card__body,.client-document-card>div:not([class]){display:grid;align-content:start;padding:18px}.attachment-card__body h3,.client-document-card h2{margin:5px 0;font-family:var(--font-title);font-size:1.45rem;font-weight:500;overflow-wrap:anywhere}.attachment-card__body p,.client-document-card p{margin:5px 0;color:var(--color-text);line-height:1.55;overflow-wrap:anywhere}.attachment-card__body small,.client-document-card small{color:var(--color-text);font-size:.68rem;overflow-wrap:anywhere}.attachment-card__actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding:0 18px 18px}.attachment-card__actions form{margin:0}
.client-documents-hero{background:radial-gradient(circle at 84% 20%,rgb(210 173 88 / 22%),transparent 35%),linear-gradient(135deg,#111,#25221c)}.client-document-filter{grid-template-columns:minmax(180px,1.2fr) repeat(3,minmax(140px,.7fr)) auto}.client-document-summary{display:grid;grid-template-columns:minmax(190px,.45fr) minmax(0,1fr);align-items:center;gap:20px;margin:18px 0;padding:20px;border-radius:15px;background:var(--color-graphite);color:white}.client-document-summary>div{display:grid}.client-document-summary span,.client-document-summary small{color:#c8c4bc;font-size:.67rem}.client-document-summary strong{font-family:var(--font-title);font-size:2.6rem;font-weight:500;color:var(--color-gold)}.client-document-summary p{margin:0;color:#dedbd5;line-height:1.6}.client-document-card>.button{justify-self:start;margin:0 18px 18px}.client-residence-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-residence-files>a{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:12px;min-width:0;overflow:hidden;border:1px solid var(--color-gray-light);border-radius:11px;color:inherit;text-decoration:none}.client-residence-files>a>span{display:grid;place-items:center;height:70px;background:var(--color-graphite);color:var(--color-gold);font-size:.72rem;font-weight:750}.client-residence-files>a>img{height:70px}.client-residence-files>a>div{display:grid;min-width:0;padding-right:10px}.client-residence-files strong,.client-residence-files small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-residence-files small{color:var(--color-text);font-size:.65rem}
@media (max-width:780px){.attachment-upload,.attachment-upload__fields,.attachment-grid,.client-document-grid,.client-document-filter,.client-document-summary,.client-residence-files{grid-template-columns:1fr}.attachment-upload__title,.attachment-upload__file,.attachment-upload__caption,.attachment-upload>.button{grid-column:auto}.attachment-upload>.button{width:100%}.attachment-card__actions{align-items:flex-start;flex-direction:column}.attachment-card__actions .button{width:100%}.client-document-summary{gap:8px}.client-document-card>.button{justify-self:stretch}.client-residence-files>a{grid-template-columns:64px minmax(0,1fr)}}

/* Perfil avançado e segurança do cliente. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.pwa-header>div{display:grid;grid-template-columns:auto auto;align-items:center;justify-items:end;column-gap:9px}.pwa-header>div>strong{grid-column:1/-1}.pwa-header__avatar{grid-row:1/3;width:36px;height:36px;border:1px solid rgb(210 173 88 / 55%);border-radius:50%;object-fit:cover}
.client-profile-hero{background:radial-gradient(circle at 86% 22%,rgb(210 173 88 / 25%),transparent 33%),linear-gradient(135deg,#111,#25221c)}
.client-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.client-profile-grid--security{align-items:start}
.client-profile-card{min-width:0}.client-profile-card>h2{margin:5px 0 8px;font-family:var(--font-title);font-size:1.85rem;font-weight:500}.client-profile-card>p{color:var(--color-text);line-height:1.6}.client-profile-card--identity{display:grid;grid-template-columns:128px minmax(0,1fr);align-items:center;gap:20px}.client-profile-card--identity>div:nth-child(2){min-width:0}.client-profile-card--identity h2{margin:4px 0;font-family:var(--font-title);font-size:2rem;font-weight:500;overflow-wrap:anywhere}.client-profile-card--identity p{margin:0;color:#6b5112;overflow-wrap:anywhere}.client-profile-card--identity small{display:block;margin-top:8px;color:var(--color-text);line-height:1.55}
.client-profile-avatar{display:grid;place-items:center;width:128px;height:128px;overflow:hidden;border:1px solid rgb(210 173 88 / 60%);border-radius:50%;background:var(--color-graphite);color:var(--color-gold);box-shadow:0 10px 24px rgb(17 17 17 / 14%)}.client-profile-avatar img{width:100%;height:100%;object-fit:cover}.client-profile-avatar>span{font-family:var(--font-title);font-size:3.5rem}
.profile-upload{grid-column:1/-1;display:grid;gap:8px;padding-top:18px;border-top:1px solid #eee9e1}.profile-upload>label{font-size:.76rem;font-weight:750}.profile-upload input{width:100%;padding:8px;border:1px solid #d5cec2;border-radius:10px;background:white;font:inherit}.profile-upload input::file-selector-button{margin-right:10px;padding:9px 12px;border:0;border-radius:8px;background:var(--color-graphite);color:white;font:inherit;font-weight:700}.profile-upload .button{justify-self:start}
.client-profile-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:18px}.client-profile-form>label,.client-profile-form fieldset label{display:grid;gap:6px;color:#333;font-size:.75rem;font-weight:700}.client-profile-form input,.client-profile-form select{width:100%;min-height:46px;padding:0 12px;border:1px solid #d5cec2;border-radius:10px;background:white;font:inherit}.client-profile-form label>small{color:var(--color-text);font-size:.67rem;font-weight:400;line-height:1.45}.client-profile-form fieldset{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:4px 0;padding:16px;border:1px solid #ddd5c9;border-radius:12px}.client-profile-form legend{padding:0 7px;font-family:var(--font-title);font-size:1.15rem}.client-profile-form .profile-check{grid-column:1/-1;display:flex;align-items:center}.client-profile-form .profile-check input{width:18px;min-height:18px}.client-profile-form>.button{grid-column:1/-1;justify-self:start}
.profile-notifications{margin:18px 0}.profile-notification-table{display:grid;margin:18px 0;border:1px solid var(--color-gray-light);border-radius:13px;overflow:hidden}.profile-notification-table>div{display:grid;grid-template-columns:minmax(180px,1fr) repeat(3,72px);align-items:center;min-height:48px;padding:8px 12px;border-bottom:1px solid #eee9e1}.profile-notification-table>div:last-child{border-bottom:0}.profile-notification-table>div>label{display:grid;place-items:center}.profile-notification-table input{width:18px;height:18px;accent-color:var(--color-gold-dark)}.profile-notification-table .profile-notification-head{min-height:38px;background:#f8f5ef;color:var(--color-text);font-size:.66rem;font-weight:750;text-transform:uppercase}.profile-notification-table strong{font-size:.78rem}
.profile-session-list{display:grid;margin:15px 0}.profile-session-list article{display:grid;gap:4px;padding:13px 0;border-bottom:1px solid #eee9e1}.profile-session-list article>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-session-list article span{padding:4px 8px;border-radius:999px;background:rgb(46 125 91 / 10%);color:#215c43;font-size:.63rem;font-weight:750}.profile-session-list small,.client-privacy-copy{color:var(--color-text);font-size:.69rem}.client-privacy-copy{margin-top:16px!important}.client-profile-card .button--danger{min-height:42px}
@media (max-width:780px){.client-profile-grid,.client-profile-form,.client-profile-form fieldset{grid-template-columns:1fr}.client-profile-card--identity{grid-template-columns:88px minmax(0,1fr);align-items:start}.client-profile-avatar{width:88px;height:88px}.client-profile-avatar>span{font-size:2.4rem}.profile-upload,.client-profile-form fieldset,.client-profile-form .profile-check,.client-profile-form>.button{grid-column:auto}.profile-upload .button,.client-profile-form>.button,.profile-notifications>.button{width:100%}.profile-notification-table{overflow-x:auto}.profile-notification-table>div{min-width:520px}.pwa-header__avatar{display:none}}

.protocol-editor__toolbar,.protocol-editor__row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.protocol-editor__toolbar{margin:-12px 0 24px}.protocol-editor__row-actions{margin:4px 0 12px}.protocol-editor__row-actions .button{min-height:36px;padding:7px 11px}

/* Erros sem vazamento de navegação entre portais. */
.error-page{min-height:100vh;background:radial-gradient(circle at 85% 12%,rgb(210 173 88 / 15%),transparent 35%),var(--color-graphite);color:white}.error-page__header{display:flex;align-items:center;min-height:84px;padding:18px clamp(20px,5vw,72px);border-bottom:1px solid rgb(255 255 255 / 10%)}.error-page__header .brand{color:white}.error-page__content{display:grid;place-items:center;min-height:calc(100vh - 84px);padding:34px 20px}.error-page .error-state{width:min(100%,680px);padding:clamp(28px,6vw,64px);border:1px solid rgb(255 255 255 / 12%);border-radius:22px;background:rgb(17 17 17 / 74%);box-shadow:0 24px 70px rgb(0 0 0 / 28%);text-align:center}.error-page .error-state h1{margin:12px 0;font-family:var(--font-title);font-size:clamp(2.3rem,6vw,4.6rem);font-weight:500}.error-page .error-state p{margin:0 auto 24px;max-width:520px;color:#d4d0ca;line-height:1.7}.error-page .error-state small{display:block;margin:-10px 0 22px;color:#aaa49b}.error-page .error-state .button{display:inline-flex}

/* Atualização assistida do PWA. */
.pwa-update{position:fixed;z-index:80;right:18px;bottom:86px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;width:min(520px,calc(100% - 36px));padding:18px;border:1px solid rgb(210 173 88 / 55%);border-radius:16px;background:var(--color-graphite);color:white;box-shadow:0 18px 55px rgb(0 0 0 / 28%)}.pwa-update[hidden]{display:none}.pwa-update strong{color:var(--color-gold)}.pwa-update p{margin:4px 0 0;color:#d7d2c9;font-size:.74rem;line-height:1.45}.pwa-update>div:last-child{display:flex;align-items:center;gap:9px}.pwa-update .text-button{color:white}@media(max-width:620px){.pwa-update{right:10px;bottom:82px;grid-template-columns:1fr;width:calc(100% - 20px)}.pwa-update>div:last-child{justify-content:stretch}.pwa-update .button{flex:1}}

/* Ledger de auditoria. */
.audit-filters{grid-template-columns:repeat(3,minmax(150px,1fr)) auto}.audit-correlation{max-width:220px;overflow-wrap:anywhere}.audit-details summary{cursor:pointer;color:#6b5112;font-weight:750}.audit-details>div{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:10px;width:min(780px,75vw);margin-top:10px}.audit-details section{min-width:0}.audit-details pre{max-height:260px;margin:6px 0 0;padding:12px;overflow:auto;border-radius:9px;background:#171717;color:#f0ece4;font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:780px){.audit-filters,.audit-details>div{grid-template-columns:1fr}.audit-details>div{width:min(520px,78vw)}}
