.app-shell{background:#fffaf8;color:var(--text-main);display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh;min-height:100dvh}.app-mobile-backdrop{display:none}.app-sidebar{grid-gap:1rem;background:linear-gradient(180deg,#fff2ed,#ffe7de);border-right:1px solid var(--border-soft);display:grid;gap:1rem;grid-template-rows:auto 1fr auto;min-height:100vh;min-height:100dvh;overflow-y:auto;padding:1.2rem 1rem;z-index:20}.app-brand-kicker{color:var(--text-muted);font-size:.76rem;letter-spacing:.16em;margin:0;text-transform:uppercase}.app-logo{display:block;height:auto;margin-bottom:.55rem;max-width:100%;width:160px}.app-brand-title{font-family:Sora,Space Grotesk,sans-serif;font-size:1.02rem;line-height:1.15;margin:.2rem 0 0;white-space:nowrap}.app-nav{grid-gap:.4rem;align-content:start;display:grid;gap:.4rem}.app-link{border:1px solid #0000;border-radius:10px;color:var(--text-main);font-size:.92rem;padding:.62rem .7rem;text-decoration:none}.app-link:hover{background:#e6998233;border-color:#ad261840}.app-link.is-active{background:linear-gradient(100deg,#e6998273,#d237161f);border-color:#ad261866}.app-role-box{background:#fff9;border:1px solid #ad26183d;border-radius:12px;padding:.72rem}.app-role-box p{font-size:.84rem;margin:0 0 .6rem}.app-logout{background:linear-gradient(95deg,var(--magma-500),var(--magma-700));border:1px solid #ad261859;border-radius:8px;color:#fff;cursor:pointer;padding:.45rem .5rem;width:100%}.app-content{display:grid;grid-template-rows:1fr auto;min-height:100vh;min-height:100dvh;min-width:0}.app-mobile-header{display:none}.app-content-body{min-height:0;min-width:0}.app-footer{background:#ffffffbf;border-top:1px solid var(--border-soft);color:var(--text-muted);font-size:.78rem;padding:.7rem 1rem;text-align:center}@media (max-width:920px){.app-shell{display:block}.app-mobile-backdrop{background:#290b0857;border:none;display:block;inset:0;margin:0;opacity:0;padding:0;pointer-events:none;position:fixed;transition:opacity .22s ease;z-index:19}.app-mobile-backdrop.is-open{opacity:1;pointer-events:auto}.app-sidebar{border-bottom:none;border-right:1px solid var(--border-soft);bottom:0;box-shadow:0 18px 40px #1807053d;left:0;position:fixed;top:0;transform:translateX(-108%);transition:transform .22s ease;width:min(84vw,320px)}.app-sidebar.is-open{transform:translateX(0)}.app-brand-title{white-space:normal}.app-nav{grid-template-columns:1fr}.app-mobile-header{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffaf8f5;border-bottom:1px solid var(--border-soft);display:flex;gap:.75rem;justify-content:space-between;padding:.7rem .85rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.app-mobile-toggle{align-items:center;background:#fff5f1;border:1px solid #ad261859;border-radius:9px;color:var(--magma-700);cursor:pointer;display:inline-flex;font-size:1.2rem;font-weight:700;height:42px;justify-content:center;line-height:1;padding:0;width:42px}.app-mobile-toggle-icon{transform:translateY(-1px)}.app-mobile-logo{height:auto;max-width:58vw;width:128px}.app-footer{font-size:.74rem;padding:.7rem .75rem}}.dashboard-page{background:radial-gradient(circle at 12% 8%,#e6998273 0,#0000 28%),radial-gradient(circle at 90% 92%,#ad26182e 0,#0000 34%),linear-gradient(145deg,#fffaf8,#fff2ed 38%,#ffece6);color:var(--text-main);font-family:Space Grotesk,Segoe UI,sans-serif;min-height:100vh;min-height:100dvh;overflow-x:hidden;padding:1.25rem}.dash-topbar{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1rem}.dash-kicker{color:var(--text-muted);font-size:.78rem;letter-spacing:.18em;margin:0;text-transform:uppercase}.dash-title{font-family:Sora,Space Grotesk,sans-serif;font-size:clamp(1.5rem,4vw,2rem);margin:.25rem 0 0}.dash-subtitle{color:var(--text-muted);font-size:.88rem;margin:.45rem 0 0}.dash-filter-box{grid-gap:.35rem;display:grid;gap:.35rem;min-width:min(320px,100%)}.dash-filter-box label{color:var(--text-muted);font-size:.8rem}.dash-select{background:#fff8f5;border:1px solid #ad261859;border-radius:10px;color:var(--text-main);min-width:0;padding:.55rem .65rem;width:100%}.dash-note{color:var(--text-muted);font-size:.86rem;margin:0}.dash-error{color:#b72323;font-size:.88rem;margin:0 0 .5rem}.dash-grid{grid-gap:.9rem;display:grid;gap:.9rem}.dash-grid-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:.9rem}.dash-grid-main{grid-template-columns:1.3fr 1fr;margin-bottom:.9rem}.dash-card{background:var(--card-bg);border:1px solid var(--border-soft);border-radius:16px;box-shadow:0 12px 26px #63130f17;min-width:0;padding:1rem}.dash-card-full{grid-column:1/-1}.dash-kpi-label{color:var(--text-muted);font-size:.82rem;margin:0}.dash-kpi-value{font-size:1.5rem;font-weight:700;margin:.4rem 0 .25rem}.dash-kpi-delta{color:var(--magma-700);font-size:.82rem;margin:0}.dash-section-title{font-size:1.05rem;margin:0 0 .9rem}.dash-donut-layout{grid-gap:1rem;align-items:center;display:grid;gap:1rem;grid-template-columns:auto 1fr}.dash-donut{box-shadow:inset 0 0 0 1px #63130f24;display:grid;place-items:center;width:180px}.dash-donut,.dash-donut-hole{aspect-ratio:1;border-radius:50%}.dash-donut-hole{grid-gap:.12rem;background:#fffdfa;border:1px solid #63130f1a;display:grid;gap:.12rem;place-content:center;text-align:center;width:64%}.dash-donut-hole strong{font-size:1.35rem;line-height:1}.dash-donut-hole span{color:var(--text-muted);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.dash-legend{grid-gap:.5rem;display:grid;gap:.5rem;list-style:none;margin:0;padding:0}.dash-legend li{align-items:center;display:flex;font-size:.88rem;gap:.75rem;justify-content:space-between}.dash-legend-main{align-items:center;display:inline-flex;gap:.45rem}.dash-legend-swatch{border-radius:999px;height:12px;width:12px}.dash-legend strong{color:var(--magma-700)}.dash-metric-bars{grid-gap:.78rem;display:grid;gap:.78rem}.dash-metric-row{grid-gap:.35rem;display:grid;gap:.35rem}.dash-metric-head{display:flex;font-size:.88rem;gap:.5rem;justify-content:space-between}.dash-metric-head span{min-width:0;word-break:break-word}.dash-metric-track{background:#63130f1f;border-radius:999px;height:10px;overflow:hidden}.dash-metric-fill{background:linear-gradient(90deg,var(--magma-500),var(--magma-100));border-radius:999px;height:100%}.dash-metric-meta{color:var(--text-muted);font-size:.78rem;margin:0}.dash-risk-bars{grid-gap:.65rem;display:grid;gap:.65rem}.dash-risk-row{grid-gap:.65rem;align-items:center;display:grid;gap:.65rem;grid-template-columns:minmax(180px,1fr) 2fr auto}.dash-risk-label{font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-risk-track{background:#63130f1f;border-radius:999px;height:10px;overflow:hidden}.dash-risk-fill{background:linear-gradient(90deg,#63130f,#d23716);border-radius:999px;height:100%}.dash-risk-value{color:var(--magma-700);font-size:.88rem;min-width:2ch;text-align:right}.dash-bars{grid-gap:.75rem;display:grid;gap:.75rem}.dash-bar-row{grid-gap:.35rem;display:grid;gap:.35rem}.dash-bar-head{display:flex;font-size:.88rem;gap:.5rem;justify-content:space-between}.dash-bar-head span{min-width:0;word-break:break-word}.dash-bar-track{background:#63130f1f;border-radius:999px;height:10px;overflow:hidden}.dash-bar-fill{background:linear-gradient(90deg,var(--magma-500),var(--magma-100));height:100%}.dash-inline-link{border-bottom:1px solid #ad26184d;color:var(--magma-700);text-decoration:none}.dash-inline-link:hover{border-color:#ad261873;color:var(--magma-700)}.dash-table{border-collapse:collapse;font-size:.88rem;min-width:680px;width:100%}.dash-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.dash-table td,.dash-table th{border-bottom:1px solid #63130f1f;padding:.58rem .45rem;text-align:left}.dash-table th{color:var(--text-muted)}@media (max-width:1200px){.dash-grid-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:980px){.dash-topbar{align-items:stretch}.dash-filter-box{min-width:0;width:100%}.dash-grid-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-donut-layout,.dash-grid-main{grid-template-columns:1fr}.dash-donut-layout{justify-items:center}.dash-select{min-width:100%}}@media (max-width:620px){.dashboard-page{padding:.85rem}.dash-card{padding:.82rem}.dash-grid-kpis,.dash-risk-row{grid-template-columns:1fr}.dash-risk-row{gap:.3rem}.dash-risk-value{text-align:left}.dash-donut{width:min(160px,70vw)}.dash-table{font-size:.84rem;min-width:560px}}:root{--lava-red-950:#63130f;--lava-red-900:#ad2618;--lava-red-800:#d23716;--lava-red-700:#e69982;--lava-red-500:#d23716;--lava-red-400:#e69982;--ash-100:#fff;--ash-300:#7c3b30}#root,body,html{margin:0!important;overflow-x:hidden;padding:0!important}.login-page{align-content:center;background:radial-gradient(circle at 20% 20%,#e69982a6 0,#0000 40%),radial-gradient(circle at 80% 80%,#ad261838 0,#0000 35%),linear-gradient(135deg,#fffaf8,#fff0ea 35%,#ffe6de);display:grid;font-family:Space Grotesk,Segoe UI,sans-serif;justify-items:center;min-height:100vh;min-height:100dvh;overflow:hidden;padding:1.5rem 1rem 1rem;position:relative;width:100%}.login-panel{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(160deg,#fffffff5,#fff7f3f5);border:1px solid #ad26184d;border-radius:24px;box-shadow:0 22px 44px #63130f24,inset 0 0 0 1px #ad261814;padding:2.2rem 2rem;position:relative;width:min(100%,440px);z-index:2}.login-logo{display:block;height:auto;margin:0 auto .8rem;max-width:100%;width:180px}.login-kicker{color:#7c3b30;color:var(--ash-300);font-size:.8rem;letter-spacing:.18em;margin:0 0 .35rem;text-transform:uppercase}.login-title{color:#3e1712;font-family:Sora,Space Grotesk,sans-serif;font-size:clamp(2rem,5vw,2.65rem);letter-spacing:-.02em;line-height:1.05;margin:0}.login-subtitle{color:#7c3b30;color:var(--ash-300);font-size:.95rem;line-height:1.45;margin:.75rem 0 1.6rem}.login-form{grid-gap:.8rem;display:grid;gap:.8rem}.login-label{color:#7c3b30;font-size:.84rem;letter-spacing:.03em}.login-input{background:#fff8f5;border:1px solid #ad26184d;border-radius:12px;color:#3e1712;font-size:.98rem;padding:.82rem .9rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.login-input::placeholder{color:#9f6a61}.login-input:focus{background:#fffdfb;border-color:#e69982;border-color:var(--lava-red-400);box-shadow:0 0 0 3px #ff6b422e;outline:none}.login-button{background:linear-gradient(95deg,#d23716,#e69982);background:linear-gradient(95deg,var(--lava-red-500) 0,var(--lava-red-400) 100%);border:none;border-radius:13px;box-shadow:0 12px 28px #63130f3d;color:#fff;cursor:pointer;font-size:.95rem;font-weight:700;letter-spacing:.04em;margin-top:.4rem;padding:.95rem 1rem;text-transform:uppercase;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.login-button:hover:not(:disabled){box-shadow:0 16px 30px #63130f4d;transform:translateY(-1px)}.login-button:disabled{cursor:wait;opacity:.7}.login-error{background:#b7232314;border:1px solid #b7232352;border-radius:10px;color:#8a1d1d;font-size:.86rem;margin:.2rem 0 .15rem;padding:.65rem .75rem}.login-footer{color:#7c3b30;font-size:.78rem;margin-top:.85rem;padding:0 1rem;position:static;text-align:center;width:100%}@media (max-width:540px){.login-page{align-content:start;padding:.9rem .75rem .85rem}.login-panel{border-radius:18px;padding:1.5rem 1.2rem}.login-logo{width:148px}.login-footer{font-size:.73rem}}.plan-view-page{grid-gap:.9rem;background:radial-gradient(circle at 90% 10%,#e6998273,#0000 30%),linear-gradient(145deg,#fffaf8,#fff2ed 40%,#ffece6);color:var(--text-main);display:grid;gap:.9rem;min-height:100vh;min-height:100dvh;overflow-x:hidden;padding:1.2rem}.plan-view-header{background:var(--card-bg);border:1px solid var(--border-soft);border-radius:14px;min-width:0;padding:.95rem}.plan-view-kicker{color:var(--text-muted);font-size:.74rem;letter-spacing:.15em;margin:0;text-transform:uppercase}.plan-view-title{font-family:Sora,Space Grotesk,sans-serif;font-size:clamp(1.3rem,3.2vw,1.9rem);margin:.28rem 0 0}.plan-view-subtitle{color:var(--text-muted);font-size:.88rem;margin:.5rem 0 0}.plan-view-error{color:#b72323;font-size:.88rem;margin:0}.plan-admin-grid{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:repeat(2,minmax(0,1fr))}.plan-admin-card{-webkit-overflow-scrolling:touch;background:var(--card-bg);border:1px solid var(--border-soft);border-radius:14px;box-shadow:0 10px 24px #63130f14;min-width:0;overflow-x:auto;padding:.95rem}.plan-admin-card h3{margin:0 0 .65rem}.plan-inline-form{grid-gap:.45rem;display:grid;gap:.45rem;grid-template-columns:1fr;margin-bottom:.7rem}.plan-input,.plan-select{background:#fff8f5;border:1px solid #ad26184d;border-radius:9px;color:var(--text-main);max-width:100%;padding:.52rem .62rem;width:100%}.plan-label{color:var(--text-muted);font-size:.8rem}.plan-check{align-items:center;display:flex;font-size:.86rem;gap:.45rem}.plan-btn{background:linear-gradient(95deg,var(--magma-500),var(--magma-100));border:none;border-radius:9px;color:#fff;cursor:pointer;font-weight:700;padding:.5rem .7rem}.plan-btn:disabled{cursor:not-allowed;opacity:.65}.plan-list{grid-gap:.42rem;display:grid;gap:.42rem;list-style:none;margin:0;padding:0}.plan-item{align-items:flex-start;border:1px solid #ad261833;border-radius:10px;display:flex;flex-wrap:wrap;font-size:.84rem;gap:.6rem;justify-content:space-between;padding:.5rem .55rem}.plan-item-actions{display:flex;flex-wrap:wrap;gap:.45rem}.plan-link-btn{background:none;border:none;color:var(--magma-700);cursor:pointer;padding:0}.plan-link-btn.danger{color:#b72323}.plan-view-grid{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:repeat(2,minmax(0,1fr))}.plan-view-card{-webkit-overflow-scrolling:touch;background:var(--card-bg);border:1px solid var(--border-soft);border-radius:14px;min-width:0;overflow-x:auto;padding:.95rem}.plan-view-card h2{font-size:1rem;margin:0 0 .8rem}.plan-view-layer{background:#fff8f5;border:1px solid #ad261838;border-radius:11px;margin-bottom:.65rem;padding:.75rem}.plan-view-layer h3{font-size:.95rem;margin:0 0 .45rem}.plan-view-layer p{font-size:.86rem;margin:.25rem 0}.plan-view-steps{margin:0;padding-left:1rem}.plan-view-steps li{font-size:.88rem;margin:.34rem 0}.plan-view-steps li.done{color:var(--magma-700)}.plan-view-steps li.pending{color:var(--text-muted)}.plan-view-table{border-collapse:collapse;font-size:.86rem;min-width:720px;width:100%}.plan-view-table td,.plan-view-table th{border-bottom:1px solid #63130f1f;padding:.54rem .4rem;text-align:left}.plan-badges{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.65rem}.plan-badge{border:1px solid #ad261852;border-radius:999px;color:var(--magma-700);font-size:.78rem;padding:.28rem .55rem}@media (max-width:980px){.plan-admin-grid,.plan-view-grid{grid-template-columns:1fr}}@media (max-width:620px){.plan-view-page{padding:.85rem}.plan-admin-card,.plan-view-card,.plan-view-header{padding:.8rem}.plan-btn{width:100%}.plan-view-table{font-size:.82rem;min-width:560px}}.mgmt-page{grid-gap:.9rem;background:radial-gradient(circle at 10% 5%,#e6998273,#0000 28%),linear-gradient(140deg,#fffaf8,#fff3ef 45%,#ffece6);color:var(--text-main);display:grid;gap:.9rem;min-height:100vh;min-height:100dvh;overflow-x:hidden;padding:1.2rem}.mgmt-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between}.mgmt-kicker{color:var(--text-muted);font-size:.75rem;letter-spacing:.15em;margin:0;text-transform:uppercase}.mgmt-title{font-family:Sora,Space Grotesk,sans-serif;font-size:clamp(1.35rem,3.5vw,1.95rem);margin:.2rem 0 0}.mgmt-card{background:var(--card-bg);border:1px solid var(--border-soft);border-radius:14px;box-shadow:0 10px 24px #63130f14;min-width:0;padding:.95rem}.mgmt-section-title{font-size:1rem;margin:0 0 .8rem}.mgmt-form{grid-gap:.65rem;align-items:end;display:grid;gap:.65rem;grid-template-columns:repeat(4,minmax(0,1fr))}.mgmt-label{align-self:end;color:var(--text-muted);font-size:.82rem}.mgmt-input{background:#fff8f5;border:1px solid #ad261847;border-radius:10px;color:var(--text-main);min-height:40px;padding:.58rem .65rem}.mgmt-input:focus{border-color:var(--magma-500);box-shadow:0 0 0 3px #d2371626;outline:none}.mgmt-input::placeholder{color:#a16458}.mgmt-check{align-items:center;display:flex;font-size:.88rem;gap:.45rem}.mgmt-actions{display:flex;flex-wrap:wrap;gap:.55rem}.mgmt-form>.mgmt-actions{grid-column:1/-1}.mgmt-button{background:linear-gradient(95deg,var(--magma-500),var(--magma-100));border:none;border-radius:9px;color:#fff;cursor:pointer;font-weight:700;padding:.56rem .8rem}.mgmt-button.ghost{background:#fff5f1;border:1px solid #ad261840;color:var(--magma-700)}.mgmt-error{color:#b72323;font-size:.86rem;margin:0 0 .7rem}.mgmt-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto;width:100%}.mgmt-table{border-collapse:collapse;font-size:.88rem;min-width:680px;width:100%}.mgmt-table td,.mgmt-table th{border-bottom:1px solid #63130f1f;padding:.58rem .45rem;text-align:left;vertical-align:top}.mgmt-row-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.mgmt-link{color:var(--magma-700);text-decoration:none}.mgmt-link-button{background:none;border:none;color:var(--magma-700);cursor:pointer;padding:0}.mgmt-link-button.danger{color:#b72323}@media (max-width:1060px){.mgmt-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:660px){.mgmt-page{padding:.85rem}.mgmt-form{grid-template-columns:1fr}.mgmt-table{font-size:.84rem;min-width:560px}}:root{--magma-100:#e69982;--magma-500:#d23716;--magma-700:#ad2618;--magma-900:#63130f;--bg-plain:#fffaf8;--card-bg:#fff;--text-main:#3e1712;--text-muted:#7c3b30;--border-soft:#63130f33}#root,body,html{background:#fffaf8;background:var(--bg-plain);margin:0;min-height:100%;width:100%}*{box-sizing:border-box}body{color:#3e1712;color:var(--text-main);font-family:Space Grotesk,Segoe UI,sans-serif;overflow-x:hidden}img,svg{height:auto;max-width:100%}input,select,textarea{color:#3e1712;color:var(--text-main);font:inherit;max-width:100%;width:100%}button{font:inherit}select{-webkit-appearance:none;appearance:none;background-color:#fff2ed!important;border:1px solid #ad261859;color:#3e1712!important;color:var(--text-main)!important}select:focus{border-color:#d23716;border-color:var(--magma-500);box-shadow:0 0 0 3px #d2371626;outline:none}select option{background-color:#fffaf8;color:#3e1712;color:var(--text-main)}
/*# sourceMappingURL=main.bd6339f8.css.map*/