@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap";:root{color:#17211d;font-synthesis:none;--green:#16a36a;--deep:#07140f;--border:#dfe7e2;--muted:#6c7771;background:#f3f6f4;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}.login-page{background:#fbfdfc;grid-template-columns:1.05fr .95fr;min-height:100vh;display:grid}.login-visual{background:radial-gradient(circle at 20% 20%, #173c2c 0, transparent 36%), radial-gradient(circle at 80% 85%, #0b4730 0, transparent 30%), var(--deep);color:#fff;flex-direction:column;padding:42px 7vw;display:flex;position:relative;overflow:hidden}.login-visual:after{content:"";opacity:.12;background-image:linear-gradient(#fff 1px,#0000 1px),linear-gradient(90deg,#fff 1px,#0000 1px);background-size:54px 54px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(to bottom right,#000,#0000 72%);mask-image:linear-gradient(to bottom right,#000,#0000 72%)}.brand{z-index:1;align-items:center;gap:11px;font:800 20px Manrope;display:flex}.brand-mark{color:#062116;background:#43df9e;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.hero-copy{z-index:1;max-width:560px;margin:auto 0;position:relative}.eyebrow{color:#5fe3aa;text-transform:uppercase;letter-spacing:2px;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.hero-copy h1{letter-spacing:-4px;margin:23px 0;font:700 clamp(48px,6vw,78px)/1.02 Manrope}.hero-copy h1 em{color:#55e5a7;font-style:normal}.hero-copy>p{color:#a9bcb3;max-width:470px;font-size:18px;line-height:1.7}.signal-card{background:#10241bcd;border:1px solid #315143;border-radius:16px;align-items:center;gap:15px;max-width:390px;margin-top:50px;padding:18px 20px;display:flex;box-shadow:0 20px 50px #0005}.signal-card div{flex-direction:column;flex:1;gap:4px;display:flex}.signal-card small{color:#879d93}.signal-card>svg{color:#48d99e}.pulse{background:#42e19f;border-radius:50%;width:10px;height:10px;box-shadow:0 0 0 7px #42e19f1c}.login-footnote{z-index:1;color:#678176;font-size:13px;position:relative}.login-panel{place-items:center;padding:40px;display:grid}.login-form{width:min(410px,100%)}.mobile-brand{display:none}.overline{color:var(--green);letter-spacing:2px;font-size:12px;font-weight:800}.login-form h2{letter-spacing:-1.3px;margin:14px 0 8px;font:700 34px Manrope}.muted{color:var(--muted);margin:0 0 34px}label{color:#28332e;font-size:14px;font-weight:600;display:block}.login-form label{margin-top:20px}input,textarea,select{color:#17211d;background:#fff;border:1px solid #d8e1dc;border-radius:10px;outline:none;width:100%;transition:all .2s}input,select{height:46px;padding:0 13px}textarea{resize:vertical;padding:13px;line-height:1.55}input:focus,textarea:focus,select:focus{border-color:#25ac75;box-shadow:0 0 0 3px #20a96e18}.input-wrap{color:#819089;background:#fff;border:1px solid #d8e1dc;border-radius:10px;align-items:center;margin-top:8px;padding-left:13px;display:flex}.input-wrap:focus-within{border-color:#25ac75;box-shadow:0 0 0 3px #20a96e18}.input-wrap input{box-shadow:none;background:0 0;border:0}.input-wrap input:focus{box-shadow:none}.icon-button{color:#7d8a84;background:0 0;border:0;padding:8px 12px;display:grid}.primary,.secondary{border:0;border-radius:10px;justify-content:center;align-items:center;gap:9px;font-weight:700;display:inline-flex}.primary{background:var(--green);color:#fff;box-shadow:0 8px 22px #16a36a2d}.primary:hover{background:#0e915c}.primary:disabled,.secondary:disabled{opacity:.6;cursor:wait}.login-button{justify-content:space-between;width:100%;height:48px;margin-top:26px;padding:0 18px}.secure-note{color:#89958f;justify-content:center;align-items:center;gap:6px;margin-top:23px;font-size:12px;display:flex}.alert{border-radius:10px;align-items:center;gap:9px;margin:15px 0;padding:13px 15px;font-size:13px;display:flex}.alert.error{color:#a93838;background:#fff0f0;border:1px solid #f8cece}.alert.success{color:#13774e;background:#ecfbf4;border:1px solid #bee9d3}.app-shell{grid-template-columns:238px 1fr;min-height:100vh;display:grid}.sidebar{color:#fff;z-index:5;background:#0a1712;flex-direction:column;width:238px;padding:28px 20px;display:flex;position:fixed;inset:0 auto 0 0}.sidebar nav{flex-direction:column;gap:6px;margin-top:50px;display:flex}.sidebar nav>span{color:#52675d;letter-spacing:1.8px;margin:0 12px 10px;font-size:10px;font-weight:700}.sidebar nav button{color:#84978e;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:11px;width:100%;padding:11px 12px;font-size:14px;display:flex}.sidebar nav button:hover{color:#bdd0c6}.sidebar nav button.active{color:#63e5ad;background:#173528}.sidebar nav button small{color:#88aa9a;background:#284438;border-radius:10px;place-items:center;min-width:21px;height:19px;margin-left:auto;padding:0 6px;font-size:9px;display:grid}.sidebar nav button.active small{color:#5fe3aa}.account{border-top:1px solid #20342b;align-items:center;gap:10px;margin-top:auto;padding-top:19px;display:flex}.account>span{color:#72efb8;background:#1f553d;border-radius:9px;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.account div{flex-direction:column;flex:1;display:flex}.account strong{font-size:13px}.account small{color:#647b70;font-size:11px}.account button{color:#71847b;background:0 0;border:0;display:grid}.dashboard{grid-column:2;align-self:start;width:100%;max-width:1500px;margin:0 auto;padding:38px clamp(28px,4vw,64px) 70px}.topbar{justify-content:space-between;align-items:flex-end;margin-bottom:28px;display:flex}.breadcrumb{color:#8b9791;font-size:12px}.topbar h1{letter-spacing:-1px;margin:7px 0 4px;font:750 32px Manrope}.topbar p{color:var(--muted);margin:0}.secondary{color:#26342d;background:#fff;border:1px solid #cfdad4;height:42px;padding:0 16px}.status-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.status-card{border:1px solid var(--border);background:#fff;border-radius:13px;align-items:flex-start;gap:14px;min-height:103px;padding:19px;display:flex}.status-icon{color:#63736b;background:#f0f4f2;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.status-card.green .status-icon{color:#118b58;background:#e5f8ef}.status-card.red .status-icon{color:#b54141;background:#fff0f0}.status-card>div:last-child{flex-direction:column;gap:3px;display:flex}.status-card span{color:#88938e;text-transform:uppercase;letter-spacing:.8px;font-size:11px;font-weight:700}.status-card strong{font:700 16px Manrope}.status-card small{color:#78867f}.config-layout{grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);align-items:start;gap:18px;margin-top:20px;display:grid}.form-column,.side-column{flex-direction:column;gap:18px;display:flex}.base-config-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:start;gap:18px;margin-top:20px;display:grid}.base-schedule{padding-top:4px}.base-save{width:calc(100% - 42px);height:44px;margin:2px 21px 21px}.panel{border:1px solid var(--border);background:#fff;border-radius:14px;overflow:hidden}.panel-heading{border-bottom:1px solid #e8eeea;align-items:center;gap:13px;padding:20px 22px;display:flex}.panel-icon{color:#11915c;background:#e4f8ee;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.panel-icon.violet{color:#7654d8;background:#f0ebff}.panel-heading h2{margin:0 0 3px;font:700 16px Manrope}.panel-heading p{color:#829088;margin:0;font-size:12px}.step{color:#c4ccc8;margin-left:auto;font:700 11px Manrope}.panel-heading.compact{border:0;padding-bottom:12px}.fields{flex-direction:column;gap:21px;padding:22px;display:flex}.fields label>input,.fields label>textarea,.fields label>.input-wrap,.fields label>.secret-field{margin-top:8px}.fields label>small{color:#8a9690;margin-top:6px;font-weight:400;display:block}.required,.optional{text-transform:uppercase;letter-spacing:.5px;border-radius:5px;margin-left:8px;padding:3px 6px;font-size:9px}.required{color:#128657;background:#e8f8f0}.optional{color:#77837d;background:#eff3f1}.two-columns{grid-template-columns:1.2fr .8fr;display:grid}.secret-field{position:relative}.secret-field button{color:#73817a;background:#fff;border:0;border-radius:5px;padding:6px;position:absolute;top:9px;right:9px}.masked{-webkit-text-security:disc}.schedule-fields{padding:2px 21px 20px}.schedule-fields>label{margin-top:17px}.schedule-fields select{margin-top:8px}.toggle-row{border-bottom:1px solid #edf1ef;justify-content:space-between;align-items:center;padding:15px 0;display:flex}.toggle-row div{flex-direction:column;gap:3px;display:flex}.toggle-row span{color:#89958f;font-size:11px;font-weight:400}.toggle{background:#ccd5d0;border:0;border-radius:20px;width:40px;height:23px;padding:3px;transition:all .2s}.toggle span{background:#fff;border-radius:50%;width:17px;height:17px;transition:all .2s;display:block;box-shadow:0 1px 4px #0003}.toggle.on{background:var(--green)}.toggle.on span{transform:translate(17px)}.save-button{width:calc(100% - 42px);height:44px;margin:0 21px}.save-note{color:#89958f;justify-content:center;align-items:center;gap:5px;margin:13px 0 18px;font-size:11px;display:flex}.sticky-panel{position:sticky;top:20px}.activity-panel{max-height:390px}.url-list{max-height:300px;padding:0 14px 14px;overflow:auto}.url-list a{color:#56645d;border-radius:8px;align-items:center;gap:9px;padding:9px;font-size:11px;text-decoration:none;display:flex}.url-list a:hover{color:#138357;background:#f1f7f4}.url-list a span{background:#edf2ef;border-radius:6px;flex:0 0 21px;place-items:center;height:21px;font-size:9px;display:grid}.url-list a p{white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;overflow:hidden}.empty{text-align:center;color:#9aa59f;padding:30px}.empty p{font-size:12px;line-height:1.5}.source-count{color:#5c6c64;background:#edf3f0;border-radius:20px;margin-left:auto;padding:5px 10px;font-size:11px;font-weight:700}.sources-list{background:#f7faf8;flex-direction:column;gap:14px;padding:18px;display:flex}.source-card{background:#fff;border:1px solid #dce6e0;border-radius:12px;padding:17px;box-shadow:0 3px 10px #13271e08}.source-card-head{grid-template-columns:32px minmax(120px,1fr) auto 34px;align-items:center;gap:10px;margin-bottom:15px;display:grid}.source-number{color:#158b59;background:#e6f8ef;border-radius:8px;place-items:center;width:30px;height:30px;font:700 10px Manrope;display:grid}.source-card-head>input{height:38px;font-weight:700}.source-card-head .toggle-row{border:0;gap:9px;padding:0}.source-card-head .toggle-row>div span{display:none}.source-card-head .toggle-row strong{white-space:nowrap;font-size:11px}.delete-source{color:#99a49f;background:0 0;border:0;border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.delete-source:hover:not(:disabled){color:#c54747;background:#fff0f0}.delete-source:disabled{opacity:.25;cursor:not-allowed}.source-card label textarea{margin-top:8px}.source-card label>small{color:#8a9690;margin-top:6px;font-weight:400;display:block}.source-error{color:#a93838;white-space:nowrap;text-overflow:ellipsis;background:#fff2f2;border-radius:7px;margin-top:10px;padding:8px 10px;font-size:11px;overflow:hidden}.add-source{color:#118756;background:#f2fbf7;border:1px dashed #94c9ae;border-radius:10px;justify-content:center;align-items:center;gap:8px;height:44px;font-weight:700;display:flex}.add-source:hover{background:#e8f8f0;border-color:#39a975}.url-list.grouped{padding-top:3px}.url-group+.url-group{border-top:1px solid #e8eeea;margin-top:9px;padding-top:9px}.url-group h3{align-items:center;gap:7px;margin:4px 8px 5px;font-size:11px;display:flex}.url-group h3>span{background:#b7c2bc;border-radius:50%;width:7px;height:7px}.url-group h3>span.online{background:#25b576}.url-group h3 small{color:#929d97;margin-left:auto;font-weight:500}.header-actions{gap:9px;display:flex}.add-page-button{height:42px;padding:0 16px}.source-summary{border:1px solid var(--border);background:#fff;border-radius:13px;grid-template-columns:repeat(4,1fr);margin-bottom:18px;display:grid;overflow:hidden}.source-summary>div{border-right:1px solid #e8eeea;flex-direction:column;gap:2px;padding:17px 20px;display:flex}.source-summary>div:last-child{border:0}.source-summary strong{font:750 22px Manrope}.source-summary span{color:#849089;font-size:11px}.source-summary .has-error strong{color:#ba3e3e}.source-table-panel{overflow:visible}.source-table-head{color:#8a9690;text-transform:uppercase;letter-spacing:.7px;background:#f7faf8;border-bottom:1px solid #e4ebe7;border-radius:14px 14px 0 0;grid-template-columns:minmax(230px,1.5fr) 120px 105px 155px 145px;gap:14px;padding:12px 20px;font-size:9px;font-weight:800;display:grid}.source-table-body{padding:0 20px}.source-row{border-bottom:1px solid #e8eeea;grid-template-columns:minmax(230px,1.5fr) 120px 105px 155px 145px;align-items:center;gap:14px;min-height:82px;display:grid;position:relative}.source-row:last-child{border:0}.source-identity{align-items:center;gap:12px;min-width:0;display:flex}.source-identity>div{flex-direction:column;gap:3px;min-width:0;display:flex}.source-identity strong{white-space:nowrap;text-overflow:ellipsis;font:700 14px Manrope;overflow:hidden}.source-identity small{color:#919c96;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.empty-source-list{text-align:center;flex-direction:column;align-items:center;padding:55px 20px 60px;display:flex}.empty-source-list>span{color:#168b59;background:#e8f8f0;border-radius:13px;place-items:center;width:48px;height:48px;display:grid}.empty-source-list h3{margin:14px 0 5px;font:700 15px Manrope}.empty-source-list p{color:#849089;margin:0 0 17px;font-size:12px}.empty-source-list button{height:38px;padding:0 14px}.status-pill{color:#718078;background:#eef2f0;border:0;border-radius:20px;justify-self:start;align-items:center;gap:6px;padding:6px 10px;font-size:10px;font-weight:700;display:flex}.status-pill i{background:#9ba7a1;border-radius:50%;width:6px;height:6px}.status-pill.enabled{color:#13764e;background:#e9f8f1}.status-pill.enabled i{background:#21b273}.status-pill:disabled{opacity:.6}.snapshot-cell,.last-check-cell{flex-direction:column;gap:3px;display:flex}.snapshot-cell strong{font:700 16px Manrope}.snapshot-cell strong small{color:#a1aba6;font-size:10px}.snapshot-cell span,.last-check-cell span{color:#89958f;font-size:10px}.last-check-cell strong{font-size:11px}.error-text{color:#ba3e3e}.row-actions{justify-content:flex-end;align-items:center;gap:5px;display:flex}.config-source{color:#2b3b33;background:#fff;border:1px solid #d6e1db;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 10px;font-size:11px;font-weight:700;display:flex}.config-source:hover{color:#0e8352;background:#f4fbf7;border-color:#83c9a8}.row-error{color:#a83d3d;text-overflow:ellipsis;white-space:nowrap;background:#fff3f3;border-radius:6px;grid-column:1/-1;align-items:center;gap:7px;margin:-4px 0 10px 42px;padding:7px 9px;font-size:10px;display:flex;overflow:hidden}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#03110bd1;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.source-modal{background:#fff;border-radius:16px;width:min(680px,100%);max-height:calc(100vh - 48px);overflow:auto;box-shadow:0 30px 90px #0007}.modal-head{border-bottom:1px solid #e5ebe8;justify-content:space-between;padding:21px 23px;display:flex}.modal-head span{color:#14915d;letter-spacing:1.4px;font-size:9px;font-weight:800}.modal-head h2{margin:5px 0 0;font:750 20px Manrope}.modal-head>button{color:#6d7b74;background:#f0f4f2;border:0;border-radius:8px;align-self:flex-start;padding:7px;display:grid}.modal-body{flex-direction:column;gap:20px;padding:22px 23px;display:flex}.modal-body label>input,.modal-body label>textarea{margin-top:8px}.modal-body label>small{color:#8b9791;margin-top:6px;font-weight:400;display:block}.modal-body .toggle-row{border:1px solid #e1e8e4;border-radius:10px;padding:12px 13px}.modal-actions{background:#f7faf8;border-top:1px solid #e4ebe7;border-radius:0 0 16px 16px;justify-content:flex-end;gap:9px;padding:16px 23px;display:flex}.modal-actions button{height:40px;padding:0 16px}.center-screen{color:#708078;justify-content:center;align-items:center;gap:10px;min-height:100vh;display:flex}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1100px){.source-table-head{display:none}.source-table-body{padding:8px 18px}.source-row{grid-template-columns:minmax(220px,1fr) 110px 95px 135px;padding:12px 0}.row-actions{grid-area:1/4}.last-check-cell{grid-area:2/2/auto/4}.snapshot-cell{grid-area:2/1;margin-left:42px}.row-error{grid-row:3}}@media (width<=980px){.app-shell{display:block}.sidebar{flex-direction:row;align-items:center;width:100%;height:68px;padding:0 20px;position:static}.sidebar nav{flex-direction:row;margin:0 0 0 30px}.sidebar nav>span{display:none}.sidebar nav button{width:auto}.account{border:0;margin:0 0 0 auto;padding:0}.dashboard{padding:28px 20px 60px}.config-layout,.base-config-grid{grid-template-columns:1fr}.sticky-panel{position:static}}@media (width<=720px){.login-page{background:#fff;display:block}.login-visual{display:none}.login-panel{min-height:100vh;padding:28px}.mobile-brand{align-items:center;gap:9px;margin-bottom:55px;font:800 18px Manrope;display:flex}.topbar{align-items:flex-start;gap:18px}.topbar p{display:none}.topbar h1{font-size:26px}.header-actions{flex-direction:column}.secondary{white-space:nowrap;padding:0 12px}.status-grid{grid-template-columns:1fr}.source-summary{grid-template-columns:1fr 1fr}.source-summary>div:nth-child(2){border-right:0}.source-summary>div:nth-child(-n+2){border-bottom:1px solid #e8eeea}.two-columns{grid-template-columns:1fr}.sidebar .account div,.sidebar nav button small{display:none}.sidebar nav{margin-left:12px}.sidebar nav button{padding:9px;font-size:0}.panel-heading{padding:17px}.fields{padding:18px}.source-row{grid-template-columns:1fr auto;gap:10px;padding:16px 0;display:grid}.source-identity{grid-column:1}.status-pill{grid-area:1/2}.snapshot-cell{grid-area:2/1;margin-left:42px}.last-check-cell{grid-area:3/1;margin-left:42px}.row-actions{flex-direction:column;grid-area:2/2/4}.row-error{grid-area:4/1/auto/-1;margin-left:42px}.modal-backdrop{padding:10px}.source-modal{max-height:calc(100vh - 20px)}}
