.navbar{position:fixed;top:0;left:0;right:0;background:var(--bg-white);box-shadow:var(--shadow);z-index:1000;transition:all .3s ease}.navbar.scrolled{box-shadow:var(--shadow-lg)}.navbar-content{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.navbar-logo{display:flex;align-items:center;gap:12px;font-size:1.5rem;font-weight:700;color:var(--primary-color)}.logo-img{width:40px;height:40px;object-fit:contain;border-radius:8px}.logo-text{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.navbar-menu{display:flex;gap:2rem;align-items:center}.navbar-menu a{color:var(--text-primary);font-weight:500;padding:.5rem 0;position:relative;transition:color .3s ease}.navbar-menu a:hover,.navbar-menu a.active{color:var(--primary-color)}.navbar-menu a.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--primary-color)}.mobile-menu-btn{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:.5rem}.mobile-menu-btn span{width:25px;height:3px;background:var(--text-primary);transition:all .3s ease;border-radius:2px}@media (max-width: 768px){.mobile-menu-btn{display:flex}.navbar-menu{position:fixed;top:70px;left:0;right:0;background:var(--bg-white);flex-direction:column;padding:2rem;gap:1.5rem;box-shadow:var(--shadow-lg);transform:translate(-100%);transition:transform .3s ease}.navbar-menu.open{transform:translate(0)}.navbar-menu a.active:after{display:none}.navbar-menu a.active{color:var(--primary-color);font-weight:600}}.footer{background:var(--text-primary);color:#fff;padding:3rem 0 1.5rem;margin-top:4rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-bottom:2rem}.footer-section h3{margin-bottom:1rem;font-size:1.1rem;color:#fff}.footer-logo{display:flex;align-items:center;gap:12px;margin-bottom:1rem;font-size:1.5rem;font-weight:700}.footer-logo .logo-img{width:40px;height:40px;object-fit:contain;border-radius:8px}.footer-logo .logo-text{background:linear-gradient(135deg,#818cf8,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.footer-description{color:#d1d5db;line-height:1.8}.footer-links{display:flex;flex-direction:column;gap:.75rem}.footer-links a{color:#d1d5db;transition:color .3s ease}.footer-links a:hover{color:#fff}.footer-contact{display:flex;flex-direction:column;gap:.75rem;color:#d1d5db}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);color:#9ca3af}.footer-copyright{margin:0 0 .75rem}.footer-beian{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem .75rem;font-size:.875rem}.footer-beian a{color:inherit;text-decoration:none;transition:color .2s ease}.footer-beian a:hover{color:#fff}.footer-beian-sep{opacity:.5}.footer-mps-beian{display:inline-flex;align-items:center;gap:4px}.footer-mps-beian-icon{display:block;flex-shrink:0;object-fit:contain}@media (max-width: 768px){.footer-content{grid-template-columns:1fr}}.home{padding-top:80px}.hero{padding:4rem 0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;min-height:500px;display:flex;align-items:center}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.hero-title{font-size:3.5rem;font-weight:800;margin-bottom:1.5rem;line-height:1.2}.hero-title .highlight{background:linear-gradient(135deg,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;margin-bottom:2rem;opacity:.95;line-height:1.8}.hero-buttons{display:flex;gap:1rem;flex-wrap:wrap}.hero-image{display:flex;justify-content:center;align-items:center}.hero-logo{width:300px;height:300px;object-fit:contain;border-radius:8px;filter:drop-shadow(0 20px 40px rgba(0,0,0,.3));animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.btn{display:inline-block;padding:.75rem 2rem;border-radius:8px;font-weight:600;transition:all .3s ease;border:2px solid transparent;cursor:pointer}.btn-primary{background:#fff;color:var(--primary-color)}.btn-primary:hover{background:var(--bg-light);transform:translateY(-2px);box-shadow:0 10px 20px #0003}.btn-secondary{background:transparent;color:#fff;border-color:#fff}.btn-secondary:hover{background:#fff;color:var(--primary-color)}.btn-large{padding:1rem 2.5rem;font-size:1.1rem}.features{padding:5rem 0;background:var(--bg-light)}.section-title{text-align:center;font-size:2.5rem;font-weight:700;margin-bottom:3rem;color:var(--text-primary)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.feature-card{background:#fff;padding:2rem;border-radius:12px;text-align:center;box-shadow:var(--shadow);transition:all .3s ease}.feature-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--text-primary)}.feature-card p{color:var(--text-secondary);line-height:1.8}.cta{padding:5rem 0;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;text-align:center}.cta-content h2{font-size:2.5rem;margin-bottom:1rem}.cta-content p{font-size:1.25rem;margin-bottom:2rem;opacity:.95}@media (max-width: 968px){.hero-content{grid-template-columns:1fr;text-align:center}.hero-title{font-size:2.5rem}.hero-logo{width:200px;height:200px}}@media (max-width: 768px){.hero{padding:2rem 0;min-height:auto}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.section-title,.cta-content h2{font-size:2rem}.features{padding:3rem 0}}.about{padding-top:80px}.about-hero{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;padding:4rem 0;text-align:center}.about-content{padding:4rem 0}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;margin-bottom:4rem}.about-section.reverse{direction:rtl}.about-section.reverse>*{direction:ltr}.about-image{display:flex;justify-content:center;align-items:center}.about-image img{width:100%;max-width:400px;height:auto;object-fit:contain;border-radius:12px;box-shadow:var(--shadow-lg)}.about-text h2{font-size:2rem;margin-bottom:1.5rem;color:var(--text-primary)}.about-text p{color:var(--text-secondary);line-height:1.8;margin-bottom:1rem;font-size:1.1rem}.mission-list{margin-top:1.5rem;padding-left:0}.mission-list li{padding:.75rem 0 .75rem 2rem;position:relative;color:var(--text-secondary);font-size:1.1rem}.mission-list li:before{content:"✓";position:absolute;left:0;color:var(--primary-color);font-weight:700;font-size:1.2rem}.values-section{margin-top:4rem;text-align:center}.values-section h2{font-size:2.5rem;margin-bottom:3rem;color:var(--text-primary)}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.value-card{background:var(--bg-light);padding:2rem;border-radius:12px;transition:all .3s ease}.value-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);background:#fff}.value-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--primary-color)}.value-card p{color:var(--text-secondary);line-height:1.8}@media (max-width: 968px){.about-section,.about-section.reverse{grid-template-columns:1fr;direction:ltr}.about-section.reverse>*{direction:ltr}.page-title{font-size:2.5rem}}@media (max-width: 768px){.about-hero{padding:2rem 0}.page-title{font-size:2rem}.about-content{padding:2rem 0}.about-section{margin-bottom:2rem}.about-text h2{font-size:1.75rem}}.services{padding-top:80px}.services-hero{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;padding:4rem 0;text-align:center}.services-content{padding:4rem 0}.services-intro{text-align:center;max-width:800px;margin:0 auto 4rem}.services-intro h2{font-size:2.5rem;margin-bottom:1.5rem;color:var(--text-primary)}.services-intro p{font-size:1.1rem;color:var(--text-secondary);line-height:1.8}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:5rem}.service-card{background:#fff;padding:2.5rem;border-radius:12px;text-align:center;box-shadow:var(--shadow);transition:all .3s ease;border:2px solid transparent}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.service-icon{font-size:3.5rem;margin-bottom:1.5rem}.service-card h3{font-size:1.5rem;margin-bottom:1rem;color:var(--text-primary)}.service-card p{color:var(--text-secondary);line-height:1.8}.service-process{background:var(--bg-light);padding:4rem 2rem;border-radius:16px;text-align:center}.service-process h2{font-size:2.5rem;margin-bottom:3rem;color:var(--text-primary)}.process-steps{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:2rem}.process-step{flex:1;min-width:200px;max-width:250px}.step-number{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;margin:0 auto 1rem}.process-step h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--text-primary)}.process-step p{color:var(--text-secondary);line-height:1.6}.process-arrow{font-size:2rem;color:var(--primary-color);font-weight:700}@media (max-width: 968px){.process-steps{flex-direction:column}.process-arrow{transform:rotate(90deg)}}@media (max-width: 768px){.services-hero{padding:2rem 0}.page-title{font-size:2rem}.services-content{padding:2rem 0}.services-intro h2{font-size:2rem}.services-grid{grid-template-columns:1fr;margin-bottom:3rem}.service-process{padding:2rem 1rem}.service-process h2{font-size:2rem}}.contact{padding-top:80px}.contact-hero{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;padding:4rem 0;text-align:center}.page-title{font-size:3rem;font-weight:800;margin-bottom:1rem}.page-subtitle{font-size:1.25rem;opacity:.95}.contact-content{padding:4rem 0}.contact-wrapper{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;align-items:start}.contact-info h2{font-size:2rem;margin-bottom:1rem;color:var(--text-primary)}.contact-info>p{color:var(--text-secondary);line-height:1.8;margin-bottom:2rem;font-size:1.1rem}.contact-items{display:flex;flex-direction:column;gap:2rem}.contact-item{display:flex;gap:1.5rem;align-items:flex-start}.contact-icon{font-size:2rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:var(--bg-light);border-radius:12px;flex-shrink:0}.contact-item h3{font-size:1.25rem;margin-bottom:.5rem;color:var(--text-primary)}.contact-item p{color:var(--text-secondary);line-height:1.6}.contact-email-wrapper{background:#fff;padding:3rem;border-radius:12px;box-shadow:var(--shadow-lg);text-align:center}.contact-email-wrapper h2{font-size:2rem;margin-bottom:1rem;color:var(--text-primary)}.contact-description{color:var(--text-secondary);line-height:1.8;margin-bottom:2rem;font-size:1.1rem}.contact-email-btn{display:inline-flex;align-items:center;gap:1rem;padding:1.25rem 2.5rem;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;border-radius:12px;font-size:1.25rem;font-weight:600;text-decoration:none;transition:all .3s ease;box-shadow:var(--shadow)}.contact-email-btn:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,var(--primary-dark),var(--secondary-color))}.email-icon{font-size:1.5rem}.email-text{letter-spacing:.5px}.contact-tip{margin-top:1.5rem;color:var(--text-secondary);font-size:.9rem}@media (max-width: 968px){.contact-wrapper{grid-template-columns:1fr}}@media (max-width: 768px){.contact-hero{padding:2rem 0}.page-title{font-size:2rem}.contact-content{padding:2rem 0}.contact-email-wrapper{padding:2rem 1.5rem}.contact-info h2,.contact-email-wrapper h2{font-size:1.75rem}.contact-email-btn{padding:1rem 2rem;font-size:1.1rem}}.download-page{min-height:calc(100vh - 160px);display:flex;align-items:center;justify-content:center;padding:40px 16px;background:radial-gradient(circle at top,#eef2ff 0,#f9fafb 40%,#fff)}.download-card{width:100%;max-width:480px;background:#fff;border-radius:24px;box-shadow:var(--shadow-lg);padding:32px 24px 28px;text-align:center}.download-logo-wrap{width:96px;height:96px;border-radius:24px;margin:0 auto 16px;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;padding:3px}.download-logo{width:100%;height:100%;border-radius:20px;background:#fff;object-fit:cover}.download-title{font-size:24px;font-weight:700;margin-bottom:4px;color:var(--text-primary)}.download-subtitle{font-size:14px;color:var(--text-secondary);margin-bottom:8px}.download-browser-hint{font-size:13px;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:10px 12px;margin:0 0 20px;line-height:1.45}.download-loading{font-size:13px;color:var(--text-secondary);margin:-12px 0 16px}.download-fetch-error{font-size:13px;color:#b91c1c;margin:-12px 0 16px}.download-list{display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.download-tip{font-size:12px;color:var(--text-secondary);line-height:1.5;margin:0;text-align:center}.download-item{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-radius:14px;border:1px solid var(--border-color);background:#f9fafb;transition:all .18s ease;cursor:pointer;box-sizing:border-box;text-decoration:none;color:inherit}button.download-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;font:inherit;text-align:left}.download-item:hover{transform:translateY(-1px);box-shadow:var(--shadow);background:#fff}.download-item-disabled{cursor:default;opacity:.88}.download-item-disabled:hover{transform:none;box-shadow:none;background:#f9fafb}.download-item-main{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.download-item-name{font-size:15px;font-weight:600;color:var(--text-primary)}.download-item-desc{font-size:12px;color:var(--text-secondary)}.download-item-version{font-size:13px;font-weight:600;color:var(--text-secondary)}.download-item-badge{font-size:12px;font-weight:600;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#3730a3;flex-shrink:0}.download-item-badge-muted{background:#f3f4f6;color:var(--text-secondary)}.download-item-ios{border-color:#c7d2fe}.download-item-ios .download-item-badge{background:#eef2ff;color:#3730a3}.download-item-android{border-color:#bbf7d0}.download-item-android .download-item-badge{background:#ecfdf3;color:#166534}.download-item-harmony{border-color:#bae6fd}.download-item-harmony .download-item-badge{background:#e0f2fe;color:#075985}@media (max-width: 640px){.download-card{padding:28px 18px 24px;border-radius:20px}.download-title{font-size:22px}}.policy-page{background:#f9fafb;padding:48px 0}.policy-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:24px}.policy-title{font-size:28px;line-height:1.3;margin-bottom:20px;color:#1f2937}.policy-content{margin:0;font-family:inherit;font-size:15px;line-height:1.9;color:#374151;white-space:pre-wrap;word-break:break-word}.policy-rich-content{font-size:15px;line-height:1.9;color:#374151}.policy-h2{margin:18px 0 8px;font-size:18px;line-height:1.6;color:#111827}.policy-h3{margin:14px 0 6px;font-size:16px;line-height:1.7;color:#1f2937}.policy-ua-notice{margin:12px 0 6px;font-size:18px;line-height:1.6;color:#111827;font-weight:700}.policy-ua-level2{margin:4px 0;padding-left:1.2em;text-indent:-1.2em;font-weight:600;color:#1f2937;white-space:pre-wrap;word-break:break-word}.policy-ua-level3{margin:2px 0;padding-left:2.2em;text-indent:-1.2em;color:#374151;white-space:pre-wrap;word-break:break-word}.policy-p,.policy-li{margin:0 0 4px;white-space:pre-wrap;word-break:break-word}.policy-spacer{height:8px}.policy-hr{border:none;border-top:1px solid #e5e7eb;margin:20px 0}.policy-ar-indent{margin:0 0 4px;padding-left:1.5em;white-space:pre-wrap;word-break:break-word}.policy-ar-note-heading{margin:10px 0 4px;font-weight:600;color:#1f2937}.policy-table-wrap{overflow-x:auto;margin:8px 0 12px}.policy-table{width:100%;min-width:680px;border-collapse:collapse;table-layout:fixed;background:#fff}.policy-table th,.policy-table td{border:1px solid #d1d5db;padding:8px 10px;text-align:left;vertical-align:top;white-space:pre-wrap;word-break:break-word;line-height:1.7}.policy-table th{background:#f3f4f6;font-weight:600;color:#1f2937}.policy-missing{margin:0;font-size:16px;color:#6b7280}@media (max-width: 768px){.policy-page{padding:24px 0}.policy-card{padding:16px}.policy-title{font-size:22px}}.management-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px;background:radial-gradient(circle at top,#e0e7ff,#f8fafc 55%,#fff)}.management-login-card{width:100%;max-width:440px;background:#fff;border-radius:20px;box-shadow:0 18px 40px #6366f129;padding:28px 24px;border:1px solid #e5e7eb}.management-login-header{text-align:center;margin-bottom:20px}.management-login-logo{width:68px;height:68px;border-radius:14px;margin-bottom:10px}.management-login-header h1{font-size:24px;line-height:1.2;margin-bottom:6px;color:#111827}.management-login-header p{font-size:14px;color:#6b7280}.management-login-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f3f4f6;border-radius:10px;padding:4px;margin-bottom:18px}.management-login-tabs button{height:36px;border:none;border-radius:8px;background:transparent;color:#4b5563;font-size:14px;font-weight:600;cursor:pointer}.management-login-tabs button.active{background:#fff;color:#312e81;box-shadow:0 2px 8px #00000014}.management-login-form{display:flex;flex-direction:column;gap:8px}.management-login-form label{font-size:13px;font-weight:600;color:#374151}.management-login-form input{width:100%;height:42px;border:1px solid #d1d5db;border-radius:10px;padding:0 12px;font-size:14px;outline:none;transition:border-color .2s}.management-login-form input:focus{border-color:#6366f1}.management-code-row{display:grid;grid-template-columns:1fr 132px;gap:8px}.code-btn{border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;color:#3730a3;background:#e0e7ff}.code-btn:disabled{cursor:not-allowed;color:#9ca3af;background:#f3f4f6}.management-login-error{color:#b91c1c;font-size:13px;margin-top:2px}.management-login-captcha-hint{color:#6b7280;font-size:12px;margin-top:4px}.management-login-captcha-element,.management-login-captcha-trigger{display:none}.submit-btn{margin-top:10px;height:44px;border:none;border-radius:10px;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;font-size:15px;font-weight:700;cursor:pointer}.submit-btn:disabled{cursor:not-allowed;opacity:.7}.mg-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:10px 12px}.mg-pager--top{margin-bottom:10px}.mg-pager--bottom{margin-top:10px}.mg-pager-left,.mg-pager-right{display:flex;align-items:center;gap:10px}.mg-pager button{height:34px;padding:0 12px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;font-size:13px;font-weight:700;color:#0f172a}.mg-pager button:disabled{cursor:not-allowed;opacity:.6}.mg-pager select{height:34px;border-radius:10px;border:1px solid #e2e8f0;padding:0 10px;font-size:13px}.mg-pager-meta{font-size:12px;color:#64748b;font-weight:700}.mg-table-wrap{display:flex;flex-direction:column;gap:12px}.mg-alert{border-radius:12px;padding:10px 12px;font-size:13px;border:1px solid}.mg-alert-error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.mg-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:auto;box-shadow:0 10px 24px #0f172a0f}.mg-table{width:100%;border-collapse:collapse;min-width:720px;table-layout:fixed}.mg-table thead th{text-align:left;font-size:12px;color:#475569;padding:8px 10px;border-bottom:1px solid #e2e8f0;background:#f8fafc;position:sticky;top:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mg-table tbody td{font-size:13px;padding:8px 10px;border-bottom:1px solid #f1f5f9;color:#0f172a;vertical-align:middle;overflow:hidden;max-width:0}.mg-table tbody td.mg-table-cell-top{vertical-align:top}.mg-table tbody td.mg-table-cell-left{text-align:left}.mg-table-col-compact{width:1%;white-space:nowrap}.mg-table tbody tr:hover td{background:#f8fafc}.mg-table-state{text-align:center;color:#64748b;padding:18px 14px}.mg-release{display:flex;flex-direction:column;gap:12px}.mg-release-tabs{display:flex;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:8px}.mg-release-tabs button{height:34px;padding:0 12px;border-radius:10px;border:1px solid transparent;background:#f1f5f9;color:#0f172a;font-weight:800;cursor:pointer}.mg-release-tabs button.active{background:#0f172a;color:#fff}.mg-alert-success{background:#ecfdf3;border-color:#bbf7d0;color:#166534}.mg-release-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px;box-shadow:0 10px 24px #0f172a0f;display:flex;flex-direction:column;gap:12px}.mg-release-row{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:center}.mg-release-row label{font-size:13px;font-weight:800;color:#334155}.mg-release-row input,.mg-release-row textarea{border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;font-size:13px;background:#fff;outline:none}.mg-release-row textarea{resize:vertical}.mg-release-row--stack{align-items:start}.mg-release-row--stack label{padding-top:10px}.mg-release-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px}.mg-release-actions-top{justify-content:flex-start;padding-top:0;padding-bottom:4px}@media (max-width: 640px){.mg-release-row{grid-template-columns:1fr}}.mg-firmware,.mg-firmware-list{display:flex;flex-direction:column;gap:12px}.mg-firmware-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px;box-shadow:0 10px 24px #0f172a0f;display:flex;flex-direction:column;gap:12px}.mg-firmware-row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.mg-firmware-title{font-size:16px;font-weight:900;color:#0f172a}.mg-firmware-meta{font-size:12px;color:#64748b}.mg-firmware-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px 12px}.mg-firmware-field--full{grid-column:1 / -1}.mg-firmware-field{display:flex;flex-direction:column;gap:6px}.mg-firmware-field label{font-size:12px;font-weight:800;color:#334155}.mg-firmware-field input:not(.mg-firmware-file-input),.mg-firmware-field textarea,.mg-firmware-url-readonly{border:1px solid #e2e8f0;border-radius:10px;padding:9px 10px;font-size:13px;background:#fff;outline:none}.mg-firmware-field textarea{resize:vertical}.mg-firmware-url-field{display:flex;flex-direction:column;gap:8px}.mg-firmware-url-field>input{border:1px solid #e2e8f0;border-radius:10px;padding:9px 10px;font-size:13px;background:#fff;outline:none;width:100%;box-sizing:border-box}.mg-firmware-upload-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.mg-firmware-file-input{display:none}.mg-firmware-upload-note{font-size:11px;color:#64748b;line-height:1.4}.mg-firmware-upload-hint{font-size:12px;color:#15803d;line-height:1.4}.mg-firmware-upload-error{font-size:12px;color:#b91c1c;line-height:1.4}.mg-firmware-actions{display:flex;justify-content:flex-end;gap:10px}.mg-firmware-empty{background:#fff;border:1px dashed #cbd5e1;border-radius:14px;padding:16px;font-size:13px;color:#64748b}.mg-shell{min-height:100vh;height:100vh;display:grid;grid-template-columns:260px 1fr;background:#f8fafc;color:#0f172a;overflow:hidden}.mg-sidebar{background:#0b1220;color:#e5e7eb;border-right:1px solid rgba(148,163,184,.18);display:flex;flex-direction:column;padding:18px 14px;height:100vh;overflow:hidden}.mg-brand{display:flex;align-items:center;gap:10px;padding:10px 10px 14px;border-bottom:1px solid rgba(148,163,184,.14);margin-bottom:12px;flex:0 0 auto}.mg-brand-logo{width:36px;height:36px;border-radius:10px}.mg-brand-title{font-size:15px;font-weight:800;letter-spacing:.2px}.mg-brand-subtitle{font-size:12px;color:#e2e8f0b3}.mg-menu{display:flex;flex-direction:column;gap:6px;padding-top:10px;flex:1 1 auto;min-height:0;overflow-y:auto}.mg-menu-item{text-align:left;border:none;background:transparent;color:#e2e8f0d9;padding:10px;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600}.mg-menu-item:hover{background:#6366f124;color:#fff}.mg-menu-item.active{background:#6366f142;color:#fff}.mg-menu-group{display:flex;flex-direction:column;gap:2px;margin-bottom:4px}.mg-menu-group-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;border:none;background:#0f172a59;color:#e2e8f0eb;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:12px;font-weight:800;letter-spacing:.3px;text-transform:none}.mg-menu-group-header:hover{background:#6366f12e;color:#fff}.mg-menu-group-caret{font-size:11px;opacity:.75}.mg-menu-item-sub{margin-left:8px;padding-left:14px;font-size:13px;font-weight:600;border-left:2px solid rgba(99,102,241,.35);border-radius:8px}.mg-menu-item-sub.active{border-left-color:#a5b4fcf2}.mg-main{display:flex;flex-direction:column;min-width:0;height:100vh;min-height:0}.mg-topbar{height:60px;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;padding:0 18px;flex:0 0 auto;position:relative;z-index:20}.mg-page-title{font-size:16px;font-weight:800;color:#0f172a}.mg-topbar-right{position:relative}.mg-user-btn{height:38px;border:1px solid #e2e8f0;background:#fff;border-radius:10px;display:flex;align-items:center;gap:8px;padding:0 10px;cursor:pointer;color:#0f172a;font-weight:700}.mg-user-name{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.mg-user-caret{color:#64748b;font-size:12px}.mg-user-dropdown{position:absolute;right:0;top:44px;width:320px;max-height:min(85vh,520px);background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 18px 40px #0f172a1f;overflow:hidden;z-index:2000;display:flex;flex-direction:column}.mg-user-detail{padding:12px 12px 6px;flex:1;min-height:0;overflow-y:auto}.mg-user-detail-row{display:grid;grid-template-columns:64px 1fr;gap:10px;padding:6px 4px}.mg-user-detail-row .k{color:#64748b;font-size:12px;font-weight:700}.mg-user-detail-row .v{color:#0f172a;font-size:12px;word-break:break-word}.mg-user-detail-row--block{display:flex;flex-direction:column;align-items:stretch;gap:6px}.mg-user-detail-row--block .k{margin-bottom:2px}.mg-user-detail-row--block .v{width:100%}.mg-logout-btn{width:100%;height:40px;border:none;background:#ef4444;color:#fff;font-size:14px;font-weight:800;cursor:pointer;flex-shrink:0}.mg-user-perm-compact{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.mg-user-perm-view-all{border:none;background:transparent;padding:0;color:#4f46e5;font-size:12px;font-weight:700;cursor:pointer}.mg-user-perm-view-all:hover{text-decoration:underline}.mg-user-action-row{display:flex;justify-content:center;padding:10px 12px 12px;border-top:1px solid #e2e8f0;flex-shrink:0}.mg-user-action-link{border:none;background:transparent;color:#2563eb;font-size:14px;font-weight:900;cursor:pointer;padding:4px 6px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center}.mg-user-action-link:hover{background:#eff6ff}.mg-dash-success{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857;border-radius:10px;padding:10px 12px;font-size:13px;margin-bottom:12px}.mg-form-grid{display:grid;grid-template-columns:1fr;gap:12px}.mg-form-field{display:flex;flex-direction:column;gap:6px}.mg-form-label{font-size:12px;font-weight:900;color:#64748b}.mg-content{padding:18px;min-width:0;flex:1 1 auto;min-height:0;overflow-y:auto}.mg-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}.mg-toolbar-field{display:inline-flex;align-items:center;gap:6px;margin:0}.mg-toolbar-field .mg-input,.mg-toolbar-field .mg-select{min-width:0}.mg-toolbar-divider{width:1px;height:24px;background:#e2e8f0;margin:0 2px}.mg-toolbar-range{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px;padding:4px 10px;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}.mg-toolbar-range-label{font-size:12px;font-weight:700;color:#475569;white-space:nowrap}.mg-toolbar-range-sep{font-size:13px;color:#94a3b8}.mg-input-date{cursor:pointer}.mg-btn-primary{background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;border-color:transparent}.mg-btn-primary:hover:not(:disabled){filter:brightness(1.05)}.mg-list-summary{font-size:13px;color:#64748b;margin:-4px 0 10px}.mg-list-summary strong{color:#0f172a;font-weight:700}.mg-page-hint{margin-bottom:10px;padding:10px 12px;border-radius:8px;border:1px solid #e0e7ff;background:#eef2ff;font-size:13px;line-height:1.5;color:#3730a3}.mg-page-hint--warn{border-color:#fde68a;background:#fffbeb;color:#92400e}.mg-pill,.mg-audit-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;font-size:11px;line-height:1.35;letter-spacing:.02em;font-weight:600;box-sizing:border-box;white-space:nowrap}.mg-pill-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.mg-pill-sub{font-weight:500;opacity:.85;font-size:10px;margin-left:2px}.mg-empty-val{color:#cbd5e1;font-size:13px}.mg-code-cell{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;padding:1px 5px}.mg-stat-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;border:1px solid;font-size:11px;line-height:1.3}.mg-stat-chip-k{color:inherit;opacity:.75;font-weight:500}.mg-stat-chip-v{font-weight:700;font-variant-numeric:tabular-nums}.mg-count-row{display:flex;flex-wrap:wrap;gap:6px}.mg-user-cell{min-width:0;line-height:1.35}.mg-user-cell-main{display:flex;align-items:center;gap:4px;font-size:13px}.mg-user-cell-sub{margin-top:3px}.mg-admin-account-cell{text-align:left;min-width:0;line-height:1.35}.mg-admin-account-cell-line+.mg-admin-account-cell-line{margin-top:3px}.mg-admin-account-cell-trigger{display:block;width:100%;text-align:left}.mg-entity-link{border:none;background:none;padding:0;margin:0;font:inherit;color:#4f46e5;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.mg-entity-link:hover{color:#3730a3}.mg-oss-preview-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:16px}.mg-oss-preview{border-radius:12px;border:1px solid #e2e8f0;background:repeating-conic-gradient(#f1f5f9,#f1f5f9 25%,#fff 0%,#fff 50%) 50% / 12px 12px;overflow:hidden;display:flex;align-items:center;justify-content:center}.mg-oss-preview--empty{color:#94a3b8;font-size:13px}.mg-oss-preview-img{width:100%;height:100%;object-fit:contain}.mg-oss-preview-placeholder{font-size:11px;color:#64748b;padding:8px;text-align:center}.mg-oss-preview-key{font-size:11px;color:#64748b;word-break:break-all}.mg-user-avatar{border-radius:12px;border:1px solid #e2e8f0;overflow:hidden;flex-shrink:0}.mg-user-avatar--unset{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:linear-gradient(160deg,#f1f5f9,#e2e8f0);color:#64748b}.mg-user-avatar-label{font-size:11px;line-height:1.2;text-align:center;padding:0 6px}.mg-user-detail-avatar-wrap{margin-bottom:16px}.mg-table-action{padding:4px 10px;font-size:13px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#334155;cursor:pointer;font-weight:600}.mg-table-action:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.mg-table-action--danger{color:#b91c1c;border-color:#fecaca}.mg-table-action--danger:hover:not(:disabled){background:#fef2f2}.mg-input{height:36px;border-radius:10px;border:1px solid #e2e8f0;padding:0 10px;font-size:13px;min-width:260px;background:#fff}.mg-select{height:36px;border-radius:10px;border:1px solid #e2e8f0;padding:0 10px;font-size:13px;background:#fff}.mg-btn{height:36px;border-radius:10px;border:1px solid #e2e8f0;background:#0f172a;color:#fff;padding:0 12px;font-size:13px;font-weight:800;cursor:pointer}.mg-btn:disabled{opacity:.7;cursor:not-allowed}.mg-btn-danger{background:#dc2626;border-color:#dc2626;color:#fff}.mg-btn-danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.mg-btn-ghost{background:#fff;color:#0f172a}.mg-btn-ghost:hover:not(:disabled){background:#f8fafc}.mg-stage-checklist{border:1px solid #e2e8f0;border-radius:12px;max-height:280px;overflow:auto;background:#fff}.mg-stage-check-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid #f1f5f9;font-size:13px;color:#0f172a}.mg-stage-check-item:last-child{border-bottom:none}.mg-stage-check-item input[type=checkbox]{width:16px;height:16px}.mg-stage-toggle-all{display:inline-flex;align-items:center;gap:8px;color:#334155;font-size:13px;font-weight:700}.mg-stage-toggle-all input[type=checkbox]{width:16px;height:16px}.mg-placeholder{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px;box-shadow:0 10px 24px #0f172a0f}.mg-placeholder-title{font-size:18px;margin-bottom:6px}.mg-placeholder-desc{color:#475569}.mg-dashboard{min-width:0}.mg-dash-loading{color:#64748b;font-size:14px;padding:8px 0}.mg-dash-error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;border-radius:10px;padding:10px 12px;font-size:13px;margin-bottom:12px}.mg-dash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.mg-dash-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px 16px 14px;box-shadow:0 10px 24px #0f172a0f}.mg-dash-card-wide{grid-column:1 / -1;max-width:520px}.mg-dash-card-label{font-size:13px;font-weight:800;color:#64748b;margin-bottom:8px}.mg-dash-card-value{font-size:28px;font-weight:900;color:#0f172a;letter-spacing:-.02em;line-height:1.1}.mg-dash-card-hint{margin-top:8px;font-size:12px;color:#94a3b8;line-height:1.4}.mg-dash-breed-row{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:baseline;margin-top:4px}.mg-dash-breed-item{display:flex;flex-direction:column;gap:4px}.mg-dash-breed-kind{font-size:12px;font-weight:800;color:#64748b}.mg-dash-breed-num{font-size:22px;font-weight:900;color:#0f172a}.mg-kind-toggle{display:flex;gap:10px}.mg-kind-btn{height:36px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;font-size:13px;font-weight:900;cursor:pointer;padding:0 14px}.mg-kind-btn.active{background:#0f172a;color:#fff;border-color:#0f172a}.mg-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:1000;display:flex;align-items:center;justify-content:center;padding:18px}.mg-image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;background:#0f172aeb;display:flex;align-items:center;justify-content:center;padding:56px 20px 24px;box-sizing:border-box}.mg-image-lightbox img{max-width:min(96vw,1800px);max-height:calc(96vh - 40px);width:auto;height:auto;object-fit:contain;border-radius:10px;box-shadow:0 12px 60px #0000008c}.mg-image-lightbox-close{position:absolute;top:14px;right:14px;height:36px;border-radius:10px;border:1px solid rgba(255,255,255,.35);background:#ffffff1f;color:#f8fafc;cursor:pointer;font-weight:900;font-size:13px;padding:0 14px}.mg-image-lightbox-close:hover{background:#fff3}.mg-modal-image-thumb{padding:0;margin:0;border:none;border-radius:12px;cursor:zoom-in;background:transparent;line-height:0;vertical-align:top}.mg-modal-image-thumb:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.mg-modal{width:860px;max-width:100%;max-height:86vh;background:#fff;border-radius:14px;box-shadow:0 24px 70px #0f172a40;overflow:hidden;display:flex;flex-direction:column}.mg-modal.mg-modal--wide{width:min(980px,96vw)}.mg-order-detail-section{margin-top:16px}.mg-order-detail-hint{font-size:12px;color:#64748b;margin:0 0 10px;line-height:1.55}.mg-pay-status{display:inline-block;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:800;white-space:nowrap}.mg-pay-status--pending{background:#fef3c7;color:#92400e}.mg-pay-status--succeeded{background:#dcfce7;color:#166534}.mg-pay-status--closed{background:#f1f5f9;color:#475569}.mg-pay-status--unknown{background:#f8fafc;color:#64748b}.mg-payment-method{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;border-radius:8px;border:1px solid transparent;font-size:11px;font-weight:700;line-height:1.35;letter-spacing:.06em;white-space:nowrap;box-shadow:0 1px 2px #0f172a0f;vertical-align:middle}.mg-payment-method-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px #ffffffa6}.mg-payment-method-text{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:10.5px;font-weight:700;letter-spacing:.08em}.mg-payment-method--manual{background:linear-gradient(180deg,#fffbeb,#fef3c7);border-color:#fcd34d;color:#92400e}.mg-payment-method--manual .mg-payment-method-dot{background:#f59e0b}.mg-payment-method--alipay{background:linear-gradient(180deg,#eff6ff,#dbeafe);border-color:#93c5fd;color:#1e40af}.mg-payment-method--alipay .mg-payment-method-dot{background:#2563eb}.mg-payment-method--wechat{background:linear-gradient(180deg,#ecfdf5,#d1fae5);border-color:#6ee7b7;color:#047857}.mg-payment-method--wechat .mg-payment-method-dot{background:#10b981}.mg-payment-method--redemption{background:linear-gradient(180deg,#f5f3ff,#ede9fe);border-color:#c4b5fd;color:#5b21b6}.mg-payment-method--redemption .mg-payment-method-dot{background:#7c3aed}.mg-payment-method--apple{background:linear-gradient(180deg,#f8fafc,#e2e8f0);border-color:#94a3b8;color:#0f172a}.mg-payment-method--apple .mg-payment-method-dot{background:#334155}.mg-payment-method--operations{background:linear-gradient(180deg,#fff1f2,#ffe4e6);border-color:#fda4af;color:#9f1239}.mg-payment-method--operations .mg-payment-method-dot{background:#e11d48}.mg-payment-method--unknown{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-color:#cbd5e1;color:#475569}.mg-payment-method--unknown .mg-payment-method-dot{background:#94a3b8}.mg-modal-header{padding:14px 16px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.mg-modal-title{font-weight:900;color:#0f172a;font-size:14px}.mg-modal-close{height:30px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;cursor:pointer;font-weight:900;color:#0f172a;padding:0 12px}.mg-modal-body{padding:16px;overflow:auto}.mg-modal-meta{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:12px}.mg-modal-meta-row{display:flex;gap:10px;align-items:center}.mg-modal-meta-row .k{color:#64748b;font-size:12px;font-weight:900}.mg-modal-meta-row .v{color:#0f172a;font-size:12px;font-weight:800;word-break:break-word}.mg-modal-meta-row--block{flex-direction:column;align-items:flex-start;width:100%}.mg-modal-meta-row--block .v{width:100%;font-weight:600}.mg-modal-text{white-space:pre-wrap;line-height:1.6;font-size:13px;color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px}.mg-fulltext-overlay{z-index:1200}.mg-fulltext-textarea{width:100%;min-height:min(70vh,560px);max-height:min(70vh,560px);box-sizing:border-box;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.6}.mg-clamp-cell{display:flex;align-items:flex-start;gap:6px;min-width:0;max-width:100%}.mg-clamp-text{flex:1;min-width:0;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;line-height:1.45;font-size:13px}.mg-clamp-text--mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;white-space:pre-wrap}.mg-clamp-expand-btn{flex-shrink:0;margin-top:1px;padding:2px 6px;font-size:11px;line-height:1.3;border-radius:6px;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;cursor:pointer}.mg-clamp-expand-btn:hover{background:#e2e8f0;color:#0f172a}.mg-trunc-box{position:relative;display:block;width:100%;min-height:26px;padding-right:26px;padding-bottom:2px;box-sizing:border-box}.mg-trunc-cell-text{word-break:break-word;min-width:0}.mg-trunc-expand-corner{position:absolute;right:0;bottom:0;width:22px;height:22px;padding:0;border:none;border-radius:6px;background:#f8fafcf5;color:#64748b;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px #94a3b873}.mg-trunc-expand-corner:hover{background:#e2e8f0;color:#0f172a}.mg-text-preview-frame{position:relative}.mg-text-preview-frame .mg-modal-text--with-corner{padding-right:34px;padding-bottom:30px}.mg-modal-images{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px}.mg-modal-images img{width:180px;height:180px;object-fit:cover;border-radius:12px;border:1px solid #e2e8f0;background:#fff}.mg-modal-media-stack{margin-top:12px;display:flex;flex-direction:column;gap:12px}.mg-modal-media-stack video,.mg-modal-media-stack audio{width:100%;max-width:480px;border-radius:12px;border:1px solid #e2e8f0;background:#0f172a}.mg-post-content{margin-top:16px;border-top:1px solid #e2e8f0;padding-top:16px}.mg-post-content-section+.mg-post-content-section{margin-top:20px}.mg-post-content-text{margin:0;max-height:280px;overflow:auto}.mg-post-content-count{margin-left:6px;font-weight:500;color:var(--text-secondary);font-size:12px}.mg-post-content-expires{margin:6px 0 10px;font-size:12px;color:var(--text-secondary);line-height:1.45}.mg-modal-presign-item-error{font-size:12px;color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:10px 12px;word-break:break-word}.mg-modal-image-slot-placeholder{width:180px;min-height:180px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center}@media (max-width: 960px){.mg-shell{grid-template-columns:1fr;height:auto;overflow:visible}.mg-main{height:auto}.mg-sidebar{flex-direction:row;align-items:center;gap:10px;overflow-x:auto;overflow-y:visible;height:auto}.mg-brand{border-bottom:none;margin-bottom:0;padding:6px}.mg-menu{flex-direction:row;gap:8px;padding-top:0;flex:0 0 auto;overflow-y:visible}.mg-content{overflow-y:visible}.mg-menu-item{white-space:nowrap}}.mg-oss-img-frame{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;border-radius:8px;border:1px solid #e2e8f0;overflow:hidden;flex-shrink:0;background-color:#fff;background-image:linear-gradient(45deg,#e2e8f0 25%,transparent 25%),linear-gradient(-45deg,#e2e8f0 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e2e8f0 75%),linear-gradient(-45deg,transparent 75%,#e2e8f0 75%);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0}.mg-oss-img-frame img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;background:transparent}.mg-perm-hint{margin-bottom:10px;padding:10px 12px;border-radius:8px;border:1px solid #fde68a;background:#fffbeb;font-size:13px;line-height:1.5;color:#92400e}.mg-audit-badge{display:inline-block;padding:2px 8px;border-radius:6px;font-size:11px;line-height:1.35;letter-spacing:.02em;box-sizing:border-box}.mg-audit-duration{font-variant-numeric:tabular-nums;font-size:13px;color:#334155}.mg-audit-user-cell{min-width:0;line-height:1.35;text-align:left}.mg-audit-user-cell-trigger{display:block;width:100%;text-align:left}.mg-audit-user-nickname{font-weight:600;color:#1e293b}.mg-audit-user-sub{margin-top:2px;font-size:11px;color:#94a3b8;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;word-break:break-all}.mg-audit-path-cell{min-width:0}.mg-audit-path-labels{margin-bottom:4px;font-size:12px;line-height:1.35;color:#334155}.mg-audit-path-module{color:#64748b}.mg-audit-path-feature{font-weight:600;color:#1e293b}.mg-audit-path-action{color:#0369a1;font-weight:500}.mg-audit-path-sep{color:#94a3b8}.mg-audit-env-summary{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:0}.mg-audit-env-chip{display:inline-flex;align-items:baseline;gap:4px;max-width:100%;font-size:12px;line-height:1.35}.mg-audit-env-chip-k{flex-shrink:0;padding:1px 5px;border-radius:4px;background:#f1f5f9;color:#64748b;font-size:10px;font-weight:600;text-transform:uppercase}.mg-audit-env-chip-v{min-width:0;color:#334155;word-break:break-word}.mg-audit-detail-section+.mg-audit-detail-section{margin-top:20px;padding-top:16px;border-top:1px solid #e2e8f0}.mg-audit-detail-title{font-size:13px;font-weight:600;color:#475569;margin-bottom:10px}.mg-audit-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}.mg-audit-detail-item{display:flex;flex-direction:column;gap:4px;min-width:0}.mg-audit-detail-item--full{grid-column:1 / -1}.mg-audit-detail-item .k{font-size:11px;color:#94a3b8}.mg-audit-detail-item .v{font-size:13px;color:#0f172a;word-break:break-word}.mg-audit-code{display:block;padding:6px 8px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.5;word-break:break-all;white-space:pre-wrap}.mg-audit-ua-card{margin-top:12px;padding:12px;border-radius:10px;border:1px solid #e2e8f0;background:#f8fafc}.mg-audit-ua-card-head{margin-bottom:8px}.mg-audit-ua-icons{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px;font-size:13px;font-weight:600;color:#334155}.mg-audit-ua-sep{color:#cbd5e1;font-weight:400}.mg-audit-ua-raw{margin:0;padding:10px;border-radius:8px;background:#fff;border:1px solid #e2e8f0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11px;line-height:1.55;white-space:pre-wrap;word-break:break-word;max-height:min(40vh,280px);overflow:auto}.mg-peek-trigger{display:inline;padding:0;margin:0;border:none;background:none;font:inherit;color:inherit;text-decoration:none;cursor:pointer;transition:color .15s ease,transform .15s ease;transform-origin:center}.mg-peek-trigger:hover{color:#2563eb;transform:scale(1.04)}.mg-peek-trigger:active{transform:scale(1.02)}.mg-count-row .mg-peek-trigger .mg-stat-chip{cursor:pointer}.mg-count-row .mg-peek-trigger:hover .mg-stat-chip{filter:brightness(.97)}.mg-dash-stat-clickable{cursor:pointer;transition:color .15s ease,transform .15s ease;transform-origin:left center}.mg-dash-stat-clickable:hover{color:#2563eb;transform:scale(1.03)}button.mg-dash-stat-clickable{display:block;width:100%;padding:0;margin:0;border:none;background:none;font:inherit;text-align:inherit;color:inherit}button.mg-dash-stat-clickable.mg-dash-breed-item{display:flex;flex-direction:column;align-items:flex-start;width:auto;gap:4px}.mg-dash-breed-item.mg-dash-stat-clickable:hover .mg-dash-breed-num{color:#2563eb}.mg-perm-panel{border:1px solid #e2e8f0;border-radius:12px;background:#fff;overflow:hidden;width:100%}.mg-perm-panel-section{padding:8px 10px 10px}.mg-perm-panel-section-title{font-size:11px;font-weight:800;letter-spacing:.02em;margin-bottom:8px}.mg-perm-panel-section--read .mg-perm-panel-section-title{color:#1d4ed8}.mg-perm-panel-section--write .mg-perm-panel-section-title{color:#c2410c}.mg-perm-panel-divider{height:1px;background:#f1f5f9}.mg-perm-panel-tags{display:flex;flex-wrap:wrap;gap:6px}.mg-perm-panel-tags .mg-pill{font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.mg-perm-picker-list .mg-perm-picker-section-title{padding:8px 12px 4px;font-size:11px;font-weight:800;letter-spacing:.02em;background:#f8fafc;border-bottom:1px solid #f1f5f9}.mg-perm-picker-list .mg-perm-picker-section-title--read{color:#1d4ed8}.mg-perm-picker-list .mg-perm-picker-section-title--write{color:#c2410c}.mg-perm-picker-item-text{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.mg-perm-picker-item-text .mg-pill{font-size:11px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;flex-shrink:0}.mg-perm-picker-item-desc{color:#475569;font-size:12px;line-height:1.4}.mg-hover-popover .mg-perm-panel{border:none;background:transparent}.mg-hover-popover-anchor{display:inline-flex;vertical-align:middle}.mg-hover-popover-zone{pointer-events:auto}.mg-hover-popover{position:fixed;z-index:10050;min-width:160px;max-width:min(420px,92vw);max-height:min(320px,60vh);overflow:auto;padding:10px 12px;border-radius:10px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 10px 40px #0f172a1f;box-sizing:border-box}.mg-hover-popover-zone .mg-hover-popover{position:relative;z-index:1}.mg-perm-list{display:flex;flex-wrap:wrap;gap:6px}.mg-perm-more-trigger,.mg-perm-more-trigger .mg-pill{cursor:default}.mg-hover-popover .mg-pill{display:inline-block;margin:2px 0;font-size:11px}.mg-inventory-section{margin-top:16px}.mg-inventory-intro{margin:0 0 10px;color:#64748b;font-size:12px;line-height:1.5}.mg-inventory-list{display:flex;flex-direction:column;gap:8px}.mg-inventory-card{border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;overflow:hidden}.mg-inventory-card-title{padding:8px 12px;font-size:13px;font-weight:700;color:#0f172a;background:#f1f5f9;border-bottom:1px solid #e2e8f0}.mg-inventory-card-body{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 14px;padding:10px 12px}.mg-inventory-enable{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#0f172a;flex:0 0 auto;min-width:56px}.mg-inventory-field{display:flex;flex-direction:column;gap:4px;flex:0 0 auto;min-width:0}.mg-inventory-k{font-size:11px;font-weight:600;color:#64748b;white-space:nowrap}.mg-inventory-hint-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:4px;border-radius:50%;border:1px solid #94a3b8;color:#475569;font-size:10px;font-weight:700;cursor:help;vertical-align:middle}.mg-inventory-input-time{width:108px;max-width:108px;min-width:0;box-sizing:border-box}.mg-inventory-input-select{width:96px;max-width:96px;min-width:0;box-sizing:border-box;padding-left:8px;padding-right:24px}.mg-inventory-input-num{width:64px;max-width:64px;min-width:0;box-sizing:border-box}.mg-inventory-card-body .mg-input,.mg-inventory-card-body .mg-select{height:32px;font-size:13px}.App{min-height:100vh;display:flex;flex-direction:column}.management-app{min-height:100vh}main{flex:1}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #6366f1;--primary-dark: #4f46e5;--secondary-color: #8b5cf6;--text-primary: #1f2937;--text-secondary: #6b7280;--bg-light: #f9fafb;--bg-white: #ffffff;--border-color: #e5e7eb;--shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary);line-height:1.6}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}a{text-decoration:none;color:inherit}ul{list-style:none}.container{max-width:1200px;margin:0 auto;padding:0 20px}@media (max-width: 768px){.container{padding:0 16px}}
