body{background:var(--bg);color:var(--text);font-family:var(--font);height:100vh;overflow:hidden}#root{height:100vh}:root{--bg:#0a0a0a;--surface:#141414;--border:#222;--text:#e0e0e0;--text-muted:#777;--accent:#4fc3f7;--accent-dim:#1a3a4a;--success:#66bb6a;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font);height:100vh}body:has(.landing-page){overflow:auto}body:has(.app){overflow:hidden}.app{flex-direction:column;height:100vh;display:flex}.app-body{flex:1;display:flex;overflow:hidden}.app-body>.main{flex:1;min-width:0}.tab-bar{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:4px;height:48px;padding:0 8px;display:flex;overflow-x:hidden}.tab-bar::-webkit-scrollbar{height:0}.tab-strip{flex:1;align-items:center;gap:2px;min-width:0;height:100%;display:flex;overflow-x:auto}.tab-strip::-webkit-scrollbar{height:0}.nav-btn{height:32px;color:var(--text-muted);font-family:var(--font);cursor:pointer;background:0 0;border:none;border-radius:7px;flex-shrink:0;align-items:center;gap:6px;padding:0 12px;font-size:.82rem;font-weight:600;transition:color .15s,background .15s;display:inline-flex}.nav-btn:hover{color:var(--text);background:var(--bg)}.nav-btn.active{color:var(--accent);background:var(--accent-dim)}.nav-btn-icon{font-size:.95rem;line-height:1}.tab{color:var(--text-muted);font-family:var(--font);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;height:100%;padding:8px 20px;font-size:.85rem;font-weight:500;transition:color .2s,border-color .2s;display:flex}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.tab-close{color:var(--text-muted);opacity:0;pointer-events:auto;margin-left:8px;font-size:1rem;line-height:1;transition:opacity .15s,color .15s}.tab:hover .tab-close{opacity:1}.tab-close:hover{color:#e55}.tab-pin{opacity:0;pointer-events:auto;margin-left:8px;font-size:.7rem;line-height:1;transition:opacity .15s}.tab:hover .tab-pin{opacity:.55}.tab-pin:hover{opacity:1}.tab-divider{background:var(--border);align-self:stretch;width:1px;margin:6px 4px}.tab-shared-icon{opacity:.8;margin-right:5px;font-size:.75rem}.tab-shared{font-style:italic}.shared-by{color:var(--text-muted);font-size:.7rem;font-style:italic}.share-add{gap:8px;margin-bottom:4px;display:flex}.share-add input{flex:1}.share-list{max-height:220px;margin-top:12px;overflow-y:auto}.share-empty{color:var(--text-muted);margin:4px 0;font-size:.85rem}.share-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:7px 0;display:flex}.share-row:last-child{border-bottom:none}.share-email{font-size:.85rem}.help-doc{max-width:820px;line-height:1.6}.help-doc h1{font-size:1.6rem}.help-lede{color:var(--text);font-size:1.05rem}.help-section h2{border-bottom:1px solid var(--border);margin-bottom:10px;padding-bottom:6px;font-size:1.1rem}.help-section ul,.help-section ol{padding-left:22px}.help-section li{margin-bottom:8px}.help-types{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid}.help-type{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 12px}.help-type dt{color:var(--accent);font-weight:600}.help-type dd{color:var(--text-muted);margin:2px 0 0;font-size:.85rem}.help-faq dt{margin-top:16px;font-weight:600}.help-faq dd{color:var(--text-muted);margin:4px 0 0}.link-inline{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.link-inline:hover{color:var(--text)}.setup-more{color:var(--text-muted);margin-top:14px;font-size:.85rem}.pinned-bar{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:7px 14px;display:flex}.pinned-name{align-items:center;font-size:.9rem;font-weight:600;display:inline-flex}.pinned-archived{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);background:#88888826;border:1px solid #8888884d;border-radius:4px;margin-left:10px;padding:2px 6px;font-size:.6rem;font-weight:600}.pinned-unpin{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:6px;padding:3px 10px;font-size:.75rem;transition:color .15s,border-color .15s}.pinned-unpin:hover{color:var(--accent);border-color:var(--accent)}.tab-add{color:var(--text-muted);padding:8px 14px;font-size:1.1rem}.tab-add:hover{color:var(--accent)}.tab-pulse{animation:.8s ease-out tab-pulse}@keyframes tab-pulse{0%{background:var(--accent);color:#fff;transform:scale(1.15)}30%{background:var(--accent);color:#fff;transform:scale(.97)}50%{transform:scale(1.08)}70%{transform:scale(.99)}to{background:var(--surface-hover);transform:scale(1)}}.tab-reset{color:var(--text-muted);padding:8px 12px;font-size:.8rem}.tab-reset:hover{color:#e55}.main{flex:1;overflow:auto}.home-view{justify-content:center;align-items:flex-start;padding:40px 24px;display:flex}.home-content{flex-direction:column;gap:24px;width:100%;max-width:1200px;display:flex}.endpoint-banner{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px 24px}.endpoint-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:10px;font-size:.75rem}.endpoint-row{align-items:center;gap:12px;display:flex}.endpoint-url{background:var(--bg);border:1px solid var(--border);color:var(--accent);white-space:nowrap;border-radius:8px;flex:1;padding:10px 14px;font-family:monospace;font-size:.9rem;overflow-x:auto}.btn-copy{flex-shrink:0;padding:10px 20px}.endpoint-hint{color:var(--text-muted);margin-top:10px;font-size:.8rem}.endpoint-compact{background:var(--surface);border:1px solid var(--border);border-radius:8px;align-items:center;gap:10px;padding:8px 14px;display:flex}.endpoint-compact-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);flex-shrink:0;font-size:.65rem;font-weight:600}.endpoint-compact-url{color:var(--accent);text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:monospace;font-size:.78rem;overflow:hidden}.endpoint-compact-copy{flex-shrink:0;padding:4px 12px;font-size:.75rem}.display-view{flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}.device-info-bar{align-self:flex-start;align-items:center;gap:10px;margin-bottom:16px;display:flex}.device-info-actions{gap:6px;margin-left:8px;display:flex}.btn-sm{padding:3px 10px;font-size:.8rem}.device-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;width:100%;max-width:1200px;display:grid}.device-card{background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:12px;flex-direction:column;padding:0;text-decoration:none;transition:border-color .2s,transform .2s;display:flex;overflow:hidden}.device-card:hover{border-color:var(--accent);transform:translateY(-2px)}.card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.device-card .name{font-size:1rem;font-weight:600}.device-card .status{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.7rem}.card-meta{align-items:center;gap:8px;display:flex}.type-badge{text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;border:1px solid;border-radius:4px;padding:2px 7px;font-size:.65rem;font-weight:600}.meta-detail{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.7rem;overflow:hidden}.card-preview{height:200px;padding:16px 18px;font-size:.75rem;line-height:1.5;position:relative;overflow:hidden}.card-preview:after{content:"";background:linear-gradient(transparent, var(--surface));pointer-events:none;height:48px;position:absolute;bottom:0;left:0;right:0}.preview-empty{height:100%;color:var(--text-muted);justify-content:center;align-items:center;font-size:.85rem;display:flex}.preview-text{white-space:pre-wrap;color:var(--text)}.preview-markdown h1{color:var(--accent);margin-bottom:8px;font-size:1.1rem}.preview-markdown h2{margin:10px 0 6px;font-size:.95rem}.preview-markdown h3{margin:8px 0 4px;font-size:.85rem}.preview-markdown p{margin-bottom:6px}.preview-markdown table{border-collapse:collapse;width:100%;margin:6px 0}.preview-markdown th,.preview-markdown td{border:1px solid var(--border);text-align:left;padding:3px 6px;font-size:.7rem}.preview-markdown th{background:var(--bg)}.preview-markdown ul,.preview-markdown ol{margin:4px 0;padding-left:16px}.preview-markdown blockquote{border-left:2px solid var(--accent);color:var(--text-muted);margin:6px 0;padding-left:8px}.preview-markdown code{background:var(--bg);border-radius:3px;padding:1px 4px;font-size:.7em}.preview-markdown pre{background:var(--bg);border-radius:4px;margin:6px 0;padding:8px;overflow:hidden}.preview-markdown a{color:var(--accent)}.preview-markdown hr{border:none;border-top:1px solid var(--border);margin:8px 0}.preview-list-item{align-items:center;gap:8px;padding:4px 0;display:flex}.preview-list-item .check{border:2px solid var(--border);border-radius:3px;flex-shrink:0;width:14px;height:14px}.preview-list-item.checked .check{background:var(--accent);border-color:var(--accent)}.preview-more{color:var(--text-muted);padding-top:4px;font-style:italic}.preview-dashboard{grid-template-columns:1fr 1fr;gap:8px;display:grid}.preview-dash-card{background:var(--bg);border-radius:6px;padding:10px}.preview-dash-card .title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:4px;font-size:.65rem}.preview-dash-card .value{color:var(--accent);font-size:1.1rem;font-weight:700}.preview-table-wrap{overflow:hidden}.preview-table{border-collapse:collapse;width:100%;font-size:.7rem}.preview-table th{text-align:left;background:var(--bg);color:var(--text-muted);border-bottom:1px solid var(--border);padding:3px 6px;font-weight:600}.preview-table td{border-bottom:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;max-width:100px;padding:3px 6px;overflow:hidden}.content{width:100%;max-width:900px;animation:.4s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.content-text{white-space:pre-wrap;font-size:clamp(1.2rem,3vw,2rem);line-height:1.6}.content-markdown h1{color:var(--accent);margin-bottom:16px;font-size:2rem}.content-markdown h2{color:var(--text);margin:24px 0 12px;font-size:1.5rem}.content-markdown h3{margin:20px 0 8px;font-size:1.2rem}.content-markdown p{margin-bottom:12px;line-height:1.7}.content-markdown ul,.content-markdown ol{margin:12px 0;padding-left:24px}.content-markdown li{margin-bottom:6px;line-height:1.6}.content-markdown code{background:var(--surface);border-radius:4px;padding:2px 6px;font-size:.9em}.content-markdown pre{background:var(--surface);border-radius:8px;margin:16px 0;padding:16px;overflow-x:auto}.content-markdown pre code{background:0 0;padding:0}.content-markdown blockquote{border-left:3px solid var(--accent);color:var(--text-muted);margin:16px 0;padding-left:16px}.content-markdown table{border-collapse:collapse;width:100%;margin:16px 0}.content-markdown th,.content-markdown td{border:1px solid var(--border);text-align:left;padding:8px 12px}.content-markdown th{background:var(--surface)}.content-markdown a{color:var(--accent)}.content-list{font-size:1.1rem;list-style:none}.content-list li{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 16px;display:flex}.content-list li .check{border:2px solid var(--border);border-radius:4px;flex-shrink:0;width:20px;height:20px}.content-list li.checked .check{background:var(--accent);border-color:var(--accent)}.content-dashboard{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.dash-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px}.dash-card .title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:8px;font-size:.8rem}.dash-card .value{color:var(--accent);font-size:2rem;font-weight:700}.dash-card .subtitle{color:var(--text-muted);margin-top:4px;font-size:.85rem}.content-table{max-width:100%}.content-table-wrap{width:100%}.content-table-toolbar{align-items:center;gap:12px;margin-bottom:12px;display:flex}.content-table-search{background:var(--surface);border:1px solid var(--border);max-width:280px;color:var(--text);font-size:.82rem;font-family:var(--font);border-radius:6px;outline:none;flex:1;padding:7px 12px}.content-table-search:focus{border-color:var(--accent)}.content-table-search::placeholder{color:var(--text-muted)}.content-table-count{color:var(--text-muted);white-space:nowrap;font-size:.78rem}.content-table-scroll{border:1px solid var(--border);border-radius:8px;overflow-x:auto}table.content-table{border-collapse:collapse;width:100%;font-size:.85rem}.content-table thead{z-index:1;position:sticky;top:0}.content-table th{background:var(--surface);text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;padding:10px 14px;font-size:.78rem;font-weight:600}.content-table th:hover{color:var(--text)}.sort-indicator{color:var(--accent);font-size:.65rem}.content-table td{border-bottom:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;max-width:320px;padding:8px 14px;overflow:hidden}.content-table tbody tr:hover{background:#4fc3f70a}.content-table tbody tr:last-child td{border-bottom:none}.content-table-empty{text-align:center;color:var(--text-muted);padding:24px 14px;font-style:italic}.content-json-wrap{max-width:900px}.content-json{background:var(--surface);border:1px solid var(--border);color:var(--accent);border-radius:8px;padding:20px;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.85rem;line-height:1.6;overflow-x:auto}.preview-json{color:var(--accent);white-space:pre-wrap;word-break:break-all;font-family:SF Mono,Fira Code,monospace;font-size:.65rem;line-height:1.4}.dropbox-badge{text-transform:uppercase;letter-spacing:.06em;color:#ffcc80;vertical-align:middle;background:#ffcc8026;border:1px solid #ffcc804d;border-radius:4px;margin-left:8px;padding:2px 6px;font-size:.6rem;font-weight:600;display:inline-block}.dropbox-badge.picked-up{color:var(--text-muted);background:#88888826;border-color:#8888884d}.device-picked-up{opacity:.5}.device-id-copy{cursor:pointer;font-family:monospace;font-size:.75rem}.device-id-copy:hover{color:var(--accent)}.dropbox-package{width:100%;max-width:900px;min-height:300px;position:relative}.dropbox-content-behind{filter:blur(6px);opacity:.2;pointer-events:none;-webkit-user-select:none;user-select:none}.dropbox-overlay{z-index:1;flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex;position:absolute;inset:0}.dropbox-icon{font-size:3.5rem}.dropbox-status{color:#ffcc80;text-transform:uppercase;letter-spacing:.08em;font-size:1.1rem;font-weight:600}.dropbox-pickup-count{color:var(--text-muted);font-size:.85rem}.dropbox-history{text-align:center;margin-top:8px}.dropbox-history .pickup-entry{color:var(--text-muted);padding:2px 0;font-size:.75rem}.dropbox-package.picked-up .dropbox-status{color:var(--text-muted)}.dropbox-package.picked-up .dropbox-content-behind{opacity:.1}.dropbox-reveal-btn{color:var(--accent);border:1px solid var(--border);border-radius:6px;margin-top:4px;padding:6px 16px;font-size:.8rem}.dropbox-reveal-btn:hover{border-color:var(--accent)}.dropbox-hide-btn{color:var(--text-muted);margin-bottom:12px;font-size:.78rem}.dropbox-hide-btn:hover{color:var(--accent)}.dropbox-card-preview{flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%;display:flex}.dropbox-card-preview .dropbox-icon{font-size:2.5rem}.dropbox-card-preview .dropbox-label{text-transform:uppercase;letter-spacing:.06em;color:#ffcc80;font-size:.8rem;font-weight:600}.dropbox-card-preview .dropbox-label.picked-up{color:var(--text-muted)}.dropbox-card-preview .dropbox-count{color:var(--text-muted);font-size:.7rem}.waiting{text-align:center;color:var(--text-muted)}.waiting .device-name{color:var(--text);text-transform:capitalize;margin-bottom:8px;font-size:1.4rem}.waiting .pulse{background:var(--accent);border-radius:50%;width:8px;height:8px;margin-right:8px;animation:2s infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:.3}50%{opacity:1}}.content-html{background:#fff;border:none;border-radius:8px;width:100%;height:80vh}.content-url{background:#fff;border:none;border-radius:8px;width:100%;height:calc(100vh - 128px)}.content-url-bar{background:var(--surface);border:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;border-radius:8px 8px 0 0;width:100%;padding:8px 12px;font-size:.8rem;overflow:hidden}.content-url-bar a{color:var(--text-muted);text-decoration:none}.content-url-bar a:hover{color:var(--accent)}.content-url-bar+.content-url{border-radius:0 0 8px 8px;height:calc(100vh - 168px)}.content-url-failed{text-align:center;height:calc(100vh - 128px);color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:.9rem;line-height:1.5;display:flex}.content-url-failed p{max-width:400px}.content-url-failed a{color:var(--accent);word-break:break-all}.content-image-wrap{justify-content:center;align-items:center;display:flex}.content-image{object-fit:contain;border-radius:8px;max-width:100%;max-height:calc(100vh - 128px)}.preview-url{flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100%;display:flex}.preview-url-icon{font-size:2rem}.preview-url-text{color:var(--accent);word-break:break-all;text-align:center;font-size:.7rem}.preview-image{object-fit:cover;border-radius:0 0 11px 11px;width:100%;height:100%}.modal-overlay{z-index:100;background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;min-width:320px;padding:32px}.modal h2{margin-bottom:16px;font-size:1.1rem}.modal input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);border-radius:8px;outline:none;margin-bottom:16px;padding:10px 14px;font-size:1rem}.modal input:focus{border-color:var(--accent)}.modal .actions{justify-content:flex-end;gap:8px;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;padding:8px 20px;font-size:.9rem}.btn-primary{background:var(--accent);color:#000;font-weight:600}.btn-ghost{color:var(--text-muted);background:0 0}.btn-danger{color:#fff;background:#e55;font-weight:600}.btn-large{border-radius:10px;padding:14px 40px;font-size:1.1rem}.landing-page{text-align:center;flex-direction:column;align-items:center;min-height:100vh;padding:80px 24px 40px;display:flex}.landing-hero{max-width:560px;margin-bottom:60px}.landing-hero h1{letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;font-size:3rem;font-weight:700}.landing-hero .tagline{color:var(--text);margin-bottom:12px;font-size:1.3rem}.landing-hero .description{color:var(--text-muted);margin-bottom:32px;font-size:.95rem;line-height:1.7}.landing-features{gap:32px;max-width:700px;margin-bottom:48px;display:flex}.feature{text-align:center;flex:1}.feature-title{color:var(--text);margin-bottom:6px;font-weight:600}.feature-desc{color:var(--text-muted);font-size:.85rem;line-height:1.5}.landing-example-conversation{text-align:left;width:100%;max-width:560px;margin-bottom:60px}.example-convo-label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);text-align:center;margin-bottom:12px;font-size:.75rem}.example-convo{flex-direction:column;gap:12px;margin-bottom:20px;display:flex}.convo-bubble{border-radius:12px;padding:14px 18px;font-size:.92rem;line-height:1.6}.convo-bubble.user{background:var(--accent-dim);border:1px solid var(--accent);color:var(--text);align-self:flex-end;max-width:90%;font-style:italic}.convo-bubble.ai{background:var(--surface);border:1px solid var(--border);color:var(--text);align-self:flex-start;max-width:90%}.example-after{color:var(--text-muted);text-align:center;margin-top:16px;font-size:.88rem;line-height:1.6}.landing-more-prompts{flex-wrap:wrap;justify-content:center;gap:8px;max-width:600px;margin:32px 0 48px;display:flex}.example-prompt-pill{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);border-radius:20px;padding:8px 14px;font-size:.8rem;font-style:italic}.how-heading{color:var(--text);text-align:center;margin-bottom:4px;font-size:1.3rem;font-weight:600}.landing-how-it-works{width:100%;max-width:800px;margin-bottom:48px}.steps-row{align-items:flex-start;gap:16px;margin-top:24px;display:flex}.step{text-align:center;flex:1}.step-number{background:var(--accent-dim);width:36px;height:36px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin-bottom:10px;font-size:1rem;font-weight:700;display:inline-flex}.step-title{margin-bottom:6px;font-weight:600}.step-desc{color:var(--text-muted);font-size:.85rem;line-height:1.5}.step-arrow{color:var(--text-muted);flex-shrink:0;padding-top:8px;font-size:1.3rem}.landing-cta-bottom{margin-bottom:60px}.bookmark-banner{background:var(--accent-dim);border:1px solid var(--accent);border-radius:12px;align-items:center;gap:14px;padding:16px 20px;display:flex}.bookmark-icon{flex-shrink:0;font-size:1.5rem}.bookmark-text{flex:1;font-size:.9rem;line-height:1.5}.bookmark-dismiss{flex-shrink:0}.setup-instructions{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px}.setup-heading{margin-bottom:8px;font-size:1.1rem;font-weight:600}.setup-heading-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;display:flex}.setup-heading-toggle:hover{color:var(--accent)}.setup-chevron{color:var(--text-muted);font-size:1.2rem;transition:transform .2s;transform:rotate(0)}.setup-chevron.open{transform:rotate(90deg)}.setup-intro{color:var(--text-muted);margin-bottom:16px;font-size:.88rem;line-height:1.6}.setup-tabs{gap:4px;margin-bottom:16px;display:flex}.setup-tab{border:1px solid var(--border);color:var(--text-muted);font-family:var(--font);cursor:pointer;background:0 0;border-radius:8px;padding:8px 20px;font-size:.85rem;transition:all .2s}.setup-tab:hover{color:var(--text);border-color:var(--text-muted)}.setup-tab.active{background:var(--accent-dim);color:var(--accent);border-color:var(--accent)}.setup-steps{color:var(--text);padding-left:20px;font-size:.88rem;line-height:1.8}.setup-steps a{color:var(--accent)}.setup-note{color:var(--text-muted);background:var(--bg);border-left:3px solid var(--accent);border-radius:6px;margin-top:8px;padding:10px 14px;font-size:.82rem;line-height:1.5}.setup-codeblock{background:var(--bg);border:1px solid var(--border);border-radius:8px;margin:8px 0 12px;padding:14px 16px;font-size:.82rem;line-height:1.6;overflow-x:auto}.btn-copy-config{margin-bottom:12px}.setup-try{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.setup-try-heading{margin-bottom:6px;font-size:.95rem;font-weight:600}.setup-try p{color:var(--text-muted);margin-bottom:10px;font-size:.85rem}.setup-prompts{flex-direction:column;gap:6px;display:flex}.setup-prompt-example{background:var(--bg);border:1px solid var(--border);color:var(--text-muted);border-radius:8px;padding:10px 14px;font-size:.85rem;font-style:italic}.setup-try-hint{color:var(--text-muted);margin-top:12px;font-size:.82rem;line-height:1.5}.back-link{color:var(--text-muted);margin-right:auto;padding:8px 14px;font-size:.8rem;text-decoration:none;transition:color .2s}.back-link:hover{color:var(--accent)}.back-group{flex-shrink:0;align-items:center;display:flex}.back-group .back-link{margin-right:0}.tab-about{color:var(--text-muted);font-family:var(--font);cursor:pointer;opacity:.35;background:0 0;border:none;padding:2px 6px;font-size:.6rem;transition:opacity .2s}.tab-about:hover{opacity:1}.ws-dot{vertical-align:middle;background:#555;border-radius:50%;width:6px;height:6px;margin-right:6px;transition:background .3s;display:inline-block}.ws-dot.on{background:var(--success)}.debug-toggle{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;z-index:200;border-radius:6px;padding:4px 10px;font-family:monospace;font-size:.75rem;position:fixed;bottom:12px;right:12px}.debug-toggle:hover{color:var(--accent);border-color:var(--accent)}.debug-panel{background:var(--surface);border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;height:220px;font-family:monospace;font-size:.78rem;display:flex}.debug-header{border-bottom:1px solid var(--border);color:var(--text-muted);flex-shrink:0;justify-content:space-between;align-items:center;padding:6px 12px;font-weight:600;display:flex}.debug-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.1rem}.debug-entries{flex:1;padding:6px 12px;overflow-y:auto}.debug-empty{color:var(--text-muted);padding:8px 0}.debug-entry{border-bottom:1px solid var(--bg);gap:10px;padding:3px 0;display:flex}.debug-time{color:var(--text-muted);flex-shrink:0}.debug-event{color:var(--accent);flex-shrink:0;min-width:120px}.debug-event-device-created{color:var(--success)}.debug-event-device-deleted{color:#e55}.debug-event-content-updated{color:var(--accent)}.debug-event-content-cleared{color:var(--text-muted)}.debug-detail{color:var(--text)}.dropbox-sidebar{background:var(--surface);border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;width:280px;display:flex;overflow-y:auto}.dropbox-sidebar-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 14px;display:flex}.dropbox-sidebar-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.8rem;font-weight:600}.dropbox-sidebar-collapse{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.2rem;line-height:1}.dropbox-sidebar-collapse:hover{color:var(--text)}.dropbox-sidebar-collapsed{background:var(--surface);border-left:1px solid var(--border);cursor:pointer;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;width:36px;padding-top:12px;transition:background .2s;display:flex}.dropbox-sidebar-collapsed:hover{background:var(--bg)}.dropbox-sidebar-icon{font-size:1rem}.dropbox-sidebar-count{color:#ffcc80;background:#ffcc8026;border-radius:8px;padding:1px 6px;font-size:.7rem;font-weight:600}.dropbox-pulse{animation:.8s ease-out dropbox-sidebar-pulse}@keyframes dropbox-sidebar-pulse{0%{background:#ffcc804d}to{background:var(--surface)}}.dropbox-section{padding:8px 0}.dropbox-section+.dropbox-section{border-top:1px solid var(--border)}.dropbox-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:4px 14px 6px;font-size:.65rem}.dropbox-item{border-bottom:1px solid var(--border);cursor:pointer;padding:10px 14px;transition:background .15s}.dropbox-item:hover{background:#ffffff05}.dropbox-item-active{background:var(--accent-dim);border-left:2px solid var(--accent)}.dropbox-item:last-child{border-bottom:none}.dropbox-item-muted{opacity:.5}.dropbox-item-pulse{animation:.8s ease-out dropbox-item-flash}@keyframes dropbox-item-flash{0%{background:#ffcc8033}to{background:0 0}}.dropbox-item-header{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.dropbox-item-name{color:var(--text);font-size:.85rem;font-weight:600}.dropbox-item-delete{color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;padding:0 2px;font-size:1rem;line-height:1;transition:opacity .15s,color .15s}.dropbox-item:hover .dropbox-item-delete{opacity:1}.dropbox-item-delete:hover{color:#e55}.dropbox-item-id{color:var(--text-muted);cursor:pointer;margin-bottom:4px;font-family:monospace;font-size:.65rem}.dropbox-item-id:hover{color:var(--accent)}.dropbox-item-meta{align-items:center;gap:8px;display:flex}.dropbox-item-status{text-transform:uppercase;letter-spacing:.06em;color:#ffcc80;background:#ffcc8026;border:1px solid #ffcc804d;border-radius:3px;padding:1px 5px;font-size:.6rem;font-weight:600}.dropbox-item-status.picked-up{color:var(--text-muted);background:#88888826;border-color:#8888884d}.dropbox-item-count{color:var(--text-muted);font-size:.65rem}@media (width<=600px){.landing-features{flex-direction:column;gap:24px}.landing-hero h1{font-size:2rem}.landing-more-prompts{flex-direction:column;align-items:center}.steps-row{flex-direction:column;gap:24px}.step-arrow{display:none}.dropbox-sidebar{width:220px}}.app-loading{min-height:100vh;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.auth-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:12px;width:100%;max-width:380px;padding:32px 28px}.auth-card h1{color:var(--accent);margin-bottom:4px;font-size:1.6rem}.auth-tagline{color:var(--text-muted);margin-bottom:24px;font-size:.9rem}.auth-form{text-align:left;flex-direction:column;gap:12px;display:flex}.auth-form input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);font-size:.95rem;font-family:var(--font);border-radius:8px;outline:none;padding:11px 12px;transition:border-color .15s}.auth-form input:focus{border-color:var(--accent)}.auth-form input::placeholder{color:var(--text-muted)}.auth-form .btn{justify-content:center;width:100%;margin-top:4px}.auth-error{color:#ef9a9a;background:#e573731f;border:1px solid #e57373;border-radius:8px;padding:8px 10px;font-size:.85rem}.auth-switch{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-top:18px;font-size:.85rem}.auth-switch:hover{text-decoration:underline}.home-account{color:var(--text-muted);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;font-size:.85rem;display:flex}.home-account strong{color:var(--text)}.token-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-top:16px;padding:20px}.token-panel h2{margin-bottom:6px;font-size:1.1rem}.token-panel p{color:var(--text-muted);margin-bottom:14px;font-size:.9rem}.token-panel-toggle{cursor:pointer;text-align:left;width:100%;color:inherit;background:0 0;border:none;align-items:center;gap:12px;padding:0;display:flex}.token-panel-caret{color:var(--text-muted);font-size:.8rem;transition:transform .15s}.token-panel-caret.open{transform:rotate(90deg)}.token-panel-heading{flex-direction:column;gap:2px;display:flex}.token-panel-heading strong{font-size:1.1rem}.token-panel-sub{color:var(--text-muted);font-size:.85rem}.token-panel-body{margin-top:16px}.token-panel-body>p:first-child{margin-bottom:14px}.token-reveal{margin-top:16px}.token-reveal p{margin-bottom:8px}.token-reveal code{color:var(--accent)}.setup-clients{border-top:1px solid var(--border);gap:16px;margin-top:20px;padding-top:16px;display:grid}.setup-client h3{margin-bottom:6px;font-size:.95rem}.setup-client>p{color:var(--text-muted);margin:0;font-size:.9rem}.setup-client code{color:var(--accent)}.setup-steps{color:var(--text-muted);margin:0;padding-left:20px;font-size:.9rem}.setup-steps li{margin-bottom:12px}.setup-steps .setup-codeblock{margin-top:8px;margin-bottom:8px}.archive-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-top:16px;padding:20px}.archive-panel h2{margin-bottom:6px;font-size:1.1rem}.archive-panel>p{color:var(--text-muted);margin-bottom:14px;font-size:.9rem}.archive-row{border-top:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.archive-name{font-weight:600}.archive-meta{color:var(--text-muted);flex:1;font-size:.85rem}.archive-actions{gap:8px;display:flex}.archive-actions .btn{padding:4px 12px;font-size:.85rem}.form-error{color:var(--danger,#e5484d);margin:8px 0 0;font-size:.85rem}
