@import "https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap";:root{--p:#6a0bff;--p-50:#6a0bff0d;--p-soft:#f0ebff;--p-mid:#d8ccff;--p-dark:#5609d4;--bg:#f5f4f9;--surface:#fff;--surface2:#faf9fc;--surface3:#f0eef6;--t1:#0e0e14;--t2:#5c5c6e;--t3:#a0a0b0;--b1:#00000012;--b2:#0000001f;--b3:#0000002e;--r1:6px;--r2:10px;--r3:16px;--r4:24px;--shadow-sm:0 1px 3px #0000000d;--shadow-md:0 4px 8px #0000000f;--shadow-lg:0 8px 24px #0000001a;--font:"Poppins", sans-serif;--header-h:54px;--nav-h:62px;--page-px:32px;--glass-bg:#ffffffc7;--glass-border:#00000012;--nav-glass-bg:#faf9fdeb;--header-blur:blur(16px) saturate(1.6);--nav-blur:blur(14px) saturate(1.4);--green:#22c55e;--green-soft:#dcfce7;--red:#ef4444;--red-soft:#fee2e2;--yellow:#f59e0b;--yellow-soft:#fef3c7;--blue:#3b82f6;--blue-soft:#dbeafe;--gray:#6b7280;--gray-soft:#f3f4f6}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;font-size:14px}body{font-family:var(--font);background:var(--bg);color:var(--t1);-webkit-font-smoothing:antialiased;height:100%}#root{flex-direction:column;height:100%;display:flex;overflow-y:auto}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--b2);border-radius:10px}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit}.mkt-root{min-height:100vh}.mkt-header{height:var(--header-h);min-height:var(--header-h);z-index:300;background:var(--glass-bg);-webkit-backdrop-filter:var(--header-blur);backdrop-filter:var(--header-blur);border-bottom:1px solid var(--glass-border);position:fixed;top:0;left:0;right:0}.mkt-header-inner{max-width:1280px;padding:0 var(--page-px);align-items:center;gap:8px;height:100%;margin:0 auto;display:flex}.mkt-header-logo{color:var(--t1);cursor:pointer;align-items:center;gap:8px;font-size:1.05rem;font-weight:700;display:flex}.mkt-header-logo img{height:22px}.mkt-header-tag{color:var(--p);text-transform:uppercase;letter-spacing:1.2px;background:var(--p-50);border-radius:20px;padding:2px 8px;font-size:.62rem;font-weight:600}.mkt-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.mkt-user{color:var(--t2);margin-right:4px;font-size:.78rem}.mkt-icon-btn{border-radius:var(--r1);width:32px;height:32px;color:var(--t2);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;transition:all .12s;display:flex}.mkt-icon-btn:hover{background:var(--surface2);border-color:var(--b1);color:var(--t1)}.mkt-nav{top:var(--header-h);z-index:200;padding:8px var(--page-px);pointer-events:none;position:fixed;left:0;right:0}.mkt-nav-inner{pointer-events:all;background:var(--nav-glass-bg);-webkit-backdrop-filter:var(--nav-blur);backdrop-filter:var(--nav-blur);border:1px solid var(--b1);box-shadow:var(--shadow-md);max-width:calc(1280px - 2 * var(--page-px));border-radius:14px;gap:2px;margin:0 auto;padding:8px;display:flex;overflow-x:auto}.mkt-nav-item{border-radius:var(--r2);color:var(--t2);white-space:nowrap;border:1px solid #0000;align-items:center;gap:6px;padding:7px 13px;font-size:13.5px;font-weight:400;transition:background .12s,color .12s,border-color .12s;display:flex}.mkt-nav-item:hover{background:var(--surface3);color:var(--t1)}.mkt-nav-item.active{color:var(--p);background:var(--p-soft);border-color:var(--p-mid);font-weight:600}.mkt-nav-item.disabled{opacity:.35;pointer-events:none}.mkt-content{padding:calc(var(--header-h) + var(--nav-h) + 20px) var(--page-px) 28px;flex:1;width:100%;max-width:1280px;margin:0 auto}.mkt-hamburger{display:none}.modal-backdrop{z-index:500;background:#00000073;justify-content:flex-start;display:flex;position:fixed;inset:0}.drawer{background:var(--surface);width:280px;height:100vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex}.drawer-header{height:var(--header-h);border-bottom:1px solid var(--b1);justify-content:space-between;align-items:center;padding:0 18px;display:flex}.drawer-header span{color:var(--p);font-size:.95rem;font-weight:700}.drawer-nav{flex-direction:column;flex:1;gap:2px;padding:10px;display:flex;overflow-y:auto}.drawer-section{color:var(--t3);text-transform:uppercase;letter-spacing:.5px;padding:12px 13px 4px;font-size:11px;font-weight:600}.drawer-item{border-radius:var(--r2);color:var(--t2);align-items:center;gap:10px;padding:10px 13px;font-size:13.5px;font-weight:400;transition:background .12s;display:flex}.drawer-item:hover{background:var(--surface2)}.drawer-item.active{color:var(--p);background:var(--p-soft);font-weight:600}.drawer-item.disabled{opacity:.35;pointer-events:none}.drawer-footer{border-top:1px solid var(--b1);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.drawer-footer span{color:var(--t3);font-size:.78rem}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-title{color:var(--t1);margin:0;font-size:1.35rem;font-weight:700;line-height:1.2}.page-subtitle{color:var(--t3);margin-top:3px;font-size:.82rem}.page-actions{flex-shrink:0;gap:8px;display:flex}.card{background:var(--surface);border:1px solid var(--b1);border-radius:var(--r3);box-shadow:var(--shadow-sm)}.card-header{border-bottom:1px solid var(--b1);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.card-title{color:var(--t1);font-size:.9rem;font-weight:600}.card-body{padding:20px}.metric-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.metric-card{background:var(--surface);border:1px solid var(--b1);border-radius:var(--r3);box-shadow:var(--shadow-sm);cursor:default;padding:20px}.metric-icon{border-radius:var(--r2);justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:12px;display:flex}.metric-icon.purple{background:var(--p-soft);color:var(--p)}.metric-icon.green{background:var(--green-soft);color:var(--green)}.metric-icon.blue{background:var(--blue-soft);color:var(--blue)}.metric-icon.yellow{background:var(--yellow-soft);color:var(--yellow)}.metric-label{color:var(--t3);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:.75rem;font-weight:500}.metric-value{color:var(--t1);font-size:1.8rem;font-weight:700;line-height:1}.metric-sub{color:var(--t3);margin-top:4px;font-size:.75rem}.btn{border-radius:var(--r2);cursor:pointer;border:none;align-items:center;gap:7px;padding:8px 16px;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.btn-primary{background:var(--p);color:#fff}.btn-primary:hover{background:var(--p-dark)}.btn-primary:disabled{opacity:.5;cursor:default}.btn-secondary{background:var(--surface);color:var(--t1);border:1px solid var(--b2)}.btn-secondary:hover{background:var(--surface2);border-color:var(--b3)}.btn-ghost{color:var(--t2);background:0 0;border:1px solid #0000}.btn-ghost:hover{background:var(--surface3);color:var(--t1)}.btn-sm{padding:5px 10px;font-size:.76rem}.btn-lg{padding:11px 22px;font-size:.9rem}.badge{border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:.7rem;font-weight:600;display:inline-flex}.badge-purple{background:var(--p-soft);color:var(--p)}.badge-green{background:var(--green-soft);color:#16a34a}.badge-yellow{background:var(--yellow-soft);color:#92400e}.badge-red{background:var(--red-soft);color:#dc2626}.badge-blue{background:var(--blue-soft);color:#2563eb}.badge-gray{background:var(--gray-soft);color:var(--gray)}.form-group{margin-bottom:14px}.form-label{color:var(--t2);margin-bottom:4px;font-size:.78rem;font-weight:600;display:block}.form-input,.form-select,.form-textarea{border:1px solid var(--b2);border-radius:var(--r1);width:100%;font-size:.85rem;font-family:var(--font);background:var(--surface);color:var(--t1);padding:9px 12px;transition:border-color .15s,box-shadow .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--p);box-shadow:0 0 0 3px var(--p-50);outline:none}.form-input::placeholder{color:var(--t3)}.table-wrap{border-radius:var(--r3);border:1px solid var(--b1);box-shadow:var(--shadow-sm);overflow:hidden}.table{border-collapse:collapse;background:var(--surface);width:100%}.table th{text-transform:uppercase;letter-spacing:.05em;color:var(--t3);background:var(--surface2);border-bottom:1px solid var(--b1);text-align:left;padding:11px 16px;font-size:.72rem;font-weight:600}.table td{border-bottom:1px solid var(--b1);color:var(--t1);vertical-align:middle;padding:12px 16px}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--surface2)}.alert{border-radius:var(--r2);align-items:flex-start;gap:10px;padding:12px 16px;font-size:.82rem;display:flex}.alert-error{background:var(--red-soft);color:#991b1b;border:1px solid #fca5a5}.loading-screen{justify-content:center;align-items:center;min-height:100vh;display:flex}.spinner{border:3px solid var(--b2);border-top-color:var(--p);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{color:var(--t3);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:56px 24px;display:flex}.empty-state .icon{opacity:.4}.empty-state .label{color:var(--t2);font-weight:600}.login-page{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-left{background:linear-gradient(145deg,#3b0099 0%,#6a0bff 45%,#9b4dff 100%);flex-direction:column;justify-content:space-between;padding:52px 56px;display:flex;position:relative;overflow:hidden}.login-left:before{content:"";background:#ffffff0d;border-radius:50%;width:500px;height:500px;position:absolute;top:-120px;right:-120px}.login-left:after{content:"";background:#ffffff0a;border-radius:50%;width:300px;height:300px;position:absolute;bottom:-60px;left:-60px}.login-left-content{z-index:1;padding:40px 0;position:relative}.login-left-tag{color:#ffffffe0;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:20px;align-items:center;gap:8px;margin-bottom:24px;padding:5px 13px;font-size:12px;font-weight:500;display:inline-flex}.login-left-dot{background:#7fffb8;border-radius:50%;width:6px;height:6px}.login-left-headline{color:#fff;letter-spacing:-.5px;margin-bottom:16px;font-size:32px;font-weight:600;line-height:1.2}.login-left-headline span{color:#ffffff80}.login-left-desc{color:#ffffff94;max-width:360px;margin-bottom:28px;font-size:14px;line-height:1.65}.login-left-modules-label{text-transform:uppercase;letter-spacing:.08em;color:#ffffff61;margin-bottom:10px;font-size:10.5px;font-weight:600}.login-left-modules{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.login-left-chip{background:#ffffff12;border:1px solid #ffffff1a;border-radius:10px;flex-direction:column;align-items:center;gap:7px;padding:11px 6px;display:flex}.login-left-chip-icon{color:#ffffffe0;background:#ffffff24;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.login-left-chip-name{color:#ffffffad;text-align:center;font-size:10.5px;font-weight:500;line-height:1.2}.login-left-footer{color:#ffffff59;z-index:1;font-size:12px;position:relative}.login-right{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:48px 40px;display:flex}.login-form-box{width:100%;max-width:400px}.login-logo{margin-bottom:28px}.login-logo img{height:36px}.login-title{letter-spacing:-.3px;color:var(--t1);margin-bottom:6px;font-size:22px;font-weight:600}.login-subtitle{color:var(--t3);margin-bottom:28px;font-size:14px}.login-form-box .form-input{border:.5px solid var(--b2);border-radius:var(--r2);height:44px;padding:0 14px;font-size:14px}.login-form-box .form-input:hover{border-color:var(--p-mid)}.login-form-box .form-input:focus{border-color:var(--p);box-shadow:0 0 0 3px var(--p-soft)}.login-form-box .form-label{font-size:13px;font-weight:500}.fw-600{font-weight:600}.fs-sm{font-size:.82rem}.fs-xs{font-size:.72rem}.text-t2{color:var(--t2)}.text-t3{color:var(--t3)}.text-p{color:var(--p)}@media (width<=1080px){.mkt-nav{display:none}.mkt-hamburger{display:flex}.mkt-content{padding-top:calc(var(--header-h) + 20px)}.metric-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-left{display:none}}@media (width<=768px){:root{--page-px:16px}.metric-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.metric-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start}}
