/* Development rules: /rules.md (project root). Iteology overrides for Metronic 9.4.6. */
:root{--primary:#2299dd;--primary-foreground:#fff;--navy:#102038;--muted:#64748b;--border:#e2e8f0;--background:#fff;--foreground:#102038;--radius:.75rem}
*{box-sizing:border-box}body{margin:0;background:#f5f8fc;color:#102038;font:14px/1.6 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{text-decoration:none;color:inherit}button,input{font:inherit}button,a,input,summary{outline-offset:4px}button,summary{cursor:pointer}h1,h2,p{margin:0}h1{font-weight:650;letter-spacing:-1.4px;line-height:1.17}h2{font-size:19px;font-weight:650;line-height:1.4}p{line-height:1.8}small{display:block}.muted{color:#64748b}.row{display:flex;align-items:center;gap:18px}.brand{display:flex;align-items:center;gap:11px;font-size:28px;font-weight:700;letter-spacing:-1px;line-height:1.1}.brand small{font-size:9px;font-weight:600;letter-spacing:2.6px;margin-top:7px;color:#64748b}.brand-mark{display:grid;place-items:center;background:#2299dd;color:white;border-radius:10px;width:43px;height:45px;font-size:37px;letter-spacing:-3px;padding-right:4px}.kt-btn{border-radius:7px;padding:10px 18px;height:auto;min-height:42px;display:inline-flex;justify-content:center;align-items:center;gap:14px;font-size:13px;font-weight:600;white-space:normal}.kt-btn-primary{background:#2299dd;border:1px solid #2299dd;color:#fff}.kt-btn-primary:hover{background:#1685c4;border-color:#1685c4}.kt-btn-outline{background:#fff;border:1px solid #dbe3ef;color:#334155}.kt-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 3px 5px #10203803}.kt-input{display:block;width:100%;height:47px;border:1px solid #dbe3ef;border-radius:7px;background:#fff;padding:10px 13px;color:#102038;min-width:0}.kt-input:focus{outline:2px solid #2299dd55;border-color:#2299dd}.kt-input::placeholder{color:#94a3b8}.public-header{max-width:1320px;margin:auto;padding:26px 44px;display:flex;align-items:center;justify-content:space-between}.public-header nav{display:flex;align-items:center;gap:35px}.header-link{font-size:13px;font-weight:550;color:#64748b}.header-link:hover,.text-link:hover{color:#1685c4}.public-content{max-width:1320px;margin:auto;padding:0 44px}.hero{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:45px;min-height:610px;padding:60px 0 75px}.eyebrow{font-size:10px;letter-spacing:1.9px;font-weight:700;color:#2299dd;display:inline-flex;align-items:center;gap:9px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#2299dd;flex-shrink:0}.hero h1{font-size:64px;margin:23px 0}.hero h1 span,.auth-intro h1 span{color:#2299dd}.hero p{color:#64748b;font-size:16px}.hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:16px;margin-top:31px}.large-btn{padding:15px 22px;min-height:51px}.secure-note{font-size:11px;color:#64748b;display:flex;align-items:center;gap:7px}.hero-visual{position:relative;min-height:430px;display:grid;place-items:center;padding:12px 24px}.visual-glow{position:absolute;inset:12px -20px;border-radius:50%;background:radial-gradient(ellipse,#2299dd1f,transparent 70%)}.quote-sheet{position:relative;width:355px;max-width:100%;padding:30px;background:#fff;box-shadow:0 20px 70px #10203814;border:1px solid #e2e8f0;border-radius:10px;transform:rotate(-5deg)}.sheet-top{display:flex;justify-content:space-between;align-items:center}.sheet-logo{font-size:9px;letter-spacing:1.5px;font-weight:750}.sheet-badge{font-size:9px;letter-spacing:1.5px;color:#2299dd;background:#eff8fe;padding:4px 8px;border-radius:4px}.sheet-title{font-weight:650;font-size:23px;line-height:1.3;margin:34px 0 18px;letter-spacing:-.5px}.sheet-line{display:inline-block;height:6px;width:115px;background:#e8eef5;border-radius:3px;vertical-align:middle}.sheet-line.wide{width:150px;display:block;margin-bottom:8px}.sheet-line.short{width:85px}.sheet-line.tiny{width:40px}.sheet-table{margin-top:28px}.sheet-table>div{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eef2f7;padding:12px 0;font-size:8px;color:#64748b}.sheet-table>div:first-child{padding-top:0;font-weight:650}.sheet-total{margin-top:23px;text-align:right;font-size:9px;color:#64748b}.sheet-total strong{display:block;font-size:20px;color:#2299dd}.sheet-foot{font-size:8px;margin-top:24px;color:#94a3b8}.floating-note{position:absolute;bottom:17px;right:-2px;display:flex;align-items:center;gap:11px;background:#fff;padding:15px 22px;border:1px solid #e2e8f0;border-radius:9px;box-shadow:0 8px 28px #1020380d;font-size:11px;font-weight:650}.floating-note small{font-weight:400;font-size:10px;color:#64748b}.check-circle{display:grid;place-items:center;border-radius:50%;background:#e9f7f1;color:#16a34a;width:30px;height:30px}.feature-grid{border-top:1px solid #e2e8f0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:36px 0 48px}.feature-number{color:#94a3b8;font-size:9px;letter-spacing:1.5px;font-weight:650}.feature-grid h2{margin:11px 0 7px;font-size:17px}.feature-grid p{font-size:12px;color:#64748b}.footer{padding:24px 36px;display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:10px;color:#94a3b8;border-top:1px solid #e2e8f0}.public-footer{max-width:1232px;margin:auto;padding-left:0;padding-right:0}.separator{padding:0 8px}.auth-wrap{min-height:calc(100vh - 191px);display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;max-width:1060px;margin:auto;padding:55px 0 70px}.auth-intro h1{font-size:51px;margin:24px 0}.auth-intro p{font-size:15px;color:#64748b}.intro-foot{margin-top:45px;font-size:11px;color:#64748b;display:flex;align-items:center;gap:9px}.auth-card{padding:38px;max-width:455px;width:100%}.auth-icon{display:grid;place-items:center;background:#edf7fe;color:#2299dd;font-size:25px;width:49px;height:49px;border-radius:11px;margin-bottom:24px}.auth-card h2{font-size:27px;letter-spacing:-.7px;margin-bottom:7px}.auth-card>.muted{font-size:12px}.stack{display:flex;flex-direction:column;gap:10px;margin-top:27px}.stack label{font-size:12px;font-weight:600;margin-top:5px}.stack .kt-btn{margin-top:14px}.full-btn{width:100%}.auth-bottom{border-top:1px solid #eef2f7;margin-top:27px;padding-top:23px;font-size:10px;color:#94a3b8;text-align:center;line-height:1.9}.auth-bottom a{color:#64748b}.error,.success{padding:12px 15px;border-radius:7px;font-size:12px;margin-top:15px}.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.security-card{max-width:620px;margin:55px auto;padding:35px}.security-card h1{font-size:30px;margin:15px 0 12px}.security-card h2{margin:25px 0 10px}.security-card p{font-size:13px}.steps{display:flex;gap:20px;margin:25px 0;border-top:1px solid #eef2f7;border-bottom:1px solid #eef2f7;padding:15px 0;color:#64748b;font-size:12px}.steps .done{color:#16804a}.qr-code{margin:25px 0;padding:12px;background:white;width:225px;max-width:100%;border:1px solid #e2e8f0;border-radius:9px}.qr-code svg{width:100%;height:auto}.manual-key{font-size:12px;overflow-wrap:anywhere}.manual-key code{display:block;padding:10px;background:#f1f5f9}.recovery-codes{margin:20px 0;display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#f8fafc;padding:20px;border-radius:8px;font-size:12px}.security-logout{margin-top:22px}.text-link{font-size:12px;color:#2299dd;font-weight:600}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;background:#102038;color:#c6d3e3;padding:30px 22px;z-index:40;display:flex;flex-direction:column}.brand.inverse{color:white;margin-bottom:47px;padding:0 8px}.brand.inverse small{color:#7f9ab8}.workspace-label{font-size:9px;letter-spacing:1.5px;color:#6c87a5;margin:0 12px 15px}.sidebar nav{font-size:13px}.sidebar summary{list-style:none;padding:12px 14px;display:flex;align-items:center;gap:12px;color:#dbe6f2}.sidebar summary:after{content:'⌄';margin-left:auto;color:#7f9ab8}.sidebar i{font-size:18px}.nav-child{display:block;margin:2px 0 12px 42px;padding:8px 12px;border-left:1px solid #3b506c;color:#91a8c1}.nav-link{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:7px}.sidebar .active{color:#fff;background:#2299dd22}.sidebar .nav-child.active{border-left:2px solid #2299dd;background:transparent}.sidebar-bottom{font-size:9px;margin-top:auto;color:#91a8c1;line-height:2}.sidebar-bottom .status-dot{width:5px;height:5px;margin-right:5px}.sidebar-bottom small{font-size:8px;color:#627d9c}.admin-main{margin-left:252px;min-height:100vh;display:flex;flex-direction:column}.admin-header{min-height:85px;border-bottom:1px solid #e2e8f0;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:20px 36px;font-size:12px}.admin-header strong{color:#334155;font-weight:550}.crumb{padding:0 13px;color:#cbd5e1}.avatar{display:grid;place-items:center;width:35px;height:35px;border:1px solid #cee5f7;background:#eff8fe;border-radius:50%;color:#1685c4;font-size:12px;font-weight:700;flex-shrink:0}.admin-content{padding:38px 36px;max-width:1500px;width:100%;margin:0 auto;flex:1}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.page-heading h1{font-size:29px;letter-spacing:-.8px;margin:9px 0}.page-heading p{font-size:12px}.pill{font-size:10px;padding:5px 10px;background:#edf8fe;border:1px solid #d8eefb;border-radius:6px;color:#1685c4;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.pill.neutral{background:#f8fafc;border-color:#e2e8f0;color:#64748b}.dashboard-banner{border-radius:12px;background:linear-gradient(115deg,#102038,#153b64);color:#fff;padding:34px 38px;display:flex;justify-content:space-between;align-items:center;min-height:260px;overflow:hidden}.dashboard-banner .eyebrow{color:#6cc6fa}.dashboard-banner h2{font-size:31px;letter-spacing:-.7px;line-height:1.25;margin:13px 0}.dashboard-banner p{font-size:12px;color:#9fb7ce}.white-btn{background:white;color:#102038;margin-top:23px;font-size:11px}.banner-mark{font-size:190px;line-height:1;font-weight:700;color:#ffffff09;letter-spacing:-25px;transform:rotate(-12deg);margin-right:30px}.banner-mark span{color:#2299dd55}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:23px 0}.info-card{padding:25px}.icon-box{display:grid;place-items:center;background:#eff8fe;color:#2299dd;border-radius:8px;width:39px;height:39px;font-size:22px;margin-bottom:22px}.info-card h2{font-size:16px;margin-bottom:10px}.info-card p{font-size:12px;color:#64748b;min-height:65px}.info-card .text-link,.info-card .pill{display:inline-flex;margin-top:17px}.ownership{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 27px;font-size:13px}.ownership p{font-size:11px;color:#64748b}.users-card{overflow:hidden}.card-toolbar{padding:22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.card-toolbar h2{font-size:16px}.search-label{width:270px;max-width:100%}.search-label input{font-size:12px;height:39px}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{background:#f8fafc;color:#64748b;font-size:10px;font-weight:550;padding:13px 22px;border-block:1px solid #e2e8f0}td{padding:22px;font-size:12px;border-bottom:1px solid #eef2f7}.user-cell{display:flex;align-items:center;gap:12px}.user-cell strong{font-size:12px;font-weight:550}.user-cell small{font-size:10px;color:#64748b;margin-top:2px}.table-note{padding:18px 22px;color:#94a3b8;font-size:10px}.mobile-menu{display:none}.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}
@media(min-width:1500px){.hero{min-height:660px}.hero h1{font-size:69px}.hero-visual{transform:scale(1.08)}}
@media(max-width:1100px){.hero h1{font-size:51px}.auth-wrap{gap:40px}.auth-intro h1{font-size:41px}.sidebar{width:225px}.admin-main{margin-left:225px}.admin-content{padding:28px 24px}.admin-header{padding:18px 24px}.dashboard-grid{gap:13px}.info-card{padding:18px}.banner-mark{font-size:145px;margin-right:10px}}
@media(max-width:800px){.public-header{padding:22px 25px}.public-content{padding:0 25px}.hero{gap:15px;padding-top:40px}.hero h1{font-size:43px}.quote-sheet{padding:23px;width:290px}.sheet-title{font-size:20px}.hero-visual{padding:10px 5px}.floating-note{right:-7px;font-size:10px;padding:12px}.hero p{font-size:13px}.feature-grid{gap:20px}.public-footer{margin:0 25px;flex-wrap:wrap;justify-content:flex-start;gap:8px 25px}.auth-wrap{grid-template-columns:1fr;max-width:460px;padding:38px 0 50px;gap:30px}.auth-intro h1{font-size:37px}.auth-intro h1 br{display:none}.auth-intro p,.intro-foot{display:none}.auth-intro .eyebrow{font-size:9px}.auth-intro h1{margin:13px 0 0}.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0);box-shadow:10px 0 40px #10203833}.admin-main{margin-left:0}.mobile-menu{display:inline-flex}.admin-header>.row{gap:10px}.admin-header .header-link{display:none}.admin-header .avatar{display:none}.admin-content{padding:25px 20px}.page-heading h1{font-size:25px}.dashboard-banner h2{font-size:28px}.footer{flex-wrap:wrap;padding:20px;font-size:9px}.security-card{margin:30px auto;padding:25px}}
@media(max-width:580px){.public-header nav{gap:12px}.public-header .header-link{display:none}.brand{font-size:24px}.brand-mark{width:37px;height:39px;font-size:33px}.brand small{font-size:8px;letter-spacing:2.1px}.hero{grid-template-columns:1fr;padding:34px 0 40px;gap:20px}.hero h1{font-size:45px;margin:20px 0}.hero p{font-size:14px}.hero-visual{min-height:425px;max-width:340px;width:100%;margin:auto}.quote-sheet{width:300px}.floating-note{bottom:0;right:0}.feature-grid{grid-template-columns:1fr;gap:25px;padding:30px 0}.feature-grid article{border-bottom:1px solid #e2e8f0;padding-bottom:22px}.feature-grid article:last-child{border:0;padding-bottom:0}.auth-card{padding:26px}.auth-intro h1{font-size:34px}.page-heading{align-items:flex-start;flex-direction:column;gap:10px}.dashboard-grid{grid-template-columns:1fr}.info-card p{min-height:0}.dashboard-banner{padding:26px}.dashboard-banner .eyebrow{font-size:8px}.dashboard-banner h2{font-size:27px}.banner-mark{display:none}.ownership{align-items:flex-start;flex-direction:column;gap:10px}.card-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.search-label{width:100%}.recovery-codes{padding:15px;font-size:10px;gap:8px}.steps{font-size:10px;gap:15px}.security-card h1{font-size:25px}.admin-header{padding:16px 20px}.admin-header .kt-btn{padding:8px 12px;font-size:11px}.admin-header .muted{font-size:11px}.crumb{padding:0 5px}.public-footer{font-size:9px}}

/* Mobile navigation dismissal. See project rules.md. */
.sidebar-close{position:absolute;right:12px;top:6px;color:#91a8c1;padding:3px 8px;min-height:25px;font-size:20px}

/* Profile forms. Development conventions: project rules.md. */
.profile-card{padding:28px;max-width:1000px;display:block}.profile-card h2{margin-bottom:8px}.profile-card>.success{margin:0 0 22px}.profile-card .muted{font-size:12px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:24px}.field{display:flex;flex-direction:column;gap:8px}.field label{font-size:12px;font-weight:600}.field small{font-size:10px}.field-error{font-size:11px;color:#b91c1c}.password-section{margin-top:30px;padding-top:25px;border-top:1px solid #e2e8f0}.profile-actions{display:flex;align-items:center;gap:22px;margin-top:30px}.sidebar-system{margin:15px 12px 5px;color:#6c87a5;font-size:9px;letter-spacing:1.5px}@media(max-width:580px){.profile-grid{grid-template-columns:1fr;gap:17px}.profile-card{padding:22px}}
