.brand-logo[data-v-ffb77565]{display:inline-flex;align-items:center;gap:12px;min-width:0}.brand-mark[data-v-ffb77565]{width:40px;height:40px;display:block;flex-shrink:0;image-rendering:pixelated}.brand-copy[data-v-ffb77565]{display:flex;flex-direction:column;gap:7px;min-width:0}.brand-name[data-v-ffb77565]{color:var(--nb-ink);font-size:18px;font-weight:800;letter-spacing:.02em;line-height:1;white-space:nowrap}.brand-tagline[data-v-ffb77565]{display:inline-flex;align-items:center;width:fit-content;min-height:26px;padding:0 10px;color:var(--nb-ink);font-size:12px;font-weight:900;letter-spacing:.16em;line-height:1;border:2px solid var(--nb-ink);background:var(--nb-yellow);box-shadow:2px 2px #111;white-space:nowrap}.brand-logo--page[data-v-ffb77565]{gap:16px}.brand-logo--page .brand-mark[data-v-ffb77565]{width:54px;height:54px}.brand-logo--page .brand-name[data-v-ffb77565]{font-size:22px}.brand-logo--page .brand-tagline[data-v-ffb77565]{min-height:30px;padding:0 12px;font-size:13px}.brand-logo--footer[data-v-ffb77565]{align-items:flex-start;gap:14px}.brand-logo--footer .brand-mark[data-v-ffb77565]{width:52px;height:52px}.brand-logo--footer .brand-name[data-v-ffb77565]{font-size:24px;color:#fff}.brand-logo--footer .brand-tagline[data-v-ffb77565]{color:var(--nb-ink)}@media (max-width: 768px){.brand-mark[data-v-ffb77565]{width:34px;height:34px}.brand-name[data-v-ffb77565]{font-size:16px}.brand-tagline[data-v-ffb77565]{min-height:24px;padding:0 8px;font-size:10px;border-width:2px;box-shadow:1px 1px #111}.brand-logo--page[data-v-ffb77565]{gap:12px}.brand-logo--page .brand-mark[data-v-ffb77565]{width:42px;height:42px}.brand-logo--page .brand-name[data-v-ffb77565]{font-size:18px}}@media (max-width: 480px){.brand-name[data-v-ffb77565]{font-size:15px;letter-spacing:.02em}}.navbar[data-v-6457918f]{background:var(--nb-paper);border-bottom:var(--nb-border-width) solid var(--nb-ink);position:sticky;top:0;z-index:1000}.nav-container[data-v-6457918f]{max-width:var(--content-max-width);margin:0 auto;padding:0 24px;display:flex;align-items:center;min-height:72px;gap:20px}.logo[data-v-6457918f]{display:flex;align-items:center;text-decoration:none;flex-shrink:0;padding:0}.nav-links[data-v-6457918f]{display:flex;align-items:center;gap:8px;flex:1;flex-wrap:wrap}.nav-links a[data-v-6457918f]{display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:700;min-height:38px;padding:0 12px;line-height:1;border:var(--nb-border-width) solid transparent;box-shadow:none;transition:color .15s ease,background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.nav-links a[data-v-6457918f]:hover{color:var(--nb-ink);background:#f4f4f4}.nav-links a.is-active[data-v-6457918f]{color:var(--nb-ink);font-weight:900;background:var(--nb-yellow);border-color:var(--nb-ink);box-shadow:var(--nb-shadow-soft)}.nav-actions[data-v-6457918f]{display:flex;align-items:center;gap:10px;flex-shrink:0}.btn-create[data-v-6457918f]{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 16px;background:var(--nb-yellow);color:var(--nb-ink);border:var(--nb-border-width) solid var(--nb-ink);box-shadow:var(--nb-shadow-soft);font-size:13px;font-weight:800;text-decoration:none;transition:background-color .15s ease}.btn-create[data-v-6457918f]:hover{background:var(--color-primary-hover)}.btn-login[data-v-6457918f]{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 16px;color:var(--text-secondary);border:var(--nb-border-width) solid var(--nb-ink);background:var(--tone-paper-soft);box-shadow:var(--nb-shadow-soft);font-size:13px;font-weight:800;text-decoration:none;transition:background-color .15s ease,color .15s ease}.btn-login[data-v-6457918f]:hover{color:var(--nb-ink);background:var(--nb-muted)}.btn-logout[data-v-6457918f]{background:var(--tone-paper-soft);cursor:pointer}.mobile-menu-btn[data-v-6457918f]{display:none;align-items:center;justify-content:center;width:44px;height:44px;background:var(--tone-paper-soft);border:var(--nb-border-width) solid var(--nb-ink);box-shadow:3px 3px #000;cursor:pointer;padding:0;color:var(--nb-text-primary)}.mobile-menu-btn[data-v-6457918f]:hover{background:var(--nb-muted)}@media (max-width: 768px){.nav-container[data-v-6457918f]{min-height:72px;gap:0}.logo[data-v-6457918f]{padding:4px 0}.mobile-menu-btn[data-v-6457918f]{display:flex;margin-left:auto}.nav-actions[data-v-6457918f]{display:none}.nav-links[data-v-6457918f]{display:none;position:fixed;top:72px;left:12px;right:12px;background:var(--nb-paper);flex-direction:column;padding:14px;gap:8px;border:var(--nb-border-width) solid var(--nb-ink);box-shadow:var(--nb-shadow-strong)}.nav-links.active[data-v-6457918f]{display:flex}.nav-links a[data-v-6457918f]{width:100%;justify-content:center;min-height:42px;padding:0 12px;font-size:15px;border:var(--nb-border-width) solid var(--nb-ink);background:#fff;box-shadow:var(--nb-shadow-soft)}.nav-links a.is-active[data-v-6457918f]{background:var(--nb-yellow)}}.site-footer[data-v-bfed8eab]{background:#1a1a1a;color:#e0e0e0;padding:60px 0 0;margin-top:80px;border-top:3px solid var(--nb-ink)}.footer-container[data-v-bfed8eab]{max-width:1200px;margin:0 auto;padding:0 24px}.footer-content[data-v-bfed8eab]{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px;padding-bottom:48px;border-bottom:1px solid #333}.footer-section[data-v-bfed8eab]{display:flex;flex-direction:column;gap:16px}.footer-brand[data-v-bfed8eab]{gap:20px}.footer-desc[data-v-bfed8eab]{color:#999;font-size:14px;line-height:1.6;margin:0}.footer-title[data-v-bfed8eab]{font-size:16px;font-weight:700;color:#fff;margin:0 0 12px}.footer-nav[data-v-bfed8eab]{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.footer-nav span[data-v-bfed8eab]{color:#999;font-size:14px}.footer-nav a[data-v-bfed8eab]{color:#999;text-decoration:none;font-size:14px;transition:color .2s}.footer-nav a[data-v-bfed8eab]:hover{color:var(--nb-yellow)}.footer-business[data-v-bfed8eab]{display:flex;flex-direction:column;gap:12px}.footer-bottom[data-v-bfed8eab]{display:flex;justify-content:space-between;align-items:center;padding:24px 0;font-size:13px;color:#666;flex-wrap:wrap;gap:16px}.footer-copyright p[data-v-bfed8eab]{margin:0}.footer-beian[data-v-bfed8eab]{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.footer-beian p[data-v-bfed8eab]{margin:0;display:flex;align-items:center;gap:6px}.footer-beian a[data-v-bfed8eab]{color:#666;text-decoration:none;display:flex;align-items:center;gap:6px;transition:color .2s}.footer-beian a[data-v-bfed8eab]:hover{color:#999}.beian-icon[data-v-bfed8eab]{width:16px;height:16px;vertical-align:middle}.back-to-top[data-v-bfed8eab]{position:fixed;right:24px;bottom:24px;width:56px;height:56px;display:inline-flex;align-items:center;justify-content:center;border:3px solid var(--nb-ink);background:#fff;border-radius:0;box-shadow:var(--nb-shadow-card);color:var(--nb-ink);cursor:pointer;z-index:1100}.back-to-top[data-v-bfed8eab]:hover{background:var(--nb-yellow)}.back-to-top__arrow[data-v-bfed8eab]{font-size:28px;font-weight:900;line-height:1}@media (max-width: 968px){.footer-content[data-v-bfed8eab]{grid-template-columns:1fr 1fr;gap:32px}.footer-brand[data-v-bfed8eab]{grid-column:1 / -1}}@media (max-width: 768px){.site-footer[data-v-bfed8eab]{padding:40px 0 0;margin-top:60px}.footer-content[data-v-bfed8eab]{grid-template-columns:1fr;gap:32px;padding-bottom:32px}.footer-bottom[data-v-bfed8eab]{flex-direction:column;align-items:flex-start;gap:12px}.footer-beian[data-v-bfed8eab]{flex-direction:column;align-items:flex-start;gap:8px}.back-to-top[data-v-bfed8eab]{right:16px;bottom:16px;width:52px;height:52px}.back-to-top__arrow[data-v-bfed8eab]{font-size:24px}}.glx-public-shell[data-v-80d6e9db]{min-height:100vh;display:flex;flex-direction:column}.glx-public-shell__main[data-v-80d6e9db]{flex:1;width:100%}#app{min-height:100vh}.main-content{position:relative;z-index:1}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}:root{--nb-ink: #111111;--nb-paper: #ffffff;--nb-surface: #ffffff;--nb-surface-soft: #ffffff;--nb-muted: #f5f5f5;--nb-muted-2: #ebebeb;--nb-yellow: #ffcb45;--nb-blue: #5ea8ff;--nb-green: #67c23a;--nb-coral: #f56c6c;--nb-orange: #e6a23c;--nb-lavender: #e9e2ff;--nb-text: #111111;--nb-text-primary: #111111;--nb-text-secondary: #4d4d4d;--nb-text-muted: #7a7a7a;--text-secondary: #4d4d4d;--text-tertiary: #7a7a7a;--tone-paper-soft: #ffffff;--tone-yellow-soft: #fff3c4;--tone-blue-soft: #dcebff;--tone-green-soft: #eef8e7;--tone-coral-soft: #ffe6e6;--nb-border-width: 2px;--nb-shadow-soft: 2px 2px 0 #111111;--nb-shadow-strong: 4px 4px 0 #111111;--nb-shadow-card: 3px 3px 0 #111111;--navbar-height: 72px;--content-max-width: 1200px;--accent-primary: var(--nb-yellow);--color-primary: var(--accent-primary);--color-primary-hover: #f0bf37;--color-accent: var(--nb-blue);--color-accent-hover: #4b98f2;--color-bg: var(--nb-paper);--color-bg-subtle: var(--nb-muted);--color-bg-muted: var(--nb-muted-2);--color-border: #111111;--color-border-hover: #111111;--color-text-primary: var(--nb-text);--color-text-secondary: var(--nb-text-secondary);--color-text-muted: var(--nb-text-muted);--color-success: var(--nb-green);--color-danger: var(--nb-coral);--shadow-sm: var(--nb-shadow-soft);--shadow-md: var(--nb-shadow-card);--shadow-lg: var(--nb-shadow-strong);--shadow-card: var(--nb-shadow-card);--shadow-modal: var(--nb-shadow-strong);--radius-sm: 0;--radius-md: 0;--radius-lg: 0}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:PingFang SC,Hiragino Sans GB,Noto Sans SC,Segoe UI,sans-serif;color:var(--nb-text);line-height:1.6;-webkit-font-smoothing:antialiased;background-color:var(--nb-paper);background-image:none}a{color:inherit}button,input,textarea,select{font:inherit}::selection{background:#ffd35a8c;color:var(--nb-ink)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#fff}::-webkit-scrollbar-thumb{background:#111;border-radius:0}input,textarea,select{border:var(--nb-border-width) solid var(--color-border);background:#fff;color:var(--nb-text);border-radius:var(--radius-sm);outline:none;box-shadow:none}input::placeholder,textarea::placeholder{color:var(--nb-text-muted)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:14px;padding-right:40px}input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:12px;border:var(--nb-border-width) solid var(--nb-ink);background:#fff;border-radius:0;box-shadow:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border:var(--nb-border-width) solid var(--nb-ink);background:var(--nb-yellow);border-radius:0;box-shadow:2px 2px #111;cursor:pointer}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .3s ease-out}.container{width:100%;max-width:var(--content-max-width);margin:0 auto;padding:0 24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 22px;border:var(--nb-border-width) solid var(--color-border);background:#fff;color:var(--nb-ink);text-decoration:none;font-size:14px;font-weight:800;letter-spacing:.01em;white-space:nowrap;border-radius:var(--radius-sm);box-shadow:var(--nb-shadow-soft);transition:background-color .18s ease,color .18s ease;cursor:pointer}.btn:hover{background:#f6f6f6}.btn-primary{background:var(--accent-primary);color:var(--nb-ink)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-outline{background:#fff;color:var(--nb-ink)}.btn-outline:hover{background:#f2f2f2}.btn-accent{background:var(--nb-blue);color:var(--nb-ink)}.btn-accent:hover{background:var(--color-accent-hover)}.btn-sm{min-height:40px;padding:8px 14px;font-size:13px}.btn-lg{min-height:56px;padding:12px 28px;font-size:15px}.glx-web-card{border:var(--nb-border-width) solid var(--color-border);background:#fff;border-radius:var(--radius-md);box-shadow:var(--nb-shadow-card)}.glx-web-chip{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:6px 12px;border:var(--nb-border-width) solid var(--color-border);background:#fff;color:var(--text-secondary);font-size:13px;font-weight:700;border-radius:0}.glx-web-chip.is-active{background:var(--nb-blue);color:var(--nb-ink)}@media (max-width: 768px){.container{padding:0 16px}.btn{min-height:46px}}:root{--glx-app-topbar-height: 88px;--glx-app-max-width: 1320px;--glx-panel-padding: 20px;--glx-gap-1: 10px;--glx-gap-2: 14px;--glx-gap-3: 18px;--glx-gap-4: 24px;--glx-gap-5: 32px;--glx-shell-bg: #ffffff;--glx-shell-soft: #f7f7f7;--glx-shell-border: 2px solid #111111;--glx-shell-border-strong: 3px solid #111111;--glx-shadow-soft: 2px 2px 0 #111111;--glx-shadow-card: 3px 3px 0 #111111;--glx-shadow-strong: 4px 4px 0 #111111;--glx-text-muted: #4b5563}.glx-public-shell,.glx-app-shell{min-height:100vh;background:var(--nb-paper)}.glx-app-shell__header{position:sticky;top:0;z-index:1100;border-bottom:var(--glx-shell-border-strong);background:#fff}.glx-app-shell__header-inner{max-width:var(--glx-app-max-width);min-height:var(--glx-app-topbar-height);margin:0 auto;padding:16px 24px;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center}.glx-app-shell__brand{display:inline-flex;align-items:center;gap:14px;text-decoration:none}.glx-app-shell__nav{display:flex;align-items:center;gap:10px;overflow-x:auto;scrollbar-width:none}.glx-app-shell__nav::-webkit-scrollbar{display:none}.glx-app-shell__nav-link{min-height:42px;padding:8px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:var(--glx-shell-border);background:#fff;box-shadow:none;color:var(--nb-ink);font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap}.glx-app-shell__nav-link:hover{background:#f6f6f6}.glx-app-shell__nav-link.is-active{background:var(--nb-yellow);box-shadow:var(--glx-shadow-soft)}.glx-app-shell__actions{display:inline-flex;align-items:center;gap:10px;justify-content:flex-end}.glx-app-shell__device-chip{min-height:42px;padding:8px 14px;display:inline-flex;align-items:center;justify-content:center;border:var(--glx-shell-border);background:#fff;color:var(--nb-ink);font-size:13px;font-weight:900;white-space:nowrap}.glx-app-shell__device-chip.is-connected{background:var(--nb-yellow);box-shadow:var(--glx-shadow-soft)}.glx-app-shell__content{max-width:var(--glx-app-max-width);margin:0 auto;padding:20px 24px}.glx-page-shell{max-width:var(--glx-app-max-width);margin:0 auto;padding:24px 24px 48px;display:grid;gap:18px}.glx-page-shell__hero,.glx-panel-card,.glx-list-card,.glx-empty-card,.glx-feedback-card,.glx-preview-card,.glx-section-card{border:var(--glx-shell-border-strong);background:#fff;box-shadow:var(--glx-shadow-card)}.glx-page-shell__hero{padding:20px 24px;display:grid;gap:10px;background:linear-gradient(90deg,#ffcb4547,#fffffffa 55%,#5ea8ff2e)}.glx-page-shell__eyebrow{display:inline-flex;align-items:center;width:fit-content;min-height:28px;padding:0 10px;border:var(--glx-shell-border);background:#fff;box-shadow:var(--glx-shadow-soft);color:var(--nb-ink);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.glx-page-shell__title{font-size:clamp(24px,3.5vw,32px);line-height:1.1;font-weight:900;color:var(--nb-ink)}.glx-page-shell__desc{max-width:820px;color:var(--nb-text-secondary);font-size:14px;line-height:1.7}.glx-hero-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.glx-hero-metric{border:var(--glx-shell-border);background:#fff;box-shadow:var(--glx-shadow-soft);padding:14px;display:grid;gap:6px}.glx-hero-metric__label{color:var(--nb-text-secondary);font-size:12px;font-weight:800}.glx-hero-metric__value{color:var(--nb-ink);font-size:20px;font-weight:900}.glx-grid{display:grid;gap:18px}.glx-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.glx-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.glx-grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.glx-panel-card,.glx-feedback-card,.glx-preview-card,.glx-section-card,.glx-empty-card{padding:18px}.glx-panel-card--stack,.glx-section-card--stack,.glx-empty-card{display:grid;gap:14px}.glx-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:14px}.glx-section-title{color:var(--nb-ink);font-size:18px;line-height:1.2;font-weight:900}.glx-section-meta{color:var(--nb-text-secondary);font-size:12px;font-weight:800}.glx-list-card{display:flex;align-items:center;gap:14px;padding:14px 16px}.glx-list-card+.glx-list-card{border-top:var(--glx-shell-border)}.glx-list-card__icon{width:54px;height:54px;display:inline-flex;align-items:center;justify-content:center;border:var(--glx-shell-border);box-shadow:var(--glx-shadow-soft);background:#fff;flex-shrink:0}.glx-list-card__copy{flex:1;min-width:0;display:grid;gap:4px}.glx-list-card__title{color:var(--nb-ink);font-size:15px;font-weight:900}.glx-list-card__desc{color:var(--nb-text-secondary);font-size:13px;line-height:1.6}.glx-list-card__meta{display:inline-flex;align-items:center;gap:8px;color:var(--nb-text-secondary);font-size:12px;font-weight:800;flex-shrink:0}.glx-form-grid{display:grid;gap:14px}.glx-form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.glx-field{display:grid;gap:8px}.glx-field__label{color:var(--nb-ink);font-size:13px;font-weight:900}.glx-field__hint{color:var(--nb-text-secondary);font-size:12px;line-height:1.6}.glx-field__control,.glx-field__control textarea,.glx-field__control input,.glx-field__control select,.glx-input,.glx-select,.glx-textarea{width:100%;min-height:46px;padding:11px 12px;border:var(--glx-shell-border);background:#fff;color:var(--nb-ink);box-shadow:none}.glx-textarea{min-height:110px;resize:vertical}.glx-inline-actions,.glx-toolbar,.glx-tabs,.glx-chip-row,.glx-stat-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.glx-tabs{gap:12px}.glx-tab{min-height:42px;padding:8px 14px;border:var(--glx-shell-border);background:#fff;color:var(--nb-ink);font-size:13px;font-weight:900;box-shadow:none;cursor:pointer}.glx-tab.is-active{background:var(--nb-blue);box-shadow:var(--glx-shadow-soft)}.glx-chip{min-height:32px;padding:4px 10px;border:var(--glx-shell-border);background:#fff;color:var(--nb-text-secondary);font-size:12px;font-weight:800;box-shadow:none}.glx-chip--yellow{background:var(--nb-yellow);color:var(--nb-ink)}.glx-chip--blue{background:var(--nb-blue);color:var(--nb-ink)}.glx-chip--green{background:var(--nb-green);color:var(--nb-ink)}.glx-chip--danger{background:var(--nb-coral);color:var(--nb-ink)}.glx-button,.glx-button:visited{min-height:44px;padding:10px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:var(--glx-shell-border);background:#fff;color:var(--nb-ink);text-decoration:none;font-size:13px;font-weight:900;box-shadow:var(--glx-shadow-soft);cursor:pointer}.glx-button:hover{background:#f6f6f6}.glx-button--primary{background:var(--nb-yellow)}.glx-button--primary:hover{background:var(--color-primary-hover)}.glx-button--accent{background:var(--nb-blue)}.glx-button--accent:hover{background:var(--color-accent-hover)}.glx-button--danger{background:var(--nb-coral)}.glx-button--danger:hover{background:#ef6b6b}.glx-button--ghost{background:#fff}.glx-button[disabled]{opacity:.45;cursor:not-allowed;box-shadow:none}.glx-icon-chip{width:54px;height:54px;display:inline-flex;align-items:center;justify-content:center;border:var(--glx-shell-border);box-shadow:var(--glx-shadow-soft);background:#fff}.glx-icon-chip--yellow{background:var(--nb-yellow)}.glx-icon-chip--blue{background:var(--nb-blue)}.glx-icon-chip--green{background:var(--nb-green)}.glx-icon-chip--danger{background:var(--nb-coral)}.glx-icon-chip--paper{background:#fff}.glx-status-dot{width:12px;height:12px;display:inline-block;border:var(--glx-shell-border);background:#d9d9d9;flex-shrink:0}.glx-status-dot.is-online{background:var(--nb-green)}.glx-skeleton-card{border:var(--glx-shell-border-strong);background:#fff;box-shadow:var(--glx-shadow-card);padding:var(--glx-panel-padding);display:grid;gap:10px}.glx-skeleton{position:relative;overflow:hidden;border:var(--glx-shell-border);background:#ededed;min-height:16px}.glx-skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#fff0,#ffffffa6,#fff0);transform:translate(-100%);animation:glx-skeleton-slide 1.2s linear infinite}.glx-loader{display:inline-grid;grid-template-columns:repeat(3,10px);gap:4px}.glx-loader__cell{width:10px;height:10px;border:2px solid #111111;animation:glx-loader-bounce .9s ease-in-out infinite}.glx-loader__cell:nth-child(1){background:#ffcb45;animation-delay:0s}.glx-loader__cell:nth-child(2){background:#5ea8ff;animation-delay:.1s}.glx-loader__cell:nth-child(3){background:#67c23a;animation-delay:.2s}.glx-loader__cell:nth-child(4){background:#f56c6c;animation-delay:.3s}.glx-loader__cell:nth-child(5){background:#ffcb45;animation-delay:.4s}.glx-loader__cell:nth-child(6){background:#5ea8ff;animation-delay:.5s}.glx-loader__cell:nth-child(7){background:#67c23a;animation-delay:.6s}.glx-loader__cell:nth-child(8){background:#f56c6c;animation-delay:.7s}.glx-loader__cell:nth-child(9){background:#ffcb45;animation-delay:.8s}.glx-blocking-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:flex;align-items:center;justify-content:center;padding:24px;background:#11111138}.glx-blocking-layer__card{min-width:280px;max-width:420px;border:var(--glx-shell-border-strong);background:#fff;box-shadow:var(--glx-shadow-strong);padding:22px;display:grid;gap:16px}.glx-blocking-layer__title{color:var(--nb-ink);font-size:22px;font-weight:900}.glx-blocking-layer__desc{color:var(--nb-text-secondary);font-size:14px;line-height:1.7}.glx-toast-viewport{position:fixed;right:18px;bottom:18px;z-index:1400;display:grid;gap:12px;width:min(360px,calc(100vw - 32px))}.glx-toast{border:var(--glx-shell-border-strong);box-shadow:var(--glx-shadow-card);background:#fff;padding:14px 16px;display:grid;gap:8px}.glx-toast--success{background:#eef8e7}.glx-toast--info{background:#dcebff}.glx-toast--warning{background:#fff3c4}.glx-toast--error{background:#ffe6e6}.glx-toast__title{color:var(--nb-ink);font-size:14px;font-weight:900}.glx-toast__message{color:var(--nb-text-secondary);font-size:13px;line-height:1.6}.glx-stack{display:grid;gap:12px}.glx-kv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.glx-kv-card{border:var(--glx-shell-border);background:#fff;padding:14px;box-shadow:var(--glx-shadow-soft);display:grid;gap:6px}.glx-kv-card__label{color:var(--nb-text-secondary);font-size:12px;font-weight:800}.glx-kv-card__value{color:var(--nb-ink);font-size:20px;font-weight:900}@keyframes glx-loader-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes glx-skeleton-slide{to{transform:translate(100%)}}@media (max-width: 1024px){.glx-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.glx-app-shell__header-inner{grid-template-columns:1fr;gap:12px;padding:14px 16px}.glx-app-shell__actions{justify-content:flex-start}.glx-app-shell__content{padding:16px}.glx-page-shell{padding:20px 16px 40px;gap:16px}.glx-page-shell__hero{padding:16px}.glx-grid--two,.glx-grid--three,.glx-grid--four,.glx-form-grid--two{grid-template-columns:1fr}.glx-toast-viewport{right:12px;bottom:12px;width:calc(100vw - 24px)}}.editor-page,.pattern-workbench{color:var(--nb-ink)}.editor-page{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--nb-paper)}.editor-header{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 16px;background:var(--nb-paper);border-bottom:var(--nb-border-width) solid var(--nb-ink);flex-shrink:0;gap:12px}.header-left,.header-right{display:flex;align-items:center;gap:10px}.editor-page .project-name{font-size:14px;font-weight:900;color:var(--nb-ink)}.editor-page .project-size{font-size:12px;color:var(--text-secondary)}.editor-page .icon-btn,.editor-page .tool-btn,.editor-page .btn-publish,.editor-page .btn-cancel,.editor-page .btn-confirm{border-radius:0;border:var(--nb-border-width) solid var(--nb-ink);box-shadow:var(--nb-shadow-soft);transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}.editor-page .icon-btn,.editor-page .tool-btn,.editor-page .btn-cancel{background:var(--tone-paper-soft);color:var(--nb-ink)}.editor-page .icon-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer}.editor-page .icon-btn:hover,.editor-page .tool-btn:hover,.editor-page .btn-cancel:hover{background:var(--nb-muted)}.editor-page .icon-btn.active,.editor-page .tool-btn.active{background:var(--nb-blue);color:var(--nb-ink)}.editor-page .icon-btn:disabled,.editor-page .tool-btn:disabled,.editor-page .btn-publish:disabled,.editor-page .btn-confirm:disabled,.editor-page .btn-cancel:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.editor-page .btn-publish,.editor-page .btn-confirm{padding:8px 16px;background:var(--nb-yellow);color:var(--nb-ink);font-size:13px;font-weight:900;cursor:pointer}.editor-page .btn-publish:hover,.editor-page .btn-confirm:hover{background:var(--color-primary-hover)}.editor-body{display:flex;flex:1;overflow:hidden}.tool-sidebar,.color-sidebar{background:var(--nb-paper);flex-shrink:0}.tool-sidebar{width:56px;border-right:var(--nb-border-width) solid var(--nb-ink);display:flex;flex-direction:column;align-items:center;padding:12px 0;gap:8px}.editor-page .tool-btn{width:38px;min-height:38px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;background:var(--tone-paper-soft);color:var(--text-secondary);cursor:pointer}.tool-divider{width:28px;height:2px;background:var(--nb-ink);margin:2px 0}.editor-page .color-dot{width:24px;height:24px;border-radius:0;border:2px solid var(--nb-ink);cursor:pointer;box-shadow:var(--nb-shadow-soft)}.canvas-area{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;background:var(--nb-paper);background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px);background-size:24px 24px}.pixel-canvas{cursor:crosshair;image-rendering:pixelated;border:3px solid var(--nb-ink);box-shadow:var(--shadow-card);background:#111}.editor-page--template .canvas-area{background-color:#f7f7f7;background-image:linear-gradient(45deg,rgba(17,17,17,.08) 25%,transparent 25%),linear-gradient(-45deg,rgba(17,17,17,.08) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(17,17,17,.08) 75%),linear-gradient(-45deg,transparent 75%,rgba(17,17,17,.08) 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0}.editor-page--template .pixel-canvas{background:transparent}.color-sidebar{width:196px;border-left:var(--nb-border-width) solid var(--nb-ink);display:flex;flex-direction:column;overflow:hidden}.color-sidebar-title{font-size:11px;font-weight:900;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;padding:12px 12px 6px}.color-search{margin:0 10px 8px;padding:8px 10px;border:var(--nb-border-width) solid var(--nb-ink);border-radius:0;background:var(--tone-paper-soft);box-shadow:var(--nb-shadow-soft);font-size:12px;outline:none}.color-grid{flex:1;overflow-y:auto;padding:0 10px 12px;display:grid;grid-template-columns:repeat(6,1fr);gap:6px;align-content:start}.color-swatch{aspect-ratio:1;border-radius:0;cursor:pointer;border:2px solid var(--nb-ink);box-shadow:var(--nb-shadow-soft)}.color-swatch.active{border-color:var(--nb-blue);box-shadow:inset 0 0 0 1px var(--nb-blue),var(--nb-shadow-soft)}.modal-overlay,.wizard-mask,.cropper-overlay,.mobile-panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0000006b;-webkit-backdrop-filter:none;backdrop-filter:none;z-index:1000}.modal,.wizard-shell,.blank-dialog,.cropper-title-bar,.mobile-panel,.pattern-workbench .panel,.pattern-toolbar,.source-panel,.confirm-panel,.edit-panel,.selection-panel,.standardize-panel,.issues-panel,.inspector-panel,.step-mode,.step-size,.step-color-set,.settings-panel,.tools-panel,.color-palette,.export-panel,.image-upload-section{background:var(--tone-paper-soft)!important;border:3px solid var(--nb-ink)!important;border-radius:0!important;box-shadow:var(--shadow-card)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.modal{padding:28px;width:480px;max-width:90vw}.modal h3{font-size:16px;font-weight:900;color:var(--nb-ink);margin-bottom:20px}.preview-row{display:flex;gap:16px;align-items:center;margin-bottom:20px}.import-preview,.import-result{width:160px;height:160px;object-fit:contain;border:3px solid var(--nb-ink);border-radius:0;background:var(--tone-paper-soft);box-shadow:var(--nb-shadow-soft)}.import-result{image-rendering:pixelated}.modal-form{display:flex;gap:16px;margin-bottom:20px}.modal-form label{flex:1;font-size:13px;color:var(--text-secondary);display:flex;flex-direction:column;gap:6px}.modal-form input{padding:8px 10px}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.editor-page .btn-cancel{padding:8px 20px;font-size:13px;cursor:pointer}.pattern-workbench{max-width:1520px;margin:0 auto;padding:32px 24px 72px}.pattern-workbench .workbench-header,.pattern-workbench .overview-card,.pattern-workbench .starter-card,.pattern-workbench .panel-block,.pattern-workbench .source-summary,.pattern-workbench .compare-summary,.pattern-workbench .empty-side-note,.pattern-workbench .version-row,.pattern-workbench .stats-box,.pattern-workbench .stat-card,.pattern-workbench .field-panel,.pattern-workbench .preview-grid-shell,.pattern-workbench .used-color-item,.pattern-workbench .group-card,.pattern-workbench .detail-card,.pattern-workbench .pixel-context,.pattern-workbench .suggestion-box{background:var(--tone-paper-soft)!important;border:2px solid var(--nb-ink)!important;border-radius:0!important;box-shadow:var(--nb-shadow-soft)!important}.pattern-workbench .workbench-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:28px 32px;background:linear-gradient(180deg,var(--nb-paper),var(--tone-yellow-soft))!important}.pattern-workbench .title,.pattern-workbench .starter-card h2,.pattern-workbench .panel-head h2,.pattern-workbench .overview-card strong,.pattern-workbench .version-row strong,.pattern-workbench .summary-row strong,.pattern-workbench .compare-row strong,.pattern-workbench .stat-card strong,.pattern-workbench .right-tab strong{color:var(--nb-ink)!important;font-weight:900!important}.pattern-workbench .eyebrow,.pattern-workbench .starter-tag,.pattern-workbench .panel-head span,.pattern-workbench .overview-card span,.pattern-workbench .overview-card p,.pattern-workbench .desc,.pattern-workbench .todo-list,.pattern-workbench .summary-row,.pattern-workbench .compare-row,.pattern-workbench .empty-side-note,.pattern-workbench .version-row span,.pattern-workbench .stat-card span,.pattern-workbench .color-row,.pattern-workbench .focus-row,.pattern-workbench .placeholder-text,.pattern-workbench .diff-list,.pattern-workbench .mode-note,.pattern-workbench .mode-name{color:var(--text-secondary)!important}.pattern-workbench .starter-hub,.pattern-workbench .workbench-layout,.pattern-workbench .overview-strip,.pattern-workbench .stats-grid,.pattern-workbench .panel-stack,.pattern-workbench .stage-sidecars,.pattern-workbench .version-list{gap:16px!important}.pattern-workbench .primary-btn,.pattern-workbench .secondary-btn,.pattern-workbench .toolbar-btn,.pattern-workbench .view-tab,.pattern-workbench .chip,.pattern-workbench .mode-btn,.pattern-workbench .version-btn,.pattern-workbench .right-tab,.pattern-workbench .size-preset,.pattern-workbench .preset-chip,.pattern-workbench .preset-card,.pattern-workbench .similar-btn,.pattern-workbench .action-btn,.pattern-workbench .tool-btn,.pattern-workbench .export-btn,.pattern-workbench .style-btn,.pattern-workbench .spacing-btn,.pattern-workbench .unit-btn,.pattern-workbench .difficulty-btn,.pattern-workbench .fit-btn,.pattern-workbench .zoom-btn,.pattern-workbench .series-tab,.pattern-workbench .btn-secondary,.pattern-workbench .btn-danger,.pattern-workbench .upload-area,.pattern-workbench .close-btn,.pattern-toolbar .tool-btn,.settings-panel .unit-btn,.settings-panel .difficulty-btn,.settings-panel .brand-select,.tools-panel .tool-btn,.tools-panel .action-btn,.tools-panel .zoom-btn,.tools-panel .fit-btn,.color-palette .series-tab,.color-palette .color-item,.image-upload-section .btn-secondary,.image-upload-section .btn-danger,.export-panel .style-btn,.export-panel .spacing-btn,.export-panel .export-btn,.wizard-shell .nav-btn,.wizard-shell .primary-btn,.wizard-shell .secondary-btn,.wizard-shell .ghost-btn,.wizard-shell .preset-chip,.wizard-shell .preset-card,.wizard-shell .recommend-tip,.wizard-shell .wide-btn,.wizard-shell .upload-area{border:2px solid var(--nb-ink)!important;border-radius:0!important;box-shadow:var(--nb-shadow-soft)!important;background:var(--tone-paper-soft)!important;color:var(--nb-ink)!important;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease!important}.pattern-workbench .primary-btn,.pattern-workbench .view-tab.active,.pattern-workbench .right-tab.active,.pattern-workbench .mode-btn.active,.pattern-workbench .preset-chip.active,.pattern-workbench .preset-card.active,.pattern-workbench .similar-btn.active,.pattern-workbench .tool-btn.active,.pattern-workbench .style-btn.active,.pattern-workbench .spacing-btn.active,.pattern-workbench .series-tab.active,.pattern-workbench .action-btn.primary,.pattern-workbench .export-btn.primary,.pattern-workbench .unit-btn.active,.pattern-workbench .difficulty-btn.active,.pattern-toolbar .tool-btn.active,.settings-panel .unit-btn.active,.settings-panel .difficulty-btn.active,.tools-panel .tool-btn.active,.color-palette .series-tab.active,.color-palette .color-item.active,.export-panel .style-btn.active,.export-panel .spacing-btn.active,.export-panel .export-btn.primary,.wizard-shell .primary-btn,.wizard-shell .recommend-tip,.wizard-shell .wide-btn{background:var(--nb-blue)!important;color:var(--nb-ink)!important}.pattern-workbench .secondary-btn,.pattern-workbench .chip.action,.pattern-workbench .version-btn,.pattern-workbench .toolbar-btn,.pattern-workbench .view-tab,.pattern-workbench .mode-btn,.pattern-workbench .size-preset,.pattern-workbench .btn-secondary,.image-upload-section .btn-secondary,.tools-panel .action-btn,.tools-panel .zoom-btn,.tools-panel .fit-btn,.wizard-shell .secondary-btn,.wizard-shell .ghost-btn{background:var(--tone-paper-soft)!important}.pattern-workbench .btn-danger,.pattern-workbench .action-btn.danger,.pattern-workbench .export-btn.secondary,.image-upload-section .btn-danger,.export-panel .export-btn.secondary,.tools-panel .action-btn.danger{background:var(--nb-coral)!important;color:var(--nb-ink)!important}.pattern-workbench .chip.action.danger{background:var(--tone-coral-soft)!important;color:var(--nb-ink)!important}.pattern-workbench .source-actions,.pattern-workbench .primary-actions,.pattern-workbench .compact-actions,.pattern-workbench .header-actions,.pattern-workbench .view-tabs,.pattern-workbench .canvas-actions,.pattern-workbench .version-actions,.pattern-workbench .action-row,.pattern-workbench .preview-actions,.pattern-workbench .style-buttons,.pattern-workbench .spacing-buttons,.pattern-workbench .unit-buttons,.pattern-workbench .difficulty-buttons,.pattern-workbench .tool-group,.pattern-workbench .action-group,.pattern-workbench .advanced-group,.pattern-workbench .zoom-controls,.pattern-workbench .preset-grid,.pattern-workbench .size-grid,.wizard-shell .preview-actions,.wizard-shell .preset-grid,.wizard-shell .preset-card-grid{gap:10px!important}.pattern-workbench .right-tabs,.pattern-workbench .view-tabs,.pattern-workbench .canvas-toolbar,.pattern-workbench .stage-focus,.pattern-workbench .compare-summary,.pattern-workbench .source-summary,.pattern-workbench .suggestion-box,.pattern-workbench .pixel-context,.pattern-workbench .stats-box,.pattern-workbench .preview-info,.pattern-workbench .usage-stats{background:var(--tone-paper-soft)!important;border:2px solid var(--nb-ink)!important;border-radius:0!important;box-shadow:var(--nb-shadow-soft)!important}.pattern-workbench .canvas-toolbar{padding:12px}.pattern-workbench .stage-card{min-height:280px;padding:16px;background:var(--tone-paper-soft)!important;color:var(--nb-ink)!important}.pattern-workbench .stage-label{display:inline-flex;margin-bottom:14px;padding:6px 10px;border:2px solid var(--nb-ink);background:var(--nb-blue);color:var(--nb-ink);border-radius:0;box-shadow:var(--nb-shadow-soft);font-size:12px;font-weight:900}.pattern-workbench .stage-grid.real-grid,.pattern-workbench .preview-grid,.pattern-workbench .preview-image,.pattern-workbench .preview-area,.pattern-workbench .upload-area,.pattern-workbench .pindou-canvas-container,.pattern-workbench .pindou-canvas,.pattern-workbench .preview-canvas,.wizard-shell .preview-grid,.wizard-shell .preview-area,.wizard-shell .upload-area{border-radius:0!important}.pattern-workbench .stage-grid.real-grid,.pattern-workbench .stage-grid.side-grid,.pattern-workbench .magnifier-grid,.pattern-workbench .preview-grid,.pattern-workbench .preview-area,.pattern-workbench .upload-area,.pattern-workbench .pindou-canvas-container,.pattern-workbench .preview-image,.wizard-shell .preview-grid,.wizard-shell .preview-area,.wizard-shell .upload-area,.wizard-shell .preview-image{border:2px solid var(--nb-ink)!important;box-shadow:var(--nb-shadow-soft)!important;background:var(--tone-paper-soft)!important}.pattern-workbench .stage-grid.real-grid,.pattern-workbench .stage-grid.side-grid,.pattern-workbench .magnifier-grid{padding:8px;background:#111!important}.pattern-workbench .stage-pixel{border-radius:0!important}.pattern-workbench .stage-pixel.real.empty{background:#111!important}.pattern-workbench .stage-pixel.selected,.pattern-workbench .stage-pixel.region-selected,.pattern-workbench .stage-pixel.draw-preview{box-shadow:inset 0 0 0 2px var(--nb-yellow),0 0 0 1px var(--nb-ink)!important}.pattern-workbench .stage-pixel.magnifier-pixel.selected{box-shadow:inset 0 0 0 2px var(--nb-blue),0 0 0 1px var(--nb-ink)!important}.pattern-workbench .color-dot,.pattern-workbench .used-color-item i,.pattern-workbench .color-badge,.pattern-workbench .checkmark{border-radius:0!important}.pattern-workbench .color-dot,.pattern-workbench .used-color-item i,.pattern-workbench .color-badge{border:2px solid var(--nb-ink)!important}.pattern-workbench .checkmark{border:2px solid var(--nb-ink)!important;background:var(--tone-paper-soft)!important;box-shadow:var(--nb-shadow-soft)!important}.pattern-workbench input[type=checkbox]:checked+.checkmark{background:var(--nb-blue)!important}.pattern-workbench .search-input,.pattern-workbench .brand-select,.pattern-workbench .slider,.pattern-workbench .text-input,.pattern-workbench .size-field input,.pattern-workbench .input-group input,.pattern-workbench .blank-field input,.pattern-workbench .size-inputs input,.pattern-workbench .color-search,.settings-panel .brand-select,.settings-panel .slider,.color-palette .search-input,.wizard-shell input,.wizard-shell select{border-radius:0!important;border:2px solid var(--nb-ink)!important;background:var(--tone-paper-soft)!important;color:var(--nb-ink)!important;box-shadow:var(--nb-shadow-soft)!important}.pattern-workbench .slider{background:var(--tone-paper-soft)!important}.pattern-workbench .slider::-webkit-slider-thumb,.pattern-workbench .slider::-moz-range-thumb{border-radius:0!important;border:2px solid var(--nb-ink)!important;background:var(--nb-blue)!important;box-shadow:var(--nb-shadow-soft)!important}.wizard-shell{width:min(860px,calc(100vw - 32px));max-height:calc(100vh - 32px);display:flex;flex-direction:column;overflow:hidden}.wizard-shell .wizard-head,.wizard-shell .wizard-footer{padding:16px 20px;border-bottom:2px solid var(--nb-ink);background:var(--tone-paper-soft)}.wizard-shell .wizard-footer{border-top:2px solid var(--nb-ink);border-bottom:0}.wizard-shell .wizard-body{padding:20px;overflow:auto;background:var(--nb-paper)}.wizard-shell .step-mark,.wizard-shell .step-hint,.wizard-shell .size-header span,.wizard-shell .stat-row span,.wizard-shell .used-color-item span{color:var(--text-secondary)!important}.wizard-shell .upload-icon{border:2px solid var(--nb-ink);background:var(--nb-blue);color:var(--nb-ink);box-shadow:var(--nb-shadow-soft)}.wizard-shell .status-box{border:2px solid var(--nb-ink);background:var(--tone-paper-soft);box-shadow:var(--nb-shadow-soft)}.pattern-workbench .floating-status{position:fixed;right:24px;bottom:24px;padding:12px 16px;border:2px solid var(--nb-ink);border-radius:0;background:var(--nb-blue);color:var(--nb-ink);box-shadow:var(--shadow-card);z-index:30;font-weight:900}.pattern-workbench .floating-status.error{background:var(--nb-coral)}@media (max-width: 1200px){.pattern-workbench .starter-hub{grid-template-columns:1fr!important}.pattern-workbench .overview-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pattern-workbench .workbench-layout,.pattern-workbench .canvas-stage{grid-template-columns:1fr!important}.pattern-workbench .panel{min-height:auto!important}}@media (max-width: 768px){.editor-header{min-height:52px;padding:0 12px}.tool-sidebar{width:52px}.color-sidebar{width:168px}.pattern-workbench{padding:14px 12px 32px}.pattern-workbench .workbench-header,.wizard-shell .wizard-head,.wizard-shell .wizard-footer,.wizard-shell .wizard-body{padding:16px}.pattern-workbench .overview-strip,.pattern-workbench .blank-fields,.pattern-workbench .blank-size-grid,.wizard-shell .size-inputs,.wizard-shell .preset-card-grid{grid-template-columns:1fr!important}.wizard-shell{width:min(100vw - 24px,860px)}}.sheet-dialog-mask{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:16px;background:#0000006b!important;z-index:1100}.sheet-dialog,.clock-page .page-header,.clock-page .card,.sheet-dialog .step-panel,.sheet-dialog .compare-card,.sheet-dialog .zoom-panel,.sheet-dialog .field-card,.sheet-dialog .compact-panel,.sheet-dialog .review-panel,.sheet-dialog .detail-fragment-shell,.sheet-dialog .detail-fragment,.sheet-dialog .preview-result,.sheet-dialog .review-thumb-shell,.sheet-dialog .simple-tile{background:var(--tone-paper-soft)!important;border:2px solid var(--nb-ink)!important;border-radius:0!important;box-shadow:var(--shadow-card)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}.sheet-dialog{width:min(1160px,calc(100vw - 32px))!important;max-height:calc(100vh - 32px)!important;overflow:hidden!important}.sheet-dialog .dialog-head,.sheet-dialog .step-strip,.mobile-panel .panel-header{background:var(--tone-paper-soft)!important;border-bottom:2px solid var(--nb-ink)!important}.sheet-dialog .dialog-head h2,.sheet-dialog .section-head h3,.sheet-dialog .compare-head strong,.sheet-dialog .zoom-head strong,.sheet-dialog .field-card>span,.clock-page .page-title,.clock-page .card-title,.clock-page .section-card h3,.settings-panel .section-title,.tools-panel .section-title,.color-palette .section-title,.export-panel .section-title,.image-upload-section .section-title,.mobile-panel .panel-title{color:var(--nb-ink)!important;font-weight:900!important}.sheet-dialog .mini-summary,.sheet-dialog .section-head span,.sheet-dialog .field-card .stepper-label,.sheet-dialog .stepper-unit,.sheet-dialog .zoom-tip,.sheet-dialog .flag-chip,.sheet-dialog .group-chip,.sheet-dialog .group-switcher,.sheet-dialog .loading-box,.sheet-dialog .empty-state,.clock-page .page-desc,.clock-page .field span,.clock-page .switch-row,.clock-page .media-tip,.clock-page .msg,.clock-page .status,.settings-panel .setting-label,.settings-panel .slider-value,.tools-panel .setting-label,.tools-panel .zoom-display,.tools-panel .checkbox-label,.color-palette .color-count,.color-palette .series-count,.color-palette .usage-stats h4,.color-palette .stat-label,.export-panel .checkbox-label,.export-panel .setting-label,.export-panel .preview-info h4,.export-panel .info-label,.image-upload-section .upload-hint,.mobile-panel .panel-content{color:var(--text-secondary)!important}.sheet-dialog .ghost-btn,.sheet-dialog .secondary-btn,.sheet-dialog .primary-btn,.sheet-dialog .switch-btn,.sheet-dialog .move-btn,.sheet-dialog .stepper-btn,.sheet-dialog .trim-btn,.sheet-dialog .review-option,.sheet-dialog .group-chip,.sheet-dialog .flag-chip,.sheet-dialog .dialog-actions button,.clock-page .btn,.settings-panel .unit-btn,.settings-panel .difficulty-btn,.tools-panel .tool-btn,.tools-panel .action-btn,.tools-panel .zoom-btn,.tools-panel .fit-btn,.color-palette .series-tab,.color-palette .color-item,.export-panel .style-btn,.export-panel .spacing-btn,.export-panel .export-btn,.image-upload-section .btn-secondary,.image-upload-section .btn-danger,.mobile-panel .close-btn{border:2px solid var(--nb-ink)!important;border-radius:0!important;background:var(--tone-paper-soft)!important;color:var(--nb-ink)!important;box-shadow:var(--nb-shadow-soft)!important;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease!important}.sheet-dialog .primary-btn,.sheet-dialog .step-pill.active,.sheet-dialog .switch-btn.active,.sheet-dialog .review-option.active,.clock-page .btn-primary,.settings-panel .unit-btn.active,.settings-panel .difficulty-btn.active,.tools-panel .tool-btn.active,.color-palette .series-tab.active,.color-palette .color-item.active,.export-panel .style-btn.active,.export-panel .spacing-btn.active,.export-panel .export-btn.primary,.image-upload-section .upload-icon{background:var(--nb-blue)!important;color:var(--nb-ink)!important}.sheet-dialog .step-pill.done,.color-palette .color-item.used,.clock-page .badge,.clock-page .msg:not(.error){background:var(--tone-green-soft)!important;color:var(--nb-ink)!important;border-color:var(--nb-ink)!important}.sheet-dialog .ghost-btn:hover,.sheet-dialog .secondary-btn:hover,.sheet-dialog .move-btn:hover,.sheet-dialog .stepper-btn:hover,.sheet-dialog .trim-btn:hover,.clock-page .btn:hover,.settings-panel .unit-btn:hover,.settings-panel .difficulty-btn:hover,.tools-panel .tool-btn:hover,.tools-panel .action-btn:hover,.tools-panel .zoom-btn:hover,.tools-panel .fit-btn:hover,.color-palette .series-tab:hover,.color-palette .color-item:hover,.export-panel .style-btn:hover,.export-panel .spacing-btn:hover,.export-panel .export-btn:hover,.image-upload-section .btn-secondary:hover,.image-upload-section .btn-danger:hover,.image-upload-section .upload-area:hover,.mobile-panel .close-btn:hover{background:var(--nb-muted)!important;color:var(--nb-ink)!important;transform:none!important}.sheet-dialog .field-card input,.sheet-dialog .stepper-input,.sheet-dialog input[type=number],.sheet-dialog input[type=text],.clock-page input,.clock-page select,.settings-panel .brand-select,.settings-panel .slider,.color-palette .search-input{border:2px solid var(--nb-ink)!important;border-radius:0!important;background:var(--tone-paper-soft)!important;color:var(--nb-ink)!important;box-shadow:var(--nb-shadow-soft)!important}.clock-page{min-height:100vh;padding:32px 0 72px;color:var(--nb-ink)}.clock-page .container{max-width:1120px}.clock-page .page-header,.clock-page .card{padding:24px!important}.clock-page .grid,.clock-page .field-row,.clock-page .actions{gap:12px!important}.clock-page .badge{display:inline-flex;align-items:center;min-height:32px;padding:4px 10px;box-shadow:var(--nb-shadow-soft);font-weight:800}.clock-page .dot{width:12px!important;height:12px!important;border:2px solid var(--nb-ink)!important;border-radius:0!important;background:var(--tone-coral-soft)!important;box-shadow:var(--nb-shadow-soft)!important}.clock-page .dot.online{background:var(--nb-green)!important}.clock-page .msg,.clock-page .status{padding:8px 12px;border:2px solid var(--nb-ink);border-radius:0;background:var(--tone-paper-soft);box-shadow:var(--nb-shadow-soft)}.clock-page .msg.error{background:var(--tone-coral-soft)!important;color:var(--nb-ink)!important}.sheet-dialog .step-pill,.sheet-dialog .preview-stage,.sheet-dialog .preview-result,.sheet-dialog .status-box,.sheet-dialog .loading-box,.sheet-dialog .empty-state,.sheet-dialog .group-switcher,.sheet-dialog .review-grid,.sheet-dialog .sheet-review-grid,.sheet-dialog .confirm-preview,.sheet-dialog .confirm-panel,.sheet-dialog .confirm-options,.sheet-dialog .review-fragment{border:2px solid var(--nb-ink)!important;border-radius:0!important;background:var(--tone-paper-soft)!important;box-shadow:var(--nb-shadow-soft)!important}.sheet-dialog .preview-stage,.sheet-dialog .preview-result,.sheet-dialog .zoom-stage,.sheet-dialog .compare-stage{background:#111!important;box-shadow:inset 0 0 0 2px var(--nb-ink),var(--nb-shadow-soft)!important}.sheet-dialog .preview-stage img,.sheet-dialog .cropped-preview-image{border-radius:0!important}.sheet-dialog .crop-frame,.sheet-dialog .zoom-focus-block,.sheet-dialog .focus-divider{border-color:var(--nb-yellow)!important}.sheet-dialog .step-pill span,.sheet-dialog .step-pill strong,.color-palette .color-code,.color-palette .usage-count,.export-panel .checkmark,.tools-panel .checkmark{color:var(--nb-ink)!important}.sheet-dialog .step-pill span,.color-palette .usage-count{background:var(--nb-yellow)!important;border:2px solid var(--nb-ink)!important;border-radius:0!important;box-shadow:var(--nb-shadow-soft)!important}.settings-panel .slider::-webkit-slider-thumb,.settings-panel .slider::-moz-range-thumb,.clock-page input[type=range]::-webkit-slider-thumb,.clock-page input[type=range]::-moz-range-thumb{border-radius:0!important;border:2px solid var(--nb-ink)!important;background:var(--nb-blue)!important;box-shadow:var(--nb-shadow-soft)!important}.tools-panel .checkmark,.export-panel .checkmark{width:20px;height:20px;border:2px solid var(--nb-ink)!important;border-radius:0!important;background:var(--tone-paper-soft)!important;box-shadow:var(--nb-shadow-soft)!important}.tools-panel .checkbox-label input[type=checkbox]:checked+.checkmark,.export-panel .checkbox-label input[type=checkbox]:checked+.checkmark{background:var(--nb-blue)!important}.color-palette .color-grid,.color-palette .usage-stats,.export-panel .preview-info{border-top-color:var(--nb-ink)!important}.color-palette .color-item{transform:none!important}.color-palette .color-code{background:#ffffffe6!important;border:1px solid var(--nb-ink)!important;border-radius:0!important}.color-palette .stat-value,.export-panel .info-value{color:var(--nb-ink)!important;font-weight:900!important}.image-upload-section .upload-area,.image-upload-section .preview-image,.mobile-panel,.mobile-panel .panel-content{border:2px solid var(--nb-ink)!important;border-radius:0!important;box-shadow:var(--nb-shadow-soft)!important}.image-upload-section .upload-area{background:var(--tone-paper-soft)!important;border-style:dashed!important}.image-upload-section .preview-image{background:#111!important}.image-upload-section .upload-text{color:var(--nb-ink)!important;font-weight:900!important}.mobile-panel{background:var(--nb-paper)!important;width:min(100%,720px)!important;max-height:min(82vh,760px)!important}.mobile-panel .panel-content{background:var(--nb-paper)!important}
