@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Sora:wght@500;600;700&display=swap";:root{--bg: #F0FAFD;--bg-top: #E6F8FC;--surface: #FFFFFF;--surface-soft: #F3FBFD;--text: #0B1F2A;--text-secondary: #3D5A68;--text-muted: #7A93A0;--accent: #0891B2;--accent-hover: #0E7490;--accent-bright: #7df8ff;--accent-soft: rgba(125, 248, 255, .28);--accent-2: #0284C7;--accent-2-soft: #E0F2FE;--border: #D5EBF2;--border-strong: #B8DCE8;--success: #0D9488;--success-soft: #CCFBF1;--warning: #D97706;--warning-soft: #FEF3C7;--danger: #DC2626;--danger-soft: #FEE2E2;--shadow-sm: 0 2px 8px rgba(8, 145, 178, .06);--shadow-md: 0 8px 24px rgba(8, 145, 178, .08);--shadow-lg: 0 16px 40px rgba(8, 145, 178, .1);--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 24px;--nav-h: 100px;--page-pad: 16px;--font-display: "Sora", "PingFang SC", sans-serif;--font-body: "Manrope", "PingFang SC", sans-serif}*{padding:0;margin:0;box-sizing:border-box}html,body,#app{width:100%;min-height:100%}body{overflow-x:hidden;color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.5;background:var(--bg);-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}ul,ol{list-style:none}button{border:0;outline:none;background:none;font-family:inherit}input,textarea{outline:none;border:none;font-family:inherit}textarea{resize:none;overflow:auto}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600}.page-shell{position:fixed;top:0;right:0;bottom:0;left:0;overflow:auto;-webkit-overflow-scrolling:touch;background:radial-gradient(ellipse 80% 50% at 10% -10%,rgba(125,248,255,.45),transparent 55%),radial-gradient(ellipse 70% 45% at 100% 0%,rgba(2,132,199,.12),transparent 50%),linear-gradient(180deg,var(--bg-top) 0%,var(--bg) 40%,#F7FCFE 100%);padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px) + 24px)}.page-title{text-align:center;font-family:var(--font-display);font-size:18px;font-weight:600;color:var(--text);padding:16px 16px 8px;letter-spacing:.02em}.page-top{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0 8px}.page-top .page-title{flex:1;min-width:0;padding:0;text-align:left}.page-header{display:flex;align-items:center;justify-content:space-between;padding:16px var(--page-pad) 8px}.page-header .back-btn{width:36px;height:36px;border-radius:12px;background:var(--surface);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--text);box-shadow:var(--shadow-sm)}.surface-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.soft-card{background:var(--surface-soft);border:1px solid var(--border);border-radius:var(--radius-md)}.primary-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;border-radius:14px;background:linear-gradient(135deg,#0284c7,#0ea5e9 45%,#7df8ff);color:#0b1f2a;font-size:15px;font-weight:600;box-shadow:0 8px 20px #0ea5e952;transition:transform .15s ease,opacity .15s ease}.primary-btn:active{transform:scale(.98);opacity:.92}.primary-btn.disabled{opacity:.45;pointer-events:none;box-shadow:none}.seg-tabs{display:flex;gap:4px;padding:4px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:14px}.seg-tabs .tab{flex:1;text-align:center;padding:10px 0;border-radius:10px;color:var(--text-muted);font-size:13px;font-weight:500;transition:all .2s ease}.seg-tabs .tab.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.status-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600}.status-pill.on{background:var(--success-soft);color:var(--success)}.status-pill.off{background:#f1f5f9;color:var(--text-muted)}.status-pill.pending{background:var(--warning-soft);color:var(--warning)}.status-pill.failed{background:var(--danger-soft);color:var(--danger)}.empty-state{text-align:center;color:var(--text-muted);padding:48px 16px;font-size:14px}
