@import"https://fonts.googleapis.com/css2?family=Chakra+Petch:wght@600;700&family=Barlow:wght@400;500;600;700&display=swap";:root{--color-encore-blue: #2F60A5;--color-charcoal: #4D5256;--color-truck-silver: #A8AEB2;--color-ink: #1B3A66;--color-page: #F3F5F7;--color-surface: #FFFFFF;--color-on-accent: #FFFFFF;--color-line: #D5DBE1;--color-hairline: #E4E8EC;--color-selected: #F3F6FB;--color-sorted: #E7EEF8;--color-danger: #C0392B;--color-note: #8A5A00;--color-overdue-wash: #FDECEA;--color-overdue-ink: #9C1C1C;--color-soon-wash: #FFF6E5;--color-disabled: #9AA3AD;--color-status-active: #1F7A3A;--color-status-renewal: #D0891E;--color-status-hold: #7A828A;--font-sans: "Segoe UI", Helvetica, Arial, sans-serif;--font-size-title: 22px;--font-size-lead: 18px;--font-size-section: 16px;--font-size-body: 14px;--font-size-label: 13px;--font-weight-label: 650;--font-weight-strong: 700;--space-4: 4px;--space-6: 6px;--space-8: 8px;--space-10: 10px;--space-12: 12px;--space-14: 14px;--space-16: 16px;--space-18: 18px;--space-20: 20px;--space-22: 22px;--space-24: 24px;--space-28: 28px;--space-40: 40px;--space-48: 48px;--radius-control: 8px;--radius-card: 12px;--radius-pill: 50%;--border-width: 1px;--shadow-none: none;--shadow-raised: 0 1px 2px color-mix(in srgb, var(--color-charcoal) 16%, transparent);--color-cobalt: #2B4BB1;--color-cobalt-dark: #1F378A;--color-cobalt-tint: #E6EAF6;--color-cobalt-wash: #F0F3FA;--color-cobalt-pale: #C9D3F2;--color-cobalt-soft: #8EA0D8;--color-text: #23272C;--color-text-muted: #4B535B;--color-canvas: #EEF0F3;--color-card: #FFFFFF;--color-card-dark: #2F343A;--color-border: #D5D9DE;--color-red: #B42318;--color-red-bg: #FDECEA;--color-red-text: #8F1D13;--color-red-border: #F3C4BE;--color-amber: #D98A00;--color-amber-bg: #FFF1D6;--color-amber-text: #7A4300;--color-amber-border: #F0D79A;--color-green: #1E7B4F;--color-green-bg: #E3F2EA;--color-green-text: #17603E;--color-grey-01: #F7F8FA;--color-grey-02: #F3F5F8;--color-grey-03: #E3E6EA;--color-grey-04: #E1E4E8;--color-grey-05: #DDE1E6;--color-grey-06: #C9CED4;--color-grey-07: #C3C9CF;--color-grey-08: #B6BDC4;--color-grey-09: #A9B0B7;--color-grey-10: #9AA1A8;--color-grey-11: #7E858C;--color-grey-12: #6B727A;--color-grey-13: #5A616A;--color-grey-14: #555C64;--color-grey-15: #3C424A;--color-grey-16: #3A4148;--color-grey-17: #2B3138;--font-heading: "Chakra Petch", sans-serif;--font-body: "Barlow", system-ui, sans-serif;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--letter-spacing-heading: .01em;--letter-spacing-label: .08em;--letter-spacing-eyebrow: .1em;--font-size-12: 12px;--font-size-15: 15px;--font-size-17: 17px;--font-size-20: 20px;--font-size-24: 24px;--font-size-26: 26px;--font-size-28: 28px;--font-size-30: 30px;--font-size-32: 32px;--font-size-34: 34px;--font-size-40: 40px;--space-2: 2px;--space-3: 3px;--space-32: 32px;--radius-6: 6px;--radius-8: 8px;--radius-10: 10px;--radius-12: 12px;--radius-14: 14px;--radius-16: 16px;--radius-20: 20px;--radius-full: 999px;--stripe-skew: -30deg;--stripe-skew-small: -18deg;--shadow-cobalt: 0 2px 6px color-mix(in srgb, var(--color-cobalt) 35%, transparent);--shadow-overlay: 0 14px 34px color-mix(in srgb, var(--color-text) 20%, transparent)}:root{color:var(--color-ink);background:var(--color-page);font-family:var(--font-sans)}*{box-sizing:border-box}body{margin:0}.gate{min-height:100vh;display:grid;place-items:center;padding:var(--space-24)}.card{width:min(420px,100%);background:var(--color-surface);border:var(--border-width) solid var(--color-line);border-radius:var(--radius-card);box-shadow:var(--shadow-none);padding:var(--space-28) var(--space-24) var(--space-24)}.logo{display:block;width:min(240px,100%);height:auto;margin:0 auto var(--space-18)}h1{margin:0;font-size:var(--font-size-title);text-align:center}.sub{margin:var(--space-6) 0 var(--space-18);text-align:center;color:var(--color-charcoal)}label{display:block;font-size:var(--font-size-label);font-weight:var(--font-weight-label);margin:var(--space-12) 0 var(--space-6)}input{width:100%;font:inherit;padding:var(--space-10) var(--space-12);border:var(--border-width) solid var(--color-truck-silver);border-radius:var(--radius-control)}button{margin-top:var(--space-18);width:100%;font:inherit;font-weight:var(--font-weight-strong);color:var(--color-on-accent);background:var(--color-encore-blue);border:0;border-radius:var(--radius-control);padding:var(--space-12) var(--space-14);cursor:pointer}button.secondary{background:var(--color-surface);color:var(--color-ink);border:var(--border-width) solid var(--color-encore-blue)}.error{color:var(--color-danger);font-size:var(--font-size-body);margin:var(--space-12) 0 0}.who{margin:0 0 var(--space-8);font-size:var(--font-size-lead)}.role{margin:0;color:var(--color-charcoal)}.app{min-height:100vh}.top{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-12);padding:var(--space-12) var(--space-20);background:var(--color-surface);border-bottom:var(--border-width) solid var(--color-line)}.mark{display:block;width:120px;height:auto}.brand{font-weight:var(--font-weight-strong)}.spacer{flex:1}.lang{display:flex;gap:var(--space-6)}.top button{width:auto;margin:0;padding:var(--space-8) var(--space-12);background:var(--color-surface);color:var(--color-ink);border:var(--border-width) solid var(--color-encore-blue)}.top button[aria-pressed=true]{background:var(--color-encore-blue);color:var(--color-on-accent)}.home{padding:var(--space-8) var(--space-20) var(--space-40);max-width:720px}.home h2{font-size:var(--font-size-section);margin:var(--space-22) 0 var(--space-8);text-align:left}.plain{list-style:none;margin:0;padding:0}.item{padding:var(--space-8) 0;border-bottom:var(--border-width) solid var(--color-hairline)}.hint,.note{display:block;font-size:var(--font-size-body)}.hint{color:var(--color-charcoal)}.note{color:var(--color-note)}.nav{display:flex;flex-wrap:wrap;gap:var(--space-6)}.users{padding:var(--space-8) var(--space-20) var(--space-48);max-width:1200px}.users h2{font-size:var(--font-size-section);margin:var(--space-18) 0 var(--space-8);text-align:left}.users button{width:auto;margin-top:0;padding:var(--space-8) var(--space-12)}.strip{display:flex;flex-wrap:wrap;gap:var(--space-8);margin:0 0 var(--space-16)}.strip button{background:var(--color-surface);color:var(--color-ink);border:var(--border-width) solid var(--color-encore-blue)}.strip button[aria-pressed=true]{background:var(--color-encore-blue);color:var(--color-on-accent)}.count{display:inline-block;margin-left:var(--space-8)}.table-wrap{overflow-x:auto;background:var(--color-surface);border:var(--border-width) solid var(--color-line);border-radius:var(--radius-control);box-shadow:var(--shadow-none)}.grid{width:100%;border-collapse:collapse}.grid th,.grid td{text-align:left;padding:var(--space-8) var(--space-10);border-bottom:var(--border-width) solid var(--color-hairline);font-size:var(--font-size-body);vertical-align:top}.grid tr.selected td{background:var(--color-selected)}.grid button,.edit button.secondary{background:var(--color-surface);color:var(--color-ink);border:var(--border-width) solid var(--color-encore-blue)}.edit{max-width:440px;padding:var(--space-4) var(--space-4) var(--space-12)}.edit .who{margin-top:var(--space-4)}.edit select{width:100%;font:inherit;padding:var(--space-10) var(--space-12);border:var(--border-width) solid var(--color-truck-silver);border-radius:var(--radius-control);background:var(--color-surface)}.check{display:flex;align-items:center;gap:var(--space-8);margin-top:var(--space-12);font-size:var(--font-size-body);font-weight:var(--font-weight-label)}.check input{width:auto}.action-row{display:flex;gap:var(--space-8);align-items:center}.action-row input{flex:1}.edit button.save{background:var(--color-encore-blue);color:var(--color-on-accent);border:0;padding:var(--space-10) var(--space-14)}.tasks{padding:var(--space-8) var(--space-20) var(--space-48);max-width:1200px}.tasks h2{font-size:var(--font-size-section);margin:var(--space-18) 0 var(--space-8);text-align:left}.tasks button,.tasks select{width:auto;margin-top:0}.tasks .report{width:auto;min-width:220px;margin:var(--space-8) 0 var(--space-16);background:var(--color-encore-blue);color:var(--color-on-accent)}.tasks th.sorted{background:var(--color-sorted)}.tasks tr.overdue td{background:var(--color-overdue-wash)}.tasks tr.soon td{background:var(--color-soon-wash)}.tasks .grid button,.tasks .edit button.secondary,.tasks .item button{background:var(--color-surface);color:var(--color-ink);border:var(--border-width) solid var(--color-encore-blue);padding:var(--space-8) var(--space-12)}.tasks .edit button[type=submit],.tasks .report{background:var(--color-encore-blue);color:var(--color-on-accent);border:0}.properties{padding:var(--space-8) var(--space-20) var(--space-48);max-width:1280px}.properties h2{font-size:var(--font-size-section);margin:var(--space-18) 0 var(--space-8);text-align:left}.properties button,.properties select,.properties input{width:auto;margin-top:0}.properties .actions{display:flex;gap:var(--space-8);margin:0 0 var(--space-12)}.properties .strip button:disabled{opacity:.55;cursor:not-allowed}.properties .import-panel button:disabled,.properties .grid button:disabled{background:var(--color-disabled);color:var(--color-on-accent);cursor:not-allowed}.editor-wide{max-width:960px}.line-row{border:var(--border-width) solid var(--color-line);border-radius:var(--radius-control);box-shadow:var(--shadow-none);padding:var(--space-4) var(--space-12) var(--space-12);margin:var(--space-8) 0;background:var(--color-surface)}.properties .legend{display:flex;flex-wrap:wrap;gap:var(--space-14);margin:var(--space-8) 0;font-size:var(--font-size-body)}.properties .legend span{display:inline-flex;align-items:center;gap:var(--space-6)}.dot{display:inline-block;width:10px;height:10px;border-radius:var(--radius-pill);margin-right:var(--space-6)}.dot.active{background:var(--color-status-active)}.dot.at_risk{background:var(--color-danger)}.dot.renewal_pending{background:var(--color-status-renewal)}.dot.on_hold{background:var(--color-status-hold)}.properties td.visit-overdue{color:var(--color-overdue-ink);background:var(--color-overdue-wash);font-weight:var(--font-weight-strong)}.properties td.visit-soon{color:var(--color-note);background:var(--color-soon-wash);font-weight:var(--font-weight-strong)}.properties .text-button{background:transparent;color:var(--color-encore-blue);border:0;padding:0;font-weight:var(--font-weight-strong)}.properties .row-actions{display:flex;flex-direction:column;gap:var(--space-8);margin-top:var(--space-8);min-width:220px}.properties td.actions-cell{white-space:nowrap;width:1%}.row-actions-inline{display:inline-flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:var(--space-8)}.properties .row-actions-inline button{padding:var(--space-8) var(--space-12);white-space:nowrap}.properties .import-panel{max-width:960px;margin-bottom:var(--space-16)}.badge{display:inline-block;margin-left:var(--space-8);padding:0 var(--space-6);border-radius:var(--radius-control);background:var(--color-soon-wash);color:var(--color-note);font-size:var(--font-size-label);font-weight:var(--font-weight-strong)}.save-row{display:flex;gap:var(--space-8);margin-top:var(--space-18)}.save-row button{width:auto;margin-top:0}#review-sheet{max-width:none;padding-top:var(--space-4);padding-bottom:var(--space-16)}#review-sheet h2{margin:var(--space-4) 0}#review-sheet .strip{gap:var(--space-6);margin:0 0 var(--space-6)}#review-sheet .strip button{padding:var(--space-4) var(--space-8)}#review-sheet .save-row{align-items:center;margin:var(--space-4) 0}#review-sheet .save-row label{margin:0}#review-sheet .table-wrap{overflow:visible}#review-sheet .grid th{position:sticky;top:0;z-index:2;background:var(--color-surface);font-size:var(--font-size-label);padding:var(--space-4) var(--space-6)}#review-sheet .grid td{padding:var(--space-4) var(--space-6);font-size:var(--font-size-label);line-height:1.2;vertical-align:middle}#review-sheet .item-name{font-weight:var(--font-weight-strong);font-size:var(--font-size-body)}#review-sheet .hint{margin:0;color:var(--color-charcoal);font-size:var(--font-size-label);white-space:nowrap}#review-sheet .cell-line{display:flex;align-items:center;flex-wrap:nowrap;white-space:nowrap;gap:var(--space-6)}#review-sheet .check{margin:0;font-size:var(--font-size-label)}#review-sheet .grid input{padding:var(--space-4) var(--space-6);width:5.5rem}#review-sheet .notes-input{width:9rem}@media(max-width:1280px){#review-sheet .grid{width:100%}#review-sheet .hint,#review-sheet .cell-line{white-space:normal}#review-sheet .cell-line{flex-wrap:wrap}#review-sheet .notes-input{width:6rem}#review-sheet td.actions-cell{white-space:normal;width:auto}#review-sheet .row-actions-inline{flex-direction:column;align-items:flex-start}}#review-sheet tr.changed td{background:var(--color-soon-wash)}#review-sheet .row-actions-inline button{padding:var(--space-4) var(--space-8);font-size:var(--font-size-label)}.fact-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8) var(--space-16);margin:0 0 var(--space-16)}.unsaved-backdrop{position:fixed;inset:0;display:grid;place-items:center;background:var(--color-page);padding:var(--space-24)}
