:root{color:#172033;background:#f5f7fa;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-height:100vh;margin:0}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-page{background:linear-gradient(135deg,#ffffffe6,#f5f7faf0),#f5f7fa;align-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-panel{background:#fff;border:1px solid #dfe5ee;border-radius:8px;gap:1.35rem;width:100%;max-width:430px;margin:0 auto;padding:clamp(1.25rem,5vw,2rem);display:grid;box-shadow:0 22px 70px #1720331f}.login-logo{width:min(100%,340px);max-width:340px;height:auto;margin:0 auto .35rem;display:block}.login-form{gap:1rem;display:grid}label{color:#3d4658;gap:.45rem;font-size:.9rem;font-weight:750;display:grid}.auth-source-selector{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;margin:0;padding:0;display:grid}.auth-source-selector legend{color:#3d4658;grid-column:1/-1;margin-bottom:.45rem;padding:0;font-size:.9rem;font-weight:750}.auth-source-selector label{color:#3d4658;cursor:pointer;background:#f8fafc;border:1px solid #ccd6e4;border-radius:8px;justify-content:center;align-items:center;gap:.45rem;min-height:2.85rem;padding:.7rem .8rem;display:flex}.auth-source-selector label.selected{color:#1f4f8f;background:#e8f0fb;border-color:#1f4f8f}.auth-source-selector input{opacity:0;width:1px;height:1px;position:absolute}.auth-source-selector label:has(input:focus-visible){box-shadow:0 0 0 3px #1f4f8f29}input,select,textarea{color:#172033;background:#f8fafc;border:1px solid #ccd6e4;border-radius:8px;outline:none;width:100%;min-height:3rem;padding:.85rem .95rem}textarea{resize:vertical;min-height:6rem}input:focus,select:focus,textarea:focus{border-color:#1f4f8f;box-shadow:0 0 0 3px #1f4f8f29}input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.65}.primary-action,.logout-button,.mobile-menu{border:0;border-radius:8px;justify-content:center;align-items:center;gap:.55rem;min-height:3rem;padding:.85rem 1rem;font-weight:800;display:inline-flex}.primary-action{color:#fff;background:#1f4f8f;width:100%}.primary-action:disabled,.logout-button:disabled{cursor:not-allowed;opacity:.7}.compact-action{width:auto;min-width:12rem}.forgot-password{color:#1f4f8f;justify-self:center;font-size:.92rem;font-weight:800;text-decoration:none}.forgot-password:hover{text-decoration:underline}.error-message{color:#9a1b1b;overflow-wrap:anywhere;background:#fff2f2;border:1px solid #ffc9c9;border-radius:8px;max-width:100%;margin:0;padding:.85rem 1rem;line-height:1.45}.dashboard-shell{grid-template-columns:270px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;background:#111827;padding:1.25rem}.sidebar-logo{width:100%;height:auto;margin-bottom:1.5rem;display:block}.sidebar nav{gap:.35rem;display:grid}.sidebar-nav-divider{color:#94a3b8;letter-spacing:.08em;text-transform:uppercase;margin:1rem 0 .2rem;padding:0 .9rem;font-size:.72rem;font-weight:850}.sidebar nav a,.sidebar nav button{color:#cbd5e1;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:.75rem;width:100%;padding:.85rem .9rem;font-weight:750;text-decoration:none;display:flex}.sidebar nav a.active,.sidebar nav a:hover,.sidebar nav button.active,.sidebar nav button:hover{color:#fff;background:#ffffff1c}.dashboard-main{padding:clamp(1rem,3vw,2rem)}.dashboard-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.dashboard-header p,.dashboard-header h1{margin:0}.dashboard-header p,.section-heading p{color:#65738a;letter-spacing:0;text-transform:uppercase;font-size:.78rem;font-weight:850}.dashboard-header h1{color:#101828;font-size:clamp(1.6rem,3vw,2.45rem);line-height:1.1}.logout-button,.mobile-menu{color:#24324d;background:#fff;border:1px solid #dfe5ee}.mobile-menu{display:none}.summary-band{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.summary-band article,.system-card,.page-panel,.access-banner,.control-row{background:#fff;border:1px solid #dfe5ee;border-radius:8px}.summary-band article{padding:1.2rem}.integration-summary-sections{gap:1rem;margin-bottom:1.5rem;display:grid}.integration-summary-section{gap:.65rem;display:grid}.integration-summary-section h3{color:#3d4658;margin:0;font-size:.88rem;font-weight:850}.integration-summary-section .summary-band{margin-bottom:0}.integration-summary-band{grid-template-columns:repeat(auto-fit,minmax(10.5rem,1fr))}.integration-summary-band article{border-left:4px solid #dfe5ee;min-width:0;min-height:7.8rem}.integration-summary-band article.connected{border-left-color:#2f855a}.integration-summary-band article.warning{border-left-color:#b7791f}.integration-summary-band article.error{border-left-color:#c53030}.integration-summary-band small{color:#65738a;overflow-wrap:anywhere;margin-top:.55rem;font-size:.78rem;font-weight:650;line-height:1.45;display:block}.summary-band span{color:#1f4f8f;font-size:2rem;font-weight:900;line-height:1;display:block}.integration-summary-band article.connected span{color:#17633a}.integration-summary-band article.warning span{color:#8a5a11}.integration-summary-band article.error span{color:#9a1b1b}.summary-band p{color:#526071;margin:.45rem 0 0;font-weight:800}.systems-section,.page-panel,.settings-form,.toggle-list,.control-list{gap:1rem;display:grid}.page-panel{padding:1.25rem}.section-heading h2{color:#101828;margin:.15rem 0 0;font-size:clamp(1.45rem,3vw,2rem)}.systems-grid,.field-grid,.security-layout{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.system-card{gap:.85rem;padding:1.25rem;display:grid}.system-card-header,.form-actions,.toggle-row,.access-banner,.control-row,.integration-actions{align-items:center;display:flex}.system-card-header,.form-actions,.toggle-row{justify-content:space-between}.integration-actions{flex-wrap:wrap;gap:.5rem}.system-icon{color:#1f4f8f;background:#e8f0fb;border-radius:8px;justify-content:center;align-items:center;width:2.6rem;height:2.6rem;display:inline-flex}.status{border-radius:999px;align-items:center;gap:.35rem;padding:.42rem .65rem;font-size:.78rem;font-weight:850;display:inline-flex}.status.connected{color:#17633a;background:#e8f8ee}.status.ready{color:#1f4f8f;background:#eef4ff}.system-card h3{color:#101828;margin:0;font-size:1.2rem}.system-card p,.access-banner p,.toggle-row small{color:#526071;margin:0;line-height:1.6}.system-category{color:#1f4f8f;font-size:.86rem;font-weight:850}.access-banner{gap:.85rem;margin-bottom:1.5rem;padding:1rem}.access-banner svg{color:#1f4f8f;flex:none}.access-banner strong,.toggle-row strong{color:#101828}.toggle-row,.control-row{gap:1rem;padding:1rem}.toggle-row input[type=checkbox]{accent-color:#1f4f8f;flex:none;width:1.3rem;height:1.3rem;min-height:1.3rem;padding:0}.form-actions{gap:1rem}.save-status{color:#17633a;font-weight:850}.control-row svg{color:#17633a;flex:none}.control-row span{overflow-wrap:anywhere;min-width:0}.control-row small{color:#526071;line-height:1.45}.data-table{border:1px solid #dfe5ee;border-radius:8px;overflow:hidden}.data-row{background:#fff;grid-template-columns:1.2fr 1.2fr 1.3fr .8fr;gap:1rem;padding:1rem;display:grid}.data-row+.data-row{border-top:1px solid #e5ebf3}.data-heading{color:#65738a;text-transform:uppercase;background:#f8fafc;font-size:.78rem;font-weight:850}dl{border-top:1px solid #e5ebf3;margin:.25rem 0 0;padding-top:.85rem}dt{color:#65738a;text-transform:uppercase;font-size:.78rem;font-weight:850}dd{color:#172033;margin:.2rem 0 0;font-weight:850}@media (max-width:900px){.dashboard-shell,.summary-band,.systems-grid,.field-grid,.security-layout,.data-row{grid-template-columns:1fr}.sidebar{z-index:10;width:82vw;max-width:300px;transition:transform .18s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.mobile-menu{display:inline-flex}}@media (max-width:620px){.login-page,.dashboard-main{padding:1rem}.dashboard-header{flex-wrap:wrap;align-items:flex-start}.logout-button,.compact-action{width:100%}.form-actions,.toggle-row{flex-direction:column;align-items:flex-start}}
