:root{--green:#315c45;--green-2:#47755c;--mint:#eef5f0;--gold:#c89b4a;--ink:#17211b;--muted:#718077;--line:#e4ebe6;--bg:#f5f7f5;--danger:#c74d4d;--shadow:0 14px 40px rgba(24,54,38,.08)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Manrope,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}button,input,select,textarea{font:inherit}.hidden{display:none!important}button{cursor:pointer}.login-view{min-height:100vh;display:grid;grid-template-columns:minmax(380px,1.05fr) minmax(420px,.95fr);background:#fff}.login-brand{padding:clamp(48px,8vw,110px);display:flex;flex-direction:column;justify-content:center;color:#fff;background:linear-gradient(145deg,rgba(28,69,46,.94),rgba(75,116,89,.91)),radial-gradient(circle at top right,#92ad93,transparent 55%)}.brand-mark img{width:92px;height:92px;border-radius:50%;background:#fff;box-shadow:0 12px 30px rgba(0,0,0,.18)}.login-brand>p{margin:34px 0 14px;color:#dfeae2}.login-brand h1{font-size:clamp(36px,4vw,60px);line-height:1.12;max-width:760px;margin:0;letter-spacing:-.04em}.brand-points{display:flex;gap:22px;flex-wrap:wrap;margin-top:50px;font-size:13px;color:#e9f1eb}.login-panel{display:grid;place-items:center;padding:32px}.login-card{width:min(430px,100%)}.login-logo{display:none;width:84px;height:84px;border-radius:50%;margin-bottom:20px}.eyebrow{color:var(--green-2);font-size:11px;font-weight:800;letter-spacing:.16em}.login-card h2,.modal-card h2{font-size:31px;letter-spacing:-.035em;margin:9px 0 7px}.login-card>p{color:var(--muted);font-size:14px;margin:0 0 30px}.login-card label,.form-grid label{display:grid;gap:8px;font-size:12px;font-weight:700;margin-bottom:17px;color:#46534b}.login-card input,.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid #dbe4dd;border-radius:12px;padding:13px 14px;outline:none;background:#fbfcfb;color:var(--ink);transition:.2s}.login-card input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:#6f947d;box-shadow:0 0 0 3px rgba(49,92,69,.08)}.password-field{display:flex;position:relative}.password-field button{position:absolute;right:8px;top:6px;border:0;background:transparent;padding:8px;opacity:.55}.primary,.secondary,.action{border:0;border-radius:10px;padding:11px 16px;font-weight:700;font-size:13px}.primary{background:var(--green);color:#fff;box-shadow:0 5px 14px rgba(49,92,69,.17)}.primary:hover{background:#284d3a}.primary:disabled{opacity:.55;cursor:not-allowed}.secondary{background:#f0f3f1;color:#405047}.wide{width:100%;padding:14px}.login-card small{display:block;text-align:center;color:#94a099;margin-top:20px}.form-error{min-height:19px!important;color:var(--danger)!important;margin:0 0 8px!important;font-size:12px!important}.app-view{min-height:100vh;display:grid;grid-template-columns:246px 1fr}.sidebar{height:100vh;position:sticky;top:0;background:#173b2b;color:#fff;padding:25px 18px;display:flex;flex-direction:column;z-index:30}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:0 8px 26px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-brand img{width:48px;height:48px;border-radius:50%;background:#fff}.sidebar-brand div,.sidebar-footer div:nth-child(2){display:grid;min-width:0}.sidebar-brand strong{font-size:17px}.sidebar-brand span,.sidebar-footer span{font-size:10px;color:#9cb7a8;letter-spacing:.08em}.sidebar nav{display:grid;gap:4px;margin-top:23px;overflow:auto}.nav-item{display:flex;align-items:center;gap:12px;color:#bcd0c4;text-decoration:none;border-radius:10px;padding:11px 12px;font-size:12px;font-weight:700;border:0;background:transparent;width:100%;text-align:left}.nav-item span:first-child{width:22px;text-align:center;font-size:17px}.nav-item:hover,.nav-item.active{background:rgba(255,255,255,.1);color:#fff}.nav-item.active{box-shadow:inset 3px 0 #d4ad64}.sidebar-footer{margin-top:auto;padding:18px 6px 0;border-top:1px solid rgba(255,255,255,.1);display:flex;align-items:center;gap:9px}.sidebar-footer strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-footer button{margin-left:auto;border:0;background:rgba(255,255,255,.08);color:#fff;border-radius:8px;padding:7px 9px}.avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#d8b36e;color:#173b2b;font-weight:800;font-size:12px;flex:none}.workspace{min-width:0}.topbar{height:92px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.topbar h1{font-size:23px;margin:4px 0 0;letter-spacing:-.03em}.breadcrumb{font-size:9px;color:#92a098;font-weight:800;letter-spacing:.13em}.topbar-actions{display:flex;align-items:center;gap:12px}.live-dot{font-size:11px;color:#47755c;background:#edf5ef;padding:8px 11px;border-radius:30px;font-weight:700}.live-dot:before{content:"";display:inline-block;width:7px;height:7px;background:#4e9c66;border-radius:50%;margin-right:7px}.icon-button{border:1px solid var(--line);background:#fff;width:37px;height:37px;border-radius:10px;font-size:19px;color:#4b5a51}.content{padding:26px 34px 40px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;margin-bottom:18px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;display:flex;gap:13px;align-items:center;box-shadow:0 5px 20px rgba(30,55,40,.035)}.stat-icon{width:42px;height:42px;border-radius:12px;background:var(--mint);display:grid;place-items:center;font-size:19px;color:var(--green)}.stat-card:nth-child(2) .stat-icon{background:#fff6e6;color:#a87b26}.stat-card:nth-child(3) .stat-icon{background:#eef1fa;color:#55699b}.stat-card:nth-child(4) .stat-icon{background:#f9eeee;color:#9b5555}.stat-card div:last-child{display:grid}.stat-card small{color:var(--muted);font-size:10px;font-weight:700}.stat-card strong{font-size:21px;margin-top:3px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.panel-head{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}.panel-head h2{font-size:16px;margin:0}.panel-head p{font-size:11px;color:var(--muted);margin:4px 0 0}.panel-tools{display:flex;gap:9px;align-items:center}.search-box{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:10px;padding:0 10px;color:#849089}.search-box input{width:160px;border:0;outline:none;padding:10px 0;font-size:12px}.panel-tools select{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff;font-size:12px;color:#4d5b53}.state{min-height:300px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:var(--muted);font-size:12px}.state strong{color:var(--ink);font-size:14px}.empty-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:var(--mint);font-size:24px;color:var(--green)}.spinner{width:24px;height:24px;border:3px solid #dae6dd;border-top-color:var(--green);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:780px}th{text-align:left;font-size:9px;color:#829088;letter-spacing:.09em;text-transform:uppercase;background:#fbfcfb;padding:12px 16px;border-bottom:1px solid var(--line)}td{padding:13px 16px;border-bottom:1px solid #edf1ee;font-size:11px;color:#4b5951;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fcfdfc}.cell-main{display:flex;align-items:center;gap:10px}.cell-avatar{width:35px;height:35px;border-radius:10px;object-fit:cover;background:#e7eee9;display:grid;place-items:center;color:var(--green);font-weight:800}.cell-title{display:grid;gap:2px}.cell-title strong{font-size:11px;color:var(--ink)}.cell-title span{font-size:9px;color:#8a968f}.badge{display:inline-flex;align-items:center;border-radius:20px;padding:5px 8px;background:#edf5ef;color:#3d7252;font-weight:800;font-size:9px;white-space:nowrap}.badge.warn{background:#fff5df;color:#9b7025}.badge.danger{background:#faecec;color:#a94a4a}.badge.neutral{background:#f0f2f1;color:#6f7a74}.action{padding:7px 9px;background:#eef4f0;color:var(--green);margin-right:5px;font-size:9px}.action.danger{background:#faeeee;color:var(--danger)}.muted{color:#929c96}.modal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:20px}.modal-backdrop{position:absolute;inset:0;background:rgba(13,31,21,.5);backdrop-filter:blur(4px)}.modal-card{position:relative;width:min(560px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;padding:24px;box-shadow:0 25px 70px rgba(0,0,0,.2)}.modal-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:18px}.modal-head h2{font-size:21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.form-grid label.full{grid-column:1/-1}.form-grid textarea{min-height:90px;resize:vertical}.modal-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:9px}.toast{position:fixed;right:24px;top:24px;z-index:100;background:#173b2b;color:#fff;border-radius:11px;padding:12px 16px;font-size:11px;box-shadow:var(--shadow);opacity:0;transform:translateY(-12px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:none}.toast.error{background:#9f4141}.mobile-only{display:none}
@media(max-width:1050px){.stats-grid{grid-template-columns:repeat(2,1fr)}.app-view{grid-template-columns:210px 1fr}.sidebar{padding-inline:12px}.content,.topbar{padding-inline:22px}}
@media(max-width:760px){.login-view{display:block}.login-brand{display:none}.login-panel{min-height:100vh;padding:24px}.login-logo{display:block}.app-view{display:block}.sidebar{position:fixed;left:-260px;width:246px;transition:.25s;box-shadow:20px 0 50px rgba(0,0,0,.18)}.sidebar.open{left:0}.mobile-only{display:block}.topbar{height:78px;padding-inline:15px}.topbar-actions .live-dot{display:none}.content{padding:16px}.stats-grid{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:13px}.stat-card strong{font-size:17px}.panel-head{align-items:flex-start;flex-direction:column}.panel-tools{width:100%;flex-wrap:wrap}.search-box{flex:1}.search-box input{width:100%}.form-grid{grid-template-columns:1fr}}
@media(max-width:440px){.stats-grid{grid-template-columns:1fr}.stat-card{display:grid;grid-template-columns:42px 1fr}.topbar h1{font-size:19px}.panel-tools .primary{width:100%}}

