@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(/static/media/inter-cyrillic-ext-400-normal.39fbf8d2c4abc46f721f.woff2) format("woff2"),url(/static/media/inter-cyrillic-ext-400-normal.818b84180553acc613f3.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(/static/media/inter-cyrillic-400-normal.89455522650c3fb3654c.woff2) format("woff2"),url(/static/media/inter-cyrillic-400-normal.dd21c71421d58232ef03.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(/static/media/inter-greek-ext-400-normal.f2ef63e732b18d636044.woff2) format("woff2"),url(/static/media/inter-greek-ext-400-normal.fc80974ec6969ee03fd2.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(/static/media/inter-greek-400-normal.e685387f69602567b1da.woff2) format("woff2"),url(/static/media/inter-greek-400-normal.b412faded087fbcfa4ff.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(/static/media/inter-vietnamese-400-normal.44c9df135eec470b0ab6.woff2) format("woff2"),url(/static/media/inter-vietnamese-400-normal.aaa15d735e3826061950.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(/static/media/inter-latin-ext-400-normal.210fb826cb25acbd4094.woff2) format("woff2"),url(/static/media/inter-latin-ext-400-normal.c616205185f0d3677df9.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:400;src:url(/static/media/inter-latin-400-normal.eca1e21531598d5db58f.woff2) format("woff2"),url(/static/media/inter-latin-400-normal.2ea1079c0069eb040a52.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:500;src:url(/static/media/inter-cyrillic-ext-500-normal.b2740f247d3be4a05ca0.woff2) format("woff2"),url(/static/media/inter-cyrillic-ext-500-normal.e9974e820735012b025b.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:500;src:url(/static/media/inter-cyrillic-500-normal.33a76a7cbcfcb7076534.woff2) format("woff2"),url(/static/media/inter-cyrillic-500-normal.72f7a9db87626ca30c76.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:500;src:url(/static/media/inter-greek-ext-500-normal.4c6d520b97e3bb4ef613.woff2) format("woff2"),url(/static/media/inter-greek-ext-500-normal.47cc2391a7edf82cf4e1.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:500;src:url(/static/media/inter-greek-500-normal.e7cec4ef4f6780e90a52.woff2) format("woff2"),url(/static/media/inter-greek-500-normal.6d34bacda2be54829b97.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:500;src:url(/static/media/inter-vietnamese-500-normal.63d02ea896a7406849b6.woff2) format("woff2"),url(/static/media/inter-vietnamese-500-normal.296d66c0bba9086788b9.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:500;src:url(/static/media/inter-latin-ext-500-normal.cdb4dd5dc508fe6e7398.woff2) format("woff2"),url(/static/media/inter-latin-ext-500-normal.2f93aaa35e870cec4704.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:500;src:url(/static/media/inter-latin-500-normal.b7c27c60f848f2083f45.woff2) format("woff2"),url(/static/media/inter-latin-500-normal.5014db633e71a7741bf5.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(/static/media/inter-cyrillic-ext-600-normal.8c6413cdd8004fde0a19.woff2) format("woff2"),url(/static/media/inter-cyrillic-ext-600-normal.d6d44e8705a633436dfe.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(/static/media/inter-cyrillic-600-normal.fdee7b66c2d88216b75f.woff2) format("woff2"),url(/static/media/inter-cyrillic-600-normal.8609e1b95284125f21cb.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(/static/media/inter-greek-ext-600-normal.c3c138d889b8c929822c.woff2) format("woff2"),url(/static/media/inter-greek-ext-600-normal.c7983dac0ad6a359aef0.woff) format("woff");unicode-range:u+1f??}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(/static/media/inter-greek-600-normal.984050ecee12eabe9366.woff2) format("woff2"),url(/static/media/inter-greek-600-normal.d8b0044cf6afdd52b07b.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(/static/media/inter-vietnamese-600-normal.6984cf5e8583fac83be3.woff2) format("woff2"),url(/static/media/inter-vietnamese-600-normal.04bb56ffa463ab55708d.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(/static/media/inter-latin-ext-600-normal.8148c3ae14dfaefc62ca.woff2) format("woff2"),url(/static/media/inter-latin-ext-600-normal.4d0d5017d71ea1750fc1.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:Inter;font-style:normal;font-weight:600;src:url(/static/media/inter-latin-600-normal.69a8d1d484967aba2389.woff2) format("woff2"),url(/static/media/inter-latin-600-normal.f10265da6bd8d66999ac.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:500;src:url(/static/media/jetbrains-mono-cyrillic-ext-500-normal.12b2790f450a0135a4cd.woff2) format("woff2"),url(/static/media/jetbrains-mono-cyrillic-ext-500-normal.7d1c47b77c64589c778c.woff) format("woff");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:500;src:url(/static/media/jetbrains-mono-cyrillic-500-normal.c859e1163e47db816b3f.woff2) format("woff2"),url(/static/media/jetbrains-mono-cyrillic-500-normal.508a23756dc3eb0a5f3f.woff) format("woff");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:500;src:url(/static/media/jetbrains-mono-greek-500-normal.4ab6aec659058b6da634.woff2) format("woff2"),url(/static/media/jetbrains-mono-greek-500-normal.00b2594f4631af11e7ec.woff) format("woff");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:500;src:url(/static/media/jetbrains-mono-vietnamese-500-normal.e8fe161b5afbc431d03f.woff2) format("woff2"),url(/static/media/jetbrains-mono-vietnamese-500-normal.61b340037f78bc2cdd7f.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:500;src:url(/static/media/jetbrains-mono-latin-ext-500-normal.4a98f2079d9f35ae42c1.woff2) format("woff2"),url(/static/media/jetbrains-mono-latin-ext-500-normal.a9148377892cf3386f26.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-display:swap;font-family:JetBrains Mono;font-style:normal;font-weight:500;src:url(/static/media/jetbrains-mono-latin-500-normal.bb50084be2b43ba7b98c.woff2) format("woff2"),url(/static/media/jetbrains-mono-latin-500-normal.b6ddca2679c2b4a27c68.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--bg:#0a0908;--surface-1:#141210;--surface-2:#1c1916;--border:#2a2622;--border-strong:#3a342e;--text:#f5efe3;--text-muted:#a89f90;--text-dim:#6b6358;--accent:#d9c2a0;--accent-strong:#c9a77c;--danger:#c8553d;--success:#8fa66e;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--fs-mono-micro:0.6875rem;--fs-sm:0.8125rem;--fs-body:0.9375rem;--fs-lg:1.0625rem;--fs-xl:1.375rem;--fs-2xl:1.875rem;--fs-display:2.5rem;--lh-body:1.5;--lh-heading:1.2;--lh-mono:1;--tracking-mono:0.06em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:48px;--space-9:64px;--space-10:96px;--radius-xs:2px;--radius-sm:6px;--radius-md:10px;--elev-1:0 1px 0 #0006;--dur-micro:120ms;--dur-std:200ms;--dur-screen:320ms;--ease-screen:cubic-bezier(0.2,0.8,0.2,1)}.mono-label{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-family:var(--font-mono);font-size:.6875rem;font-size:var(--fs-mono-micro);font-weight:500;letter-spacing:.06em;letter-spacing:var(--tracking-mono);line-height:1;line-height:var(--lh-mono);text-transform:uppercase}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);margin:0}code{font-family:var(--font-mono)}:root,[data-theme=light]{--app-bg:#eae8e3;--app-bg-alt:#e6e4df;--header-bg:#ebe9e4;--text-primary:#1a1a1a;--text-secondary:#1a1a1ab3;--text-muted:#1a1a1a8c;--card-bg:#f8f6f2d9;--card-bg-hover:#fcfaf6f2;--border:#00000014;--border-strong:#0000001f;--shadow:#0000000f;--dropdown-bg:#f5f3ef;--dropdown-hover:#0000000f}[data-theme=dark]{--app-bg:#3d4a5c;--app-bg-alt:#354052;--header-bg:#0e0c08;--text-primary:#f0f0f0;--text-secondary:#ffffffd9;--text-muted:#fff9;--card-bg:#ffffff14;--card-bg-hover:#ffffff1f;--border:#ffffff1a;--border-strong:#ffffff26;--shadow:#0000004d;--dropdown-bg:#2d3748;--dropdown-hover:#ffffff14}[data-theme=dark] .App-header{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#0a0805f0;border-bottom-color:#d4a85026}body,html{background:#eae8e3;background:var(--app-bg);color:#1a1a1a;color:var(--text-primary);margin:0;min-height:100%;padding:0}#root{min-height:100vh}.App{background:#eae8e3;background:var(--app-bg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.App,.App-header{color:#1a1a1a;color:var(--text-primary)}.App-header{align-items:center;background:#ebe9e4;background:var(--header-bg);border-bottom:1px solid #00000014;border-bottom:1px solid var(--border);box-shadow:0 1px 4px #0000000f;box-shadow:0 1px 4px var(--shadow);display:flex;flex-wrap:nowrap;gap:11px;justify-content:space-between;padding:11px 16px;position:relative;z-index:1200}.App--hub-active .App-header{background:#0000;border-bottom:none;box-shadow:none;left:0;padding:24px;position:absolute;right:0;top:0;z-index:100}.App--hub-active .App-header-center img{height:80px!important}.App--hub-active .App-header-center{opacity:1;pointer-events:auto}.App-header-left{align-items:center;display:flex;flex:1 1;justify-content:flex-start;min-width:0}.App-header-center{align-items:center;display:flex;flex:0 0 auto;justify-content:center}.App-header-right{align-items:center;display:flex;flex:1 1;justify-content:flex-end;min-width:0}.App-header h1{font-size:.84rem;font-weight:600;letter-spacing:-.02em;margin:0}.App-header h1,.theme-toggle{color:#1a1a1a;color:var(--text-primary)}.theme-toggle{background:#f8f6f2d9;background:var(--card-bg);border:1px solid #00000014;border:1px solid var(--border);border-radius:7px;cursor:pointer;font-size:14px;line-height:1;padding:5px 10px;transition:background .2s ease,transform .2s ease}.theme-toggle:hover{background:#fcfaf6f2;background:var(--card-bg-hover);transform:scale(1.05)}.App--hub-active .theme-toggle{background:#0000;border-color:#0000;color:#e8e8ec99}.App--hub-active .theme-toggle:hover{background:#ffffff14;color:#e8e8ece6}.App--hub-active .header-profile-trigger{color:#e8e8ec99}.App--hub-active .App-header .header-profile-trigger:hover{background:#ffffff14}.theme-toggle:focus-visible{outline:2px solid #00a2ff;outline-offset:2px}.profile-dropdown-menu{background:#f5f3ef;background:var(--dropdown-bg);border:1px solid #0000001f;border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 4px 12px #0000000f;box-shadow:0 4px 12px var(--shadow);z-index:1400}.profile-dropdown-item,.profile-dropdown-menu{color:#1a1a1a;color:var(--text-primary)}.profile-dropdown-item:hover{background:#0000000f;background:var(--dropdown-hover)}.profile-dropdown-item-sub{color:#1a1a1ab3;color:var(--text-secondary);font-size:12px;opacity:.7}.profile-dropdown-divider{background:#0000001f;background:var(--border-strong);height:1px;margin:8px 0}.App-header .header-profile-trigger:hover{background:#0000000f;background:var(--dropdown-hover)}.builder-feed-btn{align-items:center;background:#00a2ff33;border:1px solid #00a2ff66;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.builder-feed-btn:hover{background:#00a2ff4d;border-color:#00a2ff;transform:translateY(-1px)}.builder-feed-btn:active{transform:translateY(0)}.sign-in-btn{background:#00a2ff;border:1px solid #08c;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background .2s ease,filter .2s ease}.sign-in-btn:hover{background:#08c;filter:brightness(1.05)}.error-screen,.loading-screen{color:#1a1a1ab3;color:var(--text-secondary);text-align:center}.error-screen h2,.loading-screen h2{font-size:1.5rem;font-weight:600;margin:0 0 12px}.error-screen button{background:#00a2ffcc;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;margin-top:16px;padding:10px 20px}.setup-timeline-bar{padding-bottom:max(16px,env(safe-area-inset-bottom));padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}.setup-timeline-category-btn:focus-visible{outline:2px solid #00a2ffb3;outline-offset:2px}.camera-controls{padding-left:max(20px,env(safe-area-inset-left))}.camera-button{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:12px;box-shadow:0 4px 16px #0003,inset 0 1px 0 #ffffff0f;color:#ffffffe6;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;min-width:120px;padding:12px 20px;transition:background .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}.camera-button:hover{background:#00a2ff2e;border-color:#00a2ff66;box-shadow:0 4px 20px #00a2ff26,inset 0 1px 0 #ffffff14;transform:translateX(2px)}.camera-button-active{background:#00a2ff40!important;border-color:#00a2ff8c!important;box-shadow:0 0 20px #00a2ff33,inset 0 1px 0 #ffffff14!important;color:#fff!important}.camera-button-active:hover{background:#00a2ff59!important;border-color:#00a2ffa6!important}.camera-button:focus-visible{outline:2px solid #00a2ffb3;outline-offset:2px}.setup-list-box{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#0c0c12f2;border:1px solid #ffffff14;border-radius:16px;box-shadow:0 8px 32px #0000004d,inset 0 1px 0 #ffffff0f;padding:14px 18px;width:320px;z-index:1000}.setup-list-box .setup-list-box-inner::-webkit-scrollbar{width:6px}.setup-list-box .setup-list-box-inner::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.setup-list-box .setup-list-box-inner::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.setup-list-box h3{color:#fffffff2;font-size:15px;font-weight:600;margin:0}.setup-list-item{align-items:center;background:#ffffff0d;border:1px solid #ffffff0f;border-radius:10px;display:flex;font-size:13px;gap:10px;justify-content:space-between;margin-bottom:6px;padding:10px 12px}.setup-list-item span{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.setup-list-item button{background:#dc354540;border:1px solid #dc354566;border-radius:6px;color:#ffffffe6;cursor:pointer;flex-shrink:0;font-size:12px;font-weight:500;padding:4px 10px;transition:background .2s ease,border-color .2s ease}.setup-list-item button:hover{background:#dc354566;border-color:#dc354599}.app-sidebar{background:#0f0d0b;border-right:1px solid #2a2622;color:#f5efe3;display:flex;flex-direction:column;flex-shrink:0;padding:var(--space-4) 0;transition:width var(--dur-std);width:240px}.app-sidebar--collapsed{width:64px}.app-sidebar__brand{border-bottom:1px solid #2a2622;color:#f5efe3;font-weight:600;letter-spacing:.5px;margin-bottom:var(--space-3);padding:0 var(--space-5) var(--space-6);padding-bottom:var(--space-5)}.app-sidebar__brand-text{font-size:var(--fs-lg)}.app-sidebar__brand-mark{color:var(--accent);display:block;font-family:var(--font-mono);font-size:var(--fs-lg);text-align:center}.app-sidebar__list{display:flex;flex:1 1;flex-direction:column;gap:var(--space-1);list-style:none;margin:0;padding:0 var(--space-3)}.app-sidebar__link{align-items:center;border-left:0;border-radius:var(--radius-sm);color:#c5bcae;display:flex;font-size:var(--fs-body);font-weight:500;gap:var(--space-3);padding:var(--space-3);text-decoration:none;transition:background var(--dur-micro),color var(--dur-micro)}.app-sidebar__link:hover{background:#1c1916;color:#f5efe3}.app-sidebar__link--active{background:#d9c2a01f;border-left:0;color:#f5efe3}.app-sidebar__link--active:before{background:var(--accent);border-radius:2px;content:"";height:18px;margin-left:calc(var(--space-3)*-1);margin-right:calc(var(--space-3)*-1 + 4px);width:3px}.app-sidebar--collapsed .app-sidebar__link{justify-content:center;padding:var(--space-3) 0}.app-sidebar__collapse-btn{align-self:flex-end;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--fs-lg);margin:var(--space-3);padding:var(--space-2)}.app-sidebar__collapse-btn:hover{color:var(--text)}.app-sidebar--collapsed .app-sidebar__collapse-btn{align-self:center}.app-tabbar{background:var(--surface-1);border-top:1px solid var(--border);bottom:0;display:flex;height:64px;left:0;position:fixed;right:0;z-index:50}.app-tabbar__tab{align-items:center;border-top:2px solid #0000;color:var(--text-dim);display:flex;flex:1 1;flex-direction:column;gap:var(--space-1);justify-content:center;padding-top:2px;text-decoration:none;transition:color var(--dur-micro),border-color var(--dur-micro)}.app-tabbar__tab--active{border-top-color:var(--accent);color:var(--text)}.app-tabbar__label{display:none}.app-tabbar__tab--active .app-tabbar__label{display:inline}.app-shell{background:#0a0908;color:#f5efe3;display:flex;min-height:calc(100vh - 64px)}.app-shell__main{background:#0a0908;flex:1 1;min-width:0;overflow-x:hidden;padding-bottom:0}@media (max-width:1023px){.app-shell .app-sidebar{display:none}.app-shell__main{padding-bottom:64px}}@media (min-width:1024px){.app-shell .app-tabbar{display:none}}.ui-btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-weight:500;gap:var(--space-2);justify-content:center;transition:background var(--dur-micro),border-color var(--dur-micro),color var(--dur-micro),opacity var(--dur-micro);-webkit-user-select:none;user-select:none;white-space:nowrap}.ui-btn:disabled{cursor:not-allowed;opacity:.5}.ui-btn:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.ui-btn--sm{font-size:var(--fs-sm);height:28px;padding:0 var(--space-3)}.ui-btn--md{font-size:var(--fs-body);height:36px;padding:0 var(--space-4)}.ui-btn--lg{font-size:var(--fs-lg);height:44px;padding:0 var(--space-5)}.ui-btn--icon-only{padding:0;width:36px}.ui-btn--icon-only.ui-btn--sm{width:28px}.ui-btn--icon-only.ui-btn--lg{width:44px}.ui-btn--primary{background:var(--text);border-color:var(--text);color:var(--bg)}.ui-btn--primary:hover:not(:disabled){background:var(--accent);border-color:var(--accent)}.ui-btn--secondary{background:#0000;border-color:var(--border-strong);color:var(--text)}.ui-btn--secondary:hover:not(:disabled){background:var(--surface-1);border-color:var(--accent)}.ui-btn--ghost{background:#0000;border-color:#0000;color:var(--text)}.ui-btn--ghost:hover:not(:disabled){background:var(--surface-1)}.ui-btn--danger{background:#0000;border-color:var(--danger);color:var(--danger)}.ui-btn--danger:hover:not(:disabled){background:var(--danger);color:var(--text)}.ui-btn__spinner{animation:ui-btn-spin .7s linear infinite;border:1.5px solid;border-radius:50%;border-top:1.5px solid #0000;height:12px;width:12px}@keyframes ui-btn-spin{to{transform:rotate(1turn)}}.ui-input{display:flex;flex-direction:column;gap:var(--space-2)}.ui-input__label{color:var(--text-muted)}.ui-input__control{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);height:36px;outline:none;padding:var(--space-2) var(--space-3);transition:border-color var(--dur-micro),box-shadow var(--dur-micro)}.ui-input__control--textarea{height:auto;min-height:80px;resize:vertical}.ui-input__control--select{-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,#0000 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,#0000 50%);background-position:calc(100% - 16px),calc(100% - 11px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:var(--space-7)}.ui-input__control:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.ui-input__control--error{border-color:var(--danger)}.ui-input__control--error:focus{box-shadow:0 0 0 1px var(--danger)}.ui-input__control::placeholder,.ui-input__help{color:var(--text-dim)}.ui-input__error,.ui-input__help{font-size:var(--fs-sm)}.ui-input__error{color:var(--danger)}.ui-card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--elev-1);transition:border-color var(--dur-micro)}.ui-card--p-sm{padding:var(--space-3)}.ui-card--p-md{padding:var(--space-4)}.ui-card--p-lg{padding:var(--space-6)}.ui-card--clickable{cursor:pointer}.ui-card--clickable:focus-visible,.ui-card--clickable:hover{border-color:var(--border-strong);outline:none}.ui-modal-root{align-items:center;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.ui-modal-backdrop{animation:ui-modal-fade var(--dur-std) ease;background:#0009;inset:0;position:absolute}.ui-modal{animation:ui-modal-pop var(--dur-std) var(--ease-screen);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:0 20px 60px #00000080;position:relative;width:min(480px,calc(100vw - var(--space-7)))}.ui-modal__header{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:var(--space-4) var(--space-5)}.ui-modal__title{color:var(--text);font-size:var(--fs-lg);font-weight:600;margin:0}.ui-modal__body{color:var(--text);padding:var(--space-5)}.ui-modal__footer{border-top:1px solid var(--border);display:flex;gap:var(--space-2);justify-content:flex-end;padding:var(--space-4) var(--space-5)}@keyframes ui-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes ui-modal-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ui-sheet-root{display:flex;inset:0;position:fixed;z-index:1000}.ui-sheet-backdrop{animation:ui-sheet-fade var(--dur-std) ease;background:#0009;inset:0;position:absolute}.ui-sheet{background:var(--surface-1);border:1px solid var(--border);display:flex;flex-direction:column;position:relative}.ui-sheet-root--bottom{align-items:stretch;justify-content:center}.ui-sheet-root--bottom .ui-sheet{animation:ui-sheet-rise var(--dur-screen) var(--ease-screen);height:100vh;width:100vw}@media (min-width:768px){.ui-sheet-root--bottom{align-items:center;padding:var(--space-7)}.ui-sheet-root--bottom .ui-sheet{border-radius:var(--radius-md);height:calc(100vh - var(--space-8));max-width:1080px;width:100%}}.ui-sheet-root--right{justify-content:flex-end}.ui-sheet-root--right .ui-sheet{animation:ui-sheet-slide-right var(--dur-screen) var(--ease-screen);height:100vh;width:min(480px,100vw)}.ui-sheet__header{grid-gap:var(--space-3);align-items:center;border-bottom:1px solid var(--border);display:grid;gap:var(--space-3);grid-template-columns:44px 1fr auto;padding:var(--space-3) var(--space-4)}.ui-sheet__title{font-size:var(--fs-lg);font-weight:600;margin:0;text-align:center}.ui-sheet__primary{justify-self:end}.ui-sheet__body{flex:1 1;overflow:auto;padding:var(--space-5)}@keyframes ui-sheet-fade{0%{opacity:0}to{opacity:1}}@keyframes ui-sheet-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes ui-sheet-slide-right{0%{transform:translateX(100%)}to{transform:translateX(0)}}.ui-tabs{border-bottom:1px solid var(--border);display:flex;gap:var(--space-5)}.ui-tabs__tab{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-3) 0;position:relative;transition:color var(--dur-micro)}.ui-tabs__tab--active,.ui-tabs__tab:hover{color:var(--text)}.ui-tabs__tab--active:after{background:var(--accent);bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.ui-tabs__tab:focus-visible{outline:1px solid var(--accent);outline-offset:4px}.ui-chip{align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-muted);display:inline-flex;height:22px;padding:0 var(--space-2);white-space:nowrap}.ui-chip--clickable{cursor:pointer;transition:border-color var(--dur-micro),color var(--dur-micro)}.ui-chip--clickable:hover{border-color:var(--accent);color:var(--text)}.ui-avatar{align-items:center;background:var(--surface-2);border-radius:50%;color:var(--text-muted);display:inline-flex;flex-shrink:0;justify-content:center;overflow:hidden}img.ui-avatar{object-fit:cover}.ui-avatar--24{height:24px;width:24px}.ui-avatar--32{height:32px;width:32px}.ui-avatar--48{height:48px;width:48px}.ui-avatar--64{height:64px;width:64px}.ui-avatar--96{height:96px;width:96px}.ui-avatar__initials{font-size:.7em}.ui-toast-stack{bottom:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2);left:50%;pointer-events:none;position:fixed;transform:translateX(-50%);z-index:1100}.ui-toast{animation:ui-toast-in var(--dur-std) var(--ease-screen);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 8px 24px #00000080;color:var(--text);font-size:var(--fs-sm);padding:var(--space-3) var(--space-4);pointer-events:auto}.ui-toast--success{border-color:var(--accent)}.ui-toast--error{border-color:var(--danger);color:var(--danger)}.ui-toast--info{border-color:var(--border-strong)}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ui-empty{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-8) var(--space-5);text-align:center}.ui-empty__eyebrow{color:var(--text-dim)}.ui-empty__title{color:var(--text);font-size:var(--fs-xl);font-weight:600;margin:0}.ui-empty__body{color:var(--text-muted);margin:0;max-width:40ch}.ui-empty__action{margin-top:var(--space-3)}.ui-section-header{align-items:flex-end;display:flex;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-4)}.ui-section-header__text{display:flex;flex-direction:column;gap:var(--space-1)}.ui-section-header__eyebrow{color:var(--text-dim)}.ui-section-header__title{color:var(--text);font-size:var(--fs-xl);font-weight:600;margin:0}.ui-section-header__action a,.ui-section-header__action button{color:var(--text-muted);font-size:var(--fs-sm);text-decoration:none;transition:color var(--dur-micro)}.ui-section-header__action a:hover,.ui-section-header__action button:hover{color:var(--accent)}.product-manager-overlay{align-items:center;background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.product-manager-form{background:#1a1a1a;border:1px solid #333;border-radius:12px;color:#fff;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.product-manager-form.pmf-two-panel{display:flex;flex-direction:column;max-width:1200px}.pmf-body{display:flex;flex:1 1;gap:0;overflow:hidden}.pmf-left{border-right:1px solid #2a2a2a;flex:1 1;min-width:0}.pmf-left,.pmf-right{max-height:calc(90vh - 70px);overflow-y:auto;padding:20px}.pmf-right{display:flex;flex-direction:column;gap:14px;min-width:420px;width:420px}.pmf-right h3{border-bottom:1px solid #333;color:#00a2ff;font-size:18px;margin:0;padding-bottom:8px}.pmf-model-status{margin:0}.pmf-current-model{align-items:center;background:#00a2ff14;border:1px solid #00a2ff26;border-radius:8px;display:flex;flex-wrap:wrap;gap:10px;padding:10px 12px}.pmf-current-model.pmf-new-file{background:#00c86414;border-color:#00c86433}.pmf-current-model.pmf-no-model{background:#ffffff0a;border-color:#ffffff14}.pmf-model-indicator{color:#888;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.pmf-new-file .pmf-model-indicator{color:#00c864}.pmf-model-name{color:#ccc;font-size:13px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pmf-model-size{color:#666;font-size:12px;margin-left:auto}.pmf-model-upload{display:flex;gap:8px}.pmf-upload-btn{align-items:center;background:#00a2ff;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;flex:1 1;font-size:13px;font-weight:500;justify-content:center;padding:10px 16px;transition:background-color .2s ease}.pmf-upload-btn:hover{background:#08d}.pmf-revert-btn{background:#333;border:none;border-radius:8px;color:#ccc;cursor:pointer;font-size:13px;padding:10px 14px;transition:background-color .2s ease}.pmf-revert-btn:hover{background:#444}.pmf-viewer-container{background:#111118;border:1px solid #2a2a2a;border-radius:10px;height:320px;overflow:hidden;width:100%}.pmf-viewer-placeholder{align-items:center;background:#111118;display:flex;height:100%;justify-content:center;width:100%}.pmf-placeholder-text{color:#444;font-size:14px;text-align:center}.pmf-scale-controls{display:flex;flex-direction:column;gap:8px}.pmf-scale-header{align-items:center;display:flex;justify-content:space-between}.pmf-scale-header label{color:#ccc;font-size:13px;font-weight:500}.pmf-scale-value{font-feature-settings:"tnum";color:#00a2ff;font-size:14px;font-variant-numeric:tabular-nums;font-weight:600}.pmf-scale-slider{-webkit-appearance:none;appearance:none;background:#2a2a2a;border-radius:3px;height:6px;outline:none;width:100%}.pmf-scale-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#00a2ff;border:2px solid #111;border-radius:50%;cursor:pointer;height:18px;width:18px}.pmf-scale-slider::-moz-range-thumb{background:#00a2ff;border:2px solid #111;border-radius:50%;cursor:pointer;height:18px;width:18px}.pmf-scale-presets{display:flex;flex-wrap:wrap;gap:4px}.pmf-preset-btn{background:#222;border:1px solid #333;border-radius:6px;color:#888;cursor:pointer;font-size:11px;font-weight:500;padding:5px 10px;transition:all .15s ease}.pmf-preset-btn:hover{background:#2a2a2a;border-color:#444;color:#ccc}.pmf-preset-btn.active{background:#00a2ff26;border-color:#00a2ff4d;color:#00a2ff}.pmf-dimensions{display:flex;gap:16px;justify-content:center;padding:8px 0 4px}.pmf-dim{color:#666;font-family:monospace;font-size:12px}.pmf-dim strong{color:#bbb}.pmf-viewer-hint{color:#444;font-size:11px;text-align:center}.pmf-auto-badge{align-items:center;background:#00c86414;border:1px solid #00c86433;border-radius:8px;color:#aaa;display:flex;flex-wrap:wrap;font-size:12px;gap:8px;justify-content:space-between;padding:8px 12px}.pmf-auto-badge strong{color:#ccc}.pmf-auto-factor{font-feature-settings:"tnum";color:#00c864;font-family:monospace;font-size:11px;font-variant-numeric:tabular-nums}.pmf-auto-badge.pmf-auto-miss{background:#ffaa0014;border-color:#fa03;color:#a83}.pmf-real-dims{align-items:center;background:#ffffff0a;border-radius:6px;display:flex;justify-content:space-between;padding:6px 12px}.pmf-real-label{color:#666;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.pmf-real-values{font-feature-settings:"tnum";color:#bbb;font-family:monospace;font-size:13px;font-variant-numeric:tabular-nums}.pmf-dim-label{color:#555;font-size:10px;letter-spacing:.5px;margin-bottom:2px;text-transform:uppercase;width:100%}.form-header{align-items:center;border-bottom:1px solid #333;display:flex;justify-content:space-between;padding:20px}.form-header h2{color:#00a2ff;font-size:24px;margin:0}.error-messages{background-color:#ff00001a;border:1px solid #f44;border-radius:6px;margin:16px 20px 0;padding:12px}.error-message{color:#f44;margin-bottom:5px}.error-message:last-child{margin-bottom:0}.form-section{margin-bottom:24px}.form-section h3{border-bottom:1px solid #333;color:#00a2ff;font-size:16px;margin-bottom:12px;padding-bottom:8px}.form-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:12px}.form-group{display:flex;flex-direction:column}.form-group label{color:#ccc;font-size:13px;font-weight:500;margin-bottom:5px}.form-group input,.form-group select,.form-group textarea{background-color:#2a2a2a;border:1px solid #444;border-radius:6px;color:#fff;font-size:13px;padding:9px 10px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#00a2ff;box-shadow:0 0 0 2px #00a2ff33;outline:none}.form-group input:disabled{background-color:#1a1a1a;color:#666;cursor:not-allowed}.connection-group{margin-bottom:20px}.connection-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.connection-header h4{color:#ccc;font-size:14px;margin:0}.add-connection-btn{background-color:#00a2ff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:6px 14px;transition:background-color .2s ease}.add-connection-btn:hover{background-color:#08c}.connection-point{grid-gap:8px;align-items:center;background-color:#2a2a2a;border-radius:6px;display:grid;gap:8px;grid-template-columns:1fr 2fr auto;margin-bottom:8px;padding:10px}.connection-point select{background-color:#1a1a1a;border:1px solid #444;border-radius:4px;color:#fff;font-size:13px;padding:7px}.coordinate-inputs{display:flex;gap:5px}.coordinate-inputs input{background-color:#1a1a1a;border:1px solid #444;border-radius:4px;color:#fff;flex:1 1;font-size:12px;padding:7px;text-align:center}.coordinate-inputs input::placeholder{color:#666}.remove-connection-btn{background-color:#f44;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:7px 12px;transition:background-color .2s ease}.remove-connection-btn:hover{background-color:#c33}.file-group{display:flex;flex-direction:column}.file-group label{color:#ccc;font-weight:500;margin-bottom:8px}.file-group input[type=file]{background-color:#2a2a2a;border:1px solid #444;border-radius:6px;color:#fff;cursor:pointer;padding:10px}.file-info{color:#00a2ff;font-size:12px;margin-top:5px}.image-preview{margin-top:10px;text-align:center}.image-preview img{border:1px solid #444;border-radius:6px;max-height:120px;max-width:100%}.form-actions{border-top:1px solid #333;display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:16px}.cancel-btn{background-color:#444;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:11px 22px;transition:background-color .2s ease}.cancel-btn:hover{background-color:#555}.submit-btn{background-color:#00a2ff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:11px 22px;transition:background-color .2s ease}.submit-btn:hover:not(:disabled){background-color:#08c}.submit-btn:disabled{background-color:#666;cursor:not-allowed}@media (max-width:1000px){.product-manager-form.pmf-two-panel{max-width:95vw}.pmf-body{flex-direction:column}.pmf-left{border-bottom:1px solid #2a2a2a;border-right:none;max-height:none}.pmf-right{max-height:none;min-width:0;width:100%}}@media (max-width:600px){.connection-point,.form-row{grid-template-columns:1fr}.connection-point{gap:8px}.coordinate-inputs{justify-content:center}.form-actions{flex-direction:column}}.product-dashboard-overlay{align-items:center;background-color:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:10000}.product-dashboard{background:#1a1a1a;border:1px solid #333;border-radius:12px;color:#fff;max-height:90vh;max-width:1200px;overflow-y:auto;width:100%}.dashboard-header{align-items:center;border-bottom:1px solid #333;display:flex;justify-content:space-between;padding:20px}.dashboard-header h2{color:#00a2ff;font-size:24px;margin:0}.close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#888;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:all .2s ease;width:30px}.close-btn:hover{background-color:#333;color:#fff}.loading{color:#888;font-size:18px;padding:40px;text-align:center}.stats-section{grid-gap:15px;border-bottom:1px solid #333;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:20px}.stat-card{background:#2a2a2a;border:1px solid #444;border-radius:8px;padding:20px;text-align:center}.stat-number{color:#00a2ff;font-size:32px;font-weight:700;margin-bottom:5px}.stat-label{color:#ccc;font-size:14px}.controls-section{align-items:center;border-bottom:1px solid #333;display:flex;gap:20px;justify-content:space-between;padding:20px}.search-controls{display:flex;flex:1 1;gap:15px}.search-input{background-color:#2a2a2a;border:1px solid #444;border-radius:6px;color:#fff;flex:1 1;font-size:14px;padding:10px}.search-input:focus{border-color:#00a2ff;box-shadow:0 0 0 2px #00a2ff33;outline:none}.filter-select{background-color:#2a2a2a;border:1px solid #444;border-radius:6px;color:#fff;font-size:14px;min-width:150px;padding:10px}.filter-select:focus{border-color:#00a2ff;box-shadow:0 0 0 2px #00a2ff33;outline:none}.filter-select:disabled{background-color:#1a1a1a;color:#666;cursor:not-allowed}.add-product-btn{background-color:#00a2ff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:background-color .2s ease;white-space:nowrap}.add-product-btn:hover{background-color:#08c}.products-section{padding:20px}.products-header{margin-bottom:20px}.products-header h3{color:#ccc;font-size:18px;margin:0}.no-products{color:#888;padding:40px;text-align:center}.add-first-product-btn{background-color:#00a2ff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;margin-top:15px;padding:12px 24px;transition:background-color .2s ease}.add-first-product-btn:hover{background-color:#08c}.products-by-setup-type{display:flex;flex-direction:column;gap:40px}.setup-type-section{margin-bottom:30px}.setup-type-header{align-items:center;border-bottom:2px solid #333;display:flex;gap:15px;margin-bottom:20px;padding-bottom:15px}.setup-type-header h2{color:#00a2ff;font-size:24px;font-weight:600;margin:0}.product-count-badge{background:#00a2ff;border-radius:12px;color:#fff;font-size:14px;font-weight:600;padding:4px 12px}.no-products-in-section{color:#666;font-style:italic;padding:30px;text-align:center}.products-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.product-card{background:#2a2a2a;border:1px solid #444;border-radius:8px;padding:20px;position:relative;transition:all .2s ease}.product-card:hover{border-color:#00a2ff;box-shadow:0 4px 12px #00a2ff1a;transform:translateY(-2px)}.multi-compatible-badge{background:linear-gradient(135deg,#00a2ff,#08c);border-radius:4px;box-shadow:0 2px 4px #0000004d;color:#fff;font-size:10px;font-weight:600;padding:4px 8px;position:absolute;right:10px;top:10px;z-index:1}.owner-badge{background:linear-gradient(135deg,#4ade80,#22c55e)}.admin-badge,.owner-badge{border-radius:4px;box-shadow:0 2px 4px #0000004d;color:#fff;font-size:10px;font-weight:600;left:10px;padding:4px 8px;position:absolute;top:10px;z-index:1}.admin-badge{background:linear-gradient(135deg,#f59e0b,#d97706)}.read-only-indicator{color:#888;font-size:11px;font-style:italic;padding:4px 8px}.product-header{align-items:flex-start;display:flex;gap:15px;margin-bottom:15px}.product-icon{align-items:center;background:#333;border-radius:8px;display:flex;flex-shrink:0;font-size:24px;height:40px;justify-content:center;width:40px}.product-info{flex:1 1}.product-info h4{color:#fff;font-size:16px;margin:0 0 5px}.product-brand{color:#888;font-size:14px;margin:0}.product-actions{display:flex;gap:8px}.delete-btn,.edit-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:6px;transition:background-color .2s ease}.edit-btn:hover{background-color:#00a2ff33}.delete-btn:hover{background-color:#f443}.product-details{display:flex;flex-direction:column;gap:10px}.product-category{display:flex;flex-direction:column;gap:6px;margin-bottom:5px}.category-badge{background:#333;color:#ccc;font-size:12px;padding:4px 8px}.category-badge,.compatible-badge{border-radius:4px;display:inline-block;font-weight:500}.compatible-badge{background:#2d4a2d;color:#4ade80;font-size:11px;padding:3px 8px}.product-description{color:#ccc;font-size:14px;line-height:1.4;margin:0}.product-specs{align-items:center;display:flex;gap:15px}.price{color:#4ade80;font-size:16px;font-weight:700}.type{background:#444;border-radius:3px;color:#ccc;font-size:12px;padding:2px 6px;text-transform:uppercase}.product-connections{color:#888;font-size:12px}.model-status{align-items:center;display:flex;gap:5px}.model-indicator{background:#2d5a2d;border-radius:3px;color:#4ade80;font-size:11px;font-weight:500;padding:2px 6px}.product-owner{border-top:1px solid #333;margin-top:8px;padding-top:8px}.owner-info{color:#888;font-size:11px;font-style:italic}@media (max-width:768px){.product-dashboard{margin:10px;max-height:95vh}.stats-section{grid-template-columns:repeat(2,1fr)}.controls-section{align-items:stretch}.controls-section,.search-controls{flex-direction:column}.products-grid{grid-template-columns:1fr}.product-header{align-items:flex-start;flex-direction:column}.product-actions{align-self:flex-end}}.mysets{background:var(--bg);color:var(--text);min-height:100%;padding:var(--space-7) var(--space-5)}.mysets__inner{display:flex;flex-direction:column;gap:var(--space-6);margin:0 auto;max-width:1200px}.mysets__loading{padding:var(--space-8)}.mysets__empty-filter,.mysets__loading{color:var(--text-dim);font-size:var(--fs-sm);text-align:center}.mysets__empty-filter{border:1px dashed var(--border);border-radius:var(--radius-sm);margin:0;padding:var(--space-7)}.mysets__new-link{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:var(--fs-sm);gap:4px;padding:0;transition:color var(--dur-micro)}.mysets__new-link:hover{color:var(--accent)}.mysets__cta{background:var(--text);border:1px solid var(--text);border-radius:var(--radius-sm);color:var(--bg);cursor:pointer;font-size:var(--fs-body);font-weight:500;padding:var(--space-3) var(--space-5);transition:background var(--dur-micro),border-color var(--dur-micro)}.mysets__cta:hover{background:var(--accent);border-color:var(--accent)}.mysets__filters{display:flex;flex-wrap:wrap;gap:var(--space-2)}.mysets__filter{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer;padding:var(--space-2) var(--space-4);transition:border-color var(--dur-micro),color var(--dur-micro),background var(--dur-micro)}.mysets__filter:hover{border-color:var(--border-strong);color:var(--text)}.mysets__filter--active{background:#d9c2a01f;border-color:var(--accent);color:var(--text)}.mysets__grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(3,1fr)}.mysets-card{display:flex;flex-direction:column;gap:var(--space-3);min-height:130px}.mysets-card__top{align-items:center;display:flex;justify-content:space-between}.mysets-card__name{color:var(--text);font-size:var(--fs-lg);font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mysets-card__bottom{color:var(--text-dim);margin-top:auto}.mysets-card__menu-wrap{position:relative}.mysets-card__kebab{align-items:center;background:none;border:none;border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer;display:flex;padding:var(--space-1);transition:color var(--dur-micro),background var(--dur-micro)}.mysets-card__kebab:hover{background:var(--surface-2);color:var(--text)}.mysets-card__menu{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 8px 24px #00000080;min-width:140px;overflow:hidden;position:absolute;right:0;top:calc(100% + var(--space-1));z-index:10}.mysets-card__menu button{align-items:center;background:none;border:none;color:var(--danger);cursor:pointer;display:flex;font-size:var(--fs-sm);gap:var(--space-2);padding:var(--space-3) var(--space-4);text-align:left;width:100%}.mysets-card__menu button:hover{background:#c8553d1f}@media (max-width:900px){.mysets__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.mysets{padding:var(--space-5) var(--space-4)}.mysets__grid{grid-template-columns:1fr}}.settings{background:var(--bg);color:var(--text);min-height:100%;padding:var(--space-7) var(--space-5)}.settings__inner{gap:var(--space-5);margin:0 auto;max-width:640px}.settings__card,.settings__inner{display:flex;flex-direction:column}.settings__card{gap:var(--space-4)}.settings__section-title{color:var(--text);font-size:var(--fs-lg);font-weight:600;margin:0}.settings__field{display:flex;flex-direction:column}.settings__actions{border-top:1px solid var(--border);display:flex;gap:var(--space-2);justify-content:flex-end;padding-top:var(--space-2)}.settings__row{align-items:center;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:var(--space-3) 0}.settings__row:last-of-type{border-bottom:none}.settings__row-label{color:var(--text-dim)}.settings__row-value{color:var(--text);font-size:var(--fs-body);font-weight:500}.settings__hint{color:var(--text-dim);font-size:var(--fs-sm);margin:0}.settings__row--toggle{align-items:flex-start;display:flex;gap:var(--space-4);justify-content:space-between;margin-top:var(--space-3)}.settings__toggle{accent-color:var(--accent);cursor:pointer;height:18px;margin-top:4px;width:18px}.settings__sticky-actions{background:linear-gradient(180deg,#0000 0,var(--bg) 30%);bottom:0;display:flex;justify-content:flex-end;margin-top:var(--space-3);padding-bottom:var(--space-4);padding-top:var(--space-4);position:-webkit-sticky;position:sticky}@media (max-width:600px){.settings{padding:var(--space-5) var(--space-4)}}.post-set-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0006;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1100}.post-set-overlay-dark{background:#0000008c}.post-set-modal{background:#f8f6f2fa;background:var(--card-bg,#f8f6f2fa);border:1px solid #00000014;border:1px solid var(--border,#00000014);border-radius:20px;box-shadow:0 24px 48px #0003;max-height:90vh;max-width:720px;overflow-y:auto;width:100%}.post-set-header{align-items:center;border-bottom:1px solid #00000014;border-bottom:1px solid var(--border,#00000014);display:flex;justify-content:space-between;padding:20px 24px}.post-set-title{font-size:22px;font-weight:600;margin:0}.post-set-close,.post-set-title{color:#1a1a1a;color:var(--text-primary,#1a1a1a)}.post-set-close{align-items:center;background:#0000000f;background:var(--dropdown-hover,#0000000f);border:none;border-radius:10px;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;line-height:1;padding:0;transition:background .2s ease;width:36px}.post-set-close:hover{background:#0000001f;background:var(--border-strong,#0000001f)}.post-set-error{background:#dc354526;border:1px solid #dc354566;border-radius:10px;color:#b91c3c;font-size:14px;margin:12px 24px;padding:12px 16px}.post-set-section{border-bottom:1px solid #0000000f;border-bottom:1px solid var(--border,#0000000f);padding:20px 24px}.post-set-section:last-of-type{border-bottom:none}.post-set-section-title{color:#1a1a1a;color:var(--text-primary,#1a1a1a);font-size:16px;font-weight:600;margin:0 0 12px}.post-set-audio-label,.post-set-hint,.post-set-play-hint,.post-set-video-label{color:#1a1a1ab3;color:var(--text-secondary,#1a1a1ab3);font-size:13px;margin:0 0 12px}.post-set-upload-zone{align-items:center;background:#00000008;background:var(--dropdown-hover,#00000008);border:2px dashed #00000026;border:2px dashed var(--border-strong,#00000026);border-radius:14px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;padding:32px 24px;transition:border-color .2s ease,background .2s ease}.post-set-upload-zone:hover{background:#00a2ff0d;border-color:#00a2ff66}.post-set-upload-zone-small{padding:20px 24px}.post-set-file-input{display:none}.post-set-upload-text{color:#1a1a1a;color:var(--text-primary,#1a1a1a);font-size:15px;font-weight:500}.post-set-upload-hint{color:#1a1a1a8c;color:var(--text-muted,#1a1a1a8c);font-size:12px;margin-top:4px}.post-set-video-wrap{width:100%}.post-set-video{background:#000;border-radius:12px;display:block;max-height:320px;width:100%}.post-set-audio-sync{width:100%}.post-set-audio-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.post-set-audio-row .post-set-audio-label{flex:1 1;margin:0;min-width:0}.post-set-swap-audio-btn{background:#0000000a;background:var(--dropdown-hover,#0000000a);border:1px solid #00000026;border:1px solid var(--border-strong,#00000026);border-radius:8px;color:#1a1a1a;color:var(--text-primary,#1a1a1a);cursor:pointer;flex-shrink:0;font-family:inherit;font-size:13px;font-weight:500;padding:8px 14px;transition:background .2s ease,border-color .2s ease}.post-set-swap-audio-btn:hover{background:#0000000f;background:var(--card-bg-hover,#0000000f);border-color:#00a2ff66;color:#0066b3}.post-set-audio-toggle{margin-bottom:14px}.post-set-toggle-label{color:#1a1a1ab3;color:var(--text-secondary,#1a1a1ab3);display:block;font-size:13px;font-weight:500;margin-bottom:8px}.post-set-toggle-buttons{display:flex;gap:10px}.post-set-toggle-btn{background:#0000000a;background:var(--dropdown-hover,#0000000a);border:1px solid #00000026;border:1px solid var(--border-strong,#00000026);border-radius:10px;color:#1a1a1a;color:var(--text-primary,#1a1a1a);cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;padding:10px 18px;transition:background .2s ease,border-color .2s ease}.post-set-toggle-btn:hover{background:#0000000f;background:var(--card-bg-hover,#0000000f);border-color:#00a2ff4d}.post-set-toggle-btn.active{background:#00a2ff33;border-color:#00a2ff80;color:#0066b3}.post-set-waveform-wrap{border-radius:10px;margin-bottom:12px;overflow:hidden;position:relative;width:100%}.post-set-playhead-stick{background:#dc3545f2;bottom:0;box-shadow:0 0 6px #dc354580;left:50%;pointer-events:none;position:absolute;top:0;transform:translateX(-50%);width:3px;z-index:2}.post-set-waveform-scroll{background:#0000000d;background:var(--dropdown-hover,#0000000d);border-radius:10px;cursor:grab;overflow-x:auto;overflow-y:hidden;-webkit-user-select:none;user-select:none;width:100%}.post-set-waveform-scroll:active{cursor:grabbing}.post-set-waveform-canvas{cursor:pointer;display:block;height:80px;vertical-align:top}.post-set-offset-bar{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.post-set-offset-bar span{color:#1a1a1ab3;color:var(--text-secondary,#1a1a1ab3);font-size:13px;min-width:140px}.post-set-offset-slider{-webkit-appearance:none;appearance:none;background:#0000001a;background:var(--border,#0000001a);border-radius:4px;flex:1 1;height:8px;min-width:120px}.post-set-offset-slider::-webkit-slider-thumb{-webkit-appearance:none;background:#00a2ff;border-radius:50%;box-shadow:0 1px 4px #0003;cursor:pointer;height:18px;width:18px}.post-set-offset-slider::-moz-range-thumb{background:#00a2ff;border:none;border-radius:50%;cursor:pointer;height:18px;width:18px}.post-set-actions{border-top:1px solid #0000000f;border-top:1px solid var(--border,#0000000f);padding:20px 24px 24px}.post-set-next-btn{background:linear-gradient(135deg,#00a2ff,#0066b3);border:none;border-radius:12px;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;padding:14px 24px;transition:opacity .2s ease,transform .1s ease;width:100%}.post-set-next-btn:hover{opacity:.95}.post-set-next-btn:active{transform:scale(.99)}.post-set-back-btn{background:none;border:none;color:#1a1a1ab3;color:var(--text-secondary,#1a1a1ab3);cursor:pointer;font-family:inherit;font-size:14px;margin-bottom:16px;padding:8px 0}.post-set-back-btn:hover{color:#1a1a1a;color:var(--text-primary,#1a1a1a)}.post-set-num-clips{align-items:center;display:flex;gap:10px;margin-bottom:16px}.post-set-num-clips-label{color:#1a1a1ab3;color:var(--text-secondary,#1a1a1ab3);font-size:14px;font-weight:500}.post-set-num-clip-btn{background:#fff;background:var(--card-bg,#fff);border:2px solid #00000026;border:2px solid var(--border-strong,#00000026);border-radius:10px;color:#1a1a1a;color:var(--text-primary,#1a1a1a);cursor:pointer;font-size:16px;font-weight:600;height:40px;transition:border-color .2s,background .2s,color .2s;width:40px}.post-set-num-clip-btn:hover{background:#00a2ff0f;border-color:#00a2ff80}.post-set-num-clip-btn.active{background:#00a2ff26;border-color:#0064c8cc;color:#0066b3}.post-set-clip-tabs{display:flex;gap:8px;margin-bottom:12px}.post-set-clip-tab{background:#0000000a;background:var(--dropdown-hover,#0000000a);border:1px solid #00000026;border:1px solid var(--border-strong,#00000026);border-radius:8px;color:#1a1a1acc;color:var(--text-secondary,#1a1a1acc);cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:border-color .2s,background .2s}.post-set-clip-tab:hover{background:#00a2ff0f;border-color:#00a2ff4d}.post-set-clip-tab.active{background:#00a2ff1f;border-color:#0064c899;color:#0066b3}.post-set-timeline-clip-label{color:#1a1a1ab3;color:var(--text-secondary,#1a1a1ab3);font-size:13px;font-weight:500;margin:0 0 4px}.post-set-clip-preview-wrap{background:#000;border-radius:12px;margin-bottom:16px;overflow:hidden;width:100%}.post-set-clip-video{display:block;max-height:320px;width:100%}.post-set-timeline-wrap{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.post-set-timeline{cursor:pointer;height:40px;position:relative;touch-action:none}.post-set-timeline-track{background:#00000014;background:var(--dropdown-hover,#00000014);left:0;right:0}.post-set-timeline-range,.post-set-timeline-track{border-radius:4px;height:8px;position:absolute;top:50%;transform:translateY(-50%)}.post-set-timeline-range{background:linear-gradient(90deg,#00a2ff80,#0064c899);pointer-events:none}.post-set-timeline-thumb{background:#fff;background:var(--card-bg,#fff);border:2px solid #00a2ff99;border-radius:50%;box-shadow:0 2px 8px #0003;cursor:grab;height:18px;position:absolute;top:50%;transform:translate(-50%,-50%);width:18px;z-index:2}.post-set-timeline-thumb:active{cursor:grabbing}.post-set-timeline-thumb-end{background:#00a2ffe6;border-color:#0066b3}.post-set-timeline-labels{color:#1a1a1ab3;color:var(--text-secondary,#1a1a1ab3);display:flex;font-size:12px;justify-content:space-between}.post-set-timeline-dur{color:#0066b3;font-weight:600}.post-set-title-row{margin-bottom:20px}.post-set-title-label{color:#1a1a1ab3;color:var(--text-secondary,#1a1a1ab3);display:block;font-size:13px;font-weight:500;margin-bottom:8px}.post-set-title-input{background:#fff;background:var(--card-bg,#fff);border:1px solid #00000026;border:1px solid var(--border-strong,#00000026);border-radius:10px;box-sizing:border-box;color:#1a1a1a;color:var(--text-primary,#1a1a1a);font-family:inherit;font-size:15px;padding:12px 14px;width:100%}.post-set-title-input::placeholder{color:#1a1a1a80;color:var(--text-muted,#1a1a1a80)}.post-set-progress{margin-top:16px}.post-set-progress-bar{background:#0000001a;background:var(--border,#0000001a);border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.post-set-progress-fill{background:linear-gradient(90deg,#00a2ff,#0066b3);border-radius:4px;height:100%;transition:width .2s ease}.post-set-progress-text{color:#1a1a1ab3;color:var(--text-secondary,#1a1a1ab3);font-size:13px}.post-set-post-btn{background:linear-gradient(135deg,#00a2ff,#0066b3);border:none;border-radius:12px;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;padding:14px 24px;transition:opacity .2s ease,transform .1s ease;width:100%}.post-set-post-btn:hover{opacity:.95}.post-set-post-btn:active{transform:scale(.99)}.post-set-setup-row{margin-bottom:20px}.post-set-setup-label{color:#1a1a1ab3;color:var(--text-secondary,#1a1a1ab3);display:block;font-size:13px;font-weight:500;margin-bottom:4px}.post-set-setup-empty,.post-set-setup-loading{color:#1a1a1a8c;color:var(--text-muted,#1a1a1a8c);font-size:13px;padding:12px 0}.post-set-setup-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.post-set-setup-option{align-items:center;background:#fff;background:var(--card-bg,#fff);border:2px solid #0000001f;border:2px solid var(--border-strong,#0000001f);border-radius:10px;color:#1a1a1a;color:var(--text-primary,#1a1a1a);cursor:pointer;display:flex;font-family:inherit;font-size:14px;gap:10px;padding:10px 14px;text-align:left;transition:border-color .2s,background .2s}.post-set-setup-option:hover{background:#00a2ff0a;border-color:#00a2ff66}.post-set-setup-option.active{background:#00a2ff1a;border-color:#0064c8b3}.post-set-setup-option-icon{flex-shrink:0;font-size:1.25rem}.post-set-setup-option-name{flex:1 1;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.post-set-setup-option-type{background:#0000000d;background:var(--dropdown-hover,#0000000d);border-radius:6px;color:#1a1a1a8c;color:var(--text-muted,#1a1a1a8c);flex-shrink:0;font-size:12px;padding:2px 8px}.post-set-setup-option-devices{color:#1a1a1a99;color:var(--text-secondary,#1a1a1a99);flex-shrink:0;font-size:12px}.hub{background:var(--bg);color:var(--text);min-height:100%;padding:var(--space-7) var(--space-5)}.hub__inner{gap:var(--space-9);margin:0 auto;max-width:1200px}.hub__inner,.hub__section{display:flex;flex-direction:column}.hub__section{gap:var(--space-4)}.hub-loading{color:var(--text-dim);font-size:var(--fs-sm);padding:var(--space-6);text-align:center}.hub-continue{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-6);justify-content:space-between}.hub-continue__body{display:flex;flex:1 1;flex-direction:column;gap:var(--space-2);min-width:0}.hub-continue__meta{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-3)}.hub-continue__edited{color:var(--text-dim)}.hub-continue__name{color:var(--text);font-size:var(--fs-2xl);font-weight:600;line-height:var(--lh-heading);margin:0}.hub-continue__sub{color:var(--text-muted);font-size:var(--fs-sm);margin:0}.hub-types{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(3,1fr);margin-top:var(--space-5)}.hub-types--in-modal{margin-top:0}.hub-types--in-modal .hub-type-card{min-height:220px}.ui-modal:has(.hub-types--in-modal){width:min(820px,calc(100vw - var(--space-7)))}@media (max-width:600px){.hub-types--in-modal{grid-template-columns:1fr}.hub-types--in-modal .hub-type-card{min-height:0}}.hub-type-card{align-items:flex-start;display:flex;flex-direction:column;gap:var(--space-3);text-align:left}.hub-type-card__icon{color:var(--accent)}.hub-type-card__title{color:var(--text);font-size:var(--fs-xl);font-weight:600;margin:0}.hub-type-card__blurb{color:var(--text-muted);flex:1 1;font-size:var(--fs-sm);margin:0}.hub-type-card__cta{color:var(--accent);margin-top:var(--space-2)}.hub-featured{display:flex;flex-direction:column;gap:var(--space-5)}.hub-hero{grid-gap:var(--space-5);background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;display:grid;gap:var(--space-5);grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);padding:var(--space-5);text-align:left;transition:border-color var(--dur-micro)}.hub-hero:hover{border-color:var(--border-strong)}.hub-hero__thumb{aspect-ratio:16/9;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;position:relative}.hub-hero__thumb video{display:block;height:100%;object-fit:cover;width:100%}.hub-hero__overlay{background:linear-gradient(180deg,#0a090800 50%,#0a090880);inset:0;position:absolute}.hub-hero__overlay,.hub-hero__play{align-items:center;display:flex;justify-content:center}.hub-hero__play{background:#f5efe3f2;border-radius:50%;color:var(--bg);height:56px;transition:transform var(--dur-micro);width:56px}.hub-hero:hover .hub-hero__play{transform:scale(1.06)}.hub-hero__duration{background:#0a0908d9;border:1px solid var(--border);border-radius:var(--radius-xs);bottom:var(--space-3);color:var(--text);padding:3px var(--space-2);position:absolute;right:var(--space-3)}.hub-hero__meta{display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;min-width:0}.hub-hero__creator{color:var(--text-dim)}.hub-hero__title{color:var(--text);font-size:var(--fs-2xl);font-weight:600;line-height:var(--lh-heading);margin:0}.hub-hero__chip{display:flex}@media (max-width:760px){.hub-hero{gap:var(--space-4);grid-template-columns:1fr;padding:var(--space-4)}.hub-hero__title{font-size:var(--fs-xl)}.hub-hero__play{height:44px;width:44px}}.hub-player-overlay{align-items:center;animation:ui-modal-fade var(--dur-std) ease;background:#000000d9;display:flex;inset:0;justify-content:center;padding:var(--space-5);position:fixed;z-index:1000}.hub-player{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex-direction:column;max-height:calc(100vh - var(--space-7));overflow:hidden;position:relative;width:min(1100px,100%)}.hub-player__close{align-items:center;background:#0a0908b3;border:1px solid var(--border);border-radius:50%;color:var(--text);cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:var(--space-3);top:var(--space-3);transition:background var(--dur-micro);width:36px;z-index:2}.hub-player__close:hover{background:#0a0908f2}.hub-player__video{aspect-ratio:16/9;background:#000;display:block;width:100%}.hub-player__meta{border-top:1px solid var(--border);display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4) var(--space-5)}.hub-player__creator{color:var(--text-dim)}.hub-player__title{color:var(--text);font-size:var(--fs-lg);font-weight:600}.hub-post-cta{align-items:center;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:center;margin-top:var(--space-4);padding:var(--space-5)}.hub-post-cta__hint{color:var(--text-muted);font-size:var(--fs-sm)}@media (max-width:600px){.hub-post-cta{flex-direction:column;gap:var(--space-3);padding:var(--space-4);text-align:center}}.hub-new-setup-tile{align-items:center;background:#0000;border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;display:flex;flex-direction:column;font-size:var(--fs-sm);font-weight:500;gap:var(--space-2);justify-content:center;min-height:130px;transition:color var(--dur-micro),border-color var(--dur-micro),background var(--dur-micro)}.hub-new-setup-tile:hover{background:#d9c2a00a;border-color:var(--accent);color:var(--text)}.hub-sets-row{display:flex;gap:var(--space-4);overflow-x:auto;padding-bottom:var(--space-3);scroll-snap-type:x proximity}.hub-sets-row::-webkit-scrollbar{height:6px}.hub-sets-row::-webkit-scrollbar-track{background:#0000}.hub-sets-row::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.hub-set-tile{background:none;border:none;cursor:pointer;display:flex;flex:0 0 320px;flex-direction:column;gap:var(--space-2);padding:0;scroll-snap-align:start;text-align:left}.hub-set-tile__thumb{aspect-ratio:16/9;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;position:relative;transition:border-color var(--dur-micro)}.hub-set-tile:hover .hub-set-tile__thumb{border-color:var(--border-strong)}.hub-set-tile__thumb video{display:block;height:100%;object-fit:cover;width:100%}.hub-set-tile__duration{background:#0a0908d9;border:1px solid var(--border);border-radius:var(--radius-xs);bottom:var(--space-2);color:var(--text);padding:2px var(--space-2);position:absolute;right:var(--space-2)}.hub-set-tile__meta{display:flex;flex-direction:column;gap:2px;padding:0 var(--space-1)}.hub-set-tile__creator{color:var(--text-dim)}.hub-set-tile__title{color:var(--text);font-size:var(--fs-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hub-setups-empty{border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-dim);font-size:var(--fs-sm);margin:0;padding:var(--space-6);text-align:center}.hub-setups-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(3,1fr)}.hub-setup-card{display:flex;flex-direction:column;gap:var(--space-3);min-height:130px}.hub-setup-card__top{align-items:center;display:flex;justify-content:space-between}.hub-setup-card__name{color:var(--text);font-size:var(--fs-lg);font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hub-setup-card__bottom{color:var(--text-dim);margin-top:auto}.hub-setup-card__menu-wrap{position:relative}.hub-setup-card__kebab{align-items:center;background:none;border:none;border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer;display:flex;padding:var(--space-1);transition:color var(--dur-micro),background var(--dur-micro)}.hub-setup-card__kebab:hover{background:var(--surface-2);color:var(--text)}.hub-setup-card__menu{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 8px 24px #00000080;min-width:140px;overflow:hidden;position:absolute;right:0;top:calc(100% + var(--space-1));z-index:10}.hub-setup-card__menu button{align-items:center;background:none;border:none;color:var(--danger);cursor:pointer;display:flex;font-size:var(--fs-sm);gap:var(--space-2);padding:var(--space-3) var(--space-4);text-align:left;width:100%}.hub-setup-card__menu button:hover{background:#c8553d1f}.hub-link{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:var(--fs-sm);gap:4px;padding:0;transition:color var(--dur-micro)}.hub-link:hover{color:var(--accent)}@media (max-width:900px){.hub-setups-grid,.hub-types{grid-template-columns:repeat(2,1fr)}.hub-continue__name{font-size:var(--fs-xl)}}@media (max-width:600px){.hub{padding:var(--space-5) var(--space-4)}.hub__inner{gap:var(--space-7)}.hub-setups-grid,.hub-types{grid-template-columns:1fr}.hub-continue{gap:var(--space-4)}.hub-continue__name{font-size:var(--fs-lg)}}.save-setup-btn{align-items:center;background:#00a2ff33;border:1px solid #00a2ff66;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.save-setup-btn:hover{background:#00a2ff4d;border-color:#00a2ff;transform:translateY(-1px)}.save-setup-btn:active{transform:translateY(0)}.save-setup-btn svg{flex-shrink:0}.save-setup-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.save-setup-modal{background:#1a1a1a;border:1px solid #333;border-radius:16px;box-shadow:0 8px 32px #0006;max-width:480px;padding:32px;width:90%}.save-setup-title{color:#fff;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;font-size:24px;font-weight:600;margin:0 0 24px}.save-setup-form{display:flex;flex-direction:column;gap:20px}.save-setup-label{color:#ffffffe6;display:flex;flex-direction:column;font-size:14px;font-weight:500;gap:8px}.save-setup-input,.save-setup-label{font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif}.save-setup-input{background:#ffffff0d;border:1px solid #ffffff26;border-radius:8px;color:#fff;font-size:15px;outline:none;padding:12px 16px;transition:border-color .2s ease}.save-setup-input:focus{border-color:#00a2ff}.save-setup-input:disabled{cursor:not-allowed;opacity:.5}.save-setup-input::placeholder{color:#fff6}.save-setup-checkbox-label{color:#ffffffe6;cursor:pointer;display:flex;flex-direction:column;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;gap:4px}.save-setup-checkbox-label input[type=checkbox]{accent-color:#00a2ff;cursor:pointer;height:18px;margin-right:10px;width:18px}.save-setup-checkbox-label>span:first-of-type{align-items:center;display:flex;font-weight:500}.save-setup-checkbox-hint{color:#ffffff80;font-size:12px;font-style:italic;margin-left:28px}.save-setup-error{background:#ff525226;border:1px solid #ff52524d;border-radius:8px;color:#ff5252;font-size:14px;padding:12px}.save-setup-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:8px}.save-setup-cancel,.save-setup-submit{border-radius:8px;cursor:pointer;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s ease}.save-setup-cancel{background:#0000;border:1px solid #fff3;color:#ffffffb3}.save-setup-cancel:hover:not(:disabled){background:#ffffff0d;border-color:#ffffff4d}.save-setup-submit{background:#00a2ff;border:1px solid #00a2ff;color:#0a0a0a}.save-setup-submit:hover:not(:disabled){background:#33b3ff;border-color:#33b3ff}.save-setup-cancel:disabled,.save-setup-submit:disabled{cursor:not-allowed;opacity:.5}.setup-diagram{background:radial-gradient(circle at center,#00a2ff0a,#0000 65%),repeating-linear-gradient(0deg,hsla(0,0%,100%,.035),hsla(0,0%,100%,.035) 1px,#0000 0,#0000 40px),repeating-linear-gradient(90deg,hsla(0,0%,100%,.035),hsla(0,0%,100%,.035) 1px,#0000 0,#0000 40px),#0c0c12;border-radius:12px;height:100%;overflow:hidden;position:relative;width:100%}.setup-diagram-empty{align-items:center;color:#ffffff8c;display:flex;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;height:100%;justify-content:center;width:100%}.setup-diagram-device{background:#ffffff08;border:1px solid #00a2ff59;border-radius:6px;cursor:pointer;margin:0;overflow:hidden;padding:0;position:absolute;transform-origin:center center;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.setup-diagram-device:hover{background:#00a2ff14;border-color:#00a2ff;box-shadow:0 0 0 2px #00a2ff40}.setup-diagram-device img{height:100%;object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%}.setup-diagram-device-fallback{align-items:center;color:#ffffffbf;display:flex;height:100%;justify-content:center;padding:4px;width:100%;word-break:break-word}.setup-diagram-device-fallback,.setup-diagram-label{font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;font-size:11px;text-align:center}.setup-diagram-label{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#ffffffb8;display:-webkit-box;font-weight:500;line-height:1.2;overflow:hidden;pointer-events:none;position:absolute}.connection-guide-btn{align-items:center;background:#ffffff0f;border:1px solid #ffffff2e;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s ease}.connection-guide-btn:hover{background:#00a2ff2e;border-color:#00a2ff80;transform:translateY(-1px)}.connection-guide-btn:active{transform:translateY(0)}.connection-guide-btn svg{flex-shrink:0;opacity:.85}.connection-guide-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1000}.connection-guide-modal{background:#15151a;border:1px solid #2a2a33;border-radius:16px;box-shadow:0 16px 48px #0000008c;display:flex;flex-direction:column;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;height:min(720px,100%);overflow:hidden;width:min(1100px,100%)}.connection-guide-header{align-items:flex-start;border-bottom:1px solid #ffffff0f;display:flex;justify-content:space-between;padding:20px 24px}.connection-guide-title{color:#fff;font-size:20px;font-weight:600;margin:0}.connection-guide-subtitle{color:#ffffff8c;font-size:13px;margin:4px 0 0}.connection-guide-close{background:#0000;border:none;border-radius:6px;color:#fff9;cursor:pointer;font-size:28px;line-height:1;padding:0 6px;transition:color .15s ease,background .15s ease}.connection-guide-close:hover{background:#ffffff14;color:#fff}.connection-guide-canvas{flex:1 1;min-height:0;padding:16px}.connection-guide-detail{align-items:center;background:#00a2ff0a;border-top:1px solid #ffffff0f;display:flex;gap:16px;padding:14px 20px}.connection-guide-detail-img{background:#ffffff0a;border-radius:6px;flex-shrink:0;height:64px;object-fit:contain;width:64px}.connection-guide-detail-text{flex:1 1;min-width:0}.connection-guide-detail-name{color:#fff;font-size:15px;font-weight:600}.connection-guide-detail-brand{color:#ffffffb3;font-size:13px;margin-top:2px}.connection-guide-detail-meta{color:#ffffff73;font-size:12px;margin-top:4px;text-transform:capitalize}.connection-guide-detail-close{background:#0000;border:none;border-radius:6px;color:#ffffff8c;cursor:pointer;font-size:22px;line-height:1;padding:4px 8px}.connection-guide-detail-close:hover{background:#ffffff14;color:#fff}:root{--feed-iphone-max-width:393px;--feed-aspect-ratio:9/16;--feed-bg:#000;--feed-card-bg:#262626;--feed-card-bg-web:#1a1a1a;--feed-border:#363636;--feed-text:#f5f5f5;--feed-text-secondary:#a8a8a8;--feed-accent:#0095f6;--feed-accent-hover:#1877f2;--feed-like:#ed4956;--feed-header-height:56px;--feed-desktop-max-width:470px;--feed-card-radius:12px;--feed-shadow:0 2px 12px #0006}.feed-container{background:#000;background:var(--feed-bg);color:#f5f5f5;color:var(--feed-text);display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;width:100%}.feed-upload-fab{align-items:center;background:#0095f6;background:var(--feed-accent);border:none;border-radius:50%;box-shadow:0 2px 12px #00000059;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;font-weight:300;height:44px;justify-content:center;line-height:1;position:fixed;right:16px;top:100px;transition:background .2s ease,transform .15s ease;width:44px;z-index:50}.feed-upload-fab:hover{background:#1877f2;background:var(--feed-accent-hover);transform:scale(1.08)}.feed-upload-fab:active{transform:scale(.95)}.feed-upload-btn{background:#0095f6;background:var(--feed-accent);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:600;padding:8px 16px;transition:background .2s ease,opacity .2s ease}.feed-upload-btn:hover{background:#1877f2;background:var(--feed-accent-hover)}.feed-upload-btn:active{opacity:.9}.feed-scroll{flex:1 1;min-height:0;overflow:hidden;position:relative}.feed-track{display:flex;flex-direction:row;height:100%;transition:transform .35s cubic-bezier(.22,1,.36,1);width:100%;will-change:transform}.feed-item{align-items:center;flex:0 0 100%;padding:0;position:relative}.feed-card,.feed-item{box-sizing:border-box;display:flex;height:100%;justify-content:center;width:100%}.feed-card{align-items:stretch;flex-direction:column;min-height:0}.feed-nav-btn{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#0a09088c;border:1px solid #ffffff1f;border-radius:50%;color:#fff;color:var(--text,#fff);cursor:pointer;display:flex;height:44px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:background .15s ease,opacity .15s ease;width:44px;z-index:30}.feed-nav-btn:hover:not(:disabled){background:#0a0908d9}.feed-nav-btn:disabled{cursor:not-allowed;opacity:.3}.feed-nav-btn--prev{left:24px}.feed-nav-btn--next{right:24px}@media (max-width:700px){.feed-nav-btn{height:36px;width:36px}.feed-nav-btn--prev{left:8px}.feed-nav-btn--next{right:8px}}.feed-video-wrapper{aspect-ratio:9/16;aspect-ratio:var(--feed-aspect-ratio);background:#000;cursor:pointer;flex-shrink:0;height:100%;margin:0 auto;max-width:min(100%,393px);max-width:min(100%,var(--feed-iphone-max-width));min-height:0;overflow:hidden;position:relative;width:auto}.feed-video{height:100%;object-fit:cover;width:100%}.feed-video-placeholder{align-items:center;color:#a8a8a8;color:var(--feed-text-secondary);display:flex;font-size:.875rem;height:100%;justify-content:center;width:100%}.feed-item-overlay{background:linear-gradient(0deg,#000000d9 0,#0000 60%);bottom:0;left:0;padding:16px 12px 24px 16px;pointer-events:none;position:absolute;right:0}.feed-item-overlay .feed-item-info{pointer-events:auto}.feed-item-info{align-items:flex-end;display:flex;gap:12px;justify-content:space-between}.feed-creator-info{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:12px;min-width:0}.feed-creator-avatar{align-items:center;background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);border:2px solid #0000;border-radius:50%;box-sizing:border-box;display:flex;flex-shrink:0;font-size:1rem;font-weight:600;height:40px;justify-content:center;width:40px}.feed-creator-name{font-size:.9375rem;font-weight:600;margin-bottom:2px}.feed-clip-title{color:#a8a8a8;color:var(--feed-text-secondary);font-size:.8125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-actions{flex-shrink:0;gap:16px}.feed-action-btn,.feed-actions{display:flex;flex-direction:column}.feed-action-btn{align-items:center;background:#0000;border:none;color:#fff;cursor:pointer;font-family:inherit;font-size:.8125rem;gap:4px;padding:0;transition:opacity .2s ease}.feed-action-btn:hover{opacity:.8}.feed-action-btn.liked{color:#ed4956;color:var(--feed-like)}.feed-action-btn .feed-action-icon{align-items:center;display:inline-flex;line-height:1}.feed-item-meta{display:none}.feed-load-more,.feed-loading{color:#a8a8a8;color:var(--feed-text-secondary);font-size:.875rem;padding:24px;text-align:center}.feed-empty{flex-direction:column;min-height:280px;padding:32px 20px;text-align:center}.feed-empty,.feed-empty-icon{align-items:center;display:flex;justify-content:center}.feed-empty-icon{color:#fff9;color:var(--text-secondary,#fff9);margin-bottom:16px;opacity:.6}.feed-empty h2{font-size:1.25rem;font-weight:600;margin:0 0 8px}.feed-empty p{color:#a8a8a8;color:var(--feed-text-secondary);font-size:.875rem;margin:0 0 20px}.feed-load-more button{background:#0095f6;background:var(--feed-accent);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:600;padding:10px 20px;transition:background .2s ease}.feed-load-more button:hover{background:#1877f2;background:var(--feed-accent-hover)}.feed-header-actions{align-items:center;display:flex;gap:4px}.feed-delete-clip-btn,.feed-item-meta .feed-delete-clip-btn{align-items:center;background:none;border:none;color:#a8a8a8;color:var(--feed-text-secondary);cursor:pointer;display:flex;font-size:1.25rem;justify-content:center;line-height:1;padding:4px 8px;transition:color .2s ease}.feed-delete-clip-btn:hover,.feed-item-meta .feed-delete-clip-btn:hover{color:#ed4956;color:var(--feed-like)}.feed-delete-clip-btn-overlay{color:#a8a8a8;color:var(--feed-text-secondary)}.feed-delete-clip-btn-overlay:hover{color:#ed4956;color:var(--feed-like)}.feed-delete-overlay{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.feed-delete-modal{background:#262626;background:var(--feed-card-bg,#262626);border:1px solid #363636;border:1px solid var(--feed-border,#363636);border-radius:12px;box-shadow:0 8px 32px #0006;max-width:340px;padding:24px;width:100%}.feed-delete-title{color:#f5f5f5;color:var(--feed-text);font-size:1.125rem;font-weight:600;margin:0 0 12px}.feed-delete-message{color:#a8a8a8;color:var(--feed-text-secondary);font-size:.875rem;line-height:1.5;margin:0 0 20px}.feed-delete-actions{display:flex;gap:12px;justify-content:flex-end}.feed-delete-cancel{background:#0000;border:1px solid #363636;border:1px solid var(--feed-border);border-radius:8px;color:#f5f5f5;color:var(--feed-text);cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:500;padding:8px 16px;transition:background .2s ease,border-color .2s ease}.feed-delete-cancel:hover:not(:disabled){background:#ffffff0f}.feed-delete-confirm{background:#ed4956;background:var(--feed-like);border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:500;padding:8px 16px;transition:opacity .2s ease,background .2s ease}.feed-delete-confirm:hover:not(:disabled){background:#c73e4a}.feed-delete-cancel:disabled,.feed-delete-confirm:disabled{cursor:not-allowed;opacity:.7}.feed-pause-overlay{animation:feedPauseIn .2s ease-out forwards;inset:0;pointer-events:none;position:absolute;z-index:5}.feed-pause-icon,.feed-pause-overlay{align-items:center;display:flex;justify-content:center}.feed-pause-icon{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#00000073;border-radius:50%;color:#ffffffe6;height:80px;width:80px}@keyframes feedPauseIn{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}.feed-action-emoji{font-size:1.4rem;line-height:1}.feed-caption-badge{color:#0095f6;color:var(--feed-accent);display:inline-block;font-size:.75rem;margin-left:8px;opacity:.85}.feed-fullset-overlay{align-items:center;animation:feedFadeIn .2s ease-out;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#000000d9;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1100}@keyframes feedFadeIn{0%{opacity:0}to{opacity:1}}.feed-fullset-modal{background:#111;border-radius:16px;box-shadow:0 24px 64px #0009;display:flex;flex-direction:column;max-height:90vh;max-width:900px;overflow:hidden;width:100%}.feed-fullset-header{align-items:center;border-bottom:1px solid #ffffff14;display:flex;flex-shrink:0;justify-content:space-between;padding:14px 16px}.feed-fullset-info{flex:1 1;min-width:0}.feed-fullset-close{align-items:center;background:#ffffff14;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;height:40px;justify-content:center;transition:background .2s ease;width:40px}.feed-fullset-close:hover{background:#ffffff26}.feed-fullset-video-wrap{align-items:center;background:#000;display:flex;flex:1 1;justify-content:center;min-height:0}.feed-fullset-video{display:block;max-height:calc(90vh - 72px);outline:none;width:100%}.feed-creator-avatar-sm{font-size:.8rem;height:32px;width:32px}@media (max-width:767px){.feed-video-wrapper{max-width:min(100%,393px);max-width:min(100%,var(--feed-iphone-max-width))}.feed-actions{gap:20px}.feed-action-btn .feed-action-icon{font-size:1.75rem}}@media (min-width:768px){.feed-container{align-items:center;background:#1a1a1a;background:var(--feed-card-bg-web)}.feed-scroll{margin:0 auto;padding:0;width:100%}.feed-card{background:#262626;background:var(--feed-card-bg);border:1px solid #363636;border:1px solid var(--feed-border);border-radius:12px;border-radius:var(--feed-card-radius);box-shadow:0 2px 12px #0006;box-shadow:var(--feed-shadow);height:auto;max-height:calc(100vh - 48px);max-width:calc(100vw - 160px);overflow:hidden;width:470px;width:var(--feed-desktop-max-width)}.feed-card .feed-video-wrapper{flex:1 1 auto;max-height:calc(100vh - 220px);min-height:0}.feed-card .feed-video-wrapper,.feed-video-wrapper{aspect-ratio:9/16;aspect-ratio:var(--feed-aspect-ratio);height:auto;width:100%}.feed-video-wrapper{border-radius:0;margin:0;max-width:100%}.feed-item-overlay{display:none}.feed-item-meta{display:flex;flex-direction:column;gap:12px;padding:12px 16px}.feed-item-meta .feed-meta-top{align-items:center;display:flex;justify-content:space-between}.feed-item-meta .feed-creator-info{cursor:pointer}.feed-item-meta .feed-creator-avatar{font-size:.875rem;height:32px;width:32px}.feed-item-meta .feed-creator-name{font-size:.875rem}.feed-item-meta .feed-clip-title{font-size:.75rem;margin-top:0}.feed-item-meta .feed-more-btn{background:none;border:none;color:#f5f5f5;color:var(--feed-text);cursor:pointer;font-size:1.25rem;line-height:1;padding:4px 8px}.feed-item-meta .feed-actions-row{align-items:center;display:flex;gap:12px;justify-content:space-between}.feed-item-meta .feed-actions-left,.feed-item-meta .feed-actions-right{align-items:center;display:flex;gap:12px;min-width:0}.feed-item-meta .feed-actions-right{margin-left:auto}.feed-item-meta .feed-actions-row .feed-action-btn{flex-direction:row;gap:6px}.feed-item-meta .feed-actions-row .feed-action-icon{font-size:1.25rem}.feed-item-meta .feed-actions-right .feed-action-btn-row>span:last-child{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-item-meta .feed-caption{color:#f5f5f5;color:var(--feed-text);font-size:.875rem;line-height:1.4;margin:0}.feed-item-meta .feed-caption .feed-creator-name-inline{font-weight:600;margin-right:4px}.feed-item-meta-header{border-bottom:1px solid #363636;border-bottom:1px solid var(--feed-border);padding-bottom:8px}.feed-item-meta-footer{padding-top:8px}}.upload-container{background:linear-gradient(160deg,#0c0c12,#0f0f18 35%,#08080e);color:#fff;min-height:100vh;padding:20px;width:100%}.upload-header{align-items:center;display:flex;gap:20px;margin-bottom:32px}.upload-back-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:14px;padding:10px 16px}.upload-back-btn:hover{background:#ffffff26}.upload-header h1{font-size:24px;font-weight:600;margin:0}.upload-content{margin:0 auto;max-width:800px}.upload-step{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;padding:32px}.upload-step h2{font-size:20px;font-weight:600;margin:0 0 24px}.upload-dropzone{border:2px dashed #ffffff4d;border-radius:12px;cursor:pointer;padding:60px 20px;text-align:center;transition:border-color .2s ease,background .2s ease}.upload-dropzone:hover{background:#00a2ff0d;border-color:#00a2ff80}.upload-label{align-items:center;cursor:pointer;display:flex;flex-direction:column;gap:16px}.upload-icon{font-size:64px}.upload-text{font-size:18px;font-weight:500}.upload-hint{font-size:14px;opacity:.6}.video-preview-container{align-items:center;display:flex;flex-direction:column;gap:20px}.upload-preview-video-wrap{aspect-ratio:9/16;background:#000;border-radius:12px;margin:0 auto;max-width:min(100%,393px);overflow:hidden;width:100%}.upload-preview-video{border-radius:12px;height:100%;object-fit:cover;width:100%}.upload-timeline-hint{color:#fff9;font-size:14px;margin:0 0 16px}.clip-timeline-wrap{display:flex;flex-direction:column;gap:8px}.clip-timeline{cursor:pointer;height:40px;position:relative;touch-action:none}.clip-timeline-track{background:#fff3;left:0;right:0}.clip-timeline-range,.clip-timeline-track{border-radius:4px;height:8px;position:absolute;top:50%;transform:translateY(-50%)}.clip-timeline-range{background:linear-gradient(90deg,#00a2ff99,#5078ff99);pointer-events:none}.clip-timeline-thumb{background:#fff;border-radius:50%;box-shadow:0 2px 8px #0006;cursor:grab;height:18px;position:absolute;top:50%;transform:translate(-50%,-50%);width:18px;z-index:2}.clip-timeline-thumb:active{cursor:grabbing}.clip-timeline-thumb-end{background:#00a2fff2}.clip-timeline-labels{color:#fff9;display:flex;font-size:12px;justify-content:space-between}.clip-timeline-dur{color:#00a2ffe6;font-weight:600}.clip-selector{align-items:flex-end;display:flex;flex-wrap:wrap;gap:20px}.clip-input-group{display:flex;flex:1 1;flex-direction:column;gap:8px;min-width:150px}.clip-input-group label{font-size:14px;opacity:.8}.clip-input-group input{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;font-family:inherit;font-size:14px;padding:10px 12px}.clip-duration{background:#00a2ff1a;border:1px solid #00a2ff4d;border-radius:8px;font-weight:500;padding:10px 16px}.upload-next-btn,.upload-submit-btn{background:linear-gradient(135deg,#00a2ffe6,#5078ffd9);border:1px solid #ffffff40;border-radius:10px;color:#fff;cursor:pointer;font-family:inherit;font-size:16px;font-weight:600;padding:12px 24px;transition:transform .2s ease}.upload-next-btn:hover,.upload-submit-btn:hover{transform:translateY(-1px)}.upload-form{gap:20px}.upload-form,.upload-form-group{display:flex;flex-direction:column}.upload-form-group{gap:8px}.upload-form-group label{font-size:14px;font-weight:500;opacity:.9}.upload-form-group input,.upload-form-group textarea{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;font-family:inherit;font-size:14px;padding:12px 16px;resize:vertical}.upload-form-group input::placeholder,.upload-form-group textarea::placeholder{color:#fff6}.upload-preview-info{background:#ffffff0d;border-radius:8px;font-size:14px;opacity:.8;padding:12px 16px}.upload-progress{display:flex;flex-direction:column;gap:12px}.upload-progress-bar{background:#ffffff1a;border-radius:4px;height:8px;overflow:hidden;width:100%}.upload-progress-fill{background:linear-gradient(90deg,#00a2ffe6,#5078ffd9);height:100%;transition:width .3s ease}.upload-progress-text{font-size:14px;opacity:.8;text-align:center}.fave-product-viewer-wrap{background:#0c0c12;border:1px solid #ffffff14;border-radius:12px;margin-top:12px;overflow:hidden;width:100%}.fave-product-viewer{display:block;width:100%}.fave-product-viewer canvas{display:block;height:100%!important;width:100%!important}.profile{background:var(--bg);color:var(--text);min-height:100%;padding:var(--space-7) var(--space-5)}.profile__inner{grid-gap:var(--space-7);align-items:start;display:grid;gap:var(--space-7);grid-template-columns:320px minmax(0,1fr);margin:0 auto;max-width:1200px}.profile__loading{color:var(--text-dim);font-size:var(--fs-sm);padding:var(--space-8);text-align:center}.profile__identity{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);position:-webkit-sticky;position:sticky;top:var(--space-5)}.profile__avatar{align-items:center;display:flex;justify-content:center;margin-bottom:var(--space-2)}.profile__name{color:var(--text);font-size:var(--fs-xl);font-weight:600;margin:0;text-align:center}.profile__bio{color:var(--text-muted);font-size:var(--fs-sm);line-height:1.5;margin:0;text-align:center}.profile__stats{grid-gap:var(--space-2);display:grid;gap:var(--space-2);grid-template-columns:repeat(3,1fr);margin-top:var(--space-2)}.profile__stat{align-items:center;display:flex;flex-direction:column;gap:var(--space-1)}.profile__stat-value{color:var(--text);font-family:var(--font-mono);font-size:var(--fs-xl);font-weight:500}.profile__stat-label{color:var(--text-dim)}.profile__follow{margin-top:var(--space-3)}.profile__divider{background:var(--border);height:1px;margin:var(--space-3) calc(var(--space-6)*-1)}.profile__fave{display:flex;flex-direction:column;gap:var(--space-3)}.profile__fave-eyebrow{color:var(--text-dim)}.profile__fave-name{color:var(--text);font-size:var(--fs-body);font-weight:500}.profile__fave-viewer{align-items:center;aspect-ratio:1/1;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;justify-content:center;overflow:hidden;width:100%}.profile__fave-empty{border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-dim);font-size:var(--fs-sm);padding:var(--space-5);text-align:center}.profile__main{display:flex;flex-direction:column;gap:var(--space-5)}.profile__sets-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(2,1fr)}.profile-set{color:inherit;display:flex;flex-direction:column;gap:var(--space-2);text-decoration:none}.profile-set__thumb{aspect-ratio:16/9;background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;position:relative;transition:border-color var(--dur-micro)}.profile-set:hover .profile-set__thumb{border-color:var(--border-strong)}.profile-set__thumb video{display:block;height:100%;object-fit:cover;width:100%}.profile-set__placeholder{background:var(--surface-2);color:var(--text-dim);font-size:var(--fs-sm);height:100%;width:100%}.profile-set__overlay,.profile-set__placeholder{align-items:center;display:flex;justify-content:center}.profile-set__overlay{background:linear-gradient(180deg,#0a090800 50%,#0a090880);inset:0;opacity:0;position:absolute;transition:opacity var(--dur-micro)}.profile-set:hover .profile-set__overlay{opacity:1}.profile-set__play{background:#f5efe3f2;border-radius:50%;color:var(--bg);height:44px;width:44px}.profile-set__delete,.profile-set__play{align-items:center;display:flex;justify-content:center}.profile-set__delete{background:#0a0908d9;border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text);cursor:pointer;height:30px;position:absolute;right:var(--space-2);top:var(--space-2);transition:color var(--dur-micro),border-color var(--dur-micro);width:30px}.profile-set__delete:hover{border-color:var(--danger);color:var(--danger)}.profile-set__meta{display:flex;flex-direction:column;gap:2px;padding:0 var(--space-1)}.profile-set__title{color:var(--text);font-size:var(--fs-sm);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-set__date{color:var(--text-dim)}.profile__setups-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(2,1fr)}.profile-setup-card{display:flex;flex-direction:column;gap:var(--space-3);min-height:120px}.profile-setup-card__top{display:flex;gap:var(--space-2)}.profile-setup-card__name{color:var(--text);font-size:var(--fs-lg);font-weight:600;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-setup-card__meta{color:var(--text-dim);margin-top:auto}@media (max-width:1024px){.profile__inner{grid-template-columns:1fr}.profile__identity{position:static}}@media (max-width:760px){.profile__sets-grid,.profile__setups-grid{grid-template-columns:1fr}}@media (max-width:500px){.profile{padding:var(--space-5) var(--space-4)}}.search-page{background:var(--bg);color:var(--text);min-height:100%;padding:var(--space-7) var(--space-5)}.search-page__inner{display:flex;flex-direction:column;gap:var(--space-5);margin:0 auto;max-width:720px}.search-page__input-row{align-items:flex-end;display:flex;gap:var(--space-3)}.search-page__input{flex:1 1;position:relative}.search-page__input-icon{color:var(--text-dim);left:var(--space-3);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.search-page__input .ui-input__control{padding-left:calc(var(--space-3) + 26px)}.search-page__empty,.search-page__loading{border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--text-dim);font-size:var(--fs-sm);padding:var(--space-7);text-align:center}.search-page__list{display:flex;flex-direction:column;list-style:none;margin:0;padding:0}.search-result{align-items:center;background:none;border:none;border-bottom:1px solid var(--border);color:inherit;cursor:pointer;display:flex;gap:var(--space-4);padding:var(--space-3) var(--space-2);text-align:left;transition:background var(--dur-micro);width:100%}.search-result:hover{background:var(--surface-1)}.search-result__meta{display:flex;flex-direction:column;gap:2px;min-width:0}.search-result__name{color:var(--text);font-size:var(--fs-body);font-weight:500}.search-result__email{color:var(--text-dim)}@media (max-width:600px){.search-page{padding:var(--space-5) var(--space-4)}.search-page__input-row{align-items:stretch;flex-direction:column}}.notifications{background:var(--bg);color:var(--text);min-height:100%;padding:var(--space-7) var(--space-5)}.notifications__inner{display:flex;flex-direction:column;gap:var(--space-5);margin:0 auto;max-width:720px}.notifications__loading{color:var(--text-dim);font-size:var(--fs-sm);padding:var(--space-7);text-align:center}.notifications__mark-all{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--fs-sm);padding:0;transition:color var(--dur-micro)}.notifications__mark-all:hover{color:var(--accent)}.notifications__groups{display:flex;flex-direction:column;gap:var(--space-5)}.notifications__group-title{color:var(--text-dim);margin:0 0 var(--space-2)}.notifications__list{display:flex;flex-direction:column;list-style:none;margin:0;padding:0}.notif{border-bottom:1px solid var(--border);border-left:2px solid #0000}.notif:not(.notif--read){background:#d9c2a00a;border-left-color:var(--accent)}.notif__btn{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);text-align:left;transition:background var(--dur-micro);width:100%}.notif__btn:hover{background:var(--surface-1)}.notif__body{color:var(--text);flex:1 1;font-size:var(--fs-sm);min-width:0}.notif__body strong{color:var(--text);font-weight:600}.notif--read .notif__body,.notif--read .notif__body strong{color:var(--text-muted)}.notif__time{color:var(--text-dim);flex-shrink:0}@media (max-width:600px){.notifications{padding:var(--space-5) var(--space-4)}}