:root{--color-blue-50:#edf4ff;--color-blue-100:#0058bc14;--color-blue-200:#0058bc24;--color-blue-300:#0058bc38;--color-blue-400:#0058bc;--color-blue-500:#0070eb;--color-blue-700:#0e3f8d;--color-blue-900:#07295f;--color-gray-50:#fff;--color-gray-100:#f9f9fb;--color-gray-150:#f5f6f9;--color-gray-200:#f1f2f6;--color-gray-250:#ebedf2;--color-gray-300:#dde1ea;--color-gray-400:#bcc3d1;--color-gray-500:#70798f;--color-gray-600:#4e5668;--color-gray-900:#1a1c1d;--color-white:#fff;--color-orange-50:#fff5e9;--color-orange-500:#db7a22;--color-orange-700:#9e4f0c;--color-red-50:#fff0f1;--color-red-200:#d245541f;--color-red-600:#d24554;--color-red-800:#a6313d;--color-red-900:#7b1f2a;--primary:var(--color-blue-400);--primary-container:var(--color-blue-500);--primary-dark:var(--color-blue-700);--primary-light:var(--color-blue-50);--primary-glow:#0058bc29;--primary-rgb:0, 88, 188;--primary-a06:rgba(var(--primary-rgb), .06);--primary-a10:rgba(var(--primary-rgb), .1);--primary-a16:rgba(var(--primary-rgb), .16);--primary-a24:rgba(var(--primary-rgb), .24);--primary-a40:rgba(var(--primary-rgb), .4);--on-primary:#f7fbff;--dark:var(--color-gray-900);--text:var(--color-gray-900);--text-secondary:var(--color-gray-600);--text-muted:var(--color-gray-500);--bg:var(--color-gray-100);--surface-container-lowest:var(--color-gray-50);--surface-container-low:var(--color-gray-150);--surface-container:var(--color-gray-200);--surface-container-high:var(--color-gray-250);--surface-bright:#ffffffd1;--surface-glass:#ffffffb3;--muted-bg:var(--surface-container-low);--card:var(--surface-container-lowest);--border:#c1c6d726;--outline-variant:#c1c6d74d;--warning:var(--color-orange-500);--warning-dark:var(--color-orange-700);--warning-bg:var(--color-orange-50);--danger:var(--color-red-600);--danger-bg:var(--color-red-50);--danger-deep:var(--color-red-900);--info:var(--color-blue-700);--info-bg:var(--color-blue-50);--status-online:#10b981;--space-0:0px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-3xl:28px;--radius-full:9999px;--shadow-color:26, 28, 29;--shadow-sm:0 10px 24px #1a1c1d0d;--shadow-md:0 18px 40px #1a1c1d0f;--shadow-lg:0 24px 52px #1a1c1d14;--shadow-xl:0 32px 64px #1a1c1d1a;--shadow-modal:0 32px 90px #1a1c1d24;--shadow-primary-sm:0 14px 28px #0058bc1f;--shadow-primary-md:0 20px 36px #0058bc29;--shadow-primary-lg:0 24px 48px #0058bc2e;--z-dropdown:20;--z-header:90;--z-sidebar:100;--z-sidebar-toggle:110;--z-floating:120;--z-modal:200;--z-toast:300;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:15px;--text-xl:17px;--text-2xl:20px;--text-3xl:28px;--text-4xl:36px;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.3;--leading-snug:1.4;--leading-normal:1.5;--leading-relaxed:1.6;--leading-loose:1.75;--font-sans:-apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", "Microsoft YaHei", sans-serif;--font-mono:"SF Mono", "Fira Code", monospace;--ease-fast:.15s ease;--ease-normal:.2s ease;--ease-slow:.3s ease;--sidebar-w:240px;--sidebar-collapsed-w:88px;--sidebar-current-w:var(--sidebar-w);--header-h:60px;--content-px:var(--space-8);--content-pt:84px;font-family:var(--font-sans);color:var(--text);background:var(--bg)}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{background:var(--bg);min-width:320px;color:var(--text)}.login-page{background:var(--bg);flex-direction:column;min-height:100%;display:flex}.login-main{padding:var(--space-12) var(--space-6) var(--space-10);flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.login-glow{border-radius:var(--radius-full);filter:blur(110px);pointer-events:none;background:radial-gradient(circle, rgba(var(--primary-rgb), .1) 0%, rgba(var(--primary-rgb), 0) 70%);width:420px;height:420px;position:absolute}.login-glow--left{top:-140px;left:-130px}.login-glow--right{top:36%;right:-120px}.login-shell{flex-direction:column;align-items:center;width:min(100%,440px);display:flex;position:relative}.login-brand{align-items:center;gap:var(--space-2);margin-bottom:var(--space-8);flex-direction:column;display:flex}.login-brand__icon{border-radius:var(--radius-md);width:56px;height:56px;color:var(--on-primary);background:linear-gradient(135deg, var(--primary), var(--primary-container));box-shadow:var(--shadow-primary-sm);place-items:center;display:grid}.login-brand__title{color:var(--text);font-size:var(--text-2xl);font-weight:var(--font-bold);letter-spacing:-.01em;margin:0}.login-brand__subtitle{color:var(--text-muted);font-size:var(--text-sm);line-height:var(--leading-normal);margin:0}.login-card{background:var(--surface-container-lowest);border:1px solid var(--outline-variant);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-xl);padding:var(--space-8)}.login-card__header{margin-bottom:var(--space-6)}.login-card__title{color:var(--text);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0}.login-card__description{margin:var(--space-2) 0 0;color:var(--text-secondary);font-size:var(--text-sm)}.login-form{gap:var(--space-5);flex-direction:column;display:flex}.login-field{flex-direction:column;display:flex}.login-label{margin-bottom:var(--space-2);color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-bold);line-height:var(--leading-normal)}.login-input-wrap{border-radius:var(--radius-sm);transition:box-shadow var(--ease-fast);position:relative}.login-input-wrap:focus-within{box-shadow:0 0 0 2px var(--primary-a16)}.login-input-icon{left:var(--space-4);color:var(--text-muted);transition:color var(--ease-fast);display:inline-flex;position:absolute;top:50%;transform:translateY(-50%)}.login-input-wrap:focus-within .login-input-icon{color:var(--primary)}.login-input-wrap input{border-radius:var(--radius-sm);background:var(--surface-container-high);width:100%;height:44px;color:var(--text);font-size:var(--text-md);font-family:var(--font-sans);line-height:var(--leading-normal);padding:var(--space-3) var(--space-4) var(--space-3) 44px;border:0}.login-input-wrap input::placeholder{color:var(--text-muted)}.login-input-wrap input:focus,.login-input-wrap input:focus-visible{outline:none}.login-error{margin-top:calc(var(--space-1) * -1);color:var(--danger);font-size:var(--text-sm);line-height:var(--leading-normal)}.login-submit{margin-top:var(--space-1);width:100%;height:var(--space-12);border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--primary), var(--primary-container));color:var(--on-primary);font-size:var(--text-md);font-weight:var(--font-semibold);font-family:var(--font-sans);justify-content:center;align-items:center;gap:var(--space-2);cursor:pointer;box-shadow:var(--shadow-primary-sm);transition:opacity var(--ease-fast), transform var(--ease-fast), box-shadow var(--ease-fast);border:0;display:inline-flex}.login-submit:hover:not(:disabled){opacity:.9}.login-submit:active:not(:disabled){transform:scale(.98)}.login-submit:focus-visible{box-shadow:0 0 0 2px var(--primary-a24), var(--shadow-primary-sm);outline:none}.login-submit:disabled{opacity:.82;cursor:not-allowed}.login-status{margin-top:var(--space-12);align-items:center;gap:var(--space-2);background:rgba(var(--shadow-color), .02);border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);padding:6px var(--space-3);display:inline-flex}.login-status__dot{border-radius:var(--radius-full);background:var(--status-online);width:6px;height:6px;box-shadow:0 0 0 0 rgba(var(--shadow-color), .12);animation:1.8s infinite login-status-pulse}@keyframes login-status-pulse{0%{box-shadow:0 0 0 0 rgba(var(--primary-rgb), .24);transform:scale(1)}70%{box-shadow:0 0 0 8px rgba(var(--primary-rgb), 0);transform:scale(1.1)}to{box-shadow:0 0 0 0 rgba(var(--primary-rgb), 0);transform:scale(1)}}.login-footer{background:var(--surface-container-low);border-top:1px solid var(--outline-variant);padding:var(--space-10) var(--space-12);justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--text-muted);font-size:var(--text-xs);display:flex}.login-footer__links{align-items:center;gap:var(--space-5);display:inline-flex}.login-footer__links a{color:inherit;transition:color var(--ease-fast);text-decoration:none}.login-footer__links a:hover{color:var(--primary)}.login-footer__links a:focus-visible{box-shadow:0 0 0 2px var(--primary-a16);border-radius:var(--radius-xs);outline:none}@media (width<=640px){.login-main{padding-left:var(--space-4);padding-right:var(--space-4)}.login-card{padding:var(--space-6)}.login-footer{padding-left:var(--space-4);padding-right:var(--space-4);flex-direction:column;align-items:flex-start}.login-footer__links{gap:var(--space-4);flex-wrap:wrap}}.preview-page{color:#1a1a1a;background:radial-gradient(circle at 0 0,#8bc34a29,#0000 26%),linear-gradient(#f7f6f1 0%,#efeee8 100%);min-height:100vh;padding:28px}.preview-page__hero{border:1px solid rgba(var(--shadow-color), .06);box-shadow:0 20px 50px rgba(var(--shadow-color), .05);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffc2;border-radius:24px;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:20px;padding:28px 30px;display:flex}.preview-page__hero h1{margin:0 0 12px;font-size:30px;line-height:1.08}.preview-page__hero p{color:#666;max-width:760px;margin:0;font-size:14px;line-height:1.8}.preview-page__eyebrow{color:#6d7f47;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700}.preview-page__controls{flex-wrap:wrap;justify-content:flex-end;gap:12px;min-width:360px;display:flex}.preview-page__field{color:#6f6f6f;flex-direction:column;gap:8px;min-width:220px;font-size:12px;font-weight:600;display:flex}.preview-page__field select{border:1px solid rgba(var(--shadow-color), .08);color:#1a1a1a;height:44px;font:inherit;background:#ffffffe0;border-radius:14px;padding:0 14px}.preview-page__button{border:1px solid rgba(var(--shadow-color), .08);color:#1a1a1a;cursor:pointer;background:#ffffffe0;border-radius:14px;justify-content:center;align-items:center;height:44px;padding:0 16px;font-size:13px;font-weight:600;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:inline-flex}.preview-page__button:hover{box-shadow:0 10px 24px rgba(var(--shadow-color), .06);border-color:#558b2f47;transform:translateY(-1px)}.preview-page__button--primary{color:#173000;background:linear-gradient(#a7d76d 0%,#8bc34a 100%);border-color:#558b2f2e}.preview-page__frame-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.preview-pane{border:1px solid rgba(var(--shadow-color), .06);min-width:0;box-shadow:0 22px 48px rgba(var(--shadow-color), .05);background:#ffffffd1;border-radius:24px;overflow:hidden}.preview-pane__head{border-bottom:1px solid rgba(var(--shadow-color), .06);background:radial-gradient(circle at 100% 0,#8bc34a1f,#0000 34%),#ffffffe6;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;display:flex}.preview-pane__head strong{color:#1f1f1f;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:14px;display:block;overflow:hidden}.preview-pane__label{color:#7d7d7d;margin-bottom:4px;font-size:12px}.preview-pane__body{background:#f0efe8;height:calc(100vh - 208px);min-height:720px}.preview-pane__body iframe{background:#fff;border:0;width:100%;height:100%}@media (width<=1180px){.preview-page{padding:18px}.preview-page__hero{flex-direction:column}.preview-page__controls{justify-content:flex-start;min-width:0}.preview-page__frame-grid{grid-template-columns:1fr}.preview-pane__body{height:72vh;min-height:560px}}@keyframes proto-fade-in-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes proto-modal-in{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes proto-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes proto-bar-pulse{0%,to{opacity:1}50%{opacity:.6}}.workspace-shell .main{margin-left:var(--sidebar-current-w);padding:var(--content-pt) var(--content-px) var(--content-px);flex:1;min-height:100vh}@media (width<=767px){.workspace-shell .main{margin-left:0;padding:84px 16px 16px}}.workspace-shell .top-bar{align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);border-radius:calc(var(--radius-2xl) - 4px);background:radial-gradient(circle at 100% 0,#0070eb14,#0000 30%),#f3f5f9d1;flex-wrap:wrap;padding:16px 18px;animation:.4s backwards proto-fade-in-up;display:flex;position:relative;box-shadow:inset 0 0 0 1px #ffffffa3,0 10px 26px #1a1c1d0a}.workspace-shell .btn-primary,.workspace-shell .btn-secondary,.workspace-shell .btn-danger{border-radius:var(--radius-lg);font-size:var(--text-base);font-family:inherit;font-weight:var(--font-semibold);cursor:pointer;transition:transform var(--ease-normal), box-shadow var(--ease-normal), background var(--ease-normal), color var(--ease-normal);border:none;align-items:center;gap:6px;padding:10px 18px;display:inline-flex}.workspace-shell .btn-primary{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);color:var(--on-primary);box-shadow:var(--shadow-primary-sm)}.workspace-shell .btn-primary:hover{box-shadow:var(--shadow-primary-md);transform:translateY(-1px)}.workspace-shell .btn-secondary{background:var(--surface-container-high);color:var(--text);box-shadow:inset 0 0 0 1px #c1c6d72e,0 8px 18px #1a1c1d08}.workspace-shell .btn-secondary:hover{color:var(--primary);background:var(--surface-bright)}.workspace-shell .btn-secondary:disabled{opacity:.4;cursor:not-allowed}.workspace-shell .btn-danger{color:var(--danger);background:#d245541f}.workspace-shell .btn-danger:hover{background:#d2455429}.workspace-shell .filter-select{border-radius:var(--radius-md);background:var(--surface-container-high);min-height:40px;font-size:var(--text-base);color:var(--text);cursor:pointer;appearance:none;transition:box-shadow var(--ease-normal), background var(--ease-normal);background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%2370798F' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;border:none;padding:10px 34px 10px 14px;font-family:inherit;box-shadow:inset 0 0 0 1px #c1c6d72e}.workspace-shell .filter-select:hover,.workspace-shell .filter-select:focus{background:var(--surface-bright);box-shadow:inset 0 0 0 1px var(--primary-a16), 0 0 0 4px var(--primary-a10);outline:none}.workspace-shell .search-box{align-items:center;gap:var(--space-2);background:var(--surface-container-high);color:var(--text-muted);border-radius:var(--radius-md);min-width:min(260px,100%);height:40px;transition:box-shadow var(--ease-normal), background var(--ease-normal), color var(--ease-normal);border:none;flex:240px;margin-left:auto;padding:0 14px;display:flex;box-shadow:inset 0 0 0 1px #c1c6d72e}.workspace-shell .search-box:focus-within{background:var(--surface-bright);color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary-a16), 0 0 0 4px var(--primary-a10)}.workspace-shell .search-box input{font-size:var(--text-base);color:var(--text);background:0 0;border:none;outline:none;width:100%;min-width:0;font-family:inherit}.workspace-shell .search-box input::placeholder{color:var(--text-muted)}.workspace-shell .date-shortcut-filter{border-radius:var(--radius-md);background:var(--surface-container-high);border:none;align-items:stretch;min-height:40px;display:inline-flex;position:relative;overflow:visible;box-shadow:inset 0 0 0 1px #c1c6d72e}.workspace-shell .date-shortcut-shortcuts{align-items:center;min-height:100%;display:flex}.workspace-shell .date-shortcut-btn{min-height:38px;padding:0 var(--space-3);color:var(--text-secondary);font-size:var(--text-base);cursor:pointer;transition:background var(--ease-fast), color var(--ease-fast);background:0 0;border:none;border-right:1px solid #c1c6d738;font-family:inherit}.workspace-shell .date-shortcut-btn:hover{background:var(--primary-light);color:var(--primary-dark)}.workspace-shell .date-shortcut-btn.active{background:var(--primary-light);color:var(--primary-dark);font-weight:var(--font-medium)}.workspace-shell .date-shortcut-custom-trigger{min-height:38px;padding:0 var(--space-3);color:var(--text-secondary);font-size:var(--text-base);align-items:center;gap:var(--space-2);cursor:pointer;transition:background var(--ease-fast), color var(--ease-fast);background:0 0;border:none;font-family:inherit;display:inline-flex}.workspace-shell .date-shortcut-custom-trigger:hover{background:var(--primary-light);color:var(--primary-dark)}.workspace-shell .date-shortcut-custom-trigger:before{content:"";width:1px;height:16px;margin-right:var(--space-1);background:#c1c6d738}.workspace-shell .date-shortcut-custom-trigger.custom-active{color:var(--primary-dark);background:var(--primary-light)}.workspace-shell .date-shortcut-custom-icon{flex-shrink:0;align-items:center;display:inline-flex}.workspace-shell .date-shortcut-custom-label{white-space:nowrap}.workspace-shell .date-shortcut-custom-label.is-placeholder{color:var(--text-secondary)}.workspace-shell .date-shortcut-panel{width:max-content;min-width:min(536px,100vw - 32px);padding:var(--space-4);border-radius:var(--radius-2xl);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);opacity:0;pointer-events:none;background:#ffffffe0;border:none;transition:opacity .18s,transform .18s;display:none;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-4px)}.workspace-shell .date-shortcut-panel.show{opacity:1;pointer-events:auto;display:block;transform:translateY(0)}.workspace-shell .date-shortcut-months{gap:var(--space-5);display:flex}.workspace-shell .date-shortcut-month{width:240px}.workspace-shell .date-shortcut-month-header,.workspace-shell .date-shortcut-picker-header{height:28px;margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.workspace-shell .date-shortcut-nav-btn{border-radius:var(--radius-xs);width:24px;height:24px;color:var(--text-secondary);font-size:var(--text-lg);cursor:pointer;transition:background var(--ease-fast), color var(--ease-fast);background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;display:inline-flex}.workspace-shell .date-shortcut-nav-btn:hover{background:var(--primary-light);color:var(--primary-dark)}.workspace-shell .date-shortcut-nav-btn.is-hidden{visibility:hidden}.workspace-shell .date-shortcut-month-title,.workspace-shell .date-shortcut-picker-title{padding:2px var(--space-2);color:var(--text);font-size:var(--text-md);font-weight:var(--font-medium);cursor:pointer;transition:color var(--ease-fast);background:0 0;border:none;font-family:inherit}.workspace-shell .date-shortcut-month-title:hover,.workspace-shell .date-shortcut-picker-title:hover{color:var(--primary-dark)}.workspace-shell .date-shortcut-picker-title-static{color:var(--text);font-size:var(--text-md);font-weight:var(--font-medium)}.workspace-shell .date-shortcut-weekdays{margin-bottom:var(--space-1);grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.workspace-shell .date-shortcut-weekday{height:28px;color:var(--text-muted);font-size:var(--text-sm);justify-content:center;align-items:center;display:flex}.workspace-shell .date-shortcut-days{grid-template-columns:repeat(7,1fr);gap:2px 0;display:grid}.workspace-shell .date-shortcut-day-cell{height:30px;color:var(--text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;display:flex;position:relative}.workspace-shell .date-shortcut-day-cell.other-month{color:var(--text-muted)}.workspace-shell .date-shortcut-day-cell-num{border-radius:var(--radius-xs);width:28px;height:28px;transition:background var(--ease-fast), color var(--ease-fast), border-color var(--ease-fast);border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.workspace-shell .date-shortcut-day-cell:hover .date-shortcut-day-cell-num{background:var(--primary-light);color:var(--primary-dark)}.workspace-shell .date-shortcut-day-cell.today .date-shortcut-day-cell-num{border-color:var(--primary);color:var(--primary-dark)}.workspace-shell .date-shortcut-day-cell.in-range,.workspace-shell .date-shortcut-day-cell.in-preview-range{background:var(--primary-light)}.workspace-shell .date-shortcut-day-cell.range-start,.workspace-shell .date-shortcut-day-cell.range-end{background:0 0}.workspace-shell .date-shortcut-day-cell.range-start .date-shortcut-day-cell-num,.workspace-shell .date-shortcut-day-cell.range-end .date-shortcut-day-cell-num{background:var(--primary);color:var(--card);font-weight:var(--font-medium);border-color:var(--primary)}.workspace-shell .date-shortcut-status-bar{margin-top:var(--space-4);padding-top:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--text-muted);font-size:var(--text-sm);border-top:1px solid #c1c6d72e;display:flex}.workspace-shell .date-shortcut-month-picker,.workspace-shell .date-shortcut-year-picker{padding:var(--space-2) 0}.workspace-shell .date-shortcut-month-grid,.workspace-shell .date-shortcut-year-grid{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.workspace-shell .date-shortcut-month-grid-item,.workspace-shell .date-shortcut-year-grid-item{border-radius:var(--radius-xs);height:52px;color:var(--text);font-size:var(--text-base);cursor:pointer;transition:background var(--ease-fast), color var(--ease-fast);background:0 0;border:none;font-family:inherit}.workspace-shell .date-shortcut-month-grid-item:hover,.workspace-shell .date-shortcut-year-grid-item:hover{background:var(--primary-light);color:var(--primary-dark)}.workspace-shell .date-shortcut-month-grid-item.active,.workspace-shell .date-shortcut-year-grid-item.active{background:var(--primary);color:var(--card);font-weight:var(--font-medium)}.workspace-shell .date-shortcut-year-grid-item.is-edge{color:var(--text-muted)}.workspace-shell .date-shortcut-year-grid-item.is-edge.active{color:var(--card)}.workspace-shell .management-reset-btn{min-height:36px;color:var(--text-secondary);font-size:var(--text-base);font-family:inherit;font-weight:var(--font-semibold);cursor:pointer;transition:color var(--ease-fast);background:0 0;border:none;padding:0}.workspace-shell .management-reset-btn:hover{color:var(--primary-dark)}.workspace-shell .table-section{border-radius:var(--radius-2xl);box-shadow:inset 0 0 0 1px #ffffffc7, var(--shadow-sm);background:radial-gradient(circle at 100% 0,#0070eb0f,#0000 24%),linear-gradient(#f8fafff5 0%,#fffffff5 100%);border:none;animation:.4s .1s backwards proto-fade-in-up;overflow:visible}.workspace-shell .table-wrapper{padding:10px;overflow-x:auto}.workspace-shell table{border-collapse:separate;border-spacing:0 6px;width:100%;font-size:var(--text-base);white-space:nowrap}.workspace-shell thead th{text-align:left;font-weight:var(--font-semibold);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--ease-normal);font-size:var(--text-sm);letter-spacing:.04em;text-transform:uppercase;padding:0 14px 10px}.workspace-shell thead th:hover{color:var(--primary-dark)}.workspace-shell thead th .sort-icon{opacity:.3;margin-left:3px;font-size:10px;display:inline-block}.workspace-shell thead th.sorted .sort-icon{opacity:1;color:var(--primary)}.workspace-shell thead th.no-sort,.workspace-shell thead th.no-sort:hover{cursor:default;color:var(--text-secondary)}.workspace-shell tbody td{background:var(--surface-container-lowest);color:var(--text);padding:14px}.workspace-shell tbody tr{transition:transform var(--ease-fast)}.workspace-shell tbody tr:hover{transform:translateY(-1px)}.workspace-shell tbody tr:hover td{box-shadow:inset 0 0 0 1px var(--primary-a06);background:#fcfcfef0}.workspace-shell tbody tr td:first-child{border-top-left-radius:18px;border-bottom-left-radius:18px}.workspace-shell tbody tr td:last-child{border-top-right-radius:18px;border-bottom-right-radius:18px}.workspace-shell tbody tr.selected td{background:var(--primary-a06)}.workspace-shell .table-footer{padding:var(--space-4) var(--space-5);justify-content:space-between;align-items:center;display:flex}.workspace-shell .table-info{font-size:var(--text-sm);color:var(--text-secondary)}.workspace-shell .empty-row{text-align:center;padding:var(--space-12);color:var(--text-muted)}.workspace-shell .val-mono{font-family:var(--font-mono);font-size:var(--text-sm)}.workspace-shell .cb{border-radius:var(--radius-xs);cursor:pointer;width:16px;height:16px;transition:all var(--ease-fast);background:0 0;border:1.5px solid #70798f80;flex-shrink:0;justify-content:center;align-items:center;display:flex}.workspace-shell .cb.checked{background:var(--primary);border-color:var(--primary)}.workspace-shell .cb.disabled{opacity:.4;cursor:not-allowed}.workspace-shell .modal-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:var(--z-modal);background:#131a2938;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.workspace-shell .modal-overlay.show{display:flex}.workspace-shell .modal{padding:var(--space-8);width:440px;max-width:90vw;box-shadow:inset 0 0 0 1px #ffffffd1, var(--shadow-modal);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#fffffff0;border-radius:28px;animation:.3s proto-modal-in}.workspace-shell .modal-icon{width:56px;height:56px;margin:0 auto var(--space-4);background:var(--primary-light);border-radius:50%;justify-content:center;align-items:center;display:flex}.workspace-shell .modal-title{font-size:18px;font-weight:var(--font-semibold);color:var(--text);margin-bottom:var(--space-6);letter-spacing:-.02em}.workspace-shell .modal-btn{width:100%;padding:var(--space-3);border-radius:var(--radius-lg);background:var(--primary);font-size:var(--text-md);color:#fff;font-family:inherit;font-weight:var(--font-medium);cursor:pointer;transition:background var(--ease-normal);border:none}.workspace-shell .modal-btn:hover{background:var(--primary-dark)}.workspace-shell .modal-btns{gap:var(--space-3);margin-top:var(--space-6);display:flex}.workspace-shell .modal-btns button{padding:var(--space-3);border-radius:var(--radius-lg);font-size:var(--text-md);font-weight:var(--font-medium);cursor:pointer;transition:all var(--ease-normal);border:none;flex:1;font-family:inherit}.workspace-shell .modal-btns button:disabled{opacity:.55;cursor:not-allowed;transform:none}.workspace-shell .modal-cancel{color:var(--text-secondary);background:#f3f5f9eb;box-shadow:inset 0 0 0 1px #c1c6d72e}.workspace-shell .modal-cancel:hover{color:var(--text);background:#e4e8f0f5}.workspace-shell .modal-save{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);color:#fff;box-shadow:var(--shadow-primary-sm)}.workspace-shell .modal-save:hover{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-md)}@media (width<=767px){.workspace-shell .top-bar{border-radius:20px;padding:14px}.workspace-shell .search-box{flex-basis:100%;min-width:100%;margin-left:0}}.workspace-shell .result-rows{margin-bottom:var(--space-5)}.workspace-shell .result-row{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.workspace-shell .result-row .r-left{align-items:center;gap:10px;display:flex}.workspace-shell .result-row .r-icon{border-radius:var(--radius-md);justify-content:center;align-items:center;width:32px;height:32px;display:flex}.workspace-shell .result-row .r-label{font-size:var(--text-base);color:var(--text-secondary)}.workspace-shell .result-row .r-value{font-size:var(--text-2xl);font-weight:var(--font-bold)}.workspace-shell .row-success{background:var(--primary-light)}.workspace-shell .row-success .r-icon{background:#558b2f26}.workspace-shell .row-success .r-value{color:var(--primary-dark)}.workspace-shell .row-skip{background:var(--warning-bg)}.workspace-shell .row-skip .r-icon{background:#f57c0026}.workspace-shell .row-skip .r-value{color:var(--warning)}.workspace-shell .row-fail{background:var(--danger-bg)}.workspace-shell .row-fail .r-icon{background:#e5393526}.workspace-shell .row-fail .r-value{color:var(--danger)}.workspace-shell .toast{background:var(--dark);color:#fff;padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);font-size:var(--text-base);z-index:var(--z-toast);box-shadow:var(--shadow-lg);pointer-events:none;transition:transform .3s cubic-bezier(.34,1.56,.64,1);position:fixed;bottom:32px;left:50%;transform:translate(-50%)translateY(80px)}.workspace-shell .toast.show{transform:translate(-50%)translateY(0)}*{box-sizing:border-box;margin:0;padding:0}body{background:radial-gradient(circle at top right, var(--primary-a10), transparent 28%), radial-gradient(circle at left 20%, #0070eb0a, transparent 32%), var(--bg);color:var(--text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,Microsoft YaHei,sans-serif;display:flex}.workspace-shell.sidebar-collapsed{--sidebar-current-w:var(--sidebar-collapsed-w)}.sidebar{width:var(--sidebar-current-w);--sidebar-border-soft:#c1c6d733;--sidebar-text-strong:#1a1c1df5;--sidebar-text-muted:#4e5668e0;--sidebar-text-soft:#70798fb8;background:linear-gradient(180deg, #ffffffd1 0%, #f8faffc7 100%), radial-gradient(circle at top left, var(--primary-a10), transparent 32%), radial-gradient(circle at 10% 100%, #0070eb14, transparent 38%);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);height:100vh;z-index:var(--z-sidebar);border-right:1px solid var(--sidebar-border-soft);flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:visible;box-shadow:24px 0 48px #1a1c1d0f}.sidebar-logo{justify-content:flex-start;align-items:center;padding:24px 24px 18px;display:flex}.sidebar-toggle{top:28px;left:calc(var(--sidebar-current-w) - 18px);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;z-index:var(--z-sidebar-toggle);background:#ffffffd1;border:1px solid #c1c6d747;border-radius:14px;justify-content:center;align-items:center;transition:left .2s,background .2s,border-color .2s,color .2s,transform .2s;display:inline-flex;position:fixed;box-shadow:0 12px 28px #1a1c1d1a}.sidebar-toggle:hover{border-color:var(--primary-a16);color:var(--primary);background:#fffffff0;transform:translate(1px)}.sidebar-toggle svg{width:14px;height:14px}.sidebar-logo-icon{border-radius:22px;flex:none;justify-content:center;align-items:center;width:72px;height:72px;display:flex;overflow:hidden}.sidebar-logo-image{object-fit:cover;width:100%;height:100%;display:block}.sidebar-nav{flex:1;min-height:0;padding:8px 16px 24px;overflow:visible auto}.nav-section{margin-bottom:10px}.nav-item{--icon-stroke:#0058bcdb;--icon-fill-main:var(--primary-a10);--icon-fill-accent:var(--primary-a16);--icon-fill-dim:var(--primary-a10);--icon-stroke-dim:var(--primary-a40);--nav-indicator-outline:#fffffff5;cursor:pointer;width:100%;min-height:52px;color:var(--sidebar-text-muted);letter-spacing:.01em;appearance:none;box-shadow:none;text-align:left;background:0 0;border:none;border-radius:18px;outline:none;justify-content:flex-start;align-items:center;gap:12px;padding:0 16px;font-family:inherit;font-size:15px;font-weight:600;line-height:1.4;text-decoration:none;transition:color .2s,background .2s,border-color .2s,box-shadow .2s,transform .2s;display:flex;position:relative}.nav-item:hover{--nav-indicator-outline:#fffffffa;color:var(--sidebar-text-strong);background:#ffffff94;transform:translate(2px);box-shadow:inset 0 0 0 1px #c1c6d729}.nav-item.active{--icon-stroke:#fff;--icon-fill-main:#ffffff2e;--icon-fill-accent:#ffffff47;--icon-fill-dim:#ffffff24;--icon-stroke-dim:#ffffff8a;--nav-indicator-outline:#ffffffeb;color:#fff;background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-sm);font-weight:700}.nav-item.active:hover{transform:none}.nav-item:focus,.nav-item:focus-visible{box-shadow:0 0 0 4px var(--primary-a10), inset 0 0 0 1px var(--primary-a16);outline:none}.nav-item .icon{width:22px;height:22px;color:var(--icon-stroke);flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s;display:flex;position:relative;overflow:visible}.nav-item .icon svg{width:18px;height:18px;display:block}.nav-item:hover .icon{transform:scale(1.03)}.nav-item-label{white-space:nowrap;flex:1}.nav-item.active .expand-arrow{opacity:1}.nav-item .expand-arrow{opacity:.34;color:currentColor;margin-left:auto;transition:transform .3s}.nav-item .expand-arrow.open{transform:rotate(90deg)}.nav-sub{flex-direction:column;gap:8px;max-height:0;transition:max-height .3s;display:flex;overflow:hidden}.nav-sub.open{border-left:1px solid #c1c6d72e;max-height:240px;margin-left:16px;padding-top:12px;padding-bottom:4px;padding-left:16px}.nav-sub .nav-item{border-radius:14px;min-height:40px;padding-left:14px;font-size:13px;font-weight:500}.header{top:0;left:var(--sidebar-current-w);height:var(--header-h);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:var(--z-header);background:#f9f9fbc2;align-items:center;padding:0 32px;display:flex;position:fixed;right:0}.header-breadcrumb{color:var(--text-secondary);letter-spacing:.02em;font-size:14px}.header-breadcrumb span{color:var(--text);font-weight:600}.sn-link{font-family:SF Mono,Fira Code,monospace;font-size:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;padding:0;transition:color .15s;position:relative}.sn-link:hover{color:var(--primary-dark)}.sn-link:after{content:"查看详情";background:var(--dark);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;border-radius:4px;padding:3px 8px;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Helvetica Neue,sans-serif;font-size:11px;transition:opacity .15s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.sn-link:hover:after{opacity:1}.prototype-inbound{color:var(--text)}.workspace-shell.sidebar-collapsed .sidebar-logo{justify-content:center;padding:24px 16px 18px}.workspace-shell.sidebar-collapsed .nav-item-label,.workspace-shell.sidebar-collapsed .nav-badge,.workspace-shell.sidebar-collapsed .expand-arrow{display:none}.workspace-shell.sidebar-collapsed .sidebar-nav{padding-left:12px;padding-right:12px}.workspace-shell.sidebar-collapsed .nav-item{justify-content:center;gap:0;padding-left:0;padding-right:0}.workspace-shell.sidebar-collapsed .nav-sub,.workspace-shell.sidebar-collapsed .nav-sub.open{display:none}.workspace-shell.sidebar-collapsed .nav-section-data-center{position:relative}.workspace-shell.sidebar-collapsed .nav-section-data-center:is(:hover,:focus-within){z-index:var(--z-floating)}.workspace-shell.sidebar-collapsed .nav-section-data-center:is(:hover,:focus-within) .nav-sub-floating{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);min-width:176px;max-height:none;box-shadow:var(--shadow-lg);background:#ffffffeb;border:1px solid #c1c6d72e;border-radius:18px;margin-left:0;padding:12px;display:flex;position:absolute;top:0;left:calc(100% + 4px)}.workspace-shell.sidebar-collapsed .nav-section-data-center:is(:hover,:focus-within) .nav-sub-floating:before{content:"";width:14px;position:absolute;top:0;bottom:0;left:-10px}.workspace-shell.sidebar-collapsed .nav-section-data-center:is(:hover,:focus-within) .nav-sub-floating:after{content:"";background:#ffffffeb;border-radius:2px;width:12px;height:12px;position:absolute;top:18px;left:-6px;transform:rotate(45deg)}.workspace-shell.sidebar-collapsed .nav-section-data-center:is(:hover,:focus-within) .nav-sub-floating .nav-item{justify-content:flex-start;gap:8px;min-height:40px;padding:0 12px;transform:none}.workspace-shell.sidebar-collapsed .nav-section-data-center:is(:hover,:focus-within) .nav-sub-floating .nav-item-label{display:block}.workspace-shell.sidebar-collapsed .nav-section-data-center:is(:hover,:focus-within) .nav-sub-floating .nav-badge{display:inline-flex}.prototype-inbound .qr-btn{background:var(--primary-light);cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex}.prototype-inbound .qr-btn:hover{background:var(--primary)}.prototype-inbound .qr-btn:hover svg{stroke:#fff}.prototype-inbound .pagination,.prototype-outbound .pagination,.prototype-alerts .pagination,.prototype-verification-status .pagination,.prototype-device-management .pagination{align-items:center;gap:4px;display:flex}.prototype-inbound .page-btn,.prototype-outbound .page-btn,.prototype-alerts .page-btn,.prototype-verification-status .page-btn,.prototype-device-management .page-btn{background:var(--surface-container-high);width:30px;height:30px;color:var(--text-secondary);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;font-family:inherit;font-size:12px;transition:all .2s;display:flex;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-inbound .page-btn:hover,.prototype-outbound .page-btn:hover,.prototype-alerts .page-btn:hover,.prototype-verification-status .page-btn:hover,.prototype-device-management .page-btn:hover{background:var(--surface-bright);color:var(--primary)}.prototype-inbound .page-btn.active,.prototype-outbound .page-btn.active,.prototype-alerts .page-btn.active,.prototype-verification-status .page-btn.active,.prototype-device-management .page-btn.active{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);color:#fff;box-shadow:var(--shadow-primary-sm)}.prototype-inbound .page-btn:disabled,.prototype-outbound .page-btn:disabled,.prototype-alerts .page-btn:disabled,.prototype-verification-status .page-btn:disabled,.prototype-device-management .page-btn:disabled{opacity:.45;cursor:not-allowed}.prototype-inbound .page-jump-input,.prototype-outbound .page-jump-input,.prototype-alerts .page-jump-input,.prototype-verification-status .page-jump-input,.prototype-device-management .page-jump-input{background:var(--surface-container-high);width:52px;height:30px;color:var(--text);border:none;border-radius:10px;padding:0 8px;font-family:inherit;font-size:12px;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-inbound .page-btn.page-btn-jump,.prototype-outbound .page-btn.page-btn-jump,.prototype-alerts .page-btn.page-btn-jump,.prototype-verification-status .page-btn.page-btn-jump,.prototype-device-management .page-btn.page-btn-jump{width:auto;min-width:88px;padding:0 var(--space-3)}.prototype-inbound .row-success .r-icon{background:#558b2f26}.prototype-inbound .row-success .r-value{color:var(--primary-dark)}.prototype-inbound .row-skip .r-icon{background:#f57c0026}.prototype-inbound .row-skip .r-value{color:var(--warning)}.prototype-inbound .row-fail .r-icon{background:#e5393526}.prototype-inbound .row-fail .r-value{color:var(--danger)}.prototype-inbound .upload-modal,.prototype-outbound .upload-modal{border-radius:16px;width:min(960px,100vw - 24px);max-height:calc(100vh - 24px);padding:0;overflow:auto}.prototype-inbound .upload-shell,.prototype-outbound .upload-shell{background:linear-gradient(180deg, var(--primary-light) 0%, #fff 160px, #fff 100%);padding:24px;position:relative}@media (width<=767px){.sidebar.sidebar-drawer{transition:transform .3s;transform:translate(-100%)}.sidebar.sidebar-drawer.sidebar-drawer-open{transform:translate(0)}.sidebar-toggle{display:none}.drawer-overlay{background:rgba(var(--shadow-color), .4);z-index:calc(var(--z-sidebar) - 1);position:fixed;inset:0}.header{padding:0 16px;left:0}.mobile-menu-btn{width:36px;height:36px;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;margin-right:8px;display:inline-flex}.mobile-menu-btn:hover{background:rgba(var(--shadow-color), .06)}}@media (width>=768px) and (width<=1023px){.sidebar-toggle{display:none}}@media (width>=768px){.mobile-menu-btn,.drawer-overlay{display:none}}.prototype-inbound .upload-shell-header,.prototype-outbound .upload-shell-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.prototype-inbound .upload-shell-eyebrow,.prototype-outbound .upload-shell-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--primary-dark);margin-bottom:8px;font-size:11px;font-weight:600;line-height:1}.prototype-inbound .upload-shell-title,.prototype-outbound .upload-shell-title{color:#1f2937;margin-bottom:6px;font-size:26px;font-weight:700;line-height:1.08}.prototype-inbound .upload-shell-subtitle,.prototype-outbound .upload-shell-subtitle{color:#4b5563;max-width:620px;font-size:13px;line-height:1.65}.prototype-inbound .upload-shell-close,.prototype-outbound .upload-shell-close{color:#4b5563;background:#fff;border:1px solid #e5e7eb;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;line-height:1;transition:background .15s,color .15s;display:inline-flex}.prototype-inbound .upload-shell-close:hover,.prototype-outbound .upload-shell-close:hover{color:#1f2937;background:#f9fafb}.prototype-inbound .upload-stage,.prototype-outbound .upload-stage{grid-template-columns:minmax(0,1fr) minmax(320px,340px);gap:18px;margin-bottom:16px;display:grid}.prototype-inbound .upload-dropzone,.prototype-outbound .upload-dropzone{background:linear-gradient(180deg, #f8faf3fa, #fffffffa), repeating-linear-gradient(180deg, transparent, transparent 30px, var(--primary-a10) 30px, var(--primary-a10) 31px);cursor:pointer;border:1px dashed #558b2f47;border-radius:26px;flex-direction:column;justify-content:space-between;min-height:320px;padding:22px;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex}.prototype-inbound .upload-dropzone:hover,.prototype-outbound .upload-dropzone:hover,.prototype-inbound .upload-dropzone.dragging,.prototype-outbound .upload-dropzone.dragging{border-color:#558b2f7a;transform:translateY(-2px);box-shadow:0 18px 36px #7390511f}.prototype-inbound .upload-dropzone-visual,.prototype-outbound .upload-dropzone-visual{flex-direction:column;align-items:flex-start;gap:18px;display:flex}.prototype-inbound .upload-dropzone-icon,.prototype-outbound .upload-dropzone-icon{background:var(--primary-a16);width:64px;height:64px;color:var(--primary-dark);border-radius:22px;justify-content:center;align-items:center;display:inline-flex;box-shadow:inset 0 0 0 1px #558b2f1a}.prototype-inbound .upload-dropzone-copy strong,.prototype-outbound .upload-dropzone-copy strong{color:var(--text);margin-bottom:8px;font-size:21px;line-height:1.3;display:block}.prototype-inbound .upload-dropzone-copy span,.prototype-outbound .upload-dropzone-copy span{color:var(--text-muted);font-size:13px;line-height:1.7;display:block}.prototype-inbound .upload-file-pill,.prototype-outbound .upload-file-pill{background:#2222220a;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.prototype-inbound .upload-file-name,.prototype-outbound .upload-file-name{color:var(--text);word-break:break-all;font-size:13px;font-weight:600}.prototype-inbound .upload-file-meta,.prototype-outbound .upload-file-meta{color:var(--text-muted);white-space:nowrap;font-size:12px}.prototype-inbound .upload-error-message,.prototype-outbound .upload-error-message{color:#c62828;background:#e5393514;border-radius:14px;margin-top:14px;padding:10px 12px;font-size:13px;line-height:1.5}.prototype-inbound .upload-side-panel,.prototype-outbound .upload-side-panel{flex-direction:column;gap:14px;display:flex}.prototype-inbound .upload-side-card,.prototype-outbound .upload-side-card{background:#ffffffdb;border:1px solid #2222220f;border-radius:22px;padding:18px}.prototype-inbound .upload-side-card-accent,.prototype-outbound .upload-side-card-accent{background:linear-gradient(165deg, var(--primary-a16), #ffffffeb)}.prototype-inbound .upload-side-kicker,.prototype-outbound .upload-side-kicker{color:var(--primary-dark);letter-spacing:.12em;text-transform:uppercase;background:#558b2f1f;border-radius:999px;margin-bottom:12px;padding:5px 10px;font-size:11px;display:inline-flex}.prototype-inbound .upload-side-heading,.prototype-outbound .upload-side-heading{color:var(--text);margin-bottom:8px;font-size:16px;font-weight:700}.prototype-inbound .upload-side-card p,.prototype-outbound .upload-side-card p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.75}.prototype-inbound .upload-checklist,.prototype-outbound .upload-checklist{color:var(--text-secondary);margin:0;padding-left:18px;font-size:13px;line-height:1.75}.prototype-inbound .upload-checklist li+li,.prototype-outbound .upload-checklist li+li{margin-top:6px}.prototype-inbound .upload-actions,.prototype-outbound .upload-actions{justify-content:flex-end;gap:12px;display:flex}.prototype-inbound .upload-action-secondary,.prototype-outbound .upload-action-secondary,.prototype-inbound .upload-action-primary,.prototype-outbound .upload-action-primary{border-radius:16px;min-width:138px;height:50px;padding:0 22px;font-size:14px;font-weight:700;transition:transform .2s,opacity .2s,background .2s}.prototype-inbound .upload-action-secondary,.prototype-outbound .upload-action-secondary{color:var(--text-secondary);background:#ffffffeb;border:1px solid #22222214}.prototype-inbound .upload-action-primary,.prototype-outbound .upload-action-primary{background:linear-gradient(180deg, var(--primary-container), var(--primary));color:#fff;border:none;box-shadow:0 14px 26px #7fbe3338}.prototype-inbound .upload-action-primary:disabled,.prototype-outbound .upload-action-primary:disabled{opacity:.45;box-shadow:none;cursor:not-allowed}.prototype-inbound .upload-action-secondary:hover,.prototype-outbound .upload-action-secondary:hover,.prototype-inbound .upload-action-primary:hover:not(:disabled),.prototype-outbound .upload-action-primary:hover:not(:disabled){transform:translateY(-1px)}.prototype-inbound .inbound-import-shell,.prototype-outbound .inbound-import-shell{--import-radius-md:16px;--import-radius-lg:22px;--import-danger-bg:#fff2f2;--import-danger-border:#f5c1c1;--import-danger-mid:#e24b4a;--import-danger-text:#b83232;--import-text-primary:var(--text);--import-text-secondary:var(--text-secondary);--import-text-tertiary:var(--text-muted);--import-border-light:#22222214}.prototype-inbound .download-banner,.prototype-outbound .download-banner{border:1px solid var(--primary-light);background:var(--primary-light);color:var(--primary-dark);border-radius:8px;align-items:center;gap:10px;margin-bottom:14px;padding:12px 16px;display:flex}.prototype-inbound .download-banner span,.prototype-outbound .download-banner span{color:#4b5563;flex:1;font-size:13px;line-height:1.6}.prototype-inbound .download-banner button,.prototype-outbound .download-banner button,.prototype-inbound .download-banner a,.prototype-outbound .download-banner a{color:var(--primary-dark);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600;text-decoration:none}.prototype-inbound .inbound-import-stage,.prototype-outbound .inbound-import-stage{align-items:stretch}.prototype-inbound .import-left-panel,.prototype-outbound .import-left-panel{border-radius:12px;min-height:300px;transition:border-color .2s,box-shadow .2s,transform .2s}.prototype-inbound .import-left-panel.is-idle,.prototype-outbound .import-left-panel.is-idle{border:2px dashed var(--primary-light);background:var(--surface-container-low);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:28px;display:flex}.prototype-inbound .import-left-panel.is-idle:hover,.prototype-inbound .import-left-panel.is-idle.dragging,.prototype-outbound .import-left-panel.is-idle:hover,.prototype-outbound .import-left-panel.is-idle.dragging{border-color:var(--primary);background:var(--primary-light);box-shadow:none;transform:none}.prototype-inbound .import-left-panel.is-idle .upload-zone-icon,.prototype-outbound .import-left-panel.is-idle .upload-zone-icon{background:var(--primary-light);width:64px;height:64px;color:var(--primary-dark);box-shadow:none;border-radius:14px;justify-content:center;align-items:center;display:inline-flex}.prototype-inbound .upload-zone-copy,.prototype-outbound .upload-zone-copy{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.prototype-inbound .upload-zone-label,.prototype-outbound .upload-zone-label{color:#1f2937;font-size:18px;font-weight:700;line-height:1.35}.prototype-inbound .upload-zone-hint,.prototype-outbound .upload-zone-hint{color:#9ca3af;font-size:13px;line-height:1.6}.prototype-inbound .import-left-panel.is-error,.prototype-outbound .import-left-panel.is-error{background:linear-gradient(#fff5f5 0%,#fff 100%);border:1px solid #fecaca;flex-direction:column;justify-content:space-between;gap:16px;padding:20px 22px;display:flex}.prototype-inbound .error-summary,.prototype-outbound .error-summary{color:var(--import-danger-text);margin-bottom:12px;font-size:14px;font-weight:700}.prototype-inbound .error-list,.prototype-outbound .error-list{flex-direction:column;gap:8px;max-height:208px;display:flex;overflow-y:auto}.prototype-inbound .error-item,.prototype-outbound .error-item{border-radius:var(--import-radius-md);color:var(--import-danger-mid);background:#ffffffb3;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.prototype-inbound .error-item span,.prototype-outbound .error-item span{color:var(--import-danger-text);font-size:13px;line-height:1.6}.prototype-inbound .reupload-btn,.prototype-outbound .reupload-btn{border-radius:var(--import-radius-md);border:1px dashed var(--import-danger-mid);width:100%;color:var(--import-danger-text);cursor:pointer;background:0 0;padding:12px;font-size:13px;font-weight:600}.prototype-inbound .reupload-btn:hover,.prototype-outbound .reupload-btn:hover{background:#e24b4a0f}.prototype-inbound .import-left-panel.is-success,.prototype-outbound .import-left-panel.is-success{border:1px solid var(--primary-light);background:linear-gradient(180deg, var(--primary-light) 0%, #fff 100%);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px 22px;display:flex}.prototype-inbound .success-icon,.prototype-outbound .success-icon{background:var(--primary-light);width:44px;height:44px;color:var(--primary-dark);border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.prototype-inbound .success-title,.prototype-outbound .success-title{color:var(--primary-dark);font-size:16px;font-weight:700}.prototype-inbound .success-file-name,.prototype-outbound .success-file-name{color:var(--primary-dark);word-break:break-all;font-size:15px;font-weight:600}.prototype-inbound .success-count,.prototype-outbound .success-count{color:var(--primary-dark);font-size:13px}.prototype-inbound .change-file-btn,.prototype-outbound .change-file-btn{color:var(--primary-dark);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600;text-decoration:underline}.prototype-inbound .success-file-chip,.prototype-outbound .success-file-chip{color:var(--text-secondary);word-break:break-word;background:#ffffffe6;border:1px solid #22222214;border-radius:14px;align-items:center;gap:8px;padding:9px 12px;font-size:12px;line-height:1.6;display:inline-flex}.prototype-inbound .prefix-hint-banner,.prototype-outbound .prefix-hint-banner{border-radius:var(--import-radius-md);background:var(--warning-bg);color:var(--warning-dark);border:1px solid #ffd180;align-items:flex-start;gap:10px;padding:12px 14px;font-size:14px;line-height:1.6;display:flex}.prototype-inbound .prefix-hint-banner svg,.prototype-outbound .prefix-hint-banner svg{color:var(--warning);flex-shrink:0;margin-top:1px}.prototype-inbound .prefix-hint-banner strong,.prototype-outbound .prefix-hint-banner strong{font-weight:700}.prototype-inbound .import-right-panel,.prototype-outbound .import-right-panel{flex-direction:column;gap:14px;display:flex}.prototype-inbound .panel-card,.prototype-outbound .panel-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px 18px}.prototype-inbound .options-card,.prototype-outbound .options-card{background:linear-gradient(180deg, #fff 0%, var(--surface-container-low) 100%);border-color:var(--outline-variant)}@keyframes import-options-pulse{0%,to{box-shadow:0 0 #f57c0000}50%{box-shadow:0 0 0 4px #f57c0033}}.prototype-inbound .options-card.is-warning,.prototype-outbound .options-card.is-warning{border-color:var(--warning);animation:2s ease-in-out 2 import-options-pulse}.prototype-inbound .panel-tag,.prototype-outbound .panel-tag{background:var(--primary-light);color:var(--primary-dark);letter-spacing:.02em;border-radius:999px;margin-bottom:12px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.prototype-inbound .option-heading,.prototype-outbound .option-heading{color:#1f2937;font-size:13px;font-weight:600;line-height:1.4}.prototype-inbound .option-description,.prototype-outbound .option-description{color:#9ca3af;margin:6px 0 12px;font-size:11px;line-height:1.5}.prototype-inbound .option-select-wrap,.prototype-outbound .option-select-wrap{position:relative}.prototype-inbound .option-select-wrap:after,.prototype-outbound .option-select-wrap:after{content:"▾";pointer-events:none;color:#4b5563;font-size:12px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.prototype-inbound .option-select,.prototype-outbound .option-select{color:#1f2937;appearance:none;background:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;padding:9px 32px 9px 12px;font-size:13px;transition:border-color .2s,box-shadow .2s}.prototype-inbound .option-select:focus,.prototype-outbound .option-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-a16);outline:none}.prototype-inbound .option-custom-row,.prototype-outbound .option-custom-row{color:#4b5563;align-items:center;gap:8px;margin-top:10px;font-size:12px;display:inline-flex}.prototype-inbound .option-custom-row input,.prototype-outbound .option-custom-row input{text-align:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;width:60px;padding:6px 8px;font-family:ui-monospace,SFMono-Regular,SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:12px}.prototype-inbound .option-custom-row input:focus,.prototype-outbound .option-custom-row input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-a16);outline:none}.prototype-inbound .option-preview-card,.prototype-outbound .option-preview-card{color:#4b5563;background:#fff;border:1px dashed #e5e7eb;border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;padding:8px 10px;font-size:11px;line-height:1.5;display:flex}.prototype-inbound .option-preview-mono,.prototype-outbound .option-preview-mono{color:var(--text);font-family:ui-monospace,SFMono-Regular,SF Mono,JetBrains Mono,Menlo,Consolas,monospace}.prototype-inbound .option-preview-arrow,.prototype-outbound .option-preview-arrow{color:var(--primary-dark)}.prototype-inbound .panel-body,.prototype-outbound .panel-body{color:#4b5563;font-size:12px;line-height:1.7}.prototype-inbound .checklist,.prototype-outbound .checklist{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.prototype-inbound .checklist li,.prototype-outbound .checklist li{color:#4b5563;padding-left:16px;font-size:12px;line-height:1.7;position:relative}.prototype-inbound .checklist li:before,.prototype-outbound .checklist li:before{content:"";background:var(--primary);border-radius:999px;width:4px;height:4px;position:absolute;top:9px;left:4px}.prototype-inbound .inbound-import-footer .btn-cancel,.prototype-inbound .inbound-import-footer .btn-confirm,.prototype-outbound .inbound-import-footer .btn-cancel,.prototype-outbound .inbound-import-footer .btn-confirm{border-radius:8px;min-width:124px;height:42px;padding:0 20px;font-size:14px;font-weight:600;transition:transform .2s,opacity .2s,background .2s}.prototype-inbound .inbound-import-footer .btn-cancel,.prototype-outbound .inbound-import-footer .btn-cancel{color:#1f2937;background:#fff;border:1px solid #d1d5db}.prototype-inbound .inbound-import-footer .btn-confirm,.prototype-outbound .inbound-import-footer .btn-confirm{background:var(--primary);color:#fff;box-shadow:none;border:none}.prototype-inbound .inbound-import-footer .btn-confirm:disabled,.prototype-outbound .inbound-import-footer .btn-confirm:disabled{opacity:.45;box-shadow:none;cursor:not-allowed}.prototype-inbound .inbound-import-footer .btn-cancel:hover,.prototype-inbound .inbound-import-footer .btn-confirm:hover:not(:disabled),.prototype-outbound .inbound-import-footer .btn-cancel:hover,.prototype-outbound .inbound-import-footer .btn-confirm:hover:not(:disabled){transform:translateY(-1px)}@media (width<=900px){.prototype-inbound .upload-modal,.prototype-outbound .upload-modal{border-radius:22px;width:calc(100vw - 18px)}.prototype-inbound .upload-shell,.prototype-outbound .upload-shell{padding:20px}.prototype-inbound .upload-stage,.prototype-outbound .upload-stage{grid-template-columns:1fr}.prototype-inbound .upload-actions,.prototype-outbound .upload-actions{flex-direction:column-reverse}.prototype-inbound .upload-action-secondary,.prototype-outbound .upload-action-secondary,.prototype-inbound .upload-action-primary,.prototype-outbound .upload-action-primary,.prototype-inbound .inbound-import-footer .btn-cancel,.prototype-inbound .inbound-import-footer .btn-confirm,.prototype-outbound .inbound-import-footer .btn-cancel,.prototype-outbound .inbound-import-footer .btn-confirm{width:100%}}.prototype-store-management .store-address-cell{text-overflow:ellipsis;max-width:200px;overflow:hidden}.prototype-store-management .form-label{color:var(--text-secondary);margin-bottom:6px;font-size:13px;display:block}.prototype-store-management .form-hint,.prototype-store-management .store-range-hint{color:var(--text-muted);font-size:11px}.prototype-store-management .form-hint{margin-top:4px}.prototype-store-management .store-range-hint{margin-top:-10px;margin-bottom:16px}.prototype-store-management .form-input,.prototype-store-management .form-select{border:1.5px solid var(--border);background:var(--card);width:100%;height:40px;color:var(--text);border-radius:8px;outline:none;font-family:inherit;font-size:13px;transition:border-color .2s}.prototype-store-management .form-input{padding:0 14px}.prototype-store-management .form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23999' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding:0 30px 0 12px}.prototype-store-management .form-input:focus,.prototype-store-management .form-select:focus{border-color:var(--primary)}.prototype-store-management .form-row{gap:10px;display:flex}.prototype-store-management .form-row .form-group,.prototype-outbound .spacer{flex:1}.prototype-outbound .so-badge{border-radius:20px;align-items:center;gap:5px;padding:3px 10px;font-size:12px;font-weight:500;display:inline-flex}.prototype-outbound .so-none{background:var(--muted-bg);color:var(--text-secondary)}.prototype-outbound .so-done{background:var(--primary-light);color:var(--primary-dark)}.prototype-outbound .so-dot{border-radius:50%;width:6px;height:6px}.prototype-outbound .so-dot.none{background:var(--text-muted)}.prototype-outbound .so-dot.done{background:var(--primary)}.prototype-outbound .verify-empty,.prototype-device-management .verify-empty{color:var(--text-muted);font-size:12px}.prototype-outbound .verify-progress-cell,.prototype-device-management .verify-progress-cell{align-items:center;min-width:160px;display:flex}.prototype-outbound .verify-tooltip-wrap,.prototype-device-management .verify-tooltip-wrap,.prototype-alerts .verify-tooltip-wrap{align-items:center;gap:8px;width:100%;display:inline-flex;position:relative}.prototype-outbound .verify-progress,.prototype-device-management .verify-progress{align-items:center;gap:8px;width:100%;display:flex}.prototype-outbound .verify-progress-bar,.prototype-device-management .verify-progress-bar{background:var(--surface-container-low);border-radius:4px;flex:1;max-width:110px;height:8px;overflow:hidden}.prototype-outbound .verify-progress-fill,.prototype-device-management .verify-progress-fill{border-radius:4px;height:100%;transition:width .3s}.prototype-outbound .verify-progress-fill.tone-safe,.prototype-device-management .verify-progress-fill.tone-safe{background:var(--primary)}.prototype-outbound .verify-progress-fill.tone-warn,.prototype-device-management .verify-progress-fill.tone-warn{background:#f57c00}.prototype-outbound .verify-progress-fill.tone-urgent,.prototype-device-management .verify-progress-fill.tone-urgent{background:#e53935}.prototype-outbound .verify-progress-fill.is-pulsing,.prototype-device-management .verify-progress-fill.is-pulsing{animation:1.6s ease-in-out infinite proto-bar-pulse}.prototype-outbound .verify-progress-icon,.prototype-device-management .verify-progress-icon{color:#6e6e73;flex-shrink:0;font-size:14px;line-height:1}.prototype-outbound .verify-progress-icon.is-urgent,.prototype-device-management .verify-progress-icon.is-urgent{color:#e53935;font-size:15px;font-weight:900}.prototype-outbound .verify-badge,.prototype-device-management .verify-badge{border-radius:12px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.prototype-outbound .verify-badge-verified,.prototype-device-management .verify-badge-verified{background:var(--primary-light);color:#1e7e34}.prototype-outbound .verify-badge-overdue,.prototype-device-management .verify-badge-overdue{color:#c62828;background:#fdecea}.prototype-outbound .verify-badge-icon,.prototype-device-management .verify-badge-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.prototype-outbound .verify-badge-icon-verified,.prototype-device-management .verify-badge-icon-verified{color:#fff;background:#1e7e34;border-radius:50%;width:14px;height:14px;font-size:9px;font-weight:700}.prototype-outbound .verify-badge-icon-overdue,.prototype-device-management .verify-badge-icon-overdue{color:#c62828;font-size:13px}.prototype-outbound .verify-tooltip,.prototype-device-management .verify-tooltip,.prototype-alerts .verify-tooltip{color:#fff;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;z-index:var(--z-dropdown);background:#1d1d1f;border-radius:6px;padding:6px 10px;font-size:12px;transition:all .15s;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.prototype-outbound .verify-tooltip:after,.prototype-device-management .verify-tooltip:after,.prototype-alerts .verify-tooltip:after{content:"";border:5px solid #0000;border-top-color:#1d1d1f;position:absolute;top:100%;left:50%;transform:translate(-50%)}.prototype-outbound .verify-tooltip-wrap:hover .verify-tooltip,.prototype-device-management .verify-tooltip-wrap:hover .verify-tooltip,.prototype-alerts .verify-tooltip-wrap:hover .verify-tooltip{opacity:1;visibility:visible;transform:translate(-50%)translateY(-4px)}.prototype-outbound .row-so-btn{border:1px solid var(--warning);color:var(--warning-dark);cursor:pointer;letter-spacing:.5px;background:0 0;border-radius:6px;padding:4px 12px;font-family:inherit;font-size:12px;font-weight:600;transition:all .2s}.prototype-outbound .row-so-btn:hover{background:var(--warning);color:#fff}.prototype-inbound .table-section,.prototype-outbound .table-section{position:relative}.prototype-inbound .table-section.selection-active .table-wrapper,.prototype-outbound .table-section.selection-active .table-wrapper{padding-bottom:10px}.prototype-inbound tbody tr.selected,.prototype-inbound tbody tr.selected:hover,.prototype-outbound tbody tr.selected,.prototype-outbound tbody tr.selected:hover{background:var(--primary-a06)}.prototype-inbound .cb-indeterminate,.prototype-outbound .cb-indeterminate{background:var(--primary);border-color:var(--primary)}.prototype-inbound .selection-batch-bar,.prototype-outbound .selection-batch-bar{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));max-width:calc(100vw - 32px);box-shadow:0 8px 24px rgba(var(--shadow-color), .18);z-index:var(--z-floating);will-change:transform, opacity;background:#1a1a1a;border-radius:10px;align-items:center;gap:14px;padding:12px 16px;animation:.25s selection-batch-bar-in;display:inline-flex;position:fixed;transform:translate(-50%)}.prototype-inbound .selection-batch-text,.prototype-outbound .selection-batch-text{color:#ffffffeb;align-items:baseline;gap:4px;font-size:13px;font-weight:500;display:inline-flex}.prototype-inbound .selection-batch-text strong,.prototype-outbound .selection-batch-text strong{color:var(--primary);font-size:15px;font-weight:700}.prototype-inbound .selection-batch-divider,.prototype-outbound .selection-batch-divider{background:#ffffff26;width:1px;height:20px}.prototype-inbound .selection-batch-action,.prototype-inbound .selection-batch-close,.prototype-outbound .selection-batch-action,.prototype-outbound .selection-batch-close{cursor:pointer;border:none;font-family:inherit;transition:transform .18s,opacity .18s,background .18s}.prototype-inbound .selection-batch-action,.prototype-outbound .selection-batch-action{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);color:#fff;border-radius:10px;padding:8px 16px;font-size:13px;font-weight:600}.prototype-outbound .selection-batch-action-warning{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-sm)}.prototype-inbound .selection-batch-action:hover,.prototype-inbound .selection-batch-close:hover,.prototype-outbound .selection-batch-action:hover,.prototype-outbound .selection-batch-close:hover{transform:translateY(-1px)}.prototype-inbound .selection-batch-close,.prototype-outbound .selection-batch-close{color:#ffffffd1;background:0 0;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;font-size:15px;display:inline-flex}@keyframes selection-batch-bar-in{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.prototype-outbound .row-detail-link{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;align-items:center;gap:3px;padding:0;font-size:12px;text-decoration:none;transition:color .2s;display:inline-flex}.prototype-outbound .row-detail-link:hover{color:var(--primary-dark)}.prototype-outbound .confirm-modal .modal-body{color:var(--text-secondary);text-align:center;margin-bottom:8px;font-size:14px;line-height:1.6}.prototype-outbound .confirm-modal .modal-hint{color:var(--text-muted);text-align:center;margin-bottom:24px;font-size:12px}.prototype-outbound .modal-confirm{background:var(--warning);color:#fff}.prototype-outbound .row-success .r-value,.prototype-outbound .row-balance .r-value{color:var(--primary-dark)}.prototype-outbound .row-deduct{background:var(--surface-container-low)}.prototype-outbound .row-deduct .r-value{color:var(--text)}.prototype-outbound .row-balance{background:var(--primary-light)}.prototype-outbound .modal-btn-full{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;padding:12px;font-family:inherit;font-size:14px;font-weight:500;transition:background .2s}.prototype-outbound .modal-btn-full:hover{background:var(--primary-dark)}.nav-badge{letter-spacing:0;white-space:nowrap;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:22px;height:20px;margin-left:auto;padding:0 8px;font-size:12px;font-weight:500;line-height:1;transition:background-color .2s,color .2s,opacity .2s,transform .2s;display:inline-flex}.nav-badge-red{color:#fff;background:#d64545;box-shadow:0 8px 16px #d6454533,inset 0 1px #ffffff1f}.nav-badge-amber{color:#2a1a05;background:#f5a524;box-shadow:0 8px 16px #f5a5242e,inset 0 1px #ffffff29}.nav-badge.is-enter{animation:.2s both nav-badge-fade-in}.nav-badge.is-exit{animation:.1s both nav-badge-fade-out}.nav-dot-indicator{width:8px;height:8px;box-shadow:0 0 0 1.5px var(--nav-indicator-outline);background:#d64545;border-radius:50%;position:absolute;top:-2px;right:-3px}@keyframes nav-badge-fade-in{0%{opacity:0;transform:translateY(-1px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes nav-badge-fade-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-1px)scale(.94)}}.prototype-verification-status{color:var(--text)}.prototype-verification-status .page-desc{border-radius:var(--radius-2xl);box-shadow:inset 0 0 0 1px #ffffffb3, var(--shadow-sm);background:linear-gradient(135deg,#ffffffe6 0%,#f5f8ffdb 100%);align-items:flex-start;gap:14px;margin-bottom:24px;padding:20px 24px;animation:.4s backwards proto-fade-in-up;display:flex}.prototype-verification-status .page-desc-icon{background:var(--primary-a10);width:40px;height:40px;color:var(--primary);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.prototype-verification-status .page-desc-text{max-width:780px;color:var(--text-secondary);font-size:14px;line-height:1.7}.prototype-verification-status .page-desc-text strong{color:var(--text);font-weight:700}.prototype-verification-status .summary-cards{align-items:stretch;gap:16px;margin-bottom:28px;display:flex}.prototype-verification-status .summary-card{border-radius:var(--radius-2xl);cursor:pointer;text-align:left;box-shadow:inset 0 0 0 1px #ffffffb3, var(--shadow-sm);background:linear-gradient(#fffffff5 0%,#f9fafdeb 100%);border:none;padding:22px 24px;transition:transform .25s,box-shadow .25s,background .25s;animation:.4s backwards proto-fade-in-up;position:relative;overflow:hidden}.prototype-verification-status .summary-card-primary{min-height:232px;box-shadow:inset 0 0 0 1px #fffc, var(--shadow-md);background:radial-gradient(circle at 100% 0,#0070eb29,#0000 34%),linear-gradient(#fffffffa 0%,#f2f7fff0 100%);flex-direction:column;flex:1.2;justify-content:space-between;display:flex}.prototype-verification-status .summary-card-stack{flex-direction:column;flex:2;gap:12px;min-width:0;display:flex}.prototype-verification-status .summary-card-detail{flex:1;justify-content:space-between;align-items:center;gap:16px;min-height:74px;display:flex}.prototype-verification-status .summary-card:after{content:"";border-radius:inherit;opacity:0;transition:opacity .25s;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #0000}.prototype-verification-status .summary-card:hover{box-shadow:inset 0 0 0 1px #fffc, var(--shadow-md);transform:translateY(-3px)}.prototype-verification-status .summary-card:hover:after,.prototype-verification-status .summary-card.active:after{opacity:1}.prototype-verification-status .summary-card.active{box-shadow:inset 0 0 0 1px #ffffffd6, var(--shadow-primary-sm)}.prototype-verification-status .summary-card-primary:after{box-shadow:inset 0 0 0 1px var(--primary-a10)}.prototype-verification-status .summary-card-verified:after{box-shadow:inset 0 0 0 1px var(--primary-a16)}.prototype-verification-status .summary-card-pending:after{box-shadow:inset 0 0 0 1px #db7a2229}.prototype-verification-status .summary-card-overdue:after{box-shadow:inset 0 0 0 1px #d2455429}.prototype-verification-status .summary-icon{border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.prototype-verification-status .summary-card-primary .summary-icon,.prototype-verification-status .summary-card-verified .summary-icon{background:var(--primary-a10);color:var(--primary)}.prototype-verification-status .summary-card-pending .summary-icon{color:var(--warning-dark);background:#db7a221f}.prototype-verification-status .summary-card-overdue .summary-icon{color:var(--danger);background:#d245541f}.prototype-verification-status .summary-label{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:12px}.prototype-verification-status .summary-value{color:var(--text);font-size:28px;font-weight:600;line-height:1}.prototype-verification-status .summary-card-primary .summary-value{letter-spacing:-.04em;font-size:clamp(42px,4.6vw,56px)}.prototype-verification-status .summary-card-verified .summary-value{color:var(--primary-dark)}.prototype-verification-status .summary-card-pending .summary-value{color:var(--warning)}.prototype-verification-status .summary-card-overdue .summary-value{color:var(--danger)}.prototype-verification-status .summary-primary-head{align-items:flex-start;gap:14px;display:flex}.prototype-verification-status .summary-primary-copy{flex-direction:column;display:flex}.prototype-verification-status .summary-primary-foot{flex-direction:column;gap:12px;margin-top:28px;padding-top:18px;display:flex}.prototype-verification-status .summary-metric{flex-direction:column;gap:8px;display:flex}.prototype-verification-status .summary-metric-row,.prototype-verification-status .summary-metric-inline{justify-content:space-between;align-items:center;display:flex}.prototype-verification-status .summary-metric-label,.prototype-verification-status .summary-side-label{color:var(--text-secondary);letter-spacing:.05em;font-size:12px}.prototype-verification-status .summary-metric-value{color:var(--primary-dark);font-size:15px;font-weight:600}.prototype-verification-status .summary-metric-value-warn,.prototype-verification-status .summary-side-value{color:var(--warning-dark)}.prototype-verification-status .summary-progress-track{background:var(--primary-a10);border-radius:999px;width:100%;height:6px;overflow:hidden}.prototype-verification-status .summary-progress-fill{border-radius:inherit;background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);height:100%;transition:width .25s}.prototype-verification-status .summary-detail-main{align-items:center;gap:16px;min-width:0;display:flex}.prototype-verification-status .summary-detail-copy{min-width:0}.prototype-verification-status .summary-detail-copy .summary-label{margin-bottom:8px}.prototype-verification-status .summary-detail-side{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}@media (width<=960px){.prototype-verification-status .summary-cards{flex-direction:column}.prototype-verification-status .summary-card-primary,.prototype-verification-status .summary-card-stack{flex:unset}}@media (width<=640px){.prototype-verification-status .summary-card-detail{flex-direction:column;align-items:flex-start}.prototype-verification-status .summary-detail-side{align-items:flex-start}}.prototype-verification-status .filters{border-radius:calc(var(--radius-2xl) - 4px);background:#f3f5f9d1;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px;padding:14px;animation:.4s .25s backwards proto-fade-in-up;display:flex}.prototype-verification-status .filter-group{background:#ffffffbd;border-radius:18px;gap:4px;padding:4px;display:flex;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-verification-status .filter-btn{min-height:40px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:14px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:background .2s,color .2s,box-shadow .2s}.prototype-verification-status .filter-btn:hover{color:var(--primary);background:var(--primary-a06)}.prototype-verification-status .filter-btn.active{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);color:#fff;box-shadow:var(--shadow-primary-sm)}.prototype-verification-status .status-badge{border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.prototype-verification-status .status-pending{background:var(--warning-bg);color:var(--warning-dark)}.prototype-verification-status .status-overdue{background:var(--danger-bg);color:var(--danger)}.prototype-verification-status .status-verified{background:var(--primary-a10);color:var(--primary-dark)}.prototype-verification-status .status-dot{border-radius:50%;width:6px;height:6px}.prototype-verification-status .status-dot.pending{background:var(--warning);animation:2s infinite proto-pulse}.prototype-verification-status .status-dot.overdue{background:var(--danger);animation:1.5s infinite proto-pulse}.prototype-verification-status .status-dot.verified{background:var(--primary)}.prototype-verification-status .report-tag{cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:999px;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:600;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.prototype-verification-status .report-tag:hover{box-shadow:none;transform:none}.prototype-verification-status .report-tag:disabled,.prototype-verification-status .report-tag-disabled{cursor:not-allowed;opacity:.52}.prototype-verification-status .report-tag:disabled:hover,.prototype-verification-status .report-tag-disabled:hover{box-shadow:none;transform:none}.prototype-verification-status .report-tag-label{align-items:center;gap:4px;display:inline-flex}.prototype-verification-status .report-tag-unreported{color:var(--text-muted);background:#c1c6d724;box-shadow:inset 0 0 0 1px #c1c6d733}.prototype-verification-status .report-tag-unreported:hover{color:var(--text-secondary);background:#c1c6d738}.prototype-verification-status .report-tag-reported{background:var(--primary-a10);color:var(--primary-dark)}.prototype-verification-status .report-tag-reported:hover{background:var(--primary-a16)}.prototype-verification-status .report-tag-label svg{flex-shrink:0}.prototype-verification-status .report-tag-na{color:var(--text-muted);font-size:12px}.prototype-verification-status .countdown{font-variant-numeric:tabular-nums;font-family:SF Mono,Fira Code,monospace;font-size:12px;font-weight:600}.prototype-verification-status .countdown-complete{color:var(--primary-dark);align-items:center;gap:4px;font-family:inherit;font-weight:600;display:inline-flex}.prototype-verification-status .countdown-complete svg{flex-shrink:0}.prototype-verification-status .countdown.urgent,.prototype-verification-status .countdown.overdue{color:var(--danger)}.prototype-verification-status .countdown.warning{color:var(--warning)}.prototype-verification-status .countdown.normal{color:var(--text)}.prototype-verification-status .countdown.done{color:var(--primary-dark);font-family:inherit;font-weight:500}.prototype-verification-status .table-section{position:relative}.prototype-verification-status .table-section.verification-selection-active .table-wrapper{padding-bottom:10px}.prototype-verification-status tbody tr.selected,.prototype-verification-status tbody tr.selected:hover{background:0 0}.prototype-verification-status .verification-select-head,.prototype-verification-status .verification-select-cell{width:44px;padding-left:16px;padding-right:10px}.prototype-verification-status .cb-indeterminate{background:var(--primary);border-color:var(--primary)}.prototype-verification-status .verification-batch-bar{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);max-width:calc(100vw - 32px);box-shadow:inset 0 0 0 1px #c1c6d733, var(--shadow-lg);z-index:var(--z-floating);background:#ffffffd6;border-radius:20px;align-items:center;gap:14px;padding:14px 18px;animation:.25s verification-batch-bar-in;display:inline-flex;position:fixed;transform:translate(-50%)}.prototype-verification-status .verification-batch-text{color:var(--text);align-items:baseline;gap:4px;font-size:13px;font-weight:500;display:inline-flex}.prototype-verification-status .verification-batch-text strong{color:var(--primary);font-size:15px;font-weight:700}.prototype-verification-status .verification-batch-divider{background:#c1c6d738;width:1px;height:20px}.prototype-verification-status .verification-batch-action,.prototype-verification-status .verification-batch-close{cursor:pointer;border:none;font-family:inherit;transition:transform .18s,opacity .18s,background .18s}.prototype-verification-status .verification-batch-action{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);color:#fff;box-shadow:var(--shadow-primary-sm);border-radius:14px;padding:10px 18px;font-size:13px;font-weight:600}.prototype-verification-status .verification-batch-action:hover:not(:disabled),.prototype-verification-status .verification-batch-close:hover:not(:disabled){transform:translateY(-1px)}.prototype-verification-status .verification-batch-close{width:28px;height:28px;color:var(--text-secondary);background:#c1c6d729;border-radius:999px;justify-content:center;align-items:center;padding:0;font-size:15px;display:inline-flex}.prototype-verification-status .verification-batch-action:disabled,.prototype-verification-status .verification-batch-close:disabled{opacity:.56;cursor:not-allowed;transform:none}@media (width<=767px){.prototype-inbound .selection-batch-bar,.prototype-outbound .selection-batch-bar,.prototype-verification-status .verification-batch-bar{gap:10px;width:calc(100vw - 24px);max-width:none;padding:12px 14px}.prototype-inbound .selection-batch-text,.prototype-outbound .selection-batch-text,.prototype-verification-status .verification-batch-text{flex:0 auto;min-width:0}.prototype-inbound .selection-batch-action,.prototype-outbound .selection-batch-action,.prototype-verification-status .verification-batch-action{flex:auto;justify-content:center;min-width:0}}@keyframes verification-batch-bar-in{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.prototype-verification-status .modal-box{width:380px;max-width:90vw;box-shadow:inset 0 0 0 1px #ffffffd1, var(--shadow-modal);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#fffffff0;border-radius:28px;padding:28px 32px 24px;transition:transform .3s cubic-bezier(.34,1.56,.64,1);position:relative;transform:translateY(20px)scale(.95)}.prototype-verification-status .modal-overlay.show .modal-box{transform:translateY(0)scale(1)}.prototype-verification-status .modal-title{letter-spacing:-.02em;color:var(--text);margin-bottom:10px;font-size:18px;font-weight:600}.prototype-verification-status .modal-desc{color:var(--text-secondary);margin-bottom:10px;font-size:14px;line-height:1.6}.prototype-verification-status .modal-sn{color:var(--text);background:#f3f5f9db;border-radius:12px;margin:8px 0 20px;padding:8px 12px;font-family:SF Mono,Fira Code,monospace;font-size:12px;font-weight:500;display:inline-block;box-shadow:inset 0 0 0 1px #c1c6d729}.prototype-verification-status .modal-actions{justify-content:flex-end;gap:10px;display:flex}.prototype-verification-status .modal-icon{width:56px;height:56px;color:var(--warning-dark);background:#db7a221f;border-radius:999px;margin:0 auto 18px}.prototype-verification-status .modal-btn-cancel{min-width:112px;color:var(--text-secondary);background:#f3f5f9eb;border:none;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-verification-status .modal-btn-cancel:hover{color:var(--text);background:#e4e8f0f5}.prototype-verification-status .modal-btn-confirm{min-width:112px;color:var(--danger);background:#d245541f;box-shadow:inset 0 0 0 1px #d2455429}.prototype-verification-status .modal-btn-confirm:hover{background:#d2455429}.prototype-alerts .alerts-summary-bar{border:1px solid var(--border);margin-bottom:var(--space-5);border-radius:12px;align-items:center;gap:10px;padding:14px 20px;animation:.4s backwards proto-fade-in-up;display:flex}.prototype-alerts .alerts-summary-bar.is-warning{background:var(--warning-bg);border-color:var(--border)}.prototype-alerts .alerts-summary-bar.is-clear{background:var(--primary-light);border-color:var(--border)}.prototype-alerts .alerts-summary-icon{background:0 0;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.prototype-alerts .alerts-summary-highlight{font-size:var(--text-2xl);color:var(--warning-dark);margin:0 var(--space-1);line-height:1}.prototype-alerts .alerts-summary-bar.is-clear .alerts-summary-highlight{color:var(--primary-dark)}.prototype-alerts .alerts-summary-meta{color:var(--text-secondary);margin-left:var(--space-1)}.prototype-alerts .alerts-summary-bell{display:block;overflow:visible}.prototype-alerts .alerts-summary-bell-bg{fill:var(--warning-bg)}.prototype-alerts .alerts-summary-bell-shape{fill:var(--warning)}.prototype-alerts .alerts-summary-bell-dot{fill:var(--danger);stroke:var(--card);stroke-width:1.5px;transform-origin:25px 11px}.prototype-alerts .alerts-summary-bell-dot-pulse{animation:2s ease-in-out infinite alerts-summary-dot-pulse}.prototype-alerts .alerts-summary-bar.is-clear .alerts-summary-bell-bg{fill:var(--primary-light)}.prototype-alerts .alerts-summary-bar.is-clear .alerts-summary-bell-shape{fill:var(--primary-dark)}@keyframes alerts-summary-dot-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.prototype-alerts .filters{margin-bottom:var(--space-5);animation:.4s .1s backwards proto-fade-in-up}.prototype-alerts .alerts-filter-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.prototype-alerts .filter-group{gap:var(--space-1);display:flex}.prototype-alerts .filter-btn{border-radius:var(--radius-md);background:var(--card);border:1px solid var(--border);font-size:var(--text-base);color:var(--text-secondary);cursor:pointer;transition:all var(--ease-normal);padding:7px 14px;font-family:inherit}.prototype-alerts .filter-btn:hover{border-color:var(--primary);color:var(--primary)}.prototype-alerts .filter-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.prototype-alerts .alerts-filter-controls{align-items:center;gap:var(--space-3);flex-wrap:wrap;flex:1;justify-content:flex-end;min-width:0;display:flex}.prototype-alerts .alerts-filter-tooltip{min-width:132px}.prototype-alerts .alerts-filter-select-disabled{width:100%;color:var(--text-muted);cursor:not-allowed;pointer-events:none}.prototype-alerts .alerts-search-box{min-width:220px;margin-left:0}.prototype-alerts .alerts-search-box svg{color:var(--text-muted);flex-shrink:0}.prototype-alerts .alerts-date-filter{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--card);align-items:stretch;min-height:36px;display:inline-flex;position:relative;overflow:visible}.prototype-alerts .alerts-date-shortcuts{align-items:center;min-height:100%;display:flex}.prototype-alerts .alerts-date-shortcut-btn{min-height:34px;padding:0 var(--space-3);border:none;border-right:1px solid var(--color-gray-200);color:var(--text-secondary);font-size:var(--text-base);cursor:pointer;transition:background var(--ease-fast), color var(--ease-fast);background:0 0;font-family:inherit}.prototype-alerts .alerts-date-shortcut-btn:hover{background:var(--primary-light);color:var(--primary-dark)}.prototype-alerts .alerts-date-shortcut-btn.active{background:var(--primary-light);color:var(--primary-dark);font-weight:var(--font-medium)}.prototype-alerts .alerts-custom-range-trigger{min-height:34px;padding:0 var(--space-3);color:var(--text-secondary);font-size:var(--text-base);align-items:center;gap:var(--space-2);cursor:pointer;transition:background var(--ease-fast), color var(--ease-fast);background:0 0;border:none;font-family:inherit;display:inline-flex}.prototype-alerts .alerts-custom-range-trigger:hover{background:var(--primary-light);color:var(--primary-dark)}.prototype-alerts .alerts-custom-range-trigger:before{content:"";background:var(--color-gray-200);width:1px;height:16px;margin-right:var(--space-1)}.prototype-alerts .alerts-custom-range-trigger.custom-active{color:var(--primary-dark);background:var(--primary-light)}.prototype-alerts .alerts-custom-range-icon{flex-shrink:0}.prototype-alerts .alerts-custom-range-label{white-space:nowrap}.prototype-alerts .alerts-custom-range-label.is-placeholder{color:var(--text-secondary)}.prototype-alerts .alerts-date-panel{width:max-content;min-width:536px;padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;display:none;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-4px)}.prototype-alerts .alerts-date-panel.show{opacity:1;pointer-events:auto;display:block;transform:translateY(0)}.prototype-alerts .alerts-date-months{gap:var(--space-5);display:flex}.prototype-alerts .alerts-date-month{width:240px}.prototype-alerts .alerts-date-month-header,.prototype-alerts .alerts-picker-header{height:28px;margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.prototype-alerts .alerts-date-nav-btn{border-radius:var(--radius-xs);width:24px;height:24px;color:var(--text-secondary);font-size:var(--text-lg);cursor:pointer;transition:background var(--ease-fast), color var(--ease-fast);background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;display:inline-flex}.prototype-alerts .alerts-date-nav-btn:hover{background:var(--primary-light);color:var(--primary-dark)}.prototype-alerts .alerts-date-nav-btn.is-hidden{visibility:hidden}.prototype-alerts .alerts-date-month-title,.prototype-alerts .alerts-picker-title{padding:2px var(--space-2);color:var(--text);font-size:var(--text-md);font-weight:var(--font-medium);cursor:pointer;transition:color var(--ease-fast);background:0 0;border:none;font-family:inherit}.prototype-alerts .alerts-date-month-title:hover,.prototype-alerts .alerts-picker-title:hover{color:var(--primary-dark)}.prototype-alerts .alerts-picker-title-static{color:var(--text);font-size:var(--text-md);font-weight:var(--font-medium)}.prototype-alerts .alerts-date-weekdays{margin-bottom:var(--space-1);grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.prototype-alerts .alerts-date-weekday{height:28px;color:var(--text-muted);font-size:var(--text-sm);justify-content:center;align-items:center;display:flex}.prototype-alerts .alerts-date-days{grid-template-columns:repeat(7,1fr);gap:2px 0;display:grid}.prototype-alerts .alerts-day-cell{height:30px;color:var(--text);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;display:flex;position:relative}.prototype-alerts .alerts-day-cell.other-month{color:var(--text-muted)}.prototype-alerts .alerts-day-cell-num{border-radius:var(--radius-xs);width:28px;height:28px;transition:background var(--ease-fast), color var(--ease-fast), border-color var(--ease-fast);border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.prototype-alerts .alerts-day-cell:hover .alerts-day-cell-num{background:var(--primary-light);color:var(--primary-dark)}.prototype-alerts .alerts-day-cell.today .alerts-day-cell-num{border-color:var(--primary);color:var(--primary-dark)}.prototype-alerts .alerts-day-cell.in-range,.prototype-alerts .alerts-day-cell.in-preview-range{background:var(--primary-light)}.prototype-alerts .alerts-day-cell.range-start,.prototype-alerts .alerts-day-cell.range-end{background:0 0}.prototype-alerts .alerts-day-cell.range-start .alerts-day-cell-num,.prototype-alerts .alerts-day-cell.range-end .alerts-day-cell-num{background:var(--primary);color:var(--card);font-weight:var(--font-medium);border-color:var(--primary)}.prototype-alerts .alerts-day-cell.range-start .alerts-day-cell-num:hover,.prototype-alerts .alerts-day-cell.range-end .alerts-day-cell-num:hover{background:var(--primary);color:var(--card)}.prototype-alerts .alerts-date-status-bar{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-gray-200);justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--text-muted);font-size:var(--text-sm);display:flex}.prototype-alerts .alerts-month-picker,.prototype-alerts .alerts-year-picker{padding:var(--space-2) 0}.prototype-alerts .alerts-month-grid,.prototype-alerts .alerts-year-grid{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.prototype-alerts .alerts-month-grid-item,.prototype-alerts .alerts-year-grid-item{border-radius:var(--radius-xs);height:52px;color:var(--text);font-size:var(--text-base);cursor:pointer;transition:background var(--ease-fast), color var(--ease-fast);background:0 0;border:none;font-family:inherit}.prototype-alerts .alerts-month-grid-item:hover,.prototype-alerts .alerts-year-grid-item:hover{background:var(--primary-light);color:var(--primary-dark)}.prototype-alerts .alerts-month-grid-item.active,.prototype-alerts .alerts-year-grid-item.active{background:var(--primary);color:var(--card);font-weight:var(--font-medium)}.prototype-alerts .alerts-year-grid-item.is-edge{color:var(--text-muted)}.prototype-alerts .alerts-year-grid-item.is-edge.active{color:var(--card)}.prototype-alerts .alerts-reset-btn{color:var(--text-secondary);font-size:var(--text-base);cursor:pointer;transition:color var(--ease-fast);background:0 0;border:none;padding:0;font-family:inherit}.prototype-alerts .alerts-reset-btn:hover{color:var(--primary-dark)}@media (width>=768px) and (width<=1199px){.prototype-alerts .filter-group{flex:0 0 100%}.prototype-alerts .alerts-filter-controls{flex:100%;justify-content:flex-start}.prototype-alerts .alerts-date-shortcut-btn,.prototype-alerts .alerts-custom-range-trigger{white-space:nowrap}.prototype-alerts .alerts-search-box{min-width:180px}}@media (width<=767px){.prototype-alerts .alerts-summary-bar{align-items:flex-start;gap:12px;padding:16px}.prototype-alerts .alerts-summary-icon{flex-shrink:0;width:40px;height:40px}.prototype-alerts .alerts-filter-row{align-items:stretch;gap:12px}.prototype-alerts .filter-group{width:100%;padding-bottom:2px;overflow-x:auto}.prototype-alerts .filter-btn{flex:none}.prototype-alerts .alerts-filter-controls{justify-content:flex-start;gap:12px;width:100%}.prototype-alerts .alerts-filter-tooltip{flex:100%;min-width:0}.prototype-alerts .alerts-filter-select-disabled{align-items:center;min-height:36px;display:flex}.prototype-alerts .alerts-search-box{flex:100%;width:100%;min-width:0}.prototype-alerts .alerts-search-box input{width:100%;min-width:0}.prototype-alerts .alerts-date-filter{flex:100%;width:100%}.prototype-alerts .alerts-date-shortcuts{width:100%}.prototype-alerts .alerts-date-shortcut-btn,.prototype-alerts .alerts-custom-range-trigger{flex:1 1 0;justify-content:center;padding-left:10px;padding-right:10px}.prototype-alerts .alerts-date-panel{min-width:min(536px,100vw - 32px)}.prototype-alerts .alerts-reset-btn{margin-left:auto}}.prototype-alerts .table-section{overflow:visible}.prototype-alerts .table-wrapper{overflow:auto visible}.prototype-alerts .date-sep{color:var(--text-muted);font-size:var(--text-base)}.prototype-alerts tbody tr.unhandled,.prototype-alerts tbody tr.unhandled:hover{background:var(--warning-bg)}.prototype-alerts .alerts-th-label{align-items:center;gap:var(--space-1);display:inline-flex}.prototype-alerts .alerts-help-icon{border-radius:var(--radius-full);border:1px solid var(--text-muted);width:16px;height:16px;color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-medium);justify-content:center;align-items:center;display:inline-flex}.prototype-alerts .verify-tooltip-wrap{width:auto}.prototype-alerts .type-badge{border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-medium);align-items:center;gap:5px;padding:3px 10px;display:inline-flex}.prototype-alerts .type-range,.prototype-alerts .type-timeout{background:var(--danger-bg);color:var(--danger)}.prototype-alerts .type-rate{background:var(--warning-bg);color:var(--warning-dark)}.prototype-alerts .type-api{background:var(--info-bg);color:var(--info)}.prototype-alerts .status-badge{border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-medium);align-items:center;gap:4px;padding:3px 10px;display:inline-flex}.prototype-alerts .status-unhandled{background:var(--warning-bg);color:var(--warning-dark)}.prototype-alerts .status-handled{background:var(--primary-light);color:var(--primary-dark)}.prototype-alerts .status-dot{border-radius:50%;width:6px;height:6px}.prototype-alerts .status-dot.unhandled{background:var(--warning);animation:2s infinite proto-pulse}.prototype-alerts .status-dot.handled{background:var(--primary)}.prototype-alerts .handle-btn{border-radius:var(--radius-sm);border:1px solid var(--primary);font-size:var(--text-sm);color:var(--primary-dark);cursor:pointer;transition:all var(--ease-normal);background:0 0;padding:5px 14px;font-family:inherit}.prototype-alerts .handle-btn:hover{background:var(--primary);color:#fff}.prototype-alerts .alerts-action-link{color:var(--primary-dark);font-size:var(--text-base);cursor:pointer;transition:color var(--ease-fast);background:0 0;border:none;padding:0;font-family:inherit}.prototype-alerts .alerts-action-link:hover{color:var(--primary)}.prototype-alerts .detail-text{white-space:normal;max-width:300px;line-height:var(--leading-normal);font-size:var(--text-sm);color:var(--text-secondary)}.prototype-alerts .modal-mask{background:rgba(var(--shadow-color), .35);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-toast);opacity:0;pointer-events:none;justify-content:center;align-items:center;transition:opacity .25s;display:flex;position:fixed;inset:0}.prototype-alerts .modal-mask.show{opacity:1;pointer-events:auto}.prototype-alerts .modal-mask.show .modal{transform:translateY(0)scale(1)}.prototype-alerts .modal-header{border-bottom:1px solid var(--border);padding:20px 24px 16px}.prototype-alerts .modal-subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin-top:4px}.prototype-alerts .alerts-modal-subtitle{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.prototype-alerts .modal-body{padding:20px 24px}.prototype-alerts .modal-field{margin-bottom:16px}.prototype-alerts .modal-field:last-child{margin-bottom:0}.prototype-alerts .modal-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);margin-bottom:6px;display:block}.prototype-alerts .modal-label-note{margin-left:var(--space-2);color:var(--text-muted);font-weight:var(--font-normal)}.prototype-alerts .modal-info-row{font-size:var(--text-base);color:var(--text);line-height:var(--leading-relaxed);background:var(--muted-bg);border-radius:var(--radius-md);padding:10px 14px}.prototype-alerts .modal-textarea{border-radius:var(--radius-md);border:1px solid var(--border);width:100%;min-height:80px;font-size:var(--text-base);color:var(--text);resize:vertical;transition:border-color var(--ease-normal), box-shadow var(--ease-normal);padding:10px 14px;font-family:inherit}.prototype-alerts .modal-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow);outline:none}.prototype-alerts .modal-textarea::placeholder{color:var(--text-muted)}.prototype-alerts .modal-footer{justify-content:flex-end;gap:var(--space-2);padding:16px 24px 20px;display:flex}.prototype-alerts .alerts-detail-record{background:var(--primary-light);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-4);gap:var(--space-3);flex-direction:column;display:flex}.prototype-alerts .alerts-detail-row{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.prototype-alerts .alerts-detail-key{color:var(--text-secondary);font-size:var(--text-sm);flex-shrink:0}.prototype-alerts .alerts-detail-value{color:var(--text);font-size:var(--text-base);text-align:right;line-height:var(--leading-relaxed)}.prototype-alerts .alerts-detail-placeholder{color:var(--text-muted)}.prototype-alerts .toast-icon{font-size:16px}.prototype-device-management button{appearance:none;font:inherit;color:inherit;line-height:inherit;text-align:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.prototype-device-management .page-tabs{border-bottom:2px solid var(--border);gap:0;margin-bottom:24px;animation:.4s backwards proto-fade-in-up;display:flex}.prototype-device-management .page-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border-bottom:2px solid #0000;margin-bottom:-2px;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s}.prototype-device-management .page-tab:hover{color:var(--text)}.prototype-device-management .page-tab.active{color:var(--primary-dark);border-bottom-color:var(--primary)}.prototype-device-management .query-section{animation:.4s .1s backwards proto-fade-in-up}.prototype-device-management .search-hero{text-align:center;padding:40px 0 32px}.prototype-device-management .search-hero-title{color:var(--text);margin-bottom:8px;font-size:20px;font-weight:600}.prototype-device-management .search-hero-sub{color:var(--text-secondary);margin-bottom:24px;font-size:13px}.prototype-device-management .search-bar{align-items:center;gap:10px;max-width:520px;margin:0 auto;display:flex}.prototype-device-management .search-bar-input{border:1.5px solid var(--border);background:var(--card);height:46px;color:var(--text);border-radius:12px;outline:none;flex:1;padding:0 18px;font-family:SF Mono,Fira Code,monospace;font-size:15px;transition:border-color .2s}.prototype-device-management .search-bar-input:focus{border-color:var(--primary)}.prototype-device-management .search-bar-input::placeholder{color:var(--text-muted);font-family:-apple-system,PingFang SC,sans-serif;font-size:14px}.prototype-device-management .search-bar-btn{background:var(--primary);color:#fff;border-radius:12px;align-items:center;gap:6px;height:46px;padding:0 24px;font-size:14px;font-weight:500;display:flex}.prototype-device-management .search-bar-btn:hover{background:var(--primary-dark)}.prototype-device-management .device-detail{max-width:1040px;margin:0 auto;display:none}.prototype-device-management .device-detail.show{display:block}.prototype-device-management .device-empty{text-align:center;color:var(--text-muted);padding:60px;font-size:14px}.prototype-device-management .detail-status-bar{--brand:var(--primary);--brand-dark:var(--primary-dark);--brand-bg:var(--primary-a10);--danger:var(--danger);--text-1:var(--text);--text-2:var(--text-secondary);--text-3:var(--text-muted);--line:#c1c6d747;box-shadow:inset 0 0 0 1px #ffffffc7, var(--shadow-sm);background:radial-gradient(circle at 100% 0,#0070eb14,#0000 30%),linear-gradient(#f8fafff5 0%,#fffffff5 100%);border:none;border-radius:14px;grid-template-columns:minmax(220px,.58fr) minmax(0,1.42fr);align-items:stretch;gap:18px;margin-bottom:20px;padding:18px;animation:.3s backwards proto-fade-in-up;display:grid}.prototype-device-management .detail-sn-block{background:#ffffff9e;border-radius:20px;flex-direction:column;justify-content:center;min-width:0;padding:20px 24px;display:flex;box-shadow:inset 0 0 0 1px #fff9}.prototype-device-management .detail-sn-label{color:var(--text-3);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px}.prototype-device-management .detail-sn-code{color:var(--text-1);letter-spacing:.03em;word-break:break-all;font-family:SF Mono,Fira Code,monospace;font-size:clamp(18px,2.1vw,22px);font-weight:700}.prototype-device-management .detail-stepper{grid-template-columns:repeat(4,minmax(88px,1fr));align-items:start;gap:10px;min-width:0;padding:18px 16px 14px;display:grid}.prototype-device-management .detail-step{flex-direction:column;justify-content:flex-start;align-items:center;min-width:0;padding:0 4px;display:flex;position:relative}.prototype-device-management .detail-step:not(:last-child):after{content:"";background:var(--line);z-index:0;height:2px;position:absolute;top:13px;left:calc(50% + 18px);right:calc(18px - 50%)}.prototype-device-management .detail-step.is-done:after{background:var(--brand)}.prototype-device-management .detail-step-node{z-index:1;border:2px solid var(--line);width:26px;height:26px;color:var(--text-3);background:#fffffff0;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:relative}.prototype-device-management .detail-step.is-done .detail-step-node{border-color:var(--brand);background:var(--brand)}.prototype-device-management .detail-step.is-done .detail-step-node:before{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:6px;height:10px;transform:rotate(45deg)translate(-1px,-1px)}.prototype-device-management .detail-step.is-active .detail-step-node{border-color:var(--brand);box-shadow:0 0 0 6px var(--brand-bg);background:#fffffff5;animation:2s ease-in-out infinite prototype-device-step-pulse}.prototype-device-management .detail-step.is-error .detail-step-node{border-color:var(--danger);background:var(--danger)}.prototype-device-management .detail-step.is-error .detail-step-node:before{content:"!";color:#fff;font-size:13px;font-weight:700;line-height:1}.prototype-device-management .detail-step-label{color:var(--text-2);text-align:center;white-space:normal;word-break:keep-all;justify-content:center;align-items:flex-start;width:100%;min-height:32px;margin-top:10px;font-size:12px;font-weight:500;line-height:1.35;display:flex}.prototype-device-management .detail-step.is-done .detail-step-label,.prototype-device-management .detail-step.is-active .detail-step-label{color:var(--text-1)}.prototype-device-management .detail-step.is-active .detail-step-label,.prototype-device-management .detail-step.is-error .detail-step-label{font-weight:600}.prototype-device-management .detail-step.is-error .detail-step-label{color:var(--danger)}.prototype-device-management .detail-step-meta{color:var(--text-3);text-align:center;white-space:normal;word-break:break-word;width:100%;min-height:30px;margin-top:4px;font-family:SF Mono,Fira Code,monospace;font-size:10px;line-height:1.45}.prototype-device-management .detail-step.is-active .detail-step-meta{color:var(--brand-dark);font-family:PingFang SC,Helvetica Neue,sans-serif;font-weight:600}.prototype-device-management .detail-step-verify-window.is-active .detail-step-meta{color:var(--warning)}.prototype-device-management .detail-step.is-error .detail-step-meta{color:var(--danger)}@media (width<=767px){.prototype-device-management .detail-status-bar{grid-template-columns:1fr;gap:16px;padding:16px}.prototype-device-management .detail-sn-block{width:100%;padding:18px 18px 16px}.prototype-device-management .detail-sn-code{font-size:18px}.prototype-device-management .detail-stepper{width:100%;padding:16px 14px 12px}.prototype-device-management .detail-step-node{width:22px;height:22px}.prototype-device-management .detail-step:not(:last-child):after{top:11px;left:calc(50% + 14px);right:calc(14px - 50%)}.prototype-device-management .detail-step-label{white-space:normal;word-break:break-word;padding:0 2px;font-size:11px;line-height:1.3}.prototype-device-management .detail-step-meta{white-space:normal;word-break:break-word;padding:0 2px;font-size:10px;line-height:1.3}}.prototype-device-management .detail-cards{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.prototype-device-management .detail-card{background:var(--card);border:1px solid var(--border);border-radius:14px;animation:.4s backwards proto-fade-in-up;overflow:hidden}.prototype-device-management .detail-card:first-child{animation-delay:50ms}.prototype-device-management .detail-card:nth-child(2){animation-delay:.1s}.prototype-device-management .detail-card:nth-child(3){animation-delay:.15s}.prototype-device-management .detail-card:nth-child(4){animation-delay:.2s}.prototype-device-management .detail-card-header{border-bottom:1px solid var(--border);color:var(--text);align-items:center;gap:8px;padding:14px 18px;font-size:14px;font-weight:600;display:flex}.prototype-device-management .detail-card-header:before{content:"";background:var(--primary);border-radius:2px;width:3px;height:16px}.prototype-device-management .detail-card-body{padding:16px 18px}.prototype-device-management .detail-row{justify-content:space-between;align-items:center;padding:8px 0;display:flex}.prototype-device-management .detail-row+.detail-row{border-top:1px solid var(--border)}.prototype-device-management .detail-label{color:var(--text-secondary);font-size:13px}.prototype-device-management .detail-value{color:var(--text);font-size:13px;font-weight:500}.prototype-device-management .detail-value.mono{font-family:SF Mono,Fira Code,monospace;font-size:12px}.prototype-device-management .detail-value.warn{color:var(--warning-dark);background:var(--warning-bg);border-radius:6px;padding:2px 8px}.prototype-device-management .detail-value.danger{color:var(--danger);background:var(--danger-bg);border-radius:6px;padding:2px 8px}.prototype-device-management .detail-value.good{color:var(--primary-dark)}.prototype-device-management .detail-value.muted{color:var(--text-muted)}.prototype-device-management .detail-extra-card{background:var(--card);border:1px solid var(--border);border-radius:14px;margin-bottom:16px;padding:20px;animation:.4s .25s backwards proto-fade-in-up}.prototype-device-management .extra-header{align-items:center;gap:8px;margin-bottom:16px;display:flex}.prototype-device-management .extra-header:before{content:"";border-radius:2px;width:3px;height:16px}.prototype-device-management .extra-header.countdown-h:before{background:var(--warning)}.prototype-device-management .extra-header.photo-h:before{background:var(--primary)}.prototype-device-management .extra-title{color:var(--text);font-size:14px;font-weight:600}.prototype-device-management .countdown-display{border-radius:12px;align-items:center;gap:16px;padding:16px 20px;display:flex}.prototype-device-management .countdown-display.cd-pending{background:var(--warning-bg)}.prototype-device-management .countdown-display.cd-overdue{background:var(--danger-bg)}.prototype-device-management .countdown-display.cd-verified{background:var(--primary-light)}.prototype-device-management .countdown-display.cd-none,.prototype-device-management .countdown-display.cd-in{background:var(--muted-bg)}.prototype-device-management .cd-icon{border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.prototype-device-management .cd-pending .cd-icon{background:#f57c0026}.prototype-device-management .cd-overdue .cd-icon{background:#e5393526}.prototype-device-management .cd-verified .cd-icon{background:#558b2f26}.prototype-device-management .cd-none .cd-icon,.prototype-device-management .cd-in .cd-icon{background:rgba(var(--shadow-color), .05)}.prototype-device-management .cd-text{flex:1}.prototype-device-management .cd-status{margin-bottom:4px;font-size:12px}.prototype-device-management .cd-pending .cd-status{color:var(--warning-dark)}.prototype-device-management .cd-overdue .cd-status{color:var(--danger)}.prototype-device-management .cd-verified .cd-status{color:var(--primary-dark)}.prototype-device-management .cd-none .cd-status,.prototype-device-management .cd-in .cd-status{color:var(--text-muted)}.prototype-device-management .cd-time{font-family:SF Mono,Fira Code,monospace;font-size:22px;font-weight:700}.prototype-device-management .cd-pending .cd-time{color:var(--warning)}.prototype-device-management .cd-overdue .cd-time{color:var(--danger)}.prototype-device-management .cd-verified .cd-time{color:var(--primary-dark);font-family:inherit}.prototype-device-management .cd-none .cd-time,.prototype-device-management .cd-in .cd-time{color:var(--text-muted);font-family:inherit;font-size:16px}.prototype-device-management .cd-sub{color:var(--text-secondary);margin-top:4px;font-size:11px}.prototype-device-management .photo-single{align-items:flex-start;gap:16px;display:flex}.prototype-device-management .photo-thumb-single{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:10px;width:160px;transition:all .2s;position:relative;overflow:hidden}.prototype-device-management .photo-thumb-single:hover{box-shadow:0 6px 20px rgba(var(--shadow-color), .08);transform:translateY(-2px)}.prototype-device-management .photo-preview-single{aspect-ratio:4/3;background:var(--surface-container-low);justify-content:center;align-items:center;width:100%;display:flex}.prototype-device-management .photo-zoom-hint{text-align:center;color:var(--text-muted);background:var(--card);border-top:1px solid var(--border);justify-content:center;align-items:center;gap:4px;padding:6px 0;font-size:11px;display:flex}.prototype-device-management .photo-single-dl{background:var(--primary-light);color:var(--primary-dark);border-radius:8px;align-self:flex-end;align-items:center;gap:6px;margin-top:auto;padding:8px 16px;font-size:12px;font-weight:500;display:inline-flex}.prototype-device-management .photo-single-dl:hover{background:var(--primary);color:#fff}.prototype-device-management .no-photo{text-align:center;color:var(--text-muted);background:var(--muted-bg);border-radius:10px;padding:24px;font-size:13px}.prototype-device-management .cancel-so-footer{border-top:1px solid var(--border);color:var(--text-muted);margin-top:12px;padding:12px 0 0;font-size:12px}.prototype-device-management .cancel-so-link{color:var(--text-secondary);text-underline-offset:2px;background:0 0;margin-left:4px;text-decoration:underline}.prototype-device-management .cancel-so-link:hover{color:var(--danger)}.prototype-device-management .confirm-overlay{background:rgba(var(--shadow-color), .4);z-index:350;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;justify-content:center;align-items:center;transition:opacity .2s,visibility .2s;display:flex;position:fixed;inset:0}.prototype-device-management .confirm-overlay.show{opacity:1;visibility:visible;pointer-events:auto}.prototype-device-management .confirm-dialog{background:var(--card);text-align:center;width:90%;max-width:380px;box-shadow:0 20px 60px rgba(var(--shadow-color), .15);border-radius:16px;padding:28px 24px 20px;transition:transform .22s;transform:translateY(12px)scale(.96)}.prototype-device-management .confirm-overlay.show .confirm-dialog{transform:translateY(0)scale(1)}.prototype-device-management .confirm-icon{margin-bottom:12px}.prototype-device-management .confirm-title{color:var(--text);margin-bottom:8px;font-size:16px;font-weight:600}.prototype-device-management .confirm-body-text{color:var(--text-secondary);margin-bottom:20px;font-size:13px;line-height:1.6}.prototype-device-management .confirm-actions{justify-content:center;gap:10px;display:flex}.prototype-device-management .confirm-cancel-btn{background:var(--danger);color:#fff;border-radius:8px;padding:8px 20px;font-size:13px;font-weight:500;transition:all .2s}.prototype-device-management .confirm-danger-btn{background:var(--muted-bg);color:var(--text-secondary);border-radius:8px;padding:8px 20px;font-size:13px;transition:all .2s}.prototype-device-management .lightbox{background:rgba(var(--shadow-color), .7);z-index:var(--z-toast);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;display:none;position:fixed;inset:0}.prototype-device-management .lightbox.show{display:flex}.prototype-device-management .lightbox-content{background:var(--card);border-radius:16px;width:90%;max-width:520px;padding:24px;animation:.3s proto-fade-in-up;position:relative}.prototype-device-management .lightbox-img{aspect-ratio:4/3;color:#bbb;background:linear-gradient(145deg,#ddd,#eee,#ddd);border-radius:10px;justify-content:center;align-items:center;width:100%;font-size:48px;display:flex}.prototype-device-management .lightbox-close{background:var(--muted-bg);border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex;position:absolute;top:12px;right:12px}.prototype-device-management .lightbox-close:hover{background:var(--danger-bg)}.prototype-device-management .lightbox-caption{text-align:center;color:var(--text-secondary);padding:12px 0 4px;font-size:13px}.prototype-device-management .list-section{animation:.4s .1s backwards proto-fade-in-up}.prototype-device-management .filters{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.prototype-device-management .filter-group{gap:4px;display:flex}.prototype-device-management .filter-btn{background:var(--card);border:1px solid var(--border);color:var(--text-secondary);border-radius:8px;padding:7px 14px;font-size:13px;transition:all .2s}.prototype-device-management .filter-btn:hover{border-color:var(--primary);color:var(--primary)}.prototype-device-management .filter-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.prototype-device-management .filter-search{background:var(--card);border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;height:34px;margin-left:auto;padding:0 12px;transition:border-color .2s;display:flex}.prototype-device-management .filter-search:focus-within{border-color:var(--primary)}.prototype-device-management .filter-search input{color:var(--text);background:0 0;border:none;outline:none;width:140px;font-family:inherit;font-size:13px}.prototype-device-management .filter-search input::placeholder{color:var(--text-muted)}.prototype-device-management .s-badge{border-radius:20px;align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:500;display:inline-flex}.prototype-device-management .s-in,.prototype-device-management .s-verified{background:var(--primary-light);color:var(--primary-dark)}.prototype-device-management .s-out{background:var(--muted-bg);color:var(--text-secondary)}.prototype-device-management .s-so{background:var(--warning-bg);color:var(--warning-dark)}.prototype-device-management .s-overdue{background:var(--danger-bg);color:var(--danger)}.prototype-device-management .s-dot{border-radius:50%;width:6px;height:6px}.prototype-device-management .s-dot.in,.prototype-device-management .s-dot.verified{background:var(--primary)}.prototype-device-management .s-dot.out,.prototype-device-management .s-dot.none-dot{background:var(--text-muted)}.prototype-device-management .s-dot.so{background:var(--warning);animation:2s infinite proto-pulse}.prototype-device-management .s-dot.overdue{background:var(--danger);animation:1.5s infinite proto-pulse}.prototype-device-management tbody tr.row-in{opacity:.55}.prototype-device-management tbody tr.row-in:hover{opacity:.8}.prototype-device-management tbody tr.row-overdue{background:#e5393508}.prototype-device-management tbody tr.row-overdue:hover{background:#e539350f}.prototype-outbound .td-progress,.prototype-device-management .td-progress{min-width:160px}.prototype-device-management .progress-na{color:var(--text-muted);font-size:13px}.prototype-device-management .td-action{text-align:center}.prototype-device-management .detail-link{border:1px solid var(--border);color:var(--primary-dark);white-space:nowrap;background:0 0;border-radius:6px;padding:5px 12px;font-size:12px;transition:all .2s}.prototype-device-management .detail-link:hover{background:var(--primary-light);border-color:var(--primary)}.prototype-device-management .device-list-empty{text-align:center;color:var(--text-muted);padding:48px}@keyframes prototype-device-step-pulse{0%,to{box-shadow:0 0 0 4px var(--primary-light)}50%{box-shadow:0 0 0 7px var(--primary-light)}}.prototype-activation-radar button{appearance:none;font:inherit;color:inherit;line-height:inherit;text-align:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.prototype-activation-radar .period-switcher{align-items:center;gap:16px;margin-bottom:24px;display:flex}.prototype-activation-radar .period-arrow{background:var(--card);border:1px solid var(--border);width:36px;height:36px;color:var(--text-secondary);border-radius:10px;justify-content:center;align-items:center;transition:all .2s;display:flex}.prototype-activation-radar .period-arrow:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.prototype-activation-radar .period-label{color:var(--text);letter-spacing:1px;font-size:20px;font-weight:600}.prototype-activation-radar .period-dates{color:var(--text-secondary);margin-left:4px;font-size:13px}.prototype-activation-radar .metric-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:28px;display:grid}.prototype-activation-radar .metric-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:18px 20px;transition:all .25s;animation:.4s backwards proto-fade-in-up;position:relative;overflow:hidden}.prototype-activation-radar .metric-card:before{content:"";background:var(--primary);opacity:0;height:3px;transition:opacity .25s;position:absolute;top:0;left:0;right:0}.prototype-activation-radar .metric-card:hover{box-shadow:0 8px 24px rgba(var(--shadow-color), .06);transform:translateY(-2px)}.prototype-activation-radar .metric-card:hover:before{opacity:1}.prototype-activation-radar .metric-card-label{color:var(--text-secondary);margin-bottom:10px;font-size:12px;font-weight:500}.prototype-activation-radar .metric-card-value{color:var(--text);font-size:26px;font-weight:700;line-height:1}.prototype-activation-radar .metric-card-value.green{color:var(--primary-dark)}.prototype-activation-radar .metric-card-value .unit{margin-left:2px;font-size:14px;font-weight:500}.prototype-activation-radar .metric-card-sub{color:var(--text-muted);margin-top:6px;font-size:11px}.prototype-activation-radar .chart-section{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:24px;animation:.5s .4s backwards proto-fade-in-up}.prototype-activation-radar .chart-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.prototype-activation-radar .chart-title{color:var(--text);font-size:16px;font-weight:600}.prototype-activation-radar .chart-legend{gap:20px;display:flex}.prototype-activation-radar .legend-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;display:flex}.prototype-activation-radar .legend-dot{border-radius:50%;width:10px;height:10px}.prototype-activation-radar .chart-container{height:280px;position:relative}.prototype-activation-radar .chart-svg{width:100%;height:100%}.prototype-activation-radar .grid-line{stroke:var(--muted-bg);stroke-width:1px}.prototype-activation-radar .axis-label{fill:var(--text-secondary);font-family:inherit;font-size:11px}.prototype-activation-radar .chart-line{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1000;animation:1.5s .6s forwards prototype-activation-draw-line}.prototype-activation-radar .chart-line-primary{stroke:var(--primary)}.prototype-activation-radar .chart-line-secondary{stroke:var(--primary-dark)}.prototype-activation-radar .chart-dot{r:4;fill:var(--card);stroke-width:2.5px;cursor:pointer;transition:r .2s;animation:.3s backwards prototype-activation-fade-in-dot}.prototype-activation-radar .chart-dot:hover{r:6}.prototype-activation-radar .chart-dot-primary{stroke:var(--primary)}.prototype-activation-radar .chart-dot-secondary{stroke:var(--primary-dark)}.prototype-activation-radar .chart-tooltip{background:var(--dark);color:#fff;pointer-events:none;opacity:0;white-space:nowrap;z-index:10;box-shadow:0 4px 16px rgba(var(--shadow-color), .2);border-radius:10px;padding:10px 14px;font-size:12px;transition:opacity .15s;position:absolute}.prototype-activation-radar .chart-tooltip.show{opacity:1}.prototype-activation-radar .tooltip-label{color:#fff9;margin-bottom:6px}.prototype-activation-radar .tooltip-row{align-items:center;gap:6px;margin-top:4px;display:flex}.prototype-activation-radar .tooltip-dot{border-radius:50%;width:8px;height:8px}.prototype-activation-radar .tooltip-value{font-weight:600}@keyframes prototype-activation-draw-line{0%{stroke-dashoffset:1000px}to{stroke-dashoffset:0}}@keyframes prototype-activation-fade-in-dot{0%{opacity:0;r:0}to{opacity:1}}.prototype-store-activation-rate{color:var(--text)}.prototype-store-activation-rate button{appearance:none;font:inherit;color:inherit;line-height:inherit;text-align:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.prototype-store-activation-rate .store-filter-anchor{position:relative}.prototype-store-activation-rate .top-controls{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px;display:flex}.prototype-store-activation-rate .period-switcher{align-items:center;gap:12px;display:flex}.prototype-store-activation-rate .period-arrow{background:var(--card);border:1px solid var(--border);width:36px;height:36px;color:var(--text-secondary);border-radius:10px;justify-content:center;align-items:center;transition:all .2s;display:flex}.prototype-store-activation-rate .period-arrow:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-light)}.prototype-store-activation-rate .period-label{color:var(--text);letter-spacing:.5px;font-size:18px;font-weight:600}.prototype-store-activation-rate .period-dates{color:var(--text-secondary);margin-left:2px;font-size:12px}.prototype-store-activation-rate .store-filter{position:relative}.prototype-store-activation-rate .store-filter-btn{background:var(--card);border:1px solid var(--border);color:var(--text);border-radius:10px;align-items:center;gap:8px;padding:9px 16px;font-size:13px;transition:all .2s;display:flex}.prototype-store-activation-rate .store-filter-btn:hover{border-color:var(--primary)}.prototype-store-activation-rate .store-filter-btn svg{color:var(--text-secondary)}.prototype-store-activation-rate .store-dropdown{background:var(--card);border:1px solid var(--border);width:280px;max-height:320px;box-shadow:0 12px 40px rgba(var(--shadow-color), .1);z-index:50;border-radius:12px;display:none;position:absolute;top:44px;left:0;overflow:hidden}.prototype-store-activation-rate .store-dropdown.show{display:block}.prototype-store-activation-rate .store-dropdown-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.prototype-store-activation-rate .store-dropdown-header span{color:var(--text-secondary);font-size:13px}.prototype-store-activation-rate .store-dropdown-actions{gap:8px;display:flex}.prototype-store-activation-rate .store-action-btn{color:var(--primary);font-size:12px}.prototype-store-activation-rate .store-dropdown-list{max-height:240px;padding:8px 0;overflow-y:auto}.prototype-store-activation-rate .store-option{color:var(--text);align-items:center;gap:10px;width:100%;padding:8px 16px;font-size:13px;transition:background .15s;display:flex}.prototype-store-activation-rate .store-checkbox{border:1.5px solid var(--text-muted);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:all .2s;display:flex}.prototype-store-activation-rate .store-option.checked .store-checkbox{background:var(--primary);border-color:var(--primary)}.prototype-store-activation-rate .selected-count{background:var(--primary);color:#fff;border-radius:10px;margin-left:4px;padding:1px 7px;font-size:11px}.multi-store-filter-anchor{position:relative}.multi-store-filter-anchor button{appearance:none;font:inherit;color:inherit;line-height:inherit;text-align:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.multi-store-filter{position:relative}.multi-store-filter-anchor .multi-store-filter-btn{background:var(--surface-container-high);min-height:40px;color:var(--text);white-space:nowrap;border:none;border-radius:14px;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:600;line-height:1;transition:background .2s,box-shadow .2s,color .2s;display:flex;box-shadow:inset 0 0 0 1px #c1c6d72e}.multi-store-filter-anchor .multi-store-filter-btn:hover{background:var(--surface-bright);color:var(--primary)}.multi-store-filter-anchor .multi-store-filter-btn svg{color:var(--text-secondary);flex-shrink:0}.multi-store-filter-anchor .multi-store-filter-icon{width:14px;height:14px}.multi-store-filter-anchor .multi-store-filter-label{align-items:center;display:inline-flex}.multi-store-filter-anchor .multi-store-filter-caret{width:10px;height:10px;margin-left:2px}.multi-store-dropdown{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);width:280px;max-height:320px;box-shadow:var(--shadow-lg);z-index:50;background:#ffffffeb;border:1px solid #c1c6d72e;border-radius:20px;display:none;position:absolute;top:48px;left:0;overflow:hidden}.multi-store-dropdown.show{display:block}.multi-store-dropdown-header{justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.multi-store-dropdown-header span{color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase;font-size:13px}.multi-store-dropdown-actions{gap:8px;display:flex}.multi-store-filter-anchor .multi-store-action-btn{color:var(--primary);font-size:12px}.multi-store-dropdown-list{max-height:240px;padding:8px 0;overflow-y:auto}.multi-store-filter-anchor .multi-store-option{color:var(--text);text-align:left;align-items:center;gap:10px;width:100%;padding:10px 18px;font-size:13px;transition:background .15s;display:flex}.multi-store-filter-anchor .multi-store-option:hover{background:var(--primary-a06)}.multi-store-filter-anchor .multi-store-checkbox{border:1.5px solid #70798f80;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:all .2s;display:flex}.multi-store-filter-anchor .multi-store-option.checked .multi-store-checkbox{background:var(--primary);border-color:var(--primary)}.multi-store-empty{color:var(--text-secondary);text-align:center;padding:16px;font-size:13px}.prototype-store-activation-rate .store-name-cell{align-items:center;gap:8px;font-weight:500;display:flex}.prototype-store-activation-rate .warning-dot{background:var(--warning);border-radius:50%;flex-shrink:0;width:8px;height:8px}.prototype-store-activation-rate .val-warning{color:var(--warning);font-weight:600}.prototype-store-activation-rate .pct-cell{font-weight:600}.prototype-store-activation-rate .pct-good{color:var(--primary-dark)}.prototype-store-activation-rate .pct-warn{color:var(--warning)}.prototype-store-activation-rate .store-rate-empty{text-align:center;color:var(--text-muted);padding:40px}.prototype-store-activation-rate .trend-section{animation:.5s .15s backwards proto-fade-in-up}.prototype-store-activation-rate .trend-title{color:var(--text);margin-bottom:18px;font-size:16px;font-weight:600}.prototype-store-activation-rate .trend-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;display:grid}.prototype-store-activation-rate .trend-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:18px 20px;transition:all .25s;animation:.4s backwards proto-fade-in-up}.prototype-store-activation-rate .trend-card:hover{box-shadow:0 8px 24px rgba(var(--shadow-color), .06);transform:translateY(-2px)}.prototype-store-activation-rate .trend-card-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.prototype-store-activation-rate .trend-card-name{color:var(--text);font-size:14px;font-weight:600}.prototype-store-activation-rate .trend-card-rate{border-radius:20px;padding:3px 10px;font-size:13px;font-weight:600}.prototype-store-activation-rate .trend-card-rate.good{background:var(--primary-light);color:var(--primary-dark)}.prototype-store-activation-rate .trend-card-rate.warn{background:var(--warning-bg);color:var(--warning-dark)}.prototype-store-activation-rate .trend-chart{height:120px;position:relative}.prototype-store-activation-rate .mini-tooltip{background:var(--dark);color:#fff;pointer-events:none;opacity:0;white-space:nowrap;z-index:5;box-shadow:0 4px 12px rgba(var(--shadow-color), .2);border-radius:8px;padding:6px 10px;font-size:11px;transition:opacity .15s;position:absolute}.prototype-store-activation-rate .mini-tooltip.show{opacity:1}.prototype-store-activation-rate .trend-grid-empty{text-align:center;color:var(--text-muted);grid-column:1/-1;padding:40px}.prototype-store-activation-rate .trend-line{stroke-dasharray:600;animation:1.2s forwards prototype-store-rate-draw-line}@keyframes prototype-store-rate-draw-line{0%{stroke-dashoffset:600px}to{stroke-dashoffset:0}}.prototype-billing{color:var(--text)}.prototype-billing button{appearance:none;font:inherit;color:inherit;line-height:inherit;text-align:inherit;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.prototype-billing .balance-card{background:var(--card);border:1px solid var(--border);border-radius:16px;justify-content:space-between;align-items:center;margin-bottom:24px;padding:28px 32px;animation:.4s backwards proto-fade-in-up;display:flex;position:relative;overflow:hidden}.prototype-billing .balance-card:before{content:"";background:var(--primary);width:4px;position:absolute;top:0;bottom:0;left:0}.prototype-billing .balance-card.low-bal:before{background:var(--danger)}.prototype-billing .balance-left{align-items:center;gap:20px;display:flex}.prototype-billing .balance-icon{background:var(--primary-light);border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.prototype-billing .balance-card.low-bal .balance-icon{background:var(--danger-bg)}.prototype-billing .balance-label{color:var(--text-secondary);margin-bottom:6px;font-size:13px}.prototype-billing .balance-amount{color:var(--primary-dark);font-family:SF Mono,Fira Code,monospace;font-size:36px;font-weight:700;line-height:1}.prototype-billing .balance-card.low-bal .balance-amount{color:var(--danger)}.prototype-billing .balance-unit{color:var(--text-muted);margin-top:6px;font-size:13px}.prototype-billing .balance-right{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.prototype-billing .balance-rule{background:var(--muted-bg);color:var(--text-secondary);border-radius:8px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;display:flex}.prototype-billing .balance-warn{background:var(--danger-bg);color:var(--danger);border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:12px;font-weight:500;display:none}.prototype-billing .balance-warn.show{display:flex}.prototype-billing .recharge-btn{background:var(--primary);color:#fff;box-shadow:0 2px 8px var(--primary-a24);border-radius:10px;align-items:center;gap:6px;padding:10px 22px;font-size:14px;font-weight:600;transition:all .25s;display:flex}.prototype-billing .recharge-btn:hover{background:var(--primary-dark);box-shadow:0 4px 16px var(--primary-a40);transform:translateY(-1px)}.prototype-billing .recharge-btn:active{transform:translateY(0)}.prototype-billing .modal-overlay.show .modal{transform:translateY(0)scale(1)}.prototype-billing .modal-header{justify-content:space-between;align-items:center;padding:24px 28px 0;display:flex}.prototype-billing .modal-close{background:var(--muted-bg);width:32px;height:32px;color:var(--text-secondary);border-radius:8px;justify-content:center;align-items:center;font-size:18px;transition:all .2s;display:flex}.prototype-billing .modal-close:hover{background:var(--border);color:var(--text)}.prototype-billing .modal-body{padding:20px 28px 28px}.prototype-billing .amount-section{margin-bottom:24px}.prototype-billing .section-label{color:var(--text);margin-bottom:10px;font-size:13px;font-weight:600}.prototype-billing .quick-amounts{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px;display:grid}.prototype-billing .quick-amt{border:1.5px solid var(--border);background:var(--card);text-align:center;color:var(--text);border-radius:10px;padding:10px;font-size:14px;font-weight:600;transition:all .2s}.prototype-billing .quick-amt:hover{border-color:var(--primary);color:var(--primary-dark);background:var(--primary-light)}.prototype-billing .quick-amt.selected{border-color:var(--primary);background:var(--primary);color:#fff;box-shadow:0 2px 8px var(--primary-a24)}.prototype-billing .amount-input-wrap{align-items:center;display:flex;position:relative}.prototype-billing .amount-input-wrap .unit{color:var(--text-muted);font-size:18px;font-weight:700;position:absolute;left:14px}.prototype-billing .amount-input{border:1.5px solid var(--border);width:100%;color:var(--text);background:var(--card);border-radius:10px;outline:none;padding:14px 14px 14px 32px;font-family:SF Mono,Fira Code,monospace;font-size:20px;font-weight:700;transition:border-color .2s}.prototype-billing .amount-input:focus{border-color:var(--primary)}.prototype-billing .amount-hint{color:var(--text-muted);margin-top:6px;font-size:12px}.prototype-billing .pay-methods{margin-bottom:24px}.prototype-billing .pay-grid{flex-direction:column;gap:8px;display:flex}.prototype-billing .pay-option{border:1.5px solid var(--border);background:var(--card);border-radius:12px;align-items:center;gap:14px;width:100%;padding:14px 16px;transition:all .2s;display:flex}.prototype-billing .pay-option:hover{border-color:var(--primary-a40);background:var(--primary-a06)}.prototype-billing .pay-option.selected{border-color:var(--primary);background:var(--primary-light)}.prototype-billing .pay-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:22px;display:flex}.prototype-billing .pay-icon.wechat{color:#fff;background:#07c160}.prototype-billing .pay-icon.alipay{color:#fff;background:#1677ff}.prototype-billing .pay-icon.bank{background:var(--muted-bg);color:var(--text-secondary)}.prototype-billing .pay-name{color:var(--text);font-size:14px;font-weight:600}.prototype-billing .pay-desc{color:var(--text-secondary);margin-top:2px;font-size:12px}.prototype-billing .pay-check{border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-left:auto;transition:all .2s;display:flex}.prototype-billing .pay-option.selected .pay-check{border-color:var(--primary);background:var(--primary)}.prototype-billing .qr-area{text-align:center;background:var(--muted-bg);border-radius:14px;margin-bottom:24px;padding:24px;display:none}.prototype-billing .qr-area.show{display:block}.prototype-billing .qr-box{width:180px;height:180px;box-shadow:0 2px 12px rgba(var(--shadow-color), .06);background:#fff;border-radius:12px;justify-content:center;align-items:center;margin:0 auto 12px;display:flex}.prototype-billing .qr-placeholder{color:var(--text-muted);font-size:12px}.prototype-billing .qr-tip{color:var(--text-secondary);font-size:13px}.prototype-billing .bank-area{background:var(--muted-bg);border-radius:14px;margin-bottom:24px;padding:20px;display:none}.prototype-billing .bank-area.show{display:block}.prototype-billing .bank-row{justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;display:flex}.prototype-billing .bank-row:not(:last-child){border-bottom:1px solid var(--border)}.prototype-billing .bank-label{color:var(--text-secondary)}.prototype-billing .bank-val{color:var(--text);font-family:SF Mono,Fira Code,monospace;font-weight:600}.prototype-billing .bank-highlight{color:var(--primary-dark)}.prototype-billing .modal-submit{background:var(--primary);color:#fff;width:100%;box-shadow:0 2px 12px var(--primary-a24);border-radius:12px;padding:14px;font-size:15px;font-weight:600;transition:all .25s}.prototype-billing .modal-submit:hover{background:var(--primary-dark);box-shadow:0 4px 20px var(--primary-a40)}.prototype-billing .modal-submit:disabled{background:var(--muted-bg);color:var(--text-muted);box-shadow:none;cursor:not-allowed}.prototype-billing .toast-icon{background:var(--primary-light);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 16px;display:flex}.prototype-billing .toast-title{color:var(--text);margin-bottom:6px;font-size:18px;font-weight:700}.prototype-billing .toast-desc{color:var(--text-secondary);font-size:13px}.prototype-billing .demo-toggle{background:var(--muted-bg);border:1px solid var(--border);color:var(--text-secondary);border-radius:8px;margin-bottom:16px;margin-left:auto;padding:6px 14px;font-size:12px;transition:all .2s;animation:.4s 50ms backwards proto-fade-in-up}.prototype-billing .demo-toggle:hover{border-color:var(--primary);color:var(--primary)}.prototype-billing .tab-bar{border-bottom:2px solid var(--border);gap:0;margin-bottom:20px;animation:.4s .1s backwards proto-fade-in-up;display:flex}.prototype-billing .tab-item{color:var(--text-secondary);border-bottom:2px solid #0000;margin-bottom:-2px;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s}.prototype-billing .tab-item:hover{color:var(--text)}.prototype-billing .tab-item.active{color:var(--primary-dark);border-bottom-color:var(--primary)}.prototype-billing .deduct-val{color:var(--danger);font-family:SF Mono,Fira Code,monospace;font-size:12px;font-weight:600}.prototype-billing .recharge-val{color:var(--primary-dark);font-family:SF Mono,Fira Code,monospace;font-size:12px;font-weight:600}.prototype-billing .pagination{gap:4px;display:flex}.prototype-billing .page-btn{border:1px solid var(--border);width:30px;height:30px;color:var(--text-secondary);background:0 0;border-radius:6px;justify-content:center;align-items:center;font-size:12px;transition:all .2s;display:flex}.prototype-billing .page-btn:hover{border-color:var(--primary);color:var(--primary)}.prototype-billing .page-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.prototype-billing .rules-card{background:var(--muted-bg);border-radius:12px;margin-top:20px;padding:16px 20px;animation:.4s .2s backwards proto-fade-in-up}.prototype-billing .rules-title{color:var(--text);align-items:center;gap:6px;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.prototype-billing .rules-list{flex-direction:column;gap:6px;display:flex}.prototype-billing .rule-item{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.prototype-billing .rule-dot{background:var(--text-muted);border-radius:50%;flex-shrink:0;width:4px;height:4px}.shared-state{justify-content:center;align-items:center;min-height:320px;padding:32px 20px;display:flex}.shared-state-card{text-align:center;background:#fff;border:1px solid #0f172a14;border-radius:18px;width:min(420px,100%);padding:28px 24px;box-shadow:0 16px 40px #0f172a14}.shared-state-title{color:#1f2937;margin-bottom:10px;font-size:18px;font-weight:700}.shared-state-message{color:#6b7280;font-size:14px;line-height:1.6}.shared-state-action{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;margin-top:18px;padding:10px 18px;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.shared-state-action:hover{background:#1d4ed8;transform:translateY(-1px)}.shared-state-loading{flex-direction:column;gap:14px}.shared-spinner{border:4px solid #2563eb29;border-top-color:#2563eb;border-radius:50%;width:40px;height:40px;animation:.9s linear infinite shared-spin}.shared-state-error .shared-state-card{border-color:#dc26261f}.shared-empty-state{color:#9ca3af;justify-content:center;align-items:center;min-height:48px;font-size:13px;display:inline-flex}@keyframes shared-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.prototype-alerts .alerts-summary-bar,.prototype-activation-radar .chart-section,.prototype-store-activation-rate .trend-card,.prototype-activation-radar .metric-card,.prototype-device-management .detail-card,.prototype-device-management .detail-extra-card{border-radius:var(--radius-2xl);box-shadow:inset 0 0 0 1px #ffffffb8, var(--shadow-sm);background:linear-gradient(#fffffff5 0%,#f9fafdeb 100%);border:none}.prototype-alerts .alerts-summary-bar{align-items:flex-start;gap:14px;margin-bottom:24px;padding:20px 24px}.prototype-alerts .alerts-summary-bar.is-warning{background:radial-gradient(circle at 100% 0,#db7a2229,#0000 28%),linear-gradient(#fffaf4fa 0%,#fffffff0 100%)}.prototype-alerts .alerts-summary-bar.is-clear{background:radial-gradient(circle at 100% 0,#0070eb24,#0000 30%),linear-gradient(#f6fafffa 0%,#fffffff0 100%)}.prototype-alerts .alerts-summary-icon{background:#db7a221f;border-radius:14px;width:42px;height:42px}.prototype-alerts .alerts-summary-bar.is-clear .alerts-summary-icon{background:var(--primary-a10)}.prototype-alerts .alerts-summary-highlight{letter-spacing:-.04em;font-size:clamp(34px,4vw,46px);font-weight:700}.prototype-alerts .alerts-summary-meta{margin-top:6px;display:inline-block}.prototype-alerts .filters,.prototype-device-management .filters{border-radius:calc(var(--radius-2xl) - 4px);background:#f3f5f9d1;margin-bottom:22px;padding:14px}.prototype-alerts .filter-group,.prototype-device-management .filter-group{background:#ffffffbd;border-radius:18px;gap:4px;padding:4px;display:flex;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-alerts .filter-btn,.prototype-device-management .filter-btn{min-height:40px;color:var(--text-secondary);background:0 0;border:none;border-radius:14px;padding:8px 16px;font-weight:600;transition:background .2s,color .2s,box-shadow .2s}.prototype-alerts .filter-btn:hover,.prototype-device-management .filter-btn:hover{background:var(--primary-a06);color:var(--primary)}.prototype-alerts .filter-btn.active,.prototype-device-management .filter-btn.active{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);color:#fff;box-shadow:var(--shadow-primary-sm)}.prototype-alerts .alerts-date-filter{background:var(--surface-container-high);border:none;min-height:40px;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-alerts .alerts-date-shortcut-btn,.prototype-alerts .alerts-custom-range-trigger{min-height:38px}.prototype-alerts .alerts-date-shortcut-btn{border-right:1px solid #c1c6d738}.prototype-alerts .alerts-custom-range-trigger:before{background:#c1c6d738}.prototype-alerts .alerts-date-panel{border-radius:var(--radius-2xl);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#ffffffe6;border:none}.prototype-alerts .alerts-date-status-bar{border-top:1px solid #c1c6d72e}.prototype-alerts tbody tr.unhandled td{background:#db7a2214}.prototype-alerts .type-badge,.prototype-alerts .status-badge,.prototype-device-management .s-badge,.prototype-store-activation-rate .trend-card-rate{border-radius:999px;padding:6px 12px;font-weight:600}.prototype-alerts .handle-btn,.prototype-device-management .detail-link,.prototype-device-management .photo-single-dl{background:var(--primary-a10);color:var(--primary-dark);box-shadow:inset 0 0 0 1px var(--primary-a10);border:none;border-radius:14px}.prototype-alerts .handle-btn:hover,.prototype-device-management .detail-link:hover,.prototype-device-management .photo-single-dl:hover{background:var(--primary-a16);color:var(--primary)}.prototype-alerts .modal-mask,.prototype-device-management .confirm-overlay,.prototype-device-management .lightbox{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.prototype-alerts .modal-header{border-bottom:none;padding-bottom:0}.prototype-alerts .modal-info-row,.prototype-alerts .alerts-detail-record{background:#f3f5f9c2;border:none;border-radius:18px}.prototype-alerts .modal-textarea{background:var(--surface-container-high);border:none;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-alerts .modal-textarea:focus{box-shadow:inset 0 0 0 1px var(--primary-a16), 0 0 0 4px var(--primary-a10)}.prototype-inbound .upload-shell,.prototype-outbound .upload-shell{background:radial-gradient(circle at 100% 0,#0070eb1f,#0000 28%),linear-gradient(#f7fafff5 0%,#fffffffa 180px 100%)}.prototype-inbound .upload-shell-close,.prototype-outbound .upload-shell-close,.prototype-inbound .upload-action-secondary,.prototype-outbound .upload-action-secondary,.prototype-inbound .inbound-import-footer .btn-cancel,.prototype-outbound .inbound-import-footer .btn-cancel,.prototype-inbound .panel-card,.prototype-outbound .panel-card,.prototype-inbound .upload-side-card,.prototype-outbound .upload-side-card,.prototype-inbound .success-file-chip,.prototype-outbound .success-file-chip{box-shadow:inset 0 0 0 1px #c1c6d72e, var(--shadow-sm);border:none}.prototype-inbound .upload-dropzone,.prototype-outbound .upload-dropzone,.prototype-inbound .import-left-panel.is-idle,.prototype-outbound .import-left-panel.is-idle{border-color:var(--primary-a24);background:linear-gradient(180deg, #f7fafffa, #fffffffa), repeating-linear-gradient(180deg, transparent, transparent 30px, var(--primary-a06) 30px, var(--primary-a06) 31px)}.prototype-inbound .upload-dropzone:hover,.prototype-outbound .upload-dropzone:hover,.prototype-inbound .upload-dropzone.dragging,.prototype-outbound .upload-dropzone.dragging,.prototype-inbound .import-left-panel.is-idle:hover,.prototype-inbound .import-left-panel.is-idle.dragging,.prototype-outbound .import-left-panel.is-idle:hover,.prototype-outbound .import-left-panel.is-idle.dragging{border-color:var(--primary-a40);box-shadow:var(--shadow-md)}.prototype-inbound .upload-dropzone-icon,.prototype-outbound .upload-dropzone-icon,.prototype-inbound .import-left-panel.is-idle .upload-zone-icon,.prototype-outbound .import-left-panel.is-idle .upload-zone-icon,.prototype-inbound .success-icon,.prototype-outbound .success-icon{background:var(--primary-a10);color:var(--primary);box-shadow:none}.prototype-inbound .upload-side-card-accent,.prototype-outbound .upload-side-card-accent,.prototype-inbound .options-card,.prototype-outbound .options-card{background:radial-gradient(circle at 100% 0,#0070eb1f,#0000 30%),linear-gradient(#fffffffa 0%,#f6f9fff0 100%)}.prototype-inbound .upload-side-kicker,.prototype-outbound .upload-side-kicker,.prototype-inbound .panel-tag,.prototype-outbound .panel-tag{background:var(--primary-a10);color:var(--primary-dark)}.prototype-inbound .upload-action-primary,.prototype-outbound .upload-action-primary,.prototype-inbound .inbound-import-footer .btn-confirm,.prototype-outbound .inbound-import-footer .btn-confirm{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-sm)}.prototype-inbound .prefix-hint-banner,.prototype-outbound .prefix-hint-banner,.prototype-inbound .download-banner,.prototype-outbound .download-banner{border:none;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-inbound .option-select,.prototype-outbound .option-select,.prototype-inbound .option-custom-row input,.prototype-outbound .option-custom-row input{background:var(--surface-container-high);border:none;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-inbound .option-select:focus,.prototype-outbound .option-select:focus,.prototype-inbound .option-custom-row input:focus,.prototype-outbound .option-custom-row input:focus{box-shadow:inset 0 0 0 1px var(--primary-a16), 0 0 0 4px var(--primary-a10)}.prototype-device-management .detail-cards{gap:18px}.prototype-device-management .detail-card-header,.prototype-device-management .extra-header{border-bottom:none}.prototype-device-management .detail-card-header:before,.prototype-device-management .extra-header:before{border-radius:999px;width:10px;height:10px}.prototype-device-management .detail-row+.detail-row,.prototype-device-management .cancel-so-footer{border-top:none}.prototype-device-management .countdown-display{border-radius:20px}.prototype-device-management .cd-icon{border-radius:18px}.prototype-device-management .cd-pending .cd-icon{color:var(--warning-dark)}.prototype-device-management .cd-overdue .cd-icon{color:var(--danger)}.prototype-device-management .cd-verified .cd-icon{color:var(--primary)}.prototype-device-management .cd-none .cd-icon,.prototype-device-management .cd-in .cd-icon{color:var(--text-muted)}.prototype-device-management .photo-thumb-single,.prototype-device-management .lightbox-content{border-radius:var(--radius-2xl);box-shadow:inset 0 0 0 1px #ffffffb8, var(--shadow-md);border:none}.prototype-device-management .photo-zoom-hint,.prototype-device-management .lightbox-close,.prototype-device-management .no-photo{background:#f3f5f9c2;border:none}.prototype-device-management .photo-preview-single,.prototype-device-management .lightbox-img{color:var(--text-muted)}.prototype-device-management .filters{align-items:center}.prototype-device-management .filter-search{background:var(--surface-container-high);border:none;min-height:40px;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-device-management .filter-search:focus-within{background:var(--surface-bright);box-shadow:inset 0 0 0 1px var(--primary-a16), 0 0 0 4px var(--primary-a10)}.prototype-device-management .s-badge{padding:6px 12px}.prototype-device-management tbody tr.row-overdue td{background:#d2455414}.prototype-activation-radar .period-switcher,.prototype-store-activation-rate .top-controls{border-radius:calc(var(--radius-2xl) - 4px);background:#f3f5f9d1;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:16px 18px;display:flex}.prototype-activation-radar .period-arrow,.prototype-store-activation-rate .period-arrow,.prototype-store-activation-rate .store-filter-btn{background:#ffffffc7;border:none;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-activation-radar .period-arrow:hover,.prototype-store-activation-rate .period-arrow:hover,.prototype-store-activation-rate .store-filter-btn:hover{background:var(--surface-bright);color:var(--primary)}.prototype-activation-radar .metric-card,.prototype-store-activation-rate .trend-card{border-radius:var(--radius-2xl)}.prototype-activation-radar .metric-card:before{border-radius:inherit;height:auto;box-shadow:inset 0 0 0 1px var(--primary-a16);background:0 0;inset:0}.prototype-activation-radar .metric-card:hover,.prototype-store-activation-rate .trend-card:hover{box-shadow:inset 0 0 0 1px #fffc, var(--shadow-md);transform:translateY(-3px)}.prototype-activation-radar .metric-card-label,.prototype-store-activation-rate .trend-card-name{letter-spacing:.06em}.prototype-activation-radar .metric-card-value{letter-spacing:-.04em;font-size:clamp(30px,3.2vw,40px)}.prototype-activation-radar .chart-header{margin-bottom:18px}.prototype-store-activation-rate .store-dropdown{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow-lg);background:#ffffffeb;border:none;border-radius:20px}.prototype-store-activation-rate .store-dropdown-header{padding:14px 18px}.prototype-store-activation-rate .store-option:hover{background:var(--primary-a06)}.prototype-store-activation-rate .store-checkbox{border-color:#70798f80}.prototype-store-management .store-name-cell{font-weight:600}.prototype-store-management .form-label{letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px}.prototype-store-management .form-input,.prototype-store-management .form-select{background:var(--surface-container-high);border:none;border-radius:14px;transition:box-shadow .2s,background .2s;box-shadow:inset 0 0 0 1px #c1c6d72e}.prototype-store-management .form-input:focus,.prototype-store-management .form-select:focus{background:var(--surface-bright);box-shadow:inset 0 0 0 1px var(--primary-a16), 0 0 0 4px var(--primary-a10)}.prototype-alerts .alerts-summary-bar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.prototype-alerts .alerts-summary-highlight{letter-spacing:-.04em}.prototype-alerts .alerts-filter-row{background:#f3f5f9c7;border-radius:20px;padding:14px 16px;box-shadow:inset 0 0 0 1px #ffffff9e}.prototype-alerts .modal-header,.prototype-alerts .modal-body,.prototype-alerts .modal-footer{background:0 0}.prototype-alerts .alerts-modal-subtitle{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.prototype-alerts .alerts-detail-row+.alerts-detail-row{margin-top:10px}.prototype-alerts .alerts-detail-key{letter-spacing:.05em;text-transform:uppercase}.prototype-alerts .alerts-detail-value{color:var(--text)}.prototype-inbound .upload-modal,.prototype-outbound .upload-modal{box-shadow:var(--shadow-modal);background:#fffffff5;border-radius:28px}.prototype-inbound .upload-shell-title,.prototype-outbound .upload-shell-title{color:var(--text);letter-spacing:-.04em}.prototype-inbound .upload-shell-subtitle,.prototype-outbound .upload-shell-subtitle,.prototype-inbound .upload-side-card p,.prototype-outbound .upload-side-card p,.prototype-inbound .panel-body,.prototype-outbound .panel-body,.prototype-inbound .checklist li,.prototype-outbound .checklist li{color:var(--text-secondary)}.prototype-inbound .upload-shell-close,.prototype-outbound .upload-shell-close{color:var(--text-secondary);border-radius:14px}.prototype-inbound .upload-dropzone,.prototype-outbound .upload-dropzone{border-radius:30px}.prototype-inbound .upload-dropzone-copy strong,.prototype-outbound .upload-dropzone-copy strong,.prototype-inbound .upload-side-heading,.prototype-outbound .upload-side-heading,.prototype-inbound .upload-zone-label,.prototype-outbound .upload-zone-label,.prototype-inbound .success-title,.prototype-outbound .success-title,.prototype-inbound .success-file-name,.prototype-outbound .success-file-name,.prototype-inbound .option-heading,.prototype-outbound .option-heading{color:var(--text)}.prototype-inbound .upload-dropzone-copy span,.prototype-outbound .upload-dropzone-copy span,.prototype-inbound .upload-file-meta,.prototype-outbound .upload-file-meta,.prototype-inbound .option-description,.prototype-outbound .option-description,.prototype-inbound .upload-zone-hint,.prototype-outbound .upload-zone-hint{color:var(--text-secondary)}.prototype-inbound .upload-file-pill,.prototype-outbound .upload-file-pill{background:#f3f5f9c2}.prototype-inbound .upload-error-message,.prototype-outbound .upload-error-message,.prototype-inbound .error-item,.prototype-outbound .error-item,.prototype-inbound .import-left-panel.is-error,.prototype-outbound .import-left-panel.is-error{border:none}.prototype-inbound .prefix-hint-banner,.prototype-outbound .prefix-hint-banner{background:#fff5e9db}.prototype-inbound .download-banner,.prototype-outbound .download-banner{background:#edf4ffdb}.prototype-inbound .download-banner span,.prototype-outbound .download-banner span,.prototype-inbound .download-banner button,.prototype-outbound .download-banner button,.prototype-inbound .download-banner a,.prototype-outbound .download-banner a{color:var(--text-secondary)}.prototype-alerts .modal-mask{background:#131a292e}.prototype-alerts .modal-mask .modal{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow-modal);background:#fffffff0;border-radius:28px}.prototype-alerts .modal-title{letter-spacing:-.02em}.prototype-alerts .modal-label{letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px}.prototype-alerts .alerts-help-icon{background:#f3f5f9e6;border:none}.prototype-alerts .alerts-action-link{text-underline-offset:3px;text-decoration:underline}.prototype-device-management .confirm-dialog{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow-modal);background:#fffffff0;border-radius:28px}.prototype-device-management .confirm-icon{color:var(--warning-dark)}.prototype-device-management .confirm-cancel-btn{color:var(--text-secondary);background:#f3f5f9eb}.prototype-device-management .confirm-cancel-btn:hover{background:#e4e8f0f5}.prototype-device-management .confirm-danger-btn{color:var(--danger);background:#d245541f;box-shadow:inset 0 0 0 1px #d2455429}.prototype-device-management .confirm-danger-btn:hover{background:#d2455429}.prototype-device-management .detail-status-bar{border-radius:22px}.prototype-device-management .detail-stepper{background:#ffffff9e;border-radius:20px;padding:14px 18px 10px;position:relative;box-shadow:inset 0 0 0 1px #fff9}.prototype-device-management .detail-card-header,.prototype-device-management .extra-title{letter-spacing:.02em}.prototype-device-management .detail-label{letter-spacing:.04em;text-transform:uppercase;font-size:12px}.prototype-device-management .detail-value.warn,.prototype-device-management .detail-value.danger{border-radius:999px;padding:6px 10px}.prototype-device-management .cancel-so-link{text-decoration-thickness:1px}.prototype-activation-radar .period-label,.prototype-store-activation-rate .period-label{letter-spacing:-.03em;font-size:24px}.prototype-activation-radar .period-switcher,.prototype-store-activation-rate .period-switcher{background:#ffffffc2;border-radius:22px;padding:12px 14px;box-shadow:inset 0 0 0 1px #ffffffad,0 10px 24px #1a1c1d0a}.prototype-activation-radar .period-dates,.prototype-store-activation-rate .period-dates{color:var(--text-secondary)}.prototype-activation-radar .chart-section,.prototype-store-activation-rate .store-dropdown,.prototype-store-activation-rate .trend-card{box-shadow:inset 0 0 0 1px #ffffffc7, var(--shadow-md)}.prototype-activation-radar .chart-title,.prototype-store-activation-rate .trend-title{letter-spacing:-.02em}.prototype-store-activation-rate .store-dropdown-header{background:#f8faffb8}.prototype-store-activation-rate .store-dropdown-header span{letter-spacing:.06em;text-transform:uppercase}.prototype-store-activation-rate .selected-count{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-sm)}.prototype-store-activation-rate .store-option{padding:10px 18px}.prototype-store-activation-rate .trend-chart{margin-top:8px}.prototype-store-management .top-bar{align-items:center}.prototype-store-management .table-section{margin-top:6px}.prototype-store-management .table-footer{padding-top:0}.prototype-store-management .modal{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#fffffff0;border-radius:28px;width:min(480px,92vw)}.prototype-store-management .modal-title{letter-spacing:-.02em}.prototype-store-management .modal-btns{margin-top:28px}.prototype-store-management .store-range-hint{margin-top:-6px}.shared-state-card{box-shadow:inset 0 0 0 1px #ffffffc7, var(--shadow-md);background:#fffffff0;border:none;border-radius:28px}.shared-state-title{color:var(--text);letter-spacing:-.02em}.shared-state-message,.shared-empty-state{color:var(--text-secondary)}.shared-state-action{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-sm);border-radius:14px}.shared-state-action:hover{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-md)}.shared-spinner{border:4px solid var(--primary-a16);border-top-color:var(--primary)}.prototype-verification-status .page-desc{margin-bottom:18px}.prototype-verification-status .filters{position:relative;box-shadow:inset 0 0 0 1px #ffffff9e,0 10px 24px #1a1c1d0a}.prototype-verification-status .filter-search{min-width:220px}.prototype-verification-status .table-section{margin-top:6px}.prototype-inbound .top-bar,.prototype-outbound .top-bar,.prototype-store-management .top-bar{align-items:center}.prototype-inbound .top-bar .btn-primary,.prototype-outbound .top-bar .btn-primary,.prototype-store-management .top-bar .btn-primary{justify-content:center;min-width:144px}.prototype-inbound .top-bar .search-box,.prototype-outbound .top-bar .search-box,.prototype-store-management .top-bar .search-box{min-width:240px}.prototype-inbound .qr-btn{border-radius:12px}.prototype-inbound .selection-batch-bar,.prototype-outbound .selection-batch-bar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#131a29e0;border-radius:18px;box-shadow:inset 0 0 0 1px #ffffff14,0 18px 40px #131a293d}.prototype-inbound .selection-batch-text strong,.prototype-outbound .selection-batch-text strong{color:#fff}.prototype-inbound .selection-batch-action,.prototype-outbound .selection-batch-action-warning{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-sm)}.prototype-outbound .row-so-btn{color:var(--warning-dark);background:#db7a221f;border:none;border-radius:12px;box-shadow:inset 0 0 0 1px #db7a222e}.prototype-outbound .row-so-btn:hover{color:var(--warning-dark);background:#db7a2229}.prototype-outbound .confirm-modal{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);width:min(420px,92vw);box-shadow:inset 0 0 0 1px #ffffffd1, var(--shadow-modal);background:#fffffff0;border-radius:28px}.prototype-outbound .confirm-modal .modal-body strong{color:var(--warning-dark)}.prototype-outbound .modal-confirm{background:linear-gradient(135deg,#db7a22 0%,#f09a46 100%);box-shadow:0 14px 28px #db7a2233}.prototype-outbound .modal-confirm:hover{background:linear-gradient(135deg,#db7a22 0%,#f09a46 100%)}.prototype-alerts .alerts-summary-bar{position:relative;overflow:hidden}.prototype-alerts .alerts-summary-bar:before{content:"";background:#db7a22b8;width:4px;position:absolute;inset:0 auto 0 0}.prototype-alerts .alerts-summary-bar.is-clear:before{background:#0058bcb8}.prototype-alerts .alerts-filter-row{position:relative;overflow:hidden}.prototype-alerts .alerts-filter-controls{gap:12px}.prototype-alerts .alerts-reset-btn{min-height:36px;font-weight:600}.prototype-alerts .modal-info-row,.prototype-alerts .alerts-detail-record{box-shadow:inset 0 0 0 1px #c1c6d724}.prototype-device-management .page-tabs{background:#f3f5f9d1;border-bottom:none;border-radius:22px;gap:6px;margin-bottom:24px;padding:6px;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff9e,0 10px 24px #1a1c1d0a}.prototype-device-management .page-tab{border-radius:16px;min-height:42px;margin-bottom:0;padding:10px 20px;font-weight:600}.prototype-device-management .page-tab.active{color:#fff;background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-sm);border-bottom-color:#0000}.prototype-device-management .query-section{flex-direction:column;gap:18px;display:flex}.prototype-device-management .search-hero{box-shadow:inset 0 0 0 1px #ffffffc7, var(--shadow-md);background:radial-gradient(circle at 100% 0,#0070eb1f,#0000 30%),linear-gradient(#f8fafff5 0%,#fffffff0 100%);border-radius:28px;padding:34px 28px 28px;position:relative}.prototype-device-management .search-hero:before{content:"Device Lookup";background:var(--primary-a10);color:var(--primary-dark);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;margin-bottom:14px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.prototype-device-management .search-hero-title{letter-spacing:-.04em;font-size:28px}.prototype-device-management .search-hero-sub{max-width:560px;margin:0 auto 24px;line-height:1.7}.prototype-device-management .search-bar{background:#ffffffc7;border-radius:22px;padding:8px;box-shadow:inset 0 0 0 1px #ffffffb3,0 10px 24px #1a1c1d0a}.prototype-device-management .search-bar-input{background:#f3f5f9c7;border:none;box-shadow:inset 0 0 0 1px #c1c6d729}.prototype-device-management .search-bar-input:focus{box-shadow:inset 0 0 0 1px var(--primary-a16), 0 0 0 4px var(--primary-a10)}.prototype-device-management .search-bar-btn{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-sm)}.prototype-device-management .search-bar-btn:hover{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-container) 100%);box-shadow:var(--shadow-primary-md)}.prototype-device-management .device-empty{min-height:132px;box-shadow:inset 0 0 0 1px #ffffffc7, var(--shadow-sm);background:#f8faffe6;border-radius:24px;justify-content:center;align-items:center;display:flex}.prototype-device-management .list-section .filters{margin-bottom:18px;box-shadow:inset 0 0 0 1px #ffffff9e,0 10px 24px #1a1c1d0a}.prototype-activation-radar .metric-cards{grid-template-columns:repeat(12,minmax(0,1fr))}.prototype-activation-radar .metric-card{grid-column:span 3;min-height:168px}.prototype-activation-radar .metric-card-feature{background:radial-gradient(circle at 100% 0,#0070eb24,#0000 32%),linear-gradient(#f8fafff5 0%,#fffffff0 100%);grid-column:span 6}.prototype-activation-radar .metric-card-feature .metric-card-label{letter-spacing:.12em;text-transform:uppercase;font-size:11px}.prototype-activation-radar .metric-card-feature .metric-card-value{letter-spacing:-.05em;font-size:clamp(40px,5vw,56px)}.prototype-activation-radar .metric-card-feature .metric-card-sub{max-width:240px;margin-top:auto}.prototype-activation-radar .metric-card-positive .metric-card-label{color:var(--primary-dark)}.prototype-activation-radar .chart-section{position:relative;overflow:hidden}.prototype-store-activation-rate .top-controls{align-items:center}.prototype-store-activation-rate .table-section{margin-bottom:20px}.prototype-store-activation-rate .trend-title{letter-spacing:-.02em}.prototype-store-activation-rate .trend-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.prototype-store-activation-rate .trend-card{position:relative;overflow:hidden}.prototype-store-activation-rate .trend-card:before{content:"";background:var(--primary-a16);border-radius:999px;width:8px;height:8px;position:absolute;top:18px;right:18px}.prototype-store-activation-rate .trend-card-warn:before{background:#db7a2247}.prototype-store-activation-rate .trend-card-good:before{background:var(--primary-a24)}.prototype-store-activation-rate .trend-card-header{align-items:flex-start}.prototype-store-management .top-bar{justify-content:space-between}.prototype-store-management .table-info{letter-spacing:.05em;text-transform:uppercase;font-size:12px}.prototype-store-management .form-group{margin-bottom:20px}.prototype-store-management .modal-title{margin-bottom:22px}@media (width<=960px){.prototype-activation-radar .metric-card,.prototype-activation-radar .metric-card-feature{grid-column:span 6}}@media (width<=767px){.prototype-device-management .page-tabs{width:100%;display:flex}.prototype-device-management .page-tab{text-align:center;flex:1;justify-content:center}.prototype-device-management .search-hero{padding:24px 18px 20px}.prototype-device-management .search-hero-title{font-size:22px}.prototype-device-management .search-bar{flex-direction:column;max-width:none}.prototype-device-management .search-bar-btn{justify-content:center;width:100%}.prototype-activation-radar .metric-card,.prototype-activation-radar .metric-card-feature{grid-column:span 12;min-height:150px}.prototype-inbound .top-bar .btn-primary,.prototype-outbound .top-bar .btn-primary,.prototype-store-management .top-bar .btn-primary{min-width:100%}}
