:root,[data-theme=dark]{--bg-app:#08090d;--bg-sidebar:#0d0f14;--bg-card:rgba(18, 22, 33, 0.75);--bg-card-hover:rgba(26, 31, 46, 0.85);--border-color:rgba(255, 255, 255, 0.08);--border-color-glow:rgba(0, 102, 204, 0.3);--primary:#007aff;--primary-glow:rgba(0, 122, 255, 0.35);--success:#34c759;--success-glow:rgba(52, 199, 89, 0.3);--warning:#ff9500;--warning-glow:rgba(255, 149, 0, 0.3);--danger:#ff3b30;--danger-glow:rgba(255, 59, 48, 0.3);--text-main:#f5f5f7;--text-secondary:#86868b;--text-muted:#6e6e73;--input-bg:rgba(0, 0, 0, 0.35);--dock-bg:rgba(22, 24, 35, 0.6);--dock-border:rgba(255, 255, 255, 0.08);--dock-shadow:0 10px 40px rgba(0, 0, 0, 0.6),inset 0 1px 1px rgba(255, 255, 255, 0.1);--dock-hover:rgba(255, 255, 255, 0.08);--font-family:'Outfit',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--transition:all 0.25s cubic-bezier(0.4, 0, 0.2, 1);--glass-blur:blur(20px)}[data-theme=light]{--bg-app:#f4f6f9;--bg-sidebar:#ffffff;--bg-card:#ffffff;--bg-card-hover:#f9fafb;--border-color:rgba(0, 0, 0, 0.08);--border-color-glow:rgba(0, 102, 204, 0.15);--primary:#007aff;--primary-glow:rgba(0, 122, 255, 0.2);--success:#28a745;--success-glow:rgba(40, 167, 69, 0.2);--warning:#f57c00;--warning-glow:rgba(245, 124, 0, 0.2);--danger:#e53935;--danger-glow:rgba(229, 57, 53, 0.2);--text-main:#1d1d1f;--text-secondary:#6e6e73;--text-muted:#86868b;--input-bg:#ffffff;--dock-bg:rgba(255, 255, 255, 0.85);--dock-border:rgba(0, 0, 0, 0.08);--dock-shadow:0 10px 40px rgba(0, 0, 0, 0.12),inset 0 1px 1px rgba(255, 255, 255, 0.8);--dock-hover:rgba(0, 0, 0, 0.05);--font-family:'Outfit',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--transition:all 0.25s cubic-bezier(0.4, 0, 0.2, 1);--glass-blur:blur(20px)}*{box-sizing:border-box;margin:0;padding:0}html{background-color:var(--bg-app)}body,html{margin:0;padding:0;min-height:100vh;min-height:100dvh;background-color:var(--bg-app)!important;color:var(--text-main);font-family:var(--font-family);overflow-x:hidden;overflow-y:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s,color .3s}.app-container{display:flex;flex-direction:column;min-height:100vh;min-height:100svh;width:100%;position:relative;background-color:var(--bg-app)!important;transition:background-color .3s}.macos-dock{position:fixed;bottom:20px;bottom:calc(20px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:flex-end;gap:10px;background:var(--dock-bg);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);border:1px solid var(--dock-border);border-radius:24px;padding:8px 12px;z-index:9990;box-shadow:var(--dock-shadow);transition:transform .3s cubic-bezier(.25, 1, .5, 1),background-color .3s;touch-action:manipulation;pointer-events:auto}.dock-item{background:0 0;border:none;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:60px;height:60px;border-radius:16px;cursor:pointer;transition:.2s cubic-bezier(.25, 1, .5, 1);position:relative;flex-shrink:0}.dock-icon{font-size:24px;transition:transform .2s}.dock-label{font-size:9px;font-weight:600;opacity:.6;transition:opacity .2s}.dock-item *{pointer-events:none}.dock-item:hover{color:var(--text-main);background:var(--dock-hover);border-radius:16px}.dock-item:hover .dock-icon{transform:scale(1.2) translateY(-2px)}.dock-item:hover .dock-label{opacity:1;color:var(--text-main)}.dock-item:active{transform:scale(.96)}.dock-item.active{color:var(--primary);background:rgba(0,122,255,.12);border:1px solid rgba(0,122,255,.25);box-shadow:0 4px 15px rgba(0,122,255,.15)}.dock-item.active::after{content:'';position:absolute;bottom:3px;width:4px;height:4px;background-color:var(--primary);border-radius:50%;box-shadow:0 0 6px var(--primary)}.badge{background-color:rgba(255,255,255,.05);border:1px solid var(--border-color);color:var(--text-secondary);padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.main-content{flex:1;width:100%;display:flex;flex-direction:column;padding:max(24px,calc(16px + env(safe-area-inset-top))) 30px 140px;box-sizing:border-box;background:radial-gradient(circle at top right,rgba(0,122,255,.05),transparent 60%)}html{background-color:var(--bg-app);height:100vh;width:100vw;margin:0;padding:0}body{margin:0;padding-top:env(safe-area-inset-top,0);min-height:100vh;color:var(--text-main)}.top-header,header{padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);-webkit-app-region:drag;color:var(--text-main)}.top-header a,.top-header button,header a,header button{-webkit-app-region:no-drag}@media (display-mode:window-controls-overlay){.top-header,header{height:env(titlebar-area-height,44px);padding-left:env(titlebar-area-x,0);width:env(titlebar-area-width,100%)}}.top-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-top:calc(env(safe-area-inset-top) + 20px)}.header-title h2{font-size:26px;font-weight:700;letter-spacing:-.5px;margin-bottom:4px;color:var(--text-main)}.header-title p{color:var(--text-secondary);font-size:14px}.status-indicator{display:flex;align-items:center;gap:8px;background-color:var(--dock-hover);color:var(--text-main);border:1px solid var(--border-color);padding:8px 14px;border-radius:16px;font-size:13px;font-weight:500}.pulse-dot{width:8px;height:8px;background-color:var(--success);border-radius:50%;box-shadow:0 0 8px var(--success);animation:1.8s infinite pulse}@keyframes pulse{0%,100%{transform:scale(.9);opacity:.6}50%{transform:scale(1.15);opacity:1;box-shadow:0 0 12px var(--success)}}.banner{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:12px;font-size:13px;line-height:1.5;margin-bottom:24px;backdrop-filter:var(--glass-blur)}.banner-warning{background-color:rgba(255,149,0,.1);border:1px solid var(--warning-glow);color:var(--warning)}.banner-info{background-color:rgba(0,122,255,.08);border:1px solid var(--border-color-glow);color:var(--primary)}.banner-icon{font-size:16px;line-height:1}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:24px;backdrop-filter:var(--glass-blur);transition:var(--transition)}.card:hover{background:var(--bg-card-hover);border-color:var(--border-color-glow);box-shadow:0 8px 32px rgba(0,0,0,.12)}.card-title{font-size:16px;font-weight:600;letter-spacing:-.2px;margin-bottom:16px;color:var(--text-main)}.card-divider{border:none;border-top:1px solid var(--border-color);margin:16px 0}.tab-pane{display:none;flex-direction:column;gap:24px;animation:.3s ease-out fadeIn}.tab-pane.active{display:flex}@keyframes fadeIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.telemetry-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.telemetry-card{display:flex;flex-direction:column;align-items:center;text-align:center}.telemetry-card h3{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.gauge-container{position:relative;width:130px;height:130px;display:flex;align-items:center;justify-content:center}.dial-outer{position:relative;width:100%;height:100%}.dial-svg{transform:rotate(-90deg);width:100%;height:100%}.dial-bg{fill:none;stroke:var(--border-color);stroke-width:8}.dial-progress{fill:none;stroke:var(--primary);stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .8s cubic-bezier(.4, 0, .2, 1),stroke var(--transition)}.dial-val{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:22px;font-weight:700;letter-spacing:-.5px;color:var(--text-main)}.card-footer-desc{font-size:11px;color:var(--text-muted);margin-top:14px}.detail-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:20px}.detail-card{display:flex;flex-direction:column}.card-header-with-badge{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.badge-success{background-color:rgba(52,199,89,.12);border-color:var(--success-glow);color:var(--success)}.info-list{display:flex;flex-direction:column;gap:12px}.info-row{display:flex;justify-content:space-between;align-items:center;font-size:13.5px;padding-bottom:6px;border-bottom:1px solid var(--border-color)}.info-row:last-child{border-bottom:none;padding-bottom:0}.info-row .label{color:var(--text-secondary)}.info-row .val{font-weight:500;color:var(--text-main);text-align:right}.code-font{font-family:SFMono-Regular,Consolas,"Liberation Mono",Menlo,Courier,monospace;font-size:12px;background-color:var(--dock-hover);color:var(--text-main);padding:2px 6px;border-radius:4px;border:1px solid var(--border-color)}.text-muted{color:var(--text-secondary)!important}.storage-container{display:flex;flex-direction:column;gap:6px;margin-top:8px}.progress-bar-container{width:100%;height:8px;background-color:var(--border-color);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary),#5ac8fa);border-radius:4px;transition:width .8s ease-out}.storage-labels{display:flex;justify-content:space-between;font-size:12px;font-weight:500;color:var(--text-secondary)}.battery-visual-container{display:flex;align-items:center;justify-content:center;gap:20px;padding:10px 0}.battery-icon-container{position:relative;display:flex;align-items:center}.battery-body{width:90px;height:42px;border:3px solid var(--text-secondary);border-radius:8px;padding:3px;display:flex;align-items:center}.battery-level-fill{height:100%;background-color:var(--success);border-radius:3px;box-shadow:0 0 10px var(--success-glow);transition:width .8s cubic-bezier(.4, 0, .2, 1),background-color var(--transition)}.battery-tip{width:5px;height:14px;background-color:var(--text-secondary);border-radius:0 3px 3px 0;margin-left:2px}.battery-percent-big{font-size:34px;font-weight:700;letter-spacing:-1px;color:var(--text-main)}.control-panel-card{display:flex;flex-direction:column}.control-panel-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:20px}.stats-badge{background-color:rgba(0,122,255,.1);border:1px solid var(--border-color-glow);color:var(--primary);font-size:14px;font-weight:600;padding:6px 14px;border-radius:12px;white-space:nowrap}.keyboard-wrapper{background-color:rgba(0,0,0,.2);border:1px solid var(--border-color);padding:16px;border-radius:16px;margin-bottom:20px;overflow-x:auto}.keyboard-layout{display:flex;flex-direction:column;gap:5px;min-width:760px;margin:0 auto}.keyboard-row{display:flex;gap:5px;justify-content:center}.key-cap{background:linear-gradient(180deg,#2a2e3d,#1a1c26);border:1px solid rgba(255,255,255,.05);border-bottom:3px solid #0d0f14;color:#c7c7cc;font-family:var(--font-family);font-size:12px;font-weight:500;display:flex;align-items:center;justify-content:center;border-radius:6px;height:42px;min-width:42px;cursor:default;user-select:none;box-shadow:0 2px 4px rgba(0,0,0,.4);transition:80ms}.key-cap.pressed-green{background:linear-gradient(180deg,#34c759,#28a745)!important;border-color:#28a745!important;border-bottom-width:1px!important;transform:translateY(2px);color:#fff;box-shadow:0 0 12px var(--success-glow)}.key-cap.pressed-red{background:linear-gradient(180deg,#ff3b30,#dc3545)!important;border-color:#dc3545!important;border-bottom-width:1px!important;transform:translateY(2px);color:#fff;box-shadow:0 0 12px var(--danger-glow)}.key-cap.pressing{background:linear-gradient(180deg,#007aff,#0056b3)!important;border-color:#0056b3!important;border-bottom-width:1px!important;transform:translateY(2px)!important;color:#fff!important;box-shadow:0 0 15px rgba(0,122,255,.8)!important}.key-cap:active{transform:translateY(1px);border-bottom-width:1px}.keyboard-controls{display:flex;gap:12px;margin-top:10px}.btn{border:none;border-radius:10px;padding:12px 20px;font-family:var(--font-family);font-size:13.5px;font-weight:600;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;gap:8px}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:#0066d6;box-shadow:0 4px 16px rgba(0,122,255,.4)}.btn-secondary{background-color:rgba(255,255,255,.05);color:var(--text-main);border:1px solid var(--border-color)}.btn-secondary:hover{background-color:rgba(255,255,255,.09)}.btn-success{background-color:var(--success);color:#fff}.btn-success:hover{background-color:#248a3d;box-shadow:0 4px 16px rgba(52,199,89,.4)}.btn-red{background-color:var(--danger);color:#fff}.btn-red:hover{background-color:#cf2a27;box-shadow:0 4px 16px rgba(255,59,48,.4)}.test-result-alert{display:flex;gap:16px;background-color:rgba(52,199,89,.08);border:1px solid var(--success-glow);padding:16px;border-radius:12px;margin-top:20px;animation:.4s ease-out fadeIn}.alert-icon{font-size:24px}.alert-content h4{font-size:15px;font-weight:600;color:var(--success);margin-bottom:4px}.alert-content p{font-size:13.5px;color:var(--text-secondary)}.screen-test-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-top:20px}.screen-btn{border:none;padding:24px 16px;font-family:var(--font-family);font-size:14px;font-weight:600;border-radius:12px;cursor:pointer;transition:var(--transition)}.screen-btn.btn-red{background-color:rgba(255,59,48,.15);border:1px solid var(--danger-glow);color:#ff6b64}.screen-btn.btn-red:hover{background-color:var(--danger);color:#fff;box-shadow:0 4px 16px var(--danger-glow)}.screen-btn.btn-green{background-color:rgba(52,199,89,.15);border:1px solid var(--success-glow);color:#63e681}.screen-btn.btn-green:hover{background-color:var(--success);color:#fff;box-shadow:0 4px 16px var(--success-glow)}.screen-btn.btn-blue{background-color:rgba(0,122,255,.15);border:1px solid var(--border-color-glow);color:#5ac8fa}.screen-btn.btn-blue:hover{background-color:var(--primary);color:#fff;box-shadow:0 4px 16px var(--primary-glow)}.screen-btn.btn-yellow{background-color:rgba(255,204,0,.15);border:1px solid rgba(255,204,0,.3);color:#ffd60a}.screen-btn.btn-yellow:hover{background-color:#fc0;color:#000;box-shadow:0 4px 16px rgba(255,204,0,.4)}.screen-btn.btn-gray{background-color:rgba(142,142,147,.15);border:1px solid rgba(142,142,147,.3);color:#aeaeb2}.screen-btn.btn-gray:hover{background-color:#8e8e93;color:#fff;box-shadow:0 4px 16px rgba(142,142,147,.4)}.screen-btn.btn-white{background-color:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff}.screen-btn.btn-white:hover{background-color:#fff;color:#000;box-shadow:0 4px 16px rgba(255,255,255,.3)}.screen-btn.btn-black{background-color:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.1);color:var(--text-secondary)}.screen-btn.btn-black:hover{background-color:#000;color:#fff;border-color:rgba(255,255,255,.3);box-shadow:0 4px 16px rgba(0,0,0,.8)}.sound-button-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px}.sound-btn{padding:16px 12px;font-size:13px;justify-content:center}.sound-btn-large{grid-column:1/-1;padding:16px;font-size:14px;justify-content:center}.audio-now-playing{display:flex;align-items:center;gap:10px;background-color:var(--dock-hover);color:var(--text-main);border:1px solid var(--border-color);padding:12px;border-radius:12px;margin-top:20px;font-size:13.5px}.playing-icon{font-size:16px}.btn-orange{background-color:var(--warning);color:#fff}.btn-orange:hover{background-color:#d67d00;box-shadow:0 4px 16px var(--warning-glow)}.btn-purple{background-color:#af52de;color:#fff}.btn-purple:hover{background-color:#9237c2;box-shadow:0 4px 16px rgba(175,82,222,.4)}.btn-teal{background-color:#5ac8fa;color:#000}.btn-teal:hover{background-color:#2fb9f8;box-shadow:0 4px 16px rgba(90,200,250,.4)}.btn-pink{background-color:#ff2d55;color:#fff}.btn-pink:hover{background-color:#e3183f;box-shadow:0 4px 16px rgba(255,45,85,.4)}.mic-controls{display:flex;margin-bottom:20px}.mic-meter-container{display:flex;flex-direction:column;gap:8px;margin-top:10px}.mic-volume-label{font-size:12.5px;color:var(--text-secondary);font-weight:500}.volume-bar-outer{width:100%;height:10px;background-color:var(--border-color);border-radius:5px;overflow:hidden}.volume-bar-inner{height:100%;background:linear-gradient(90deg,var(--success),#34c759);border-radius:5px;transition:width .1s}.audio-canvas{width:100%;height:70px;background-color:rgba(0,0,0,.15);border:1px solid var(--border-color);border-radius:10px;margin-top:6px}.mic-now-recording{font-size:13px;color:var(--text-muted);margin-top:12px}.camera-header{margin-bottom:20px}.camera-viewport-container{width:100%;display:flex;justify-content:center;margin-bottom:20px}.camera-viewport-mask{width:100%;max-width:600px;aspect-ratio:16/10;background-color:#000;border-radius:16px;border:1px solid var(--border-color);position:relative;overflow:hidden;box-shadow:0 8px 32px rgba(0,0,0,.5)}#camera-video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.camera-overlay-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-secondary);background-color:#050608}.placeholder-icon{font-size:40px;opacity:.3}.camera-controls{display:flex;justify-content:center}.charger-display-layout{display:flex;flex-direction:column;align-items:center;gap:30px;padding:20px 0}@media (min-width:680px){.charger-display-layout{flex-direction:row;justify-content:center;gap:60px}}.charger-icon-huge-container{position:relative;width:160px;height:160px;background-color:rgba(255,255,255,.02);border:1px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.charger-icon-huge{font-size:70px;filter:drop-shadow(0 2px 10px rgba(0, 0, 0, .4));transition:transform var(--transition)}.charger-status-glow{position:absolute;width:100%;height:100%;border-radius:50%;box-shadow:0 0 40px rgba(255,59,48,0);transition:box-shadow .5s ease-out}.charger-display-layout.connected .charger-icon-huge{transform:rotate(45deg);filter:drop-shadow(0 0 16px rgba(52, 199, 89, .4))}.charger-display-layout.connected .charger-status-glow{box-shadow:0 0 40px rgba(52,199,89,.15)}.charger-details-box{flex-grow:1;max-width:500px}.charger-header-status h3{font-size:22px;font-weight:700;margin-bottom:4px}#color-overlay,#touch-fullscreen-overlay,.fullscreen-color-overlay{position:fixed!important;top:0!important;bottom:0!important;left:0!important;right:0!important;width:100vw!important;width:100dvw!important;height:100vh!important;height:100dvh!important;height:100lvh!important;inset:0!important;z-index:2147483647!important;cursor:pointer;padding:0!important;box-sizing:border-box!important;margin:0!important;touch-action:none!important;-webkit-touch-callout:none!important;-webkit-user-select:none!important;user-select:none!important}#color-overlay-canvas,#touch-fullscreen-canvas{position:absolute!important;top:0!important;bottom:0!important;left:0!important;right:0!important;width:100%!important;height:100%!important;z-index:2147483647!important;touch-action:none!important}#color-overlay:-webkit-full-screen,#color-overlay:fullscreen,#touch-fullscreen-overlay:-webkit-full-screen,#touch-fullscreen-overlay:fullscreen{position:fixed!important;top:0!important;bottom:0!important;left:0!important;right:0!important;width:100vw!important;width:100dvw!important;height:100vh!important;height:100dvh!important;inset:0!important;margin:0!important;padding:0!important;z-index:2147483647!important}#color-overlay::backdrop,#touch-fullscreen-overlay::backdrop,:-webkit-full-screen::backdrop,:fullscreen::backdrop{background-color:var(--fullscreen-bg-color,#ff3b30)!important}.fullscreen-color-exit-tip{background-color:rgba(0,0,0,.7);backdrop-filter:blur(4px);color:rgba(255,255,255,.8);font-size:12px;font-weight:600;padding:8px 18px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;pointer-events:none;animation:3s forwards fadeOutTip;position:absolute;top:max(30px,calc(15px + env(safe-area-inset-top)))}.promotion-gpu-driver{width:100%;height:8px;background:linear-gradient(90deg,#ff9500,#fc0,#ff3b30,#007aff,#34c759,#ff9500);background-size:300% 100%;border-radius:4px;transform:translate3d(0,0,0);will-change:transform,background-position;animation:.25s linear infinite driveProMotion;margin-bottom:12px}@keyframes driveProMotion{0%{background-position:0 0;transform:translate3d(0,0,0)}50%{transform:translate3d(2px,0,0)}100%{background-position:300% 0;transform:translate3d(0,0,0)}}@keyframes fadeOutTip{0%,75%{opacity:1}100%{opacity:0}}@media (max-width:768px){.macos-dock{width:calc(100% - 20px);bottom:12px;bottom:calc(12px + env(safe-area-inset-bottom));border-radius:20px;gap:4px;padding:6px 8px;box-sizing:border-box;overflow-x:auto;white-space:nowrap;display:flex;flex-wrap:nowrap;justify-content:flex-start;-webkit-overflow-scrolling:touch;z-index:9990;pointer-events:auto;touch-action:manipulation}.macos-dock::-webkit-scrollbar{display:none}.dock-item{width:44px;height:52px;border-radius:12px;gap:2px;flex-shrink:0;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.dock-icon{font-size:18px}.dock-label{font-size:8px}.dock-item:hover{transform:none}.dock-item.active::after{bottom:2px}.main-content{padding:15px 15px 90px;height:100vh;overflow-y:auto}.top-header{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:15px}.status-indicator{justify-content:center;width:100%}.header-title h2{font-size:20px}.inputs-grid,.telemetry-grid{grid-template-columns:1fr!important;gap:15px}.keyboard-wrapper{overflow-x:auto;width:100%;-webkit-overflow-scrolling:touch;padding-bottom:10px;border:1px solid var(--border-color);border-radius:10px;background:rgba(0,0,0,.2)}.keyboard-layout{min-width:780px;padding:10px}.card-grid{grid-template-columns:1fr!important}.camera-viewport-mask{max-width:100%;aspect-ratio:4/3;border-radius:12px}}.keyboard-row.touchbar-row{background:rgba(0,0,0,.6)!important;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:3px!important;display:flex;gap:2px!important;margin-bottom:10px;box-shadow:inset 0 2px 4px rgba(0,0,0,.8)}.keyboard-row.touchbar-row .key-cap{border-radius:0!important;border:none!important;background:0 0!important;height:26px!important;font-size:10.5px!important;font-weight:500!important;color:#8e8e93;box-shadow:none!important}.keyboard-row.touchbar-row .key-cap.pressed-green{background:var(--success)!important;color:#fff!important;box-shadow:0 0 8px var(--success-glow)!important}.keyboard-row.touchbar-row .key-cap.pressed-red{background:var(--danger)!important;color:#fff!important;box-shadow:0 0 8px var(--danger-glow)!important}.touchbar-sub-wrapper{display:flex;gap:2px;background:rgba(0,0,0,.6);border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:3px;flex-grow:1;height:32px;align-items:center;box-shadow:inset 0 2px 4px rgba(0,0,0,.8)}.touchbar-sub-wrapper .key-cap{border-radius:0!important;border:none!important;background:0 0!important;height:26px!important;font-size:10.5px!important;font-weight:500!important;color:#8e8e93;flex-grow:1;box-shadow:none!important}.touchbar-sub-wrapper .key-cap.pressed-green{background:var(--success)!important;color:#fff!important;box-shadow:0 0 8px var(--success-glow)!important}.touchbar-sub-wrapper .key-cap.pressed-red{background:var(--danger)!important;color:#fff!important;box-shadow:0 0 8px var(--danger-glow)!important}.dock-status-dot{position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;background:0 0;transition:.3s}.dock-status-dot.passed{background:var(--success);box-shadow:0 0 6px var(--success-glow)}.dock-status-dot.failed{background:var(--danger);box-shadow:0 0 6px var(--danger-glow)}@media print{body{background:#fff!important;color:#000!important}body>*{display:none!important}#report-printable-area,#report-printable-area *{display:block!important;visibility:visible!important}#report-printable-area{display:block!important;position:absolute!important;left:0!important;top:0!important;width:100%!important;max-width:100%!important;border:none!important;background:#fff!important;color:#000!important;padding:0!important;margin:0!important;box-shadow:none!important}#report-printable-area h2,#report-printable-area h4{color:#000!important;background:0 0!important;-webkit-text-fill-color:initial!important;border-bottom:2px solid #000!important}.report-meta-inputs{background:0 0!important;border:1px solid #ccc!important;grid-template-columns:1fr 1fr!important;gap:20px!important}.report-meta-inputs input,.report-meta-inputs textarea{border:1px solid #999!important;background:#fff!important;color:#000!important}#report-observations-section{background:#f9f9f9!important;border:1px dashed #999!important;color:#000!important}#report-observations-text{color:#000!important}#report-checklist-container>div{background:#f9f9f9!important;border:1px solid #e0e0e0!important;color:#000!important}#report-screenshots-container>div{background:#fff!important;border:1px solid #ccc!important}#report-screenshots-container img{border:1px solid #999!important}.no-print{display:none!important}}.zoom-pill{background:var(--dock-hover);border:1px solid var(--border-color);color:var(--text-main);padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;cursor:pointer;transition:var(--transition);height:32px;display:inline-flex;align-items:center;justify-content:center}.zoom-pill.active,.zoom-pill:hover{background:var(--primary);border-color:var(--primary-glow);box-shadow:0 0 8px var(--primary-glow);color:#fff}.ios-switch{position:relative;display:inline-block;width:50px;height:28px}.ios-switch input{opacity:0;width:0;height:0}.ios-switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#393e46;transition:.3s;border-radius:28px}.ios-switch .slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.ios-switch input:checked+.slider{background-color:#34c759}.ios-switch input:checked+.slider:before{transform:translateX(22px)}#color-overlay,#touch-fullscreen-overlay{touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}@supports (padding-top:env(safe-area-inset-top)){.top-header{padding-top:env(safe-area-inset-top)}}.part-check-card{display:flex;align-items:center;gap:12px;background:var(--dock-hover);border:1px solid var(--border-color);border-radius:10px;padding:10px 14px;cursor:pointer;user-select:none;transition:.2s}.part-check-card:hover{background:var(--dock-hover);border-color:var(--border-color-glow);transform:translateY(-1px)}.part-check-card.checked{background:rgba(52,199,89,.12);border-color:rgba(52,199,89,.4)}.part-check-card .part-checkbox{width:22px;height:22px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;transition:.2s;flex-shrink:0;background:var(--dock-hover);border:1px solid var(--border-color);color:transparent}.part-check-card.checked .part-checkbox{background:#34c759;border-color:#34c759;color:#fff;box-shadow:0 0 10px rgba(52,199,89,.4)}.part-check-card .part-label{font-size:13px;font-weight:500;color:var(--text-secondary);transition:color .2s;flex-grow:1}.part-check-card.checked .part-label{color:var(--text-main);font-weight:600}[data-theme=light] .btn-secondary{background-color:#f0f2f7;color:var(--text-main);border-color:rgba(0,0,0,.12)}[data-theme=light] .btn-secondary:hover{background-color:#e4e7ec;border-color:rgba(0,0,0,.2)}[data-theme=light] .part-check-card{background:#fff;border-color:rgba(0,0,0,.1);box-shadow:0 1px 4px rgba(0,0,0,.03)}[data-theme=light] .part-check-card:hover{background:#f8f9fc;border-color:rgba(0,113,227,.3)}[data-theme=light] .part-check-card.checked{background:rgba(52,199,89,.08);border-color:rgba(52,199,89,.45)}[data-theme=light] .part-check-card .part-checkbox{background:#f0f2f7;border-color:rgba(0,0,0,.15)}[data-theme=light] .part-check-card.checked .part-checkbox{background:#28a745;border-color:#28a745;color:#fff}[data-theme=light] .part-check-card .part-label{color:#555558}[data-theme=light] .part-check-card.checked .part-label{color:#1d1d1f;font-weight:600}[data-theme=light] .banner-warning{background-color:rgba(245,124,0,.08);border-color:rgba(245,124,0,.25);color:#b75500}[data-theme=light] .banner-info{background-color:rgba(0,122,255,.08);border-color:rgba(0,122,255,.2);color:#0056b3}[data-theme=light] .keyboard-wrapper{background-color:#e5e8ec;border-color:rgba(0,0,0,.12)}[data-theme=light] .key-cap{background:linear-gradient(180deg,#fff,#f0f2f5);border:1px solid rgba(0,0,0,.12);border-bottom:3px solid #c5cad3;color:#1d1d1f;box-shadow:0 2px 4px rgba(0,0,0,.08)}[data-theme=light] .key-cap:active{background:#e1e4e8}[data-theme=light] .screen-btn.btn-white{background-color:#fff;border:1px solid rgba(0,0,0,.18);color:#1d1d1f;box-shadow:0 2px 8px rgba(0,0,0,.06)}[data-theme=light] .screen-btn.btn-black{background-color:#1d1d1f;border:1px solid #1d1d1f;color:#fff}[data-theme=light] .screen-btn.btn-yellow{background-color:rgba(245,124,0,.1);border-color:rgba(245,124,0,.3);color:#b75500}[data-theme=light] .screen-btn.btn-gray{background-color:rgba(142,142,147,.15);border-color:rgba(142,142,147,.3);color:#48484a}[data-theme=light] #trackpad-test-area{background:rgba(0,0,0,.03)!important;box-shadow:inset 0 2px 6px rgba(0,0,0,.06)!important}[data-theme=light] .audio-canvas{background-color:rgba(0,0,0,.03)}[data-theme=light] .camera-overlay-placeholder{background-color:#f0f2f5}