:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f5f7f8;color:#17211c}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-shell{align-items:center;background:linear-gradient(135deg,#173c36,#315f4d 55%,#c89f5a);display:flex;min-height:100vh;justify-content:center;padding:24px}.login-panel{background:#fff;border:1px solid rgba(23,33,28,.08);border-radius:8px;box-shadow:0 24px 80px #0c19143d;max-width:430px;padding:32px;width:100%}.brand-mark{align-items:center;background:#e8f3ee;border-radius:8px;color:#1b6b4b;display:flex;height:56px;justify-content:center;margin-bottom:20px;width:56px}.login-panel h1,.page-header h1{margin:0}.login-panel p,.page-header p,.muted{color:#637169;line-height:1.5}.form-stack,.stack{display:grid;gap:18px}.form-stack label,.form-grid label{color:#47534d;display:grid;gap:8px;font-size:.88rem;font-weight:700}input,select,textarea{background:#fff;border:1px solid #d8e0db;border-radius:8px;color:#17211c;min-height:42px;padding:10px 12px;width:100%}textarea{min-height:86px;resize:vertical}.primary-button,.secondary-button,.icon-button{align-items:center;border-radius:8px;display:inline-flex;font-weight:800;gap:8px;justify-content:center}.primary-button{background:#1f7a55;border:1px solid #1f7a55;color:#fff;min-height:42px;padding:0 16px}.secondary-button{background:#fff;border:1px solid #d8e0db;color:#1f3329;min-height:42px;padding:0 14px}.icon-button{background:#fff;border:1px solid #d8e0db;color:#1f3329;height:38px;width:38px}.icon-button.danger{color:#b42318}.form-error{color:#b42318;font-size:.9rem}.app-shell{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}.sidebar{background:#173c36;color:#f5fbf8;overflow-y:auto;padding:24px}.sidebar-brand{display:grid;gap:4px;margin-bottom:30px}.sidebar-brand strong{font-size:1.35rem}.sidebar-brand span{color:#bdd2c8;font-size:.88rem}.sidebar nav{display:grid;gap:8px}.sidebar a{align-items:center;border-radius:8px;color:#dbe8e1;display:flex;gap:10px;padding:12px;text-decoration:none}.sidebar a.active,.sidebar a:hover{background:#ffffff1f;color:#fff}.content-shell{min-width:0}.sidebar-backdrop{display:none}.topbar{align-items:center;background:#fff;border-bottom:1px solid #e2e8e4;display:flex;gap:16px;justify-content:space-between;min-height:76px;padding:16px 28px}.topbar h2{font-size:1.05rem;margin:2px 0 0}.eyebrow{color:#637169;font-size:.78rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.user-area{align-items:center;display:flex;gap:12px}.page-container{padding:28px}.panel-heading{align-items:center;display:flex;gap:16px;justify-content:space-between}.inline-search{align-items:center;display:flex;gap:10px;min-width:min(420px,100%)}.compact-form{max-width:540px}.page-header{align-items:center;display:flex;gap:18px;justify-content:space-between}.metric-grid{display:grid;gap:16px;grid-template-columns:repeat(5,minmax(0,1fr))}.metric-grid.reports-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.metric-card,.panel,.empty-state{background:#fff;border:1px solid #e0e7e2;border-radius:8px}.metric-card{align-items:center;display:flex;justify-content:space-between;padding:18px}.metric-card span{color:#637169;display:block;font-size:.88rem;margin-bottom:10px}.metric-card strong{font-size:2rem}.metric-card svg{color:#1f7a55}.panel-grid{display:grid;gap:16px;grid-template-columns:1.2fr .8fr}.panel{padding:20px}.panel h2{font-size:1.05rem;margin:0 0 16px}.stat-list{display:grid;gap:12px}.stat-list span{align-items:center;border-bottom:1px solid #ecf1ee;display:flex;justify-content:space-between;padding-bottom:10px}.data-layout{align-items:start;display:grid;gap:18px;grid-template-columns:minmax(300px,420px) minmax(0,1fr)}.management-grid{align-items:start;display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid h2,.full-span{grid-column:1 / -1}.check-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.check-grid label{align-items:center;border:1px solid #e0e7e2;border-radius:8px;display:flex;gap:8px;padding:10px}.check-grid input{min-height:auto;width:auto}.table-tools{display:flex;gap:10px;margin-bottom:16px}.upload-row{align-items:end;display:grid;gap:14px;grid-template-columns:minmax(0,1fr) auto}.file-input{color:#47534d;display:grid;gap:8px;font-size:.88rem;font-weight:700}.status-pill{background:#eef5f1;border-radius:999px;color:#285542;display:inline-flex;font-size:.78rem;font-weight:800;padding:5px 9px}.status-pill.completed,.status-pill.issued{background:#e5f6ee;color:#16613f}.status-pill.completed_with_errors{background:#fff3d8;color:#8a5a00}.status-pill.draft{background:#edf2f7;color:#475569}.action-cell{min-width:128px}.search-box{align-items:center;border:1px solid #d8e0db;border-radius:8px;display:flex;flex:1;gap:8px;padding:0 12px}.search-box input{border:0;padding-left:0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid #ecf1ee;padding:12px 10px;text-align:left;vertical-align:middle}th{color:#637169;font-size:.78rem;text-transform:uppercase}.link-button{background:transparent;border:0;color:#1f7a55;font-weight:800;padding:0;text-align:left}.empty-state{color:#637169;display:grid;gap:8px;padding:28px;text-align:center}.empty-state strong{color:#17211c}.mobile-only{display:none}@media (max-width: 1180px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.data-layout,.panel-grid,.management-grid{grid-template-columns:1fr}}@media (max-width: 760px){.app-shell{grid-template-columns:1fr}.sidebar{bottom:0;left:0;max-width:290px;position:fixed;top:0;transform:translate(-100%);transition:transform .16s ease;width:82vw;z-index:20}.sidebar-backdrop{background:#0914107a;border:0;bottom:0;display:block;left:0;padding:0;position:fixed;right:0;top:0;z-index:19}.sidebar.is-open{transform:translate(0)}.mobile-only{display:inline-flex}.topbar,.page-header,.table-tools,.upload-row{align-items:stretch;flex-direction:column}.topbar{gap:12px;padding:14px 16px}.user-area{justify-content:space-between}.upload-row{grid-template-columns:1fr}.page-container{padding:16px}.metric-grid,.form-grid,.check-grid{grid-template-columns:1fr}.panel{padding:16px}.inline-search,.primary-button,.secondary-button{width:100%}th,td{padding:10px 8px}.action-cell{min-width:108px}}
