@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap";:root{--color-primary:#44d24a;--color-primary-hover:#35b93d;--color-primary-soft:#e9fbea;--color-secondary:#4f5fef;--color-secondary-hover:#3e4dd6;--color-secondary-deep:#303db7;--color-text:#111;--color-text-secondary:#374151;--color-background:#f5f6fb;--color-surface:#fff;--color-border:#d9ddea;--color-success:#2dab34;--color-warning:#b7791f;--color-danger:#b42318;--color-sidebar:#4f5fef;--color-sidebar-hover:#6674f3;--shadow-card:0 10px 30px #2d399114;--radius:12px}*{box-sizing:border-box}html{background:var(--color-background)}body{min-width:320px;color:var(--color-text);background:var(--color-background);margin:0;font-family:DM Sans,sans-serif}button,.button{background:var(--color-primary);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:.72rem 1rem;font:600 .9rem inherit;text-decoration:none;display:inline-flex}button:hover,.button:hover{background:var(--color-primary-hover)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid color-mix(in srgb,var(--color-primary) 40%,white);outline-offset:2px}button:disabled{opacity:.55;cursor:not-allowed}.secondary{background:var(--color-secondary);color:#fff}.secondary:hover{background:var(--color-secondary-hover)}.neutral{color:var(--color-text);border:1px solid var(--color-border);background:#fff}.danger{background:var(--color-danger)}.ghost{color:#fff;background:0 0;border:1px solid #fff;width:100%}.link{color:var(--color-secondary);background:0 0;min-height:auto;padding:.25rem}.small{min-height:36px;padding:.45rem .7rem}a{color:var(--color-secondary)}input,select,textarea{border:1px solid var(--color-border);width:100%;font:inherit;color:inherit;background:#fff;border-radius:8px;margin-top:.4rem;padding:.72rem}label{color:var(--color-text-secondary);font-size:.84rem;font-weight:600}small{color:var(--color-text-secondary);margin-top:.25rem;display:block}h1,h2{margin-top:0;font-family:Manrope,sans-serif}h1{letter-spacing:-.03em;font-size:2rem}h2{font-size:1.08rem}p{color:var(--color-text-secondary)}.shell{grid-template-columns:260px 1fr;min-height:100vh;display:grid}aside{background:var(--color-sidebar);color:#fff;flex-direction:column;height:100vh;padding:1.25rem 1rem;display:flex;position:sticky;top:0}nav{flex-direction:column;flex:1;gap:.2rem;display:flex;overflow-y:auto}nav a,nav summary{color:#fff;cursor:pointer;border-radius:7px;padding:.62rem .75rem;font-size:.88rem;text-decoration:none}nav a.active{background:var(--color-primary);font-weight:700}nav a:hover,nav summary:hover{background:var(--color-sidebar-hover)}.nav-group summary{justify-content:space-between;font-weight:700;list-style:none;display:flex}.nav-group>div{padding-left:.5rem;display:grid}.company-logo{color:inherit;align-items:center;gap:.7rem;font:700 1rem Manrope;display:flex}.company-logo img{object-fit:contain;width:auto;max-width:180px;height:auto;max-height:70px;display:block}.company-logo.compact{justify-content:center;margin-bottom:1rem}.company-logo.compact img{max-width:150px;max-height:46px}.workspace>header{border-bottom:1px solid var(--color-border);background:#fff;justify-content:space-between;align-items:center;min-height:64px;padding:0 2rem;display:flex}.workspace>header .company-logo{color:var(--color-secondary)}.workspace>header>div:last-child{text-align:right;font-size:.86rem}.workspace main{max-width:1400px;margin:auto;padding:2rem}.page-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.page-head h1{margin-bottom:.2rem}.page-head p{margin:0}.card{border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-card);background:#fff;margin-bottom:1rem;padding:1.25rem}.metric-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.2rem;display:grid}.metric{border:1px solid var(--color-border);border-radius:var(--radius);border-top:3px solid var(--color-primary);background:#fff;padding:1.2rem}.metric strong{font:800 2rem Manrope;display:block}.metric span{color:var(--color-text-secondary);font-size:.85rem}.two-col,.detail-grid{grid-template-columns:1fr 1fr;gap:1.2rem;display:grid}.quick{gap:.6rem;display:grid}.quick a{background:var(--color-background);border-radius:8px;padding:.8rem;text-decoration:none}.table-wrap{padding:0;overflow:auto}table{border-collapse:collapse;width:100%;font-size:.88rem}th,td{text-align:left;border-bottom:1px solid var(--color-border);padding:.9rem}th{color:var(--color-text-secondary);text-transform:uppercase;background:var(--color-background);font-size:.75rem}.status{white-space:nowrap;background:#e5e7eb;border-radius:100px;padding:.3rem .6rem;font-size:.75rem;display:inline-block}.status.in_progress,.status.approved{color:var(--color-success);background:#dff4e8}.status.pending_documents,.status.observed{color:var(--color-warning);background:#fff3d6}.status.cancelled{color:var(--color-danger);background:#fee4e2}.empty{text-align:center;color:var(--color-text-secondary);gap:.4rem;padding:3rem;display:grid}.alert{color:var(--color-danger);background:#fee4e2;border-radius:8px;margin-bottom:1rem;padding:.8rem 1rem}.alert.info{color:var(--color-secondary);background:#e6eff8}.alert.success{color:var(--color-success);background:#dff4e8}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.wide{grid-column:1/-1}.actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.inline-form,.filters{align-items:end;gap:1rem;margin-bottom:1rem;display:flex}.inline-form label{flex:1}.filter-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;display:grid}.list{padding:0}.list>div,.history>div{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.center{place-items:center;min-height:100vh;display:grid}.login{background:#fff;grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-copy{background:var(--color-secondary-hover);color:#fff;flex-direction:column;justify-content:center;padding:8vw;display:flex}.login-copy h1{max-width:620px;margin:2rem 0;font-size:4rem;line-height:1}.login-copy p{color:#dbe6f2;max-width:520px}.login-stat{border-left:3px solid var(--color-primary);margin-top:2rem;padding-left:1rem}.login-card{width:min(420px,82%);margin:auto}.login-card h2{font-size:2rem}.login-card label{margin:1rem 0;display:block}.login-card button{width:100%}.eyebrow{letter-spacing:.12em;font-weight:700;color:#72d39b!important}.auth-page{place-items:center;min-height:100vh;display:grid}.agenda-list{gap:.75rem;display:grid}.agenda-item{color:inherit;grid-template-columns:90px 1fr auto;align-items:center;gap:1rem;text-decoration:none;display:grid}.agenda-item time{color:var(--color-secondary);font-weight:700}.chart{height:360px}.print-only{display:none}@media (width<=800px){.shell{display:block}.shell aside{height:auto;padding:.8rem;position:static}.shell nav{max-height:48vh}.workspace>header{display:none}.workspace main{padding:1rem}.metric-grid{grid-template-columns:1fr 1fr}.two-col,.detail-grid,.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.page-head{flex-direction:column}.login{grid-template-columns:1fr}.login-copy{display:none}.login-card{padding:2rem 0}.inline-form,.filters{flex-direction:column;align-items:stretch}.agenda-item{grid-template-columns:1fr}.actions{justify-content:flex-start}}@media (width<=480px){.metric-grid{grid-template-columns:1fr}h1{font-size:1.55rem}button,.button{width:100%}}@media print{aside,.workspace>header,.no-print{display:none!important}.shell{display:block}.workspace main{padding:0}.card{box-shadow:none}.print-only{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex!important}.metric-grid{grid-template-columns:repeat(4,1fr)}}aside{background:linear-gradient(165deg,var(--color-sidebar) 0%,var(--color-secondary-deep) 100%);isolation:isolate;overflow:hidden}aside:before{content:"";z-index:-1;pointer-events:none;background:repeating-linear-gradient(135deg,#0000 0 42px,#ffffff0e 42px 43px),radial-gradient(circle at 115% 15%,#44d24a61 0 90px,#0000 91px),radial-gradient(circle at -15% 88%,#ffffff14 0 120px,#0000 121px);position:absolute;inset:0}aside:after{content:"";z-index:-1;border:1px solid #ffffff2b;border-radius:36px;width:170px;height:170px;position:absolute;bottom:12%;right:-92px;transform:rotate(28deg);box-shadow:0 0 0 22px #ffffff06,0 0 0 44px #ffffff05}.company-logo{justify-content:center;overflow:hidden}.company-logo img{mix-blend-mode:multiply;width:250px;max-width:none;height:auto;max-height:none}.company-logo.compact{background:#fffffff5;border-radius:12px;height:78px;margin-bottom:1rem;padding:.25rem}.company-logo.compact img{width:225px}.workspace>header .company-logo.compact{background:0 0;width:150px;height:52px;margin:0}.workspace>header .company-logo.compact img{width:150px}.login-copy{background:linear-gradient(145deg,var(--color-secondary) 0%,var(--color-secondary-deep) 100%);isolation:isolate;position:relative;overflow:hidden}.login-copy:before{content:"";z-index:-1;background:repeating-linear-gradient(125deg,#0000 0 58px,#fff1 58px 59px),radial-gradient(circle at 85% 12%,#44d24a59 0 110px,#0000 111px);position:absolute;inset:0}.login-copy:after{content:"";border:1px solid #ffffff29;border-radius:82px;width:430px;height:430px;position:absolute;bottom:-210px;right:-240px;transform:rotate(38deg);box-shadow:0 0 0 38px #ffffff08,0 0 0 76px #ffffff05}.login-copy>.company-logo{background:#fff;border-radius:16px;align-self:flex-start;width:280px;height:130px}.login-copy>.company-logo img{width:350px}.login-card>.company-logo{height:110px;margin-bottom:1rem}.login-card>.company-logo img{width:300px}.card{transition:border-color .2s,box-shadow .2s}.card:hover{border-color:color-mix(in srgb,var(--color-secondary) 25%,var(--color-border));box-shadow:0 14px 36px #2d39911a}.company-logo img{object-fit:contain;mix-blend-mode:multiply;width:auto;max-width:100%;height:auto;max-height:100%}.company-logo.compact{background:0 0;border-radius:0;width:100%;height:88px;margin:0 0 1rem;padding:0}.company-logo.compact img{object-fit:contain;width:auto;max-width:200px;max-height:86px}.workspace>header .company-logo.compact{width:190px;height:70px;margin:0}.workspace>header .company-logo.compact img{max-width:185px;max-height:68px}.login-card>.company-logo{height:125px;margin:0 0 .5rem}.login-card>.company-logo img{object-fit:contain;width:auto;max-width:310px;max-height:120px}@media (width<=800px){.company-logo.compact{height:66px}.company-logo.compact img{max-width:170px;max-height:64px}.login-card>.company-logo{height:100px}.login-card>.company-logo img{max-width:250px;max-height:96px}}.workspace>header{gap:1.5rem;min-height:150px;padding:0 2rem}.workspace>header .header-logo{background:0 0;flex:0 380px;justify-content:flex-start;width:min(380px,45vw);height:140px;margin:0;padding:0}.workspace>header .header-logo img{object-fit:contain;width:100%;max-width:380px;height:100%;max-height:140px}.workspace>header>div:last-child{flex:none}.dashboard-operations>h2{margin-bottom:.2rem;font-size:1.35rem}.dashboard-operations>p{margin-top:0;margin-bottom:1.25rem}.indicator-chart-scroll{max-height:720px;overflow:hidden auto}.indicator-chart{min-width:0}.indicator-period{color:var(--color-text);margin:.25rem 0 1rem;font-weight:700}.indicator-note{color:var(--color-text-secondary);font-size:.85rem}.indicator-table td:nth-child(3),.indicator-table th:nth-child(3){text-align:right}@media (width<=800px){.workspace>header{gap:.75rem;min-height:112px;padding:.65rem 1rem;display:flex}.workspace>header .header-logo{flex-basis:250px;width:min(250px,58vw);height:96px}.workspace>header .header-logo img{max-width:250px;max-height:96px}.workspace>header>div:last-child{max-width:34vw;font-size:.75rem}.page-head h1{font-size:1.7rem}}@media (width<=480px){.workspace>header{min-height:96px}.workspace>header .header-logo{flex-basis:205px;width:min(205px,57vw);height:78px}.workspace>header .header-logo img{max-width:205px;max-height:78px}.page-head h1{font-size:1.55rem}}
