:root{--ink:#172923;--dark:#102d28;--dark2:#173b34;--green:#0b805c;--mint:#d7f6e7;--orange:#f5a340;--bg:#f6f8f7;--white:#fff;--line:#e6eeea;--muted:#78867f;--shadow:0 10px 40px rgba(14,48,34,.05)}
*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}body{margin:0;background:var(--bg);color:var(--ink);font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}[hidden]{display:none!important}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #96dbbc;outline-offset:2px}.shell{min-height:100vh;display:flex}.sidebar{width:252px;flex:none;background:var(--dark);color:#e9f8f0;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;padding:30px 15px 20px}.brand{display:flex;align-items:center;gap:13px;padding:3px 13px 34px}.brand-icon{width:42px;height:42px;border-radius:13px;background:#d6f6e4;color:#124634;display:grid;place-items:center;font-size:14px;font-weight:950;letter-spacing:-.07em;position:relative}.brand-icon span{color:#e39e3a;margin-left:2px}.brand strong{display:block;font-size:15px;letter-spacing:-.02em}.brand small{display:block;font-size:9px;letter-spacing:.21em;color:#9dc2ae;margin-top:5px;font-weight:800}.workspace-label{margin:10px 17px 12px;color:#80a99c;font-size:10px;font-weight:800;letter-spacing:.13em}.nav-item{display:flex;width:100%;align-items:center;gap:13px;border:none;background:none;color:#b8d1c5;font-weight:650;text-align:left;padding:13px 16px;border-radius:12px;margin:3px 0;transition:background .12s}.nav-item:hover{background:#214638;color:#fff}.nav-item.active{color:#173d30;background:#bcebd4}.nav-icon{font-size:17px;width:21px;display:grid;place-items:center}.sidebar-bottom{margin-top:auto;padding:15px 9px 0;border-top:1px solid #315246}.server-pill{display:flex;align-items:center;gap:9px;color:#a6ceb6;font-size:11px;margin:5px 7px 21px}.status-dot{width:8px;height:8px;background:#46d69f;border-radius:50%;box-shadow:0 0 0 3px rgba(70,214,159,.13);display:inline-block;flex:none}.userbox{display:flex;align-items:center;gap:12px}.userbox strong{font-size:13px;display:block}.userbox small{font-size:10px;color:#96bfaf}.avatar,.top-avatar{background:#ecc79b;color:#754209;display:grid;place-items:center;border-radius:50%;font-weight:850;width:36px;height:36px}.content-wrap{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{background:#fff;min-height:79px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,52px)}.crumb{color:#96a29c;font-size:11px;font-weight:750;letter-spacing:.08em}.slash{color:#c9d6cd;margin:0 12px}.topbar strong{font-size:13px}.top-actions{display:flex;align-items:center;gap:20px}.env-chip{border:1px solid #dcebe2;padding:9px 13px;border-radius:999px;color:#51826c;font-size:11px;font-weight:750;display:flex;align-items:center;gap:8px}.top-avatar{width:34px;height:34px;font-size:13px}.main{padding:38px clamp(20px,4vw,52px) 50px;flex:1;max-width:1660px;width:100%;margin:0 auto}.footer{border-top:1px solid #e7eee9;padding:18px clamp(20px,4vw,52px);color:#9ca9a2;font-size:11px;display:flex;justify-content:space-between;gap:15px}.heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:27px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--green);font-weight:850;font-size:10px;margin:0 0 10px}.page-title{font-size:clamp(25px,3vw,34px);line-height:1.2;letter-spacing:-.045em;margin:0 0 8px}.sub{color:var(--muted);margin:0;line-height:1.65;max-width:700px}.btn{background:var(--green);color:white;border:1px solid var(--green);border-radius:11px;padding:12px 17px;display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:800;white-space:nowrap;box-shadow:0 5px 12px rgba(0,98,70,.09)}.btn:hover{filter:brightness(.95)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.secondary{background:white;color:#245849;border-color:#cfdfd4;box-shadow:none}.btn.danger{background:#fff4f0;color:#b54734;border-color:#f5d5ca;box-shadow:none}.btn.tiny{padding:7px 10px;border-radius:8px;font-size:11px}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:9px;width:33px;height:33px;display:inline-grid;place-items:center;color:#70867c}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:26px}.kpi{background:white;border:1px solid var(--line);border-radius:17px;padding:22px 23px;min-width:0;box-shadow:var(--shadow)}.kpi-top{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-bottom:24px}.kpi-title{color:#788a81;font-weight:700;font-size:11px}.kpi-icon{width:33px;height:33px;border-radius:9px;background:#f0f7f1;display:grid;place-items:center;color:#397e5c;font-size:17px}.kpi-value{font-size:32px;font-weight:850;letter-spacing:-.055em;line-height:1}.kpi-bottom{color:#8b9b93;font-size:11px;margin-top:10px}.kpi .kpi-bottom strong{color:#288660}.two-col{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.panel{background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow);overflow:hidden}.panel-inner{padding:22px}.panel-head{padding:20px 23px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:10px}.panel-head h2{margin:0;font-size:15px;letter-spacing:-.015em}.panel-head .mini{color:var(--muted);font-size:11px}.hint{font-size:12px;line-height:1.7;color:#7c8e82}.pipeline{display:flex;align-items:flex-end;gap:18px;min-height:205px;padding:15px 4px 0}.pipe-col{flex:1;text-align:center}.pipe-bg{height:142px;background:#f1f7f3;border-radius:9px 9px 3px 3px;position:relative;overflow:hidden;display:flex;align-items:flex-end}.pipe-fill{background:#8acdad;width:100%;min-height:4px;border-radius:7px 7px 0 0}.pipe-fill.approved{background:#37a579}.pipe-fill.rejected{background:#e7b2a0}.pipe-label{font-size:11px;font-weight:700;margin-top:11px;color:#72857b}.empty{text-align:center;padding:48px 20px;color:#85988d}.empty .symbol{font-size:30px;margin-bottom:10px}.empty strong{color:#3e5e4d;display:block;font-size:14px}.empty p{font-size:12px;max-width:330px;margin:10px auto;line-height:1.65}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left}.data-table th{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#88998f;background:#fbfcfb;padding:15px 20px;font-weight:800;border-bottom:1px solid var(--line)}.data-table td{padding:17px 20px;border-bottom:1px solid #eff3ef;color:#52655a;font-size:12px;vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table td strong{color:#243d30;font-size:12px}.data-table small{display:block;margin-top:5px;color:#96a49b;font-size:10px}.badge{display:inline-flex;align-items:center;border-radius:99px;padding:6px 10px;background:#f1f4f2;color:#637970;font-weight:750;font-size:10px}.badge.active,.badge.approved{background:#e4f7ed;color:#1b8b61}.badge.pending{background:#fff3df;color:#ae741e}.badge.rejected{background:#fff0ec;color:#b65740}.badge.inactive{background:#f1f2f1;color:#89958e}.row-actions{display:flex;gap:6px;justify-content:flex-end}.filter-row{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.search-input,.select-input{border:1px solid #dce8df;border-radius:10px;padding:11px 13px;background:white;outline:none;font-size:12px;color:#304f3f}.search-input{min-width:230px;flex:1}.select-input{min-width:140px}.notice{border:1px solid #f1dfbc;background:#fffaf0;color:#886938;border-radius:12px;padding:14px 17px;font-size:12px;line-height:1.6;margin:0 0 20px}.notice.info{border-color:#d9e9df;background:#f1faf4;color:#446752}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:15px}.media-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.media-card img{width:100%;aspect-ratio:1;object-fit:contain;background:#f9faf9}.media-caption{padding:12px}.media-caption strong{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-caption small{color:#8fa398;display:block;font-size:10px;margin:6px 0 12px}.media-controls{display:flex;gap:5px;flex-wrap:wrap}.permissions-table th:not(:first-child),.permissions-table td:not(:first-child){text-align:center}.toggle{appearance:none;display:inline-block;width:40px;height:22px;border-radius:99px;background:#d7dfd8;position:relative;vertical-align:middle;cursor:pointer;transition:.2s}.toggle:before{content:"";position:absolute;left:3px;top:3px;height:16px;width:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0002;transition:.2s}.toggle:checked{background:#07845c}.toggle:checked:before{transform:translateX(18px)}.toggle:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;inset:0;background:rgba(9,31,24,.56);z-index:90;display:grid;place-items:center;padding:18px;overflow:auto}.modal-panel{width:min(590px,100%);max-height:min(850px,calc(100dvh - 30px));overflow:auto;background:#fff;border-radius:20px;box-shadow:0 25px 80px #0004}.modal-top{padding:24px 27px 20px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px}.modal-top h2{margin:0;font-size:20px;letter-spacing:-.03em}.modal-top p{color:#8a988f;font-size:12px;margin:7px 0 0}.form{padding:24px 27px 28px}.field{margin-bottom:17px}.field label{display:block;font-size:11px;font-weight:800;margin-bottom:8px;color:#506b5b}.field input,.field select,.field textarea{border:1px solid #dbe7df;border-radius:10px;padding:12px 13px;width:100%;background:#fcfefc;color:#1c3b2d;font-size:13px}.field textarea{resize:vertical;min-height:86px}.field-help{display:block;font-size:10px;color:#91a197;margin-top:7px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form .actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.check-line{display:flex;align-items:center;gap:10px;color:#4e6858;font-size:12px;margin:15px 0}.check-line input{accent-color:#087956;width:16px;height:16px}.loading-screen{min-height:100vh;display:grid;place-items:center;background:#f0f7f2;padding:20px}.loading-card{text-align:center;background:#fff;border:1px solid #dbe7db;border-radius:24px;padding:43px;width:min(440px,100%);box-shadow:var(--shadow)}.loading-card h1{font-size:24px;margin:17px 0 9px;letter-spacing:-.04em}.loading-card p{color:#71897b;line-height:1.65;font-size:13px}.logo-mark{display:grid;place-items:center;margin:auto;width:52px;height:52px;border-radius:16px;background:#153c2b;color:#fff;font-weight:900}.loading-spin{width:26px;height:26px;border:3px solid #e0eee4;border-top-color:#08845b;border-radius:50%;margin:24px auto 0;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;right:22px;bottom:22px;padding:14px 18px;background:#143b2d;color:white;box-shadow:0 10px 30px #0002;border-radius:12px;z-index:110;max-width:420px;font-size:12px}.toast.bad{background:#a43d32}.mobile-menu{display:none;border:0;background:transparent;font-size:22px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.setting-box{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px}.setting-box strong{display:block;margin-bottom:8px}.setting-box p{color:#7b8f82;line-height:1.6;font-size:12px}.setting-box code{background:#eff5ef;border-radius:6px;padding:6px 8px;color:#247052}.helper-info{display:flex;gap:11px;align-items:flex-start;background:#eff8f3;padding:16px;border-radius:12px;color:#4e705b;font-size:12px;line-height:1.6}.small-link{color:#087b58;font-weight:750;text-decoration:underline;text-underline-offset:3px}.divider{border:0;border-top:1px solid #edf1ed;margin:20px 0}.progress-label{display:flex;justify-content:space-between;align-items:center;margin:13px 0;font-size:12px}.progress-track{height:8px;background:#ecf3ed;border-radius:99px;overflow:hidden}.progress-bar{height:100%;background:#30a276;border-radius:99px}
@media(max-width:1150px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.sidebar{width:220px}}@media(max-width:800px){.sidebar{position:fixed;left:0;top:0;z-index:70;transform:translateX(-110%);transition:transform .22s;box-shadow:10px 0 30px #0001}.sidebar.open{transform:translateX(0)}.mobile-menu{display:inline-block}.topbar{min-height:68px;padding:0 19px;gap:10px}.env-chip{display:none}.main{padding:28px 18px 45px}.footer{padding:18px}.heading-row{align-items:flex-start}.heading-row>.btn{align-self:flex-start}}@media(max-width:550px){.kpi-grid{grid-template-columns:1fr 1fr;gap:10px}.kpi{padding:17px}.kpi-value{font-size:27px}.kpi-top{margin-bottom:16px}.page-title{font-size:26px}.heading-row{flex-direction:column}.heading-row>.btn{width:100%;justify-content:center}.settings-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form{padding:20px}.modal-top{padding:20px}.footer{flex-direction:column}.topbar .crumb,.topbar .slash{display:none}}
