:root{color-scheme:light;--bg: #f4f6f8;--panel: #ffffff;--panel-soft: #f9fafb;--line: #dde3ea;--line-strong: #c7d0dc;--ink: #17202a;--muted: #667385;--brand: #1f6feb;--brand-strong: #1659c7;--success: #157f4f;--warning: #a06000;--danger: #b4232e;--shadow: 0 10px 28px rgba(18, 32, 49, .08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.login{min-height:100vh;display:grid;place-items:center;padding:24px}.login-panel{width:min(460px,100%);display:grid;gap:18px;background:var(--panel);border:1px solid var(--line);padding:28px;border-radius:8px;box-shadow:var(--shadow)}.login-hero{display:flex;gap:16px;align-items:center}.login-hero h1,.topbar h1,.section-header h2,.form-panel h3{margin:0}.login-hero p,.brand span,.eyebrow,.operator,.metric span{color:var(--muted)}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:8px;color:#fff;background:var(--brand);font-weight:800}.brand-mark.large{width:54px;height:54px;font-size:24px}.app-shell{min-height:100vh;display:grid;grid-template-columns:264px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#fff;padding:20px 14px}.brand{display:flex;gap:12px;align-items:center;padding:4px 8px 22px}.brand strong,.brand span{display:block}.brand span{font-size:12px}.app-switcher{grid-column:1 / -1;display:grid;gap:6px;margin:0 4px 4px 20px;padding:4px 0 6px 12px;border-left:1px solid var(--line)}.app-switcher button{display:grid;gap:4px;min-height:54px;padding:8px 10px;text-align:left;border:1px solid var(--line);border-radius:8px;background:#fff;color:#334155}.app-switcher button.active{border-color:#1f6feb8c;background:#f2f7ff}.app-switcher strong{font-size:13px}.app-switcher span{color:var(--muted);font-size:11px;line-height:1.35}.nav{display:grid;gap:4px}.nav>button,.ghost-button,.icon-button{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--ink);border-radius:8px}.nav>button{width:100%;min-height:42px;padding:0 10px;text-align:left}.nav>button svg:last-child{margin-left:auto}.nav>button:hover,.ghost-button:hover,.icon-button:hover{background:#eef3f8}.nav>button.active{background:#e8f1ff;color:var(--brand-strong);font-weight:700}.sidebar-footer{margin-top:auto;display:grid;gap:12px;padding:12px 8px 4px}.ghost-button{min-height:38px;padding:0 10px}.workspace{min-width:0;padding:22px 28px 40px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.topbar h1{display:flex;align-items:center;gap:10px;font-size:26px;letter-spacing:0}.eyebrow{margin-bottom:6px;font-size:12px;font-weight:800;text-transform:uppercase}.operator{display:flex;align-items:center;gap:10px;min-width:0}.page-grid,.preview-grid{display:grid;grid-template-columns:minmax(340px,420px) minmax(0,1fr);gap:18px;align-items:start}.update-workspace{display:grid;gap:18px}.update-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;padding:6px;border:1px solid var(--line);border-radius:10px;background:#eef2f7}.update-tabs button{min-height:62px;display:flex;align-items:center;gap:10px;border:1px solid transparent;border-radius:8px;padding:9px 13px;background:transparent;color:#465568;text-align:left}.update-tabs button:hover{background:#ffffffa3}.update-tabs button.active{border-color:var(--line);background:var(--panel);color:var(--brand-strong);box-shadow:0 2px 8px #12203114}.update-tab-label{min-width:0;display:grid;gap:2px}.update-tab-label strong,.update-tab-label small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.update-tab-label strong{font-size:14px}.update-tab-label small{color:var(--muted);font-size:11px}.update-policy-note{display:flex;align-items:flex-start;gap:10px;border:1px solid rgba(31,111,235,.28);border-radius:8px;padding:12px 14px;background:#f2f7ff;color:#334155}.update-policy-note>svg{flex:0 0 auto;margin-top:1px;color:var(--brand)}.update-policy-note div{display:grid;gap:3px}.update-policy-note strong{font-size:13px}.update-policy-note span{color:var(--muted);font-size:12px;line-height:1.45}.stack{display:grid;gap:18px}.form-panel,.data-panel,.guide-panel,.metric,.empty-state{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.form-panel,.data-panel,.guide-panel{padding:16px}.form-panel{display:grid;gap:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}label{display:grid;gap:6px;min-width:0;color:#39465a;font-size:13px;font-weight:700}label.full{grid-column:1 / -1}.rk3576-base-picker{display:grid;gap:8px;min-width:0;margin:0;padding:0;border:0}.rk3576-base-picker legend{margin-bottom:6px;color:#39465a;font-size:13px;font-weight:700}.rk3576-base-picker+label{align-self:start}.rk3576-base-options{display:grid;gap:8px;max-height:160px;overflow:auto;padding:10px;border:1px solid var(--line-strong);border-radius:8px;background:var(--panel-soft)}.rk3576-base-options label{display:flex;align-items:flex-start;gap:8px;overflow-wrap:anywhere}.rk3576-base-options input{flex:none;width:auto;margin:3px 0 0}input,select,textarea{width:100%;min-width:0;border:1px solid var(--line-strong);background:var(--panel-soft);color:var(--ink);border-radius:8px;padding:9px 10px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #1f6feb1f}textarea{min-height:112px;resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.45}.upload-field{padding:12px;border:1px dashed var(--line-strong);border-radius:8px;background:#f8fbff}.upload-field input[type=file]{background:#fff;cursor:pointer}.upload-field span{color:var(--muted);font-size:12px;font-weight:600}.package-guide-list{display:grid;gap:10px}.package-guide-item{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel-soft)}.package-guide-item.active{border-color:#1f6feb8c;background:#f2f7ff}.package-guide-head{display:flex;align-items:center;gap:8px;min-width:0}.package-guide-item p{margin:0;color:#334155;font-size:13px;line-height:1.45}.package-guide-item dl{display:grid;grid-template-columns:48px minmax(0,1fr);gap:6px 8px;margin:0;font-size:12px;line-height:1.45}.package-guide-item dt{color:var(--muted);font-weight:800}.package-guide-item dd{margin:0;color:#465568}.compact-copy{margin:0;color:#465568;font-size:13px;line-height:1.65}.primary-button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;padding:0 14px;color:#fff;background:var(--brand);font-weight:800}.primary-button:hover{background:var(--brand-strong)}.section-header{min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.section-header h2{display:flex;align-items:center;gap:8px;font-size:17px}.icon-button{width:34px;height:34px;justify-content:center;border:1px solid var(--line)}.id-cell{display:inline-flex;align-items:center;gap:6px;max-width:190px}.id-cell code{color:#334155;font-size:12px}.copy-button{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--muted)}.copy-button:hover{background:#eef3f8;color:var(--brand-strong)}.detail-button{min-height:30px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:#fff;color:#334155;font-size:12px;font-weight:800}.detail-button:hover{background:#eef3f8;color:var(--brand-strong)}.action-group{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:230px}.danger-outline{border-color:#b4232e59;color:var(--danger)}.inline-error{color:var(--danger);font-size:11px}.modal-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:24px;background:#0f172a6b}.detail-modal{width:min(880px,100%);max-height:min(760px,calc(100vh - 48px));display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 24px 70px #0f172a47}.detail-modal-head{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:0 16px 0 18px}.detail-modal-head h3{margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:17px}.detail-modal-body{overflow:auto;display:grid;gap:14px;padding:16px}.detail-section{border:1px solid var(--line);border-radius:8px;background:var(--panel-soft);overflow:hidden}.detail-section h4{margin:0;border-bottom:1px solid var(--line);padding:10px 12px;background:#fff;font-size:13px}.detail-section dl{display:grid;grid-template-columns:150px minmax(0,1fr);margin:0}.detail-section dt,.detail-section dd{min-width:0;border-bottom:1px solid var(--line);padding:10px 12px;font-size:13px}.detail-section dt{color:var(--muted);font-weight:800}.detail-section dd{display:flex;align-items:center;gap:8px;margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.detail-section code{overflow-wrap:anywhere;white-space:pre-wrap}.detail-section dt:nth-last-of-type(1),.detail-section dd:nth-last-of-type(1){border-bottom:0}.table-wrap{overflow:auto}.pagination{min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:10px 0 0;color:var(--muted);font-size:12px;font-weight:700}.pagination label{width:auto;display:inline-flex;align-items:center;gap:8px}.pagination select{width:76px;min-height:32px;border:1px solid var(--line);border-radius:8px;padding:0 8px;background:#fff;color:var(--ink)}.pagination-actions{display:flex;align-items:center;gap:6px}.pagination-actions button{min-height:32px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:#fff;color:#334155;font-size:12px;font-weight:800}.pagination-actions button:hover:not(:disabled){background:#eef3f8;color:var(--brand-strong)}table{width:100%;border-collapse:collapse;min-width:980px}th,td{height:42px;border-bottom:1px solid var(--line);padding:0 10px;text-align:left;vertical-align:middle;white-space:nowrap;font-size:13px}th{color:var(--muted);background:var(--panel-soft);font-size:12px;font-weight:800}tr:last-child td{border-bottom:0}.badge{display:inline-flex;align-items:center;height:24px;max-width:100%;border-radius:999px;padding:0 9px;font-size:12px;font-weight:800;background:#eef2f7;color:#465568}.badge.success{background:#e5f7ef;color:var(--success)}.badge.warning{background:#fff3d8;color:var(--warning)}.badge.danger{background:#ffe7ea;color:var(--danger)}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.metric{padding:16px;display:grid;gap:8px}.metric strong{font-size:24px;letter-spacing:0}.empty-state{min-height:160px;display:grid;place-items:center;padding:20px;color:var(--muted);text-align:center}pre{overflow:auto;min-height:360px;max-height:680px;margin:0;background:#101923;color:#dbeafe;padding:16px;border-radius:8px;font-size:13px;line-height:1.5}code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.error{color:var(--danger);white-space:pre-wrap}.success-message{color:#087443;font-weight:700;white-space:pre-wrap}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.page-grid,.preview-grid,.metric-grid{grid-template-columns:1fr}.update-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.workspace{padding:18px}}@media(max-width:620px){.form-grid,.nav{grid-template-columns:1fr}.update-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{align-items:flex-start;flex-direction:column}.detail-section dl{grid-template-columns:1fr}.detail-section dt{border-bottom:0;padding-bottom:2px}.detail-section dd{padding-top:2px}}:root{--bg: #f7f1ff;--panel: rgba(255, 255, 255, .9);--panel-soft: #fbf8ff;--line: #e4d9f0;--line-strong: #d2c2e4;--ink: #292044;--muted: #75698b;--brand: #9b4dff;--brand-strong: #7a32df;--success: #0b8f6e;--warning: #b96300;--danger: #ce2f70;--shadow: 0 14px 34px rgba(80, 48, 118, .08);--shadow-hover: 0 18px 42px rgba(80, 48, 118, .13);--gradient-brand: linear-gradient(110deg, #ff69b4 0%, #9b5cff 52%, #27dfe6 100%);--gradient-soft: linear-gradient(135deg, rgba(255, 105, 180, .13), rgba(39, 223, 230, .12))}html{min-width:320px}body{min-height:100vh;background:radial-gradient(circle at 82% -8%,rgba(39,223,230,.22),transparent 31%),radial-gradient(circle at 18% 83%,rgba(255,105,180,.17),transparent 32%),var(--bg);background-attachment:fixed}button,a,input,select,textarea{transition:border-color .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(39,223,230,.4);outline-offset:2px}.app-shell{grid-template-columns:248px minmax(0,1fr)}.sidebar{z-index:5;overflow-y:auto;border-right:1px solid rgba(255,255,255,.12);background:radial-gradient(circle at 20% 0,rgba(255,105,180,.13),transparent 28%),linear-gradient(180deg,#25163f,#211337);color:#fff8ff;padding:22px 14px 16px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.22) transparent}.brand{gap:11px;padding:0 10px 22px}.brand-mark{width:34px;height:34px;border-radius:11px;background:var(--gradient-brand);box-shadow:0 9px 24px #ff69b457;font-size:17px;text-transform:lowercase}.brand strong{color:#fff;font-size:15px;letter-spacing:-.025em}.brand span{color:#bca7d5;font-size:10px;letter-spacing:.02em}.nav{display:grid;gap:8px}.nav-group{display:grid;gap:3px}.nav-group h2{margin:12px 12px 5px;color:#a892c0;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.nav-group>button{width:100%;min-height:42px;display:flex;align-items:center;gap:10px;border:0;border-radius:11px;padding:0 12px;background:transparent;color:#f2eaf9;text-align:left}.nav-group>button svg{flex:0 0 auto;color:#c5b4d7}.nav-group>button svg:last-child{margin-left:auto}.nav-group>button:hover{background:#ffffff14;color:#fff}.nav-group>button.active{background:linear-gradient(90deg,#ff72bd,#bd6df6);color:#fff;box-shadow:0 9px 22px #ff69b440;font-weight:800}.nav-group>button.active svg{color:#fff}.app-switcher{margin:3px 3px 5px 21px;padding:5px 0 5px 12px;border-left-color:#27dfe66b}.app-switcher button{min-height:58px;border-color:#ffffff1c;border-radius:12px;background:#ffffff12;color:#fff}.app-switcher button.active{border-color:#27dfe675;background:linear-gradient(135deg,#27dfe624,#9b4dff2e);box-shadow:none}.app-switcher span{color:#bca7d5}.sidebar-footer{border-top:1px solid rgba(255,255,255,.1);margin-top:18px;padding-top:16px}.sidebar-footer .badge{justify-self:start;background:#27dfe624;color:#7af5f8}.sidebar .ghost-button{color:#e8dff0}.sidebar .ghost-button:hover{background:#ffffff14}.sidebar-account{display:flex;align-items:center;gap:10px;min-width:0}.sidebar-avatar{width:34px;height:34px;flex:0 0 auto;display:grid;place-items:center;border-radius:12px;background:var(--gradient-brand);box-shadow:0 6px 16px #ff69b447;color:#fff;font-size:15px;font-weight:800}.sidebar-account-text{display:grid;gap:4px;min-width:0;justify-items:start}.sidebar-account-text strong{max-width:100%;overflow:hidden;color:#f4ecfb;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.sidebar-account-text .badge{min-height:0;padding:2px 8px;font-size:10px}.sidebar-logout{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:0 14px;background:#ffffff0f;color:#e8dff0;font-size:13px;font-weight:700;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.sidebar-logout:hover{border-color:#ff69b48c;background:linear-gradient(110deg,#ff69b438,#9b5cff38);color:#fff;box-shadow:0 8px 20px #ff69b42e}.sidebar-logout:focus-visible{outline:2px solid #ff8ccb;outline-offset:2px}.workspace{position:relative;padding:24px 30px 44px}.workspace:before{position:fixed;z-index:-1;top:84px;right:4vw;width:280px;height:280px;border-radius:50%;background:linear-gradient(135deg,#ff69b41f,#27dfe61f);filter:blur(42px);content:"";pointer-events:none}.topbar{min-height:76px;margin:-24px -30px 24px;padding:14px 30px;border-bottom:1px solid rgba(210,194,228,.75);background:#ffffff85;-webkit-backdrop-filter:blur(18px) saturate(145%);backdrop-filter:blur(18px) saturate(145%)}.topbar h1{color:var(--ink);font-size:27px;letter-spacing:-.04em}.topbar h1 svg{color:var(--brand);filter:drop-shadow(0 4px 8px rgba(155,77,255,.2))}.eyebrow{margin-bottom:4px;color:#8d7a9f;font-size:10px;letter-spacing:.11em}.operator{border:1px solid rgba(210,194,228,.8);border-radius:999px;padding:5px 6px 5px 13px;background:#ffffffb3;box-shadow:0 6px 18px #5030760d;font-size:12px}.operator .badge{background:linear-gradient(110deg,#ff69b433,#27dfe633);color:var(--brand-strong)}.form-panel,.data-panel,.guide-panel,.metric,.empty-state{border-color:#d2c2e4d1;border-radius:20px;background:var(--panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(16px) saturate(135%);backdrop-filter:blur(16px) saturate(135%)}.form-panel,.data-panel,.guide-panel{padding:19px}.form-panel:hover,.data-panel:hover,.guide-panel:hover,.metric:hover{border-color:#bea3dce6;box-shadow:var(--shadow-hover)}.guide-panel{background:linear-gradient(135deg,#ffffffeb,#faf4ffe0),var(--gradient-soft)}.guide-panel>h3,.form-panel>h3{margin:0;color:var(--ink);font-size:17px;letter-spacing:-.02em}.section-header{margin-bottom:15px}.section-header h2,.section-header h3{margin:0;color:var(--ink);font-size:17px;letter-spacing:-.025em}.section-header h2 svg{color:var(--brand)}.page-grid,.preview-grid,.stack,.update-workspace{gap:20px}.form-grid{gap:14px}label,.rk3576-base-picker legend{color:#514263;font-size:12px;font-weight:750}input,select,textarea{min-height:42px;border-color:var(--line-strong);border-radius:12px;background:#fbf8ffeb;padding:10px 12px}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#8a6eaa 50%),linear-gradient(135deg,#8a6eaa 50%,transparent 50%),linear-gradient(180deg,#fff,#f6f0ff);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 12px) calc(50% - 2px),0 0;background-size:6px 6px,6px 6px,100% 100%;background-repeat:no-repeat;padding-right:36px}input:hover,select:hover,textarea:hover{border-color:#bba2d2}input:focus,select:focus,textarea:focus{border-color:#9b5cff;background:#fff;box-shadow:0 0 0 4px #9b5cff1f,0 7px 18px #5030760f}select:focus{background-image:linear-gradient(45deg,transparent 50%,#7a4eb8 50%),linear-gradient(135deg,#7a4eb8 50%,transparent 50%),linear-gradient(180deg,#fff,#f8f3ff);background-position:calc(100% - 18px) calc(50% - 2px),calc(100% - 12px) calc(50% - 2px),0 0;background-size:6px 6px,6px 6px,100% 100%;background-repeat:no-repeat}.candy-select{position:relative;width:100%;min-width:0}.candy-select-native{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);overflow:hidden;white-space:nowrap;appearance:auto;background:transparent;pointer-events:none}.candy-select-trigger{width:100%;min-height:42px;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(183,154,214,.7);border-radius:14px;padding:0 14px;background:linear-gradient(180deg,#fffffffa,#f6f0fff5);color:#3f314f;box-shadow:inset 0 1px #ffffffe6,0 6px 16px #7a4ab014;font-size:13px;font-weight:700;text-align:left}.candy-select-trigger:hover:not(:disabled){border-color:#c3a8dc;background:linear-gradient(180deg,#fff,#f1e7ff)}.candy-select.is-open .candy-select-trigger,.candy-select-trigger:focus-visible{border-color:#9b5cff;background:#fff;box-shadow:0 0 0 4px #9b5cff24,0 10px 22px #5030761a}.candy-select.is-disabled .candy-select-trigger,.candy-select-trigger:disabled{opacity:.62;cursor:not-allowed}.candy-select-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.candy-select-value.is-placeholder{color:#8a789b;font-weight:650}.candy-select-chevron{width:10px;height:10px;flex:0 0 auto;border-right:2px solid #8a6eaa;border-bottom:2px solid #8a6eaa;transform:rotate(45deg) translateY(-2px);transition:transform .16s ease}.candy-select.is-open .candy-select-chevron{transform:rotate(225deg) translateY(-1px)}.candy-select-menu{position:fixed;z-index:1000;box-sizing:border-box;max-height:260px;margin:0;overflow:auto;list-style:none;border:1px solid rgba(210,190,232,.95);border-radius:16px;padding:8px;background:radial-gradient(circle at 12% 0,rgba(255,105,180,.08),transparent 34%),radial-gradient(circle at 88% 0,rgba(39,223,230,.08),transparent 30%),#fffffffa;box-shadow:0 18px 40px #311c4a2e,inset 0 1px #ffffffe6;-webkit-backdrop-filter:blur(16px) saturate(140%);backdrop-filter:blur(16px) saturate(140%)}.candy-select-option{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:8px;min-height:38px;border-radius:12px;padding:8px 10px;color:#4d3d60;font-size:13px;font-weight:650;cursor:pointer}.candy-select-option.is-active{background:#f4eafff2;color:#6a3db8}.candy-select-option.is-selected{background:linear-gradient(110deg,#ff69b429,#9b5cff2e,#27dfe629);color:#5a2f9e;font-weight:800}.candy-select-option.is-selected.is-active{box-shadow:inset 0 0 0 1px #9b5cff47}.candy-select-option.is-disabled{opacity:.45;cursor:not-allowed}.candy-select-check{width:14px;height:14px;border-radius:50%;background:transparent}.candy-select-option.is-selected .candy-select-check{background:linear-gradient(135deg,#ff69b4,#9b5cff 55%,#27dfe6);box-shadow:0 0 0 3px #9b5cff24;position:relative}.candy-select-option.is-selected .candy-select-check:after{position:absolute;inset:3px 0 0 4px;width:4px;height:7px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(40deg);content:""}.pagination .candy-select{width:88px}.pagination .candy-select-trigger{min-height:34px;border-radius:999px;padding:0 12px;font-size:12px}.rk3576-base-options{border-color:var(--line-strong);border-radius:13px;background:#fbf8ff}.upload-field{border-color:#bea7d5;border-radius:15px;background:linear-gradient(135deg,#ff69b414,#27dfe614),#ffffffb8}.upload-field:hover{border-color:var(--brand)}.upload-field input[type=file]{background:#ffffffd1}.primary-button{min-height:42px;border-radius:999px;padding:0 18px;background:var(--gradient-brand);box-shadow:0 9px 22px #9b5cff38}.primary-button:hover:not(:disabled){background:linear-gradient(110deg,#f24da4,#8643ee 52%,#16cad2);box-shadow:0 12px 28px #9b5cff4d;transform:translateY(-1px)}.primary-button:active:not(:disabled){box-shadow:0 6px 16px #9b5cff38;transform:translateY(0)}.ghost-button,.icon-button,.detail-button,.copy-button,.pagination-actions button,.button-ghost{border-color:var(--line);background:#ffffffc2;color:#514263}.detail-button,.button-ghost{min-height:34px;border:1px solid rgba(183,154,214,.58);border-radius:999px;padding:0 13px;background:linear-gradient(180deg,#fff,#f6f0ff);color:#5a4572;box-shadow:0 5px 14px #7a4ab014;text-decoration:none;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease,background .14s ease}.icon-button,.copy-button{border-radius:50%}.ghost-button:hover,.icon-button:hover,.detail-button:hover:not(:disabled),.copy-button:hover,.pagination-actions button:hover:not(:disabled),.button-ghost:hover{border-color:#c3a8dc;background:linear-gradient(180deg,#fff,#efe4ff);color:var(--brand-strong);box-shadow:0 9px 18px #7a4ab029;transform:translateY(-1px)}.detail-button:active:not(:disabled),.button-ghost:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 10px #7a4ab01f}.action-group{gap:8px;min-width:0}.action-stack{display:grid;gap:8px;justify-items:start}.actions-cell{min-width:180px;max-width:280px;height:auto;padding-top:12px;padding-bottom:12px;white-space:normal;vertical-align:top}.filter-toolbar{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(140px,.8fr)) auto;gap:12px;align-items:end}.filter-toolbar label{display:grid;gap:6px}.filter-actions{min-height:40px}.filter-summary{margin:2px 0 0;color:#6d5d7f;font-size:13px}.entity-cell{display:grid;gap:8px;min-width:180px;white-space:normal}.entity-title{color:#2f243d;font-size:14px;font-weight:800;letter-spacing:-.01em}.entity-meta{display:flex;flex-wrap:wrap;gap:6px}.meta-chip{display:inline-flex;align-items:center;min-height:24px;border:1px solid rgba(195,168,220,.5);border-radius:999px;padding:0 10px;background:#ffffffd1;color:#6a587d;font-size:11px;font-weight:700}.meta-chip.soft{border-color:#27dfe647;background:#e9fcfce6;color:#1f7f86}.status-stack,.hardware-stack{display:grid;gap:6px;justify-items:start;white-space:normal}.status-note{color:#7a6a8b;font-size:11px;line-height:1.4}.hardware-stack{color:#6d5d7f;font-size:12px}.hardware-stack code{margin-left:4px;color:#514263;font-size:11px}.danger-outline{border-color:#ce2f7052;background:#fff0f7cc;color:var(--danger)}.update-tabs{gap:8px;padding:7px;border-color:#d2c2e4d9;border-radius:18px;background:#eadef7b8;box-shadow:inset 0 1px #ffffffc7}.update-tabs button{min-height:64px;border-radius:14px;color:#5b4c6c}.update-tabs button:hover{background:#ffffffad}.update-tabs button.active{border-color:#c3a8dcb8;background:linear-gradient(135deg,#fffffff5,#f8f0fff2),var(--gradient-soft);color:var(--brand-strong);box-shadow:0 9px 22px #5030761a}.update-tabs button.active svg{color:#e94fa4}.update-policy-note{border-color:#9b4dff3d;border-radius:15px;background:linear-gradient(105deg,#ff69b417,#27dfe617);color:#514263}.update-policy-note>svg{color:var(--brand)}.package-guide-item{border-color:var(--line);border-radius:15px;background:#fbf8ffd1}.package-guide-item.active{border-color:#9b4dff7a;background:linear-gradient(135deg,#ff69b414,#27dfe617);box-shadow:inset 0 0 0 1px #ffffffd1}.package-guide-item p,.package-guide-item dd,.compact-copy{color:#5d506d}.table-wrap{border:1px solid rgba(228,217,240,.8);border-radius:15px}table{border-collapse:separate;border-spacing:0}th,td{height:auto;min-height:46px;border-color:var(--line);padding:12px;vertical-align:top;white-space:normal}th{background:linear-gradient(180deg,#faf6ff,#f5effb);color:#7d6d8e;font-size:11px;letter-spacing:.02em}tbody tr{transition:background-color .16s ease}tbody tr:hover td{background:#f6eeffb8}tbody tr:last-child td:first-child{border-bottom-left-radius:14px}tbody tr:last-child td:last-child{border-bottom-right-radius:14px}.id-cell code,code{color:#675577}.badge{min-height:25px;height:auto;gap:5px;background:#f0e8f8;color:#665674}.badge:before{width:5px;height:5px;flex:0 0 auto;border-radius:50%;background:currentColor;content:""}.badge.success{background:#ddf8ef;color:#08785d}.badge.warning{background:#fff0d1;color:#9b5400}.badge.danger{background:#ffe3ef;color:#b72563}.metric-grid{gap:16px}.metric{position:relative;min-height:112px;overflow:hidden;padding:18px}.metric:after{position:absolute;right:-25px;bottom:-30px;width:88px;height:88px;border-radius:50%;background:linear-gradient(145deg,#ff69b43d,#27dfe63d);content:"";pointer-events:none}.metric div{color:var(--brand)}.metric strong{position:relative;z-index:1;font-size:27px;letter-spacing:-.035em}.pagination{border-color:var(--line)}.pagination select,.pagination-actions button{border-radius:999px;background:#ffffffd1}.empty-state{background:radial-gradient(circle at 50% 25%,rgba(39,223,230,.1),transparent 36%),#ffffffc7}pre{min-height:360px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:radial-gradient(circle at 90% 0,rgba(255,105,180,.12),transparent 25%),#201630;color:#ecddff;box-shadow:inset 0 1px #ffffff0f}.modal-backdrop{z-index:30;background:#1f123094;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.detail-modal{border-color:#ffffff80;border-radius:24px;background:#fffffff0;box-shadow:0 30px 90px #1f123057;-webkit-backdrop-filter:blur(20px) saturate(140%);backdrop-filter:blur(20px) saturate(140%)}.detail-modal-head{min-height:64px;border-color:var(--line);background:linear-gradient(105deg,#ff69b414,#27dfe614)}.detail-section{border-color:var(--line);border-radius:16px;background:#fbf8ff}.detail-section h4{border-color:var(--line);background:#fff}.detail-section dt,.detail-section dd{border-color:var(--line)}.login{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 20% 15%,rgba(255,105,180,.42),transparent 32%),radial-gradient(circle at 82% 80%,rgba(39,223,230,.36),transparent 34%),linear-gradient(135deg,#29173f,#5a2b79 44%,#203e66)}.login:before,.login:after{position:absolute;z-index:-1;width:330px;height:330px;border:1px solid rgba(255,255,255,.22);border-radius:50%;content:""}.login:before{top:-130px;right:11%;box-shadow:0 0 0 42px #ffffff09,0 0 0 88px #ffffff06}.login:after{bottom:-190px;left:8%;box-shadow:0 0 0 54px #ffffff08}.login-panel{width:min(470px,100%);gap:20px;border-color:#ffffff6b;border-radius:28px;padding:34px;background:#ffffffe0;box-shadow:0 32px 90px #15092359,inset 0 1px #ffffffe6;-webkit-backdrop-filter:blur(24px) saturate(145%);backdrop-filter:blur(24px) saturate(145%)}.login-hero{gap:14px}.login-hero h1{color:var(--ink);font-size:28px;letter-spacing:-.04em}.login-hero p{margin:5px 0 0;color:var(--muted)}.captcha-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:stretch}.captcha-row input{letter-spacing:.32em;font-weight:700;text-transform:uppercase}.captcha-row input::placeholder{letter-spacing:normal;font-weight:400;text-transform:none}.captcha-image{position:relative;display:grid;place-items:center;width:140px;min-height:48px;padding:0;overflow:hidden;border:1px solid var(--line-strong);border-radius:14px;color:var(--muted);background:#f8f4ff;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease}.captcha-image:hover:not(:disabled),.captcha-image:focus-visible{border-color:var(--brand);box-shadow:0 0 0 3px #9b4dff29;outline:none}.captcha-image:disabled{cursor:progress}.captcha-image img{display:block;width:132px;height:48px}.captcha-image span{font-size:13px}.captcha-image svg{position:absolute;right:5px;bottom:5px;padding:2px;border-radius:999px;color:var(--brand-strong);background:#ffffffd9}.captcha-image .spin{animation:captcha-spin .8s linear infinite}@keyframes captcha-spin{to{transform:rotate(360deg)}}.brand-mark.large{width:58px;height:58px;border-radius:18px;font-size:29px}.success-message{color:var(--success)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media(max-width:1180px){.workspace{padding-inline:22px}.topbar{margin-inline:-22px;padding-inline:22px}.update-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;max-height:none;overflow:visible;border-right:0;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:14px}.nav{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:12px}.nav-group h2{margin-top:6px}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}}@media(max-width:720px){.nav{grid-template-columns:1fr}.nav-group{display:none}.nav-group:has(>button.active){display:grid}.brand{padding-bottom:12px}.workspace{padding:18px 14px 32px}.topbar{min-height:auto;margin:-18px -14px 20px;padding:16px 14px}.topbar h1{font-size:23px}.operator{width:100%;justify-content:space-between}.update-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.form-panel,.data-panel,.guide-panel{padding:15px}.form-panel,.data-panel,.guide-panel,.metric,.empty-state{border-radius:17px}.filter-toolbar{grid-template-columns:1fr}.actions-cell{max-width:none}.login-panel{padding:25px;border-radius:24px}}.spin{animation:captcha-spin .8s linear infinite}.detail-button.danger-soft{border-color:#ce2f7052;background:linear-gradient(180deg,#fff,#fff1f6);color:#b12a62}.detail-button.danger-soft:hover:not(:disabled){border-color:#ce2f7099;background:linear-gradient(180deg,#fff,#ffe3ee);color:#9c1f53;box-shadow:0 9px 18px #ce2f7029}.danger-button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:0 18px;background:linear-gradient(110deg,#ff5c9a,#e0367a 55%,#b3246a);color:#fff;box-shadow:0 10px 24px #ce2f7047;font-size:13px;font-weight:800;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,opacity .14s ease}.danger-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px #ce2f7057}.danger-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.factory-toast{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;border:1px solid rgba(11,143,110,.28);border-radius:14px;padding:10px 12px 10px 14px;background:#0b8f6e14}.factory-toast button{display:grid;place-items:center;width:26px;height:26px;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer}.factory-toast button:hover{background:#0b8f6e1f}.factory-overlay.drawer{place-items:stretch end;padding:0}.factory-overlay-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(255,255,255,.55);background:#fffffff7;box-shadow:0 30px 90px #1f123057}.factory-overlay-panel.dialog{width:min(620px,100%);max-height:min(820px,calc(100vh - 48px));border-radius:24px;animation:factory-dialog-in .18s ease-out}.factory-overlay-panel.drawer{width:min(520px,100vw);height:100vh;border-radius:24px 0 0 24px;animation:factory-drawer-in .22s ease-out}@keyframes factory-dialog-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes factory-drawer-in{0%{opacity:.6;transform:translate(36px)}to{opacity:1;transform:none}}.factory-overlay-head{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:16px 16px 16px 20px;background:linear-gradient(105deg,#ff69b414,#27dfe614)}.factory-overlay-icon{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:12px;background:var(--gradient-brand);color:#fff}.factory-overlay-icon.dialog{background:linear-gradient(135deg,#ff7aa8,#d92f72)}.factory-overlay-title{min-width:0;flex:1}.factory-overlay-title h3{margin:0;font-size:17px}.factory-overlay-title p{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 0;color:var(--muted);font-size:13px}.factory-overlay-title p strong{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em}.factory-overlay-close{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--muted);cursor:pointer}.factory-overlay-close:hover:not(:disabled){border-color:#c3a8dc;color:var(--brand-strong)}.factory-overlay-body{overflow:auto;display:grid;align-content:start;gap:16px;padding:18px 20px}.factory-overlay-foot{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding:14px 20px;background:var(--panel-soft)}.factory-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.factory-facts div{min-width:0;border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:var(--panel-soft)}.factory-facts dt{color:var(--muted);font-size:11px;font-weight:700}.factory-facts dd{margin:4px 0 0;overflow-wrap:anywhere;color:var(--ink);font-size:13px;font-weight:700}.factory-callout{display:flex;gap:10px;border-radius:14px;padding:12px 14px}.factory-callout svg{flex:0 0 auto;margin-top:2px}.factory-callout strong{font-size:13px}.factory-callout p{margin:4px 0 0;font-size:12px;line-height:1.6}.factory-callout.danger{border:1px solid rgba(206,47,112,.28);background:#ce2f7012;color:#9c1f53}.factory-callout.warning{border:1px solid rgba(185,99,0,.3);background:#ffb0201a;color:#8a4a00}.factory-section-title{margin:4px 0 0;color:var(--ink);font-size:13px}.factory-timeline{position:relative;display:grid;gap:10px;margin:0;padding:0 0 0 22px;list-style:none}.factory-timeline:before{position:absolute;top:8px;bottom:8px;left:6px;width:2px;border-radius:2px;background:var(--line);content:""}.factory-timeline li{position:relative}.factory-timeline-dot{position:absolute;top:14px;left:-21px;width:12px;height:12px;border:2px solid #fff;border-radius:50%;background:#b9abc9;box-shadow:0 0 0 2px #e4d9f0}.factory-timeline li.success .factory-timeline-dot{background:var(--success);box-shadow:0 0 0 2px #0b8f6e38}.factory-timeline li.warning .factory-timeline-dot{background:#f0a020;box-shadow:0 0 0 2px #f0a0203d}.factory-timeline-card{display:grid;gap:4px;border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:#fff}.factory-timeline li.muted .factory-timeline-card{background:var(--panel-soft);opacity:.78}.factory-timeline-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.factory-timeline-meta{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:12px}.factory-hardware-card{display:grid;gap:6px;border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--panel-soft)}.factory-hardware-card span{display:grid;grid-template-columns:82px minmax(0,1fr);gap:8px;color:var(--muted);font-size:12px;font-weight:700}.factory-hardware-card code{overflow-wrap:anywhere;color:var(--ink)}.factory-impact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.factory-impact section{border-radius:14px;padding:12px 14px}.factory-impact h4{margin:0 0 6px;font-size:13px}.factory-impact ul{display:grid;gap:4px;margin:0;padding-left:18px;font-size:12px;line-height:1.5}.factory-impact .clear{border:1px solid rgba(206,47,112,.22);background:#ce2f700d;color:#8f2152}.factory-impact .keep{border:1px solid rgba(11,143,110,.22);background:#0b8f6e0d;color:#0a6e55}.factory-reason{display:grid;gap:8px}.factory-reason-chips{display:flex;flex-wrap:wrap;gap:6px}.factory-chip{min-height:30px;border:1px solid var(--line);border-radius:999px;padding:0 12px;background:#fff;color:#5a4572;font-size:12px;font-weight:700;cursor:pointer}.factory-chip:hover:not(:disabled){border-color:#c3a8dc}.factory-chip.is-selected{border-color:#9b5cff;background:linear-gradient(110deg,#ff69b424,#9b5cff29);color:#5a2f9e}.factory-confirm{display:flex;align-items:flex-start;gap:10px;border:1px dashed rgba(206,47,112,.36);border-radius:14px;padding:12px 14px;color:#6b3550;font-size:12px;font-weight:600;line-height:1.6;cursor:pointer}.factory-confirm input{width:16px;height:16px;min-height:0;flex:0 0 auto;margin-top:3px;accent-color:#d92f72}.update-workspace:has(.system-ota){grid-template-columns:minmax(0,1fr)}.update-workspace:has(.system-ota) .update-tabs{grid-template-columns:repeat(auto-fit,minmax(148px,1fr))}.system-ota{min-width:0;grid-template-columns:minmax(0,1fr)}.system-ota .form-panel{grid-template-columns:minmax(0,1fr)}.system-ota-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:8px 2px}.system-ota-eyebrow{color:var(--brand-strong);font-size:12px;font-weight:750}.system-ota-intro h2{margin:8px 0;font-size:26px;letter-spacing:-.03em}.system-ota p{margin:4px 0 16px;color:#625471;font-size:13px;line-height:1.7}.system-ota-intro p{margin-bottom:0}.system-ota-chip{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:var(--panel-soft);font-size:12px;color:#625471}.system-ota-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0}.system-ota-steps li{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.system-ota-steps li>span{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;border-radius:10px;color:var(--brand-strong);background:#f0e4ff;font-weight:750}.system-ota-steps strong{display:block;font-size:14px}.system-ota small{display:block;color:#625471;font-size:12px;line-height:1.7}.system-ota h3,.system-ota-actions,.system-ota-receipt>strong{display:flex;align-items:center;gap:8px}.system-ota h3 svg{color:var(--brand-strong);flex-shrink:0}.system-ota-file{display:flex;align-items:center;gap:16px;padding:20px;border:1px dashed var(--line-strong);border-radius:14px;background:var(--panel-soft)}.system-ota-file>svg{color:var(--brand-strong);flex-shrink:0}.system-ota-file label{flex:1;min-width:0}.system-ota-file input{width:100%;margin-top:8px;background:#fff}.system-ota-file>span{color:#625471;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}.system-ota-actions{margin-top:16px;flex-wrap:wrap}.system-ota-actions button,.system-ota .section-header button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px}.system-ota-progress{margin-top:16px;font-size:13px;font-variant-numeric:tabular-nums}.system-ota progress{display:block;width:100%;height:10px;margin:10px 0;accent-color:var(--brand-strong)}.system-ota-notice{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel-soft);font-size:13px;line-height:1.7;overflow-wrap:anywhere}.system-ota-upload .system-ota-notice{margin-top:16px}.system-ota-notice.is-error{border-color:#efb4c9;background:#fff2f6;color:#9c2454}.system-ota-receipt{margin-top:16px;padding:16px;border:1px solid #a9d4c8;border-radius:12px;background:#f1faf6}.system-ota-receipt>strong{color:#08694e;font-size:14px}.system-ota-receipt dl{display:grid;gap:8px;margin:14px 0;font-size:12px}.system-ota-receipt dl>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px}.system-ota-receipt dt{color:#486258}.system-ota-receipt dd{margin:0}.system-ota code,.system-ota pre,.system-ota td{overflow-wrap:anywhere}.system-ota textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:400;line-height:1.6}.system-ota details summary{cursor:pointer}.system-ota .system-ota-empty{margin:16px 0 0;padding:18px;border-radius:12px;background:var(--panel-soft)}.system-ota .system-ota-helper{margin:0;font-size:12px}@media(max-width:720px){.system-ota-intro{align-items:flex-start;flex-direction:column;gap:12px}.system-ota-steps{grid-template-columns:1fr;gap:8px}.system-ota-steps li{padding:12px}.system-ota-file{align-items:flex-start;flex-wrap:wrap;padding:16px}.system-ota-file>span{margin-left:44px}.system-ota-file input{font-size:13px}}@media(max-width:720px){.factory-facts,.factory-impact{grid-template-columns:1fr}.factory-overlay-panel.drawer{border-radius:0}}
