.public-surface{--public-green: var(--action-primary);--public-hover: var(--action-primary-hover);--public-cream: var(--canvas);--public-ink: var(--text-primary);--public-muted: var(--text-secondary);--public-border: var(--border);display:block;background:var(--public-cream);color:var(--public-ink);font:1rem/1.55 var(--font-sans);min-height:100vh}.public-surface h1,.public-surface h2,.public-surface h3{font-family:var(--font-sans);font-weight:650;line-height:1.18;letter-spacing:-.035em}.public-surface p{margin:0 0 1.25rem}.public-surface a{color:var(--public-green);text-underline-offset:.25em}.public-surface a:hover{color:var(--public-hover)}.public-surface :focus-visible{outline:3px solid var(--accent);outline-offset:3px}.public-surface button,.public-surface input{font:inherit}.public-surface button,.public-surface a{-webkit-tap-highlight-color:transparent}.public-surface .public-button{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:42px;padding:.65rem 1rem;border:1px solid var(--public-green);border-radius:var(--radius-control);background:var(--public-green);color:#fff;font-weight:600;font-size:.86rem;text-decoration:none;cursor:pointer}.public-surface .public-button:hover{background:var(--public-hover);border-color:var(--public-hover);color:#fff}.public-surface .public-button:disabled{cursor:wait;opacity:.65}.public-surface .public-secondary{color:var(--public-green);background:transparent}.public-surface .eyebrow{color:var(--brand-accent);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.public-surface .text-button{border:0;background:transparent;padding:.55rem 0;color:var(--public-green);text-decoration:underline;text-underline-offset:.25em;cursor:pointer}.public-surface .text-button:disabled{color:var(--public-muted);cursor:default}.public-surface .public-message{padding:.75rem .9rem;border:1px solid #c9d9f4;border-left:3px solid var(--status-info);border-radius:var(--radius-control);background:var(--status-info-soft);color:#284c7a;font-size:.85rem;overflow-wrap:anywhere}.public-surface .skip-link{position:absolute;left:1rem;top:-100px;z-index:10;padding:.65rem 1rem;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface)}.public-surface .skip-link:focus{top:1rem}:root{color-scheme:light;--font-sans: Inter, "Segoe UI", system-ui, -apple-system, sans-serif;--text-primary: #1b2d45;--text-secondary: #53657b;--text-muted: #6e7f93;--text-subtle: #8291a3;--text-inverse: #ffffff;--ink: var(--text-primary);--muted: var(--text-muted);--surface: #fff;--surface-subtle: #f5f8fc;--surface-raised: #fff;--surface-accent: #edf3ff;--canvas: #f4f7fb;--accent: #2862cf;--action-primary: #2862cf;--action-primary-hover: #1f52b6;--brand-accent: #1e477b;--teal: var(--action-primary);--border: #dce4ee;--border-subtle: #e9eef5;--border-strong: #cbd6e3;--border-focus: #2862cf;--line: var(--border);--focus-ring: #2862cf30;--status-success: #16805d;--status-success-soft: #e7f5ee;--status-warning: #a55e08;--status-warning-soft: #fff4df;--status-danger: #b43c42;--status-danger-soft: #fff0f0;--status-info: #2862a6;--status-info-soft: #edf4ff;--shell-sidebar: #ffffff;--shell-sidebar-raised: #f5f8fc;--shell-sidebar-text: #1e477b;--shell-sidebar-muted: #6e7f93;--shell-sidebar-icon: #526d8a;--shell-sidebar-line: #e3eaf2;--shell-sidebar-hover: #f3f7fd;--shell-sidebar-active: #eaf1ff;--shell-sidebar-active-line: #2862cf;--shell-sidebar-width: 248px;--shell-header-height: 68px;--radius-control: 6px;--radius-card: 10px;--radius-panel: 12px;--shadow-card: 0 1px 3px #17365b12;--shadow-popover: 0 12px 28px #17365b1a}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:var(--canvas);color:var(--text-primary);font-family:var(--font-sans)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:not(.text-button):not(.visibility-toggle):not([class*=icon]){transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}button:disabled{cursor:not-allowed}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface);color:var(--text-primary)}input:not([type=checkbox]):not([type=radio]):not([type=file]):focus,select:focus,textarea:focus{outline:0;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--focus-ring)}input::placeholder,textarea::placeholder{color:var(--text-subtle)}button:not(.text-button):not(.visibility-toggle):not([class*=icon]){border-radius:var(--radius-control)}.card,.metric,.summary-grid article,.panel{box-shadow:var(--shadow-card)}.badge,.pill,.result-pill{border-radius:999px}.workspace .app-content :is(.inventory-page,.admin-page,.accounts,.donations,.import-page,.generator-card,.preview-page,.card,.metric,.metric-card,.manager-metric,.manager-workflow,.portal-card,.inventory-summary article,.stats article,.resume-card,.mapping-card,.results-card,.entry-form,.team-directory,.admin-modal,.saved-report-detail,.export-bar){border-color:var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.workspace .app-content :is(.table-scroll,.admin-table-scroll){border-color:var(--border);border-radius:var(--radius-control)}.workspace .app-content table th{background:var(--surface-subtle);color:var(--text-secondary)}.workspace .app-content input:not([type=checkbox]):not([type=radio]):not([type=file]),.workspace .app-content select,.workspace .app-content textarea{min-height:38px;border-color:var(--border-strong);border-radius:var(--radius-control)}.workspace .app-content button:not(.text-button):not(.visibility-toggle):not(.text-action):not([class*=icon]){border-radius:var(--radius-control)}.workspace .app-content :is(button,a).primary,.workspace .app-content :is(button,a).primary-action,.workspace .app-content button.generate-button,.workspace .app-content .button-link:not(.secondary){border-color:var(--action-primary);background:var(--action-primary);color:var(--text-inverse)}.workspace .app-content :is(button,a).primary:hover:not(:disabled),.workspace .app-content :is(button,a).primary-action:hover:not(:disabled),.workspace .app-content button.generate-button:hover:not(:disabled),.workspace .app-content .button-link:not(.secondary):hover{border-color:var(--action-primary-hover);background:var(--action-primary-hover)}.panel{max-width:900px;margin:auto;padding:2rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-panel);box-shadow:var(--shadow-card)}.panel label{display:block;margin:1rem 0}.panel input,.panel select{margin:.5rem;padding:.6rem;max-width:100%}.panel button{margin:.4rem;padding:.65rem}.panel li{margin:1rem 0;overflow-wrap:anywhere}.wide{max-width:1250px}.filters,.summary-grid{display:flex;flex-wrap:wrap;gap:1rem}.summary-grid article{flex:1;min-width:170px;padding:1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card)}.panel h1{font-size:clamp(2rem,4vw,3.3rem);font-weight:400}.panel button{background:var(--teal);color:#fff;border:1px solid var(--teal);border-radius:var(--radius-control)}.panel button:disabled{opacity:.55;cursor:not-allowed}.panel a{color:var(--brand-accent)}.panel textarea{display:block;width:min(100%,540px);min-height:80px;padding:.7rem}.entry-form{padding:1.3rem;border:1px solid var(--line);margin:1rem 0}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-family:var(--font-sans);font-size:.9rem}th,td{padding:.7rem;text-align:left;border-bottom:1px solid var(--line)}th{background:var(--surface-subtle)}.expired{background:#fff0e9!important;color:#802c13}.notice{border-left:4px solid var(--status-warning);padding:1rem;background:var(--status-warning-soft)}.sync-banner{padding:.55rem 12px;background:var(--status-success-soft);border:1px solid #cce8da;border-radius:var(--radius-control);color:#315f4c;font:.75rem/1.55 var(--font-sans)}.welcome-backdrop{position:fixed;z-index:30;inset:0;display:grid;place-items:center;padding:1rem;background:#0d223dcc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.welcome-dialog{width:min(100%,420px);padding:2rem;border:1px solid var(--border);border-radius:var(--radius-panel);background:#f7faff;text-align:center;box-shadow:0 24px 80px #06162535}.welcome-dialog>span{color:var(--status-success);font-size:3rem}.welcome-dialog h2{margin:.4rem 0;color:var(--brand-accent)}.welcome-dialog p{color:var(--text-secondary)}.welcome-dialog button{margin-top:.7rem;padding:.8rem 1.2rem;border:0;border-radius:var(--radius-control);background:var(--action-primary);color:#fff;font-weight:700}.sync-banner button{padding:.5rem}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media print{.navigation,.no-print,button{display:none!important}body,.panel{background:#fff}.panel{border:0;max-width:none;padding:0}.page-shell{padding:0!important}.table-scroll{overflow:visible}}
