.homepage{min-height:100vh;position:relative;overflow-x:hidden;background:#fafafa;color:#1a1a1a}.homepage-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;overflow:hidden}.gradient-orb{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(179,122,76,.15) 0%,rgba(179,122,76,.05) 50%,transparent 70%);filter:blur(60px);transform:translate(-50%,-50%);transition:all .3s ease-out;pointer-events:none}.gradient-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,#fafafacc,#fafafaf2,#fafafa);pointer-events:none}.singapore-background{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(https://images.unsplash.com/photo-1525625293386-3f8f99389edd?w=1920&q=80);background-size:cover;background-position:center;background-repeat:no-repeat;opacity:.08;filter:blur(2px);pointer-events:none;z-index:0}.homepage-nav{position:relative;z-index:100;padding:24px 48px;display:flex;justify-content:center;align-items:center;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.05)}.nav-container{width:100%;max-width:1200px;display:flex;justify-content:space-between;align-items:center}.nav-logo{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:600;color:#1a1a1a;letter-spacing:-.02em}.nav-logo-image{height:48px;width:auto;object-fit:contain}.logo-text{background:linear-gradient(135deg,#b37a4c,#8b6f47);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-menu{display:flex;align-items:center;gap:32px}.nav-item{background:none;border:none;color:#666;font-size:14px;font-weight:500;cursor:pointer;padding:8px 12px;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;gap:6px;text-decoration:none}.nav-item:hover{color:#1a1a1a;background:#00000008}.nav-dropdown{position:relative}.dropdown-menu-home{position:absolute;top:calc(100% + 8px);left:0;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:12px;box-shadow:0 8px 24px #0000001f;min-width:280px;padding:8px;z-index:1000;animation:fadeInDown .2s ease}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{width:100%;background:none;border:none;padding:12px 16px;text-align:left;cursor:pointer;border-radius:8px;transition:all .2s ease}.dropdown-item:hover{background:#b37a4c14}.dropdown-item-content{display:flex;flex-direction:column;gap:4px}.dropdown-item-title{font-size:14px;font-weight:600;color:#1a1a1a}.dropdown-item-desc{font-size:12px;color:#666;line-height:1.4}.homepage-main{position:relative;z-index:10;padding:80px 48px 120px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 200px);overflow:visible}.hero-content{max-width:800px;text-align:center;animation:fadeInUp .8s ease;overflow:visible;padding-bottom:16px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-title{font-size:64px;font-weight:700;line-height:1.2;margin-bottom:32px;letter-spacing:-.03em;color:#1a1a1a;overflow:visible;padding-bottom:4px}.hero-subtitle{display:block;font-size:48px;font-weight:400;color:#666;margin-top:12px;margin-bottom:8px;padding-bottom:8px;background:linear-gradient(135deg,#b37a4c,#8b6f47);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;overflow:visible;line-height:1.3}.hero-tagline{font-size:20px;font-weight:500;line-height:1.5;color:#b37a4c;margin-bottom:16px;font-style:italic}.hero-description{font-size:18px;line-height:1.7;color:#666;margin-bottom:48px;max-width:800px;margin-left:auto;margin-right:auto}.hero-description strong{color:#1a1a1a;font-weight:600}.hero-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-bottom:48px;width:100%;max-width:800px}.feature-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:24px;text-align:center;transition:all .3s ease;cursor:default}.feature-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000014;border-color:#b37a4c33}.feature-icon{font-size:40px;margin-bottom:12px;display:block;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.feature-card:nth-child(2) .feature-icon{animation-delay:.5s}.feature-card:nth-child(3) .feature-icon{animation-delay:1s}.feature-content h3{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:8px}.feature-content p{font-size:13px;color:#666;line-height:1.5}.hero-cta{display:flex;gap:16px;justify-content:center;align-items:center;flex-wrap:wrap}.cta-primary{background:linear-gradient(135deg,#b37a4c,#9d6b42);color:#fff;border:none;padding:14px 32px;font-size:16px;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:8px;box-shadow:0 4px 12px #b37a4c4d}.cta-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #b37a4c66}.cta-primary:active{transform:translateY(0)}.cta-secondary{background:#fff;color:#1a1a1a;border:1px solid rgba(0,0,0,.1);padding:14px 32px;font-size:16px;font-weight:600;border-radius:12px;cursor:pointer;transition:all .3s ease}.cta-secondary:hover{background:#00000005;border-color:#00000026;transform:translateY(-2px)}.floating-elements{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.floating-circle{position:absolute;border-radius:50%;background:linear-gradient(135deg,#b37a4c1a,#b37a4c0d);filter:blur(40px);animation:floatCircle 20s ease-in-out infinite}.circle-1{width:300px;height:300px;top:10%;left:10%;animation-delay:0s}.circle-2{width:400px;height:400px;top:60%;right:15%;animation-delay:5s}.circle-3{width:250px;height:250px;bottom:20%;left:50%;animation-delay:10s}@keyframes floatCircle{0%,to{transform:translate(0) scale(1);opacity:.6}33%{transform:translate(30px,-30px) scale(1.1);opacity:.8}66%{transform:translate(-20px,20px) scale(.9);opacity:.5}}.homepage-footer{position:relative;z-index:10;padding:32px 48px;text-align:center;background:#fffc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(0,0,0,.05)}.footer-content{max-width:1200px;margin:0 auto}.footer-content p{font-size:14px;color:#666;margin:4px 0}.footer-muted{font-size:12px;color:#999}.footer-contact{margin:8px 0}.footer-contact a{color:#b37a4c;text-decoration:none;transition:color .2s ease}.footer-contact a:hover{color:#8b6f47;text-decoration:underline}.footer-copyright{font-size:12px;color:#999;margin-top:8px}.about-section{position:relative;z-index:10;padding:120px 48px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.about-container{max-width:1000px;margin:0 auto}.about-content{text-align:center}.section-title{font-size:36px;font-weight:700;color:#1a1a1a;margin-bottom:24px;letter-spacing:-.02em}.section-description{font-size:18px;line-height:1.8;color:#666;max-width:800px;margin:0 auto 32px}.technology-components{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;margin-top:48px;text-align:left}.tech-component{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:32px;transition:all .3s ease}.tech-component:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000014;border-color:#b37a4c33}.tech-icon{font-size:48px;margin-bottom:16px;display:block}.tech-component h3{font-size:22px;font-weight:600;color:#1a1a1a;margin-bottom:12px}.tech-desc{font-size:15px;line-height:1.8;color:#666;margin-bottom:20px}.tech-points{list-style:none;padding:0;margin:0}.tech-points li{font-size:14px;line-height:1.8;color:#666;margin-bottom:10px;padding-left:24px;position:relative}.tech-points li:before{content:"→";position:absolute;left:0;color:#b37a4c;font-weight:700;font-size:16px}.tech-points li:last-child{margin-bottom:0}.use-cases-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-top:48px;text-align:left}.use-case-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:28px;transition:all .3s ease;position:relative;overflow:hidden}.use-case-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(90deg,#b37a4c,#8b6f47);transform:scaleX(0);transition:transform .3s ease}.use-case-card:hover:before{transform:scaleX(1)}.use-case-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000014;border-color:#b37a4c33}.use-case-icon{font-size:40px;margin-bottom:16px;display:block}.use-case-card h3{font-size:20px;font-weight:600;color:#1a1a1a;margin-bottom:12px}.use-case-card p{font-size:15px;line-height:1.7;color:#666;margin:0}@media (max-width: 768px){.homepage-nav{padding:20px 24px}.nav-logo{gap:8px}.nav-logo-image{height:36px}.nav-logo .logo-text{font-size:16px}.nav-menu{gap:16px}.nav-item{font-size:13px;padding:6px 10px}.homepage-main{padding:60px 24px 80px}.hero-title{font-size:42px}.hero-subtitle{font-size:32px}.hero-description{font-size:16px;margin-bottom:32px}.hero-features{grid-template-columns:1fr;gap:16px;margin-bottom:32px}.hero-cta{flex-direction:column;width:100%}.cta-primary,.cta-secondary{width:100%;justify-content:center}.dropdown-menu-home{left:auto;right:0}}@media (max-width: 480px){.hero-title{font-size:32px}.hero-subtitle{font-size:24px}.hero-description{font-size:15px}.feature-card{padding:20px}.about-section{padding:80px 24px}.section-title{font-size:28px}.section-description{font-size:16px}.technology-components{grid-template-columns:1fr;gap:24px}.use-cases-grid{grid-template-columns:1fr;gap:20px}.use-case-card{padding:24px}}.research-page{min-height:100vh;background:#fafafa;display:flex;flex-direction:column}.research-nav{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.08);padding:16px 48px;position:sticky;top:0;z-index:100;box-shadow:0 2px 10px #0000000d}.research-nav-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:24px}.research-back-btn{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid rgba(0,0,0,.1);border-radius:8px;padding:8px 16px;cursor:pointer;font-size:14px;color:#666;transition:all .2s ease}.research-back-btn:hover{background:#b37a4c14;border-color:#b37a4c4d;color:#1a1a1a;transform:translate(-2px)}.research-nav-title{font-size:20px;font-weight:600;color:#1a1a1a;letter-spacing:-.02em}.research-main{flex:1;max-width:1200px;width:100%;margin:0 auto;padding:48px}.research-content{background:#fff;border-radius:12px;padding:48px;box-shadow:0 2px 8px #00000014;line-height:1.6;color:#1a1a1a}.research-content :global(h1),.research-content :global(h2),.research-content :global(h3){color:#1a1a1a;margin-top:24px;margin-bottom:16px;font-weight:600}.research-content :global(h1){font-size:32px;border-bottom:2px solid rgba(179,122,76,.2);padding-bottom:12px}.research-content :global(h2){font-size:24px}.research-content :global(h3){font-size:20px}.research-content :global(p){margin-bottom:16px;color:#333}.research-content :global(a){color:#b37a4c;text-decoration:none;transition:color .2s ease}.research-content :global(a:hover){color:#9d6b42;text-decoration:underline}.research-content :global(ul),.research-content :global(ol){margin:16px 0;padding-left:24px}.research-content :global(li){margin-bottom:8px}.research-content :global(table){width:100%;border-collapse:collapse;margin:24px 0}.research-content :global(th),.research-content :global(td){border:1px solid #e5e7eb;padding:12px;text-align:left}.research-content :global(th){background:#b37a4c1a;font-weight:600}.research-source{margin-top:48px;padding-top:24px}.source-divider{height:1px;background:#0000001a;margin-bottom:16px}.source-text{font-size:14px;color:#666;text-align:center;font-style:italic}.source-link{color:#b37a4c;text-decoration:none;font-weight:500;transition:color .2s ease}.source-link:hover{color:#9d6b42;text-decoration:underline}@media (max-width: 768px){.research-nav{padding:12px 24px}.research-nav-container{gap:16px}.research-back-btn{padding:6px 12px;font-size:13px}.research-back-btn span{display:none}.research-main,.research-content{padding:24px}.research-content :global(h1){font-size:24px}.research-content :global(h2){font-size:20px}.research-content :global(h3){font-size:18px}}.debug-page{min-height:100vh;padding:20px;background:radial-gradient(circle at 88% 8%,rgba(194,122,54,.1) 0%,transparent 38%),radial-gradient(circle at 8% 18%,rgba(194,122,54,.07) 0%,transparent 42%),linear-gradient(180deg,#faf7f2,#f5efe7);color:var(--fg, #2f2a26);position:relative}.debug-toast{position:fixed;top:16px;right:16px;z-index:2000;max-width:min(520px,calc(100vw - 32px));display:flex;align-items:flex-start;gap:10px;background:#fff;border:1px solid var(--border, #e2dad2);border-left:4px solid #5e8fd6;border-radius:12px;box-shadow:0 10px 24px #0000001f;padding:10px 12px;animation:debugToastIn .18s ease-out}.debug-toast.warning{border-left-color:#d4922f;background:#fffaf0}.debug-toast.error{border-left-color:#b13c36;background:#fff5f4}.debug-toast.success{border-left-color:#2f8f4f;background:#f6fff8}.debug-toast-content{display:flex;flex-direction:column;gap:2px;min-width:0}.debug-toast-content strong{font-size:.84rem}.debug-toast-content span{font-size:.86rem;line-height:1.35;color:var(--fg-secondary, #6d665f);word-break:break-word}.debug-toast-close{border:none;background:transparent;color:var(--muted, #a3968a);padding:0;width:24px;height:24px;font-size:18px;line-height:1;cursor:pointer}@keyframes debugToastIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.debug-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px;animation:debugFadeUp .26s ease-out both}.debug-header h1{font-size:1.4rem;margin:0 0 4px}.debug-header p{color:var(--fg-secondary, #6d665f);margin:0;max-width:900px}.debug-header-actions{display:flex;gap:8px}.debug-tabs{display:inline-flex;gap:6px;background:#ffffffbf;border:1px solid rgba(194,122,54,.16);border-radius:16px;padding:6px;margin-bottom:14px;box-shadow:0 8px 24px #3c2a190f,inset 0 1px #fff9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:debugFadeUp .32s ease-out both}.debug-tab{border:1px solid transparent;background:transparent;color:var(--fg-secondary, #6d665f);border-radius:12px;padding:10px 16px;cursor:pointer;font-weight:700;font-size:.9rem;transition:transform .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease}.debug-tab.active{background:linear-gradient(180deg,#fff,#fffaf4);color:var(--fg, #2f2a26);border-color:#c27a3638;box-shadow:0 4px 14px #c27a361a}.debug-tab:hover:not(.active){background:#ffffff8c;color:var(--fg, #2f2a26);transform:translateY(-1px)}.debug-tab:focus-visible{outline:2px solid rgba(194,122,54,.35);outline-offset:2px}.debug-grid{display:grid;grid-template-columns:380px 1fr;gap:16px}.debug-panel{background:#fff;border:1px solid var(--border, #e2dad2);border-radius:12px;padding:14px;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .08));transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease}.debug-panel-wide{min-width:0}.debug-panel-full-span{grid-column:1 / -1}.debug-panel h2{font-size:1.05rem;margin:0 0 10px}.debug-tab-panel{animation:debugFadeUp .24s ease-out both}.debug-panel-live{border-color:#c27a3647;box-shadow:0 6px 18px #c27a361a}.debug-panel h3{font-size:.95rem;margin:0 0 8px}.debug-panel label{display:block;font-size:.85rem;color:var(--fg-secondary, #6d665f);margin:8px 0 6px}.debug-panel textarea,.debug-panel input,.debug-panel select{width:100%;padding:10px 12px;border:1px solid var(--border, #e2dad2);border-radius:8px;background:#fff;color:inherit;font:inherit}.debug-panel textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem}.debug-panel button{border:1px solid var(--primary, #c27a36);background:var(--primary, #c27a36);color:#fff;border-radius:8px;padding:9px 12px;cursor:pointer;font-weight:600;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease,background-color .15s ease}.debug-panel button:disabled{opacity:.6;cursor:not-allowed}.debug-panel button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 6px 12px #c27a362e}.debug-panel .debug-secondary:not(:disabled):hover,.debug-link-btn:hover{box-shadow:0 4px 10px #2f2a2614}.debug-panel .debug-secondary,.debug-link-btn{background:#fff;color:var(--primary, #c27a36);border:1px solid var(--border, #e2dad2);text-decoration:none}.debug-link-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:9px 12px;font-weight:600}.debug-row{display:flex;gap:8px;margin-top:8px;align-items:center}.debug-row>*{flex:1}.debug-row>button{flex:0 0 auto}.debug-inline-options{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.debug-inline-options label{margin:0;display:flex;align-items:center;gap:6px}.debug-inline-options input[type=checkbox]{width:auto}.debug-runs-list{margin-top:10px;display:flex;flex-direction:column;gap:8px;max-height:300px;overflow:auto}.debug-run-item{text-align:left;width:100%;background:#fff;color:inherit;border:1px solid var(--border, #e2dad2);border-radius:10px;padding:10px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.debug-run-item.active{border-color:var(--primary, #c27a36);box-shadow:0 0 0 2px #c27a361f}.debug-run-item:hover{transform:translateY(-1px);box-shadow:0 6px 12px #2f2a260f}.debug-run-main{display:flex;justify-content:space-between;gap:8px;align-items:center}.debug-run-meta,.debug-muted{color:var(--muted, #a3968a);font-size:.82rem}.debug-status{display:inline-flex;align-items:center;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:700;background:#f3ece6;color:#6d665f;text-transform:uppercase}.debug-status.completed{background:#eaf7ee;color:#1f7a39}.debug-status.running{background:#fff4df;color:#9a6514}.debug-status.queued{background:#eef3fb;color:#2f5ea8}.debug-status.timeout{background:#fff0ec;color:#b4502d}.debug-status.error{background:#fdeceb;color:#b13c36}.debug-status.warning{background:#fff7e6;color:#a06c00}.debug-status.info{background:#eef3fb;color:#3e5b9b}.debug-panel-title-row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px}.debug-trace-summary{display:flex;flex-wrap:wrap;gap:10px;font-size:.85rem;margin-bottom:10px}.debug-events{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.debug-events details{border:1px solid var(--border, #e2dad2);border-radius:10px;padding:8px 10px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.debug-events summary{cursor:pointer;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.debug-events details[open]{border-color:#c27a3633;box-shadow:0 6px 14px #2f2a260d}.debug-panel pre{background:#faf7f2;border:1px solid var(--border, #e2dad2);border-radius:8px;padding:10px;max-height:320px;overflow:auto;font-size:.8rem;line-height:1.4;margin:6px 0 0}.debug-explanation pre{max-height:280px;white-space:pre-wrap}.debug-error{margin-top:8px;color:#b13c36;background:#fdeceb;border:1px solid #f1c3c0;border-radius:8px;padding:8px 10px;font-size:.85rem}.debug-btn-content{display:inline-flex;align-items:center;gap:8px}.debug-spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:currentColor;animation:debugSpin .8s linear infinite;display:inline-block;flex-shrink:0}.debug-secondary .debug-spinner{border-color:#c27a3638;border-top-color:currentColor}.debug-loading-inline{display:inline-flex;align-items:center;gap:8px;margin-bottom:8px;padding:6px 10px;border-radius:999px;background:#faf7f2;border:1px solid var(--border, #e2dad2)}.debug-loading-inline .debug-spinner{color:var(--primary, #c27a36);border-color:#c27a3633;border-top-color:var(--primary, #c27a36)}.debug-loading-banner{margin-top:10px;display:flex;align-items:center;gap:10px;border-radius:10px;border:1px solid rgba(194,122,54,.22);background:linear-gradient(180deg,#fffaf4,#fff);padding:10px 12px;box-shadow:inset 0 1px #fffc;animation:debugPulseSoft 1.6s ease-in-out infinite}.debug-loading-banner .debug-spinner{color:var(--primary, #c27a36);border-color:#c27a3638;border-top-color:var(--primary, #c27a36)}.debug-loading-banner>span:nth-child(2){font-size:.84rem;color:var(--fg-secondary, #6d665f);flex:1}.debug-loading-dots{display:inline-flex;gap:4px;align-items:center}.debug-loading-dots i{width:5px;height:5px;border-radius:50%;background:#c27a36b3;display:inline-block;animation:debugDotBounce .9s ease-in-out infinite}.debug-loading-dots i:nth-child(2){animation-delay:.12s}.debug-loading-dots i:nth-child(3){animation-delay:.24s}.debug-unit-toolbar{display:flex;align-items:flex-end;gap:12px;margin-bottom:10px}.debug-unit-toolbar-group{min-width:220px}.debug-unit-toolbar-group label{margin-top:0}.debug-unit-layout{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.debug-api-layout{display:grid;grid-template-columns:360px 1fr;gap:12px;align-items:start}.debug-api-left,.debug-api-right{min-width:0}.debug-api-right{display:flex;flex-direction:column;gap:10px}.debug-api-catalog-header{display:flex;align-items:flex-end;justify-content:space-between;gap:8px;margin-bottom:8px}.debug-api-list{display:flex;flex-direction:column;gap:8px;max-height:100vh;overflow:auto}.debug-api-item{width:100%;text-align:left;border:1px solid var(--border, #e2dad2);border-radius:10px;background:#fff;padding:10px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.debug-api-item:hover{transform:translateY(-1px);box-shadow:0 6px 12px #2f2a260f}.debug-api-item.active{border-color:var(--primary, #c27a36);box-shadow:0 0 0 2px #c27a361f}.debug-api-item-top{display:flex;align-items:center;gap:8px;min-width:0}.debug-api-path{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;color:var(--fg, #2f2a26);word-break:break-all}.debug-api-summary{margin-top:6px;font-size:.84rem;color:#fafafa;line-height:1.3}.debug-api-item-meta{margin-top:6px;display:flex;flex-wrap:wrap;gap:8px;font-size:.76rem;color:#dbdbdb}.debug-method-badge{display:inline-flex;align-items:center;justify-content:center;min-width:52px;border-radius:999px;padding:3px 8px;font-size:.72rem;font-weight:800;letter-spacing:.03em;color:#fff;background:#6d665f;flex-shrink:0}.debug-method-badge.get{background:#2f8f4f}.debug-method-badge.post{background:#2f5ea8}.debug-method-badge.put{background:#9a6514}.debug-method-badge.patch{background:#8b5fb3}.debug-method-badge.delete{background:#b13c36}.debug-method-badge.options,.debug-method-badge.head{background:#6d665f}.debug-api-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.debug-api-actions>*{flex:0 0 auto}.debug-api-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.debug-unit-left,.debug-unit-right{min-width:0}.debug-unit-left{display:flex;flex-direction:column}.debug-unit-right{position:sticky;top:12px}.debug-unit-meta{margin-top:8px;padding:10px;background:#faf7f2;border:1px solid var(--border, #e2dad2);border-radius:8px;font-size:.85rem}.debug-unit-result{margin-top:0}.debug-output-shell{position:relative}.debug-output-overlay{position:absolute;inset:6px 6px auto 6px;z-index:2;display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;border:1px solid rgba(194,122,54,.22);background:#fffaf4f0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--fg-secondary, #6d665f);font-size:.84rem;box-shadow:0 4px 10px #2f2a2612}.debug-output-overlay .debug-spinner{color:var(--primary, #c27a36);border-color:#c27a3638;border-top-color:var(--primary, #c27a36)}.debug-unit-result.is-running pre{filter:saturate(.75) opacity(.92)}.debug-unit-result pre{min-height:260px;max-height:640px}.debug-rendered-output{display:flex;flex-direction:column;gap:10px}.debug-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.debug-result-card{border:1px solid var(--border, #e2dad2);border-radius:10px;background:linear-gradient(180deg,#fff,#fffcf8);padding:10px;box-shadow:0 2px 8px #2f2a2608}.debug-result-card-title{font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted, #a3968a);margin-bottom:6px;font-weight:700}.debug-result-card-value{font-size:.95rem;font-weight:700;color:var(--fg, #2f2a26);display:flex;align-items:center;gap:6px}.debug-result-card-meta{margin-top:6px;color:var(--fg-secondary, #6d665f);font-size:.78rem;line-height:1.35}.debug-result-section{border:1px solid var(--border, #e2dad2);border-radius:10px;background:#fff;padding:10px}.debug-result-section.warning{border-color:#eed6a2;background:#fffaf0}.debug-result-section.error{border-color:#f1c3c0;background:#fff6f5}.debug-result-section-title{font-size:.84rem;font-weight:700;color:var(--fg, #2f2a26);margin-bottom:8px}.debug-result-keyvals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.debug-result-keyvals>div{display:flex;flex-direction:column;gap:3px;padding:8px;border-radius:8px;background:#faf7f2;border:1px solid rgba(226,218,210,.8);min-width:0}.debug-result-keyvals span{color:var(--muted, #a3968a);font-size:.75rem;text-transform:uppercase;letter-spacing:.03em}.debug-result-keyvals strong{font-size:.84rem;line-height:1.35;word-break:break-word}.debug-result-list{margin:0;padding-left:18px;color:var(--fg-secondary, #6d665f);font-size:.83rem}.debug-result-list li+li{margin-top:4px}.debug-result-error-text{color:#9f2c2c;background:#b13c360f;border:1px solid rgba(177,60,54,.14);border-radius:8px;padding:8px 10px;font-size:.84rem;line-height:1.35;word-break:break-word}.debug-result-structured{background:#faf7f2;border:1px solid var(--border, #e2dad2);border-radius:8px;padding:8px}.debug-json-tree{display:flex;flex-direction:column;gap:6px}.debug-json-tree.nested{margin-top:2px}.debug-json-row{display:grid;grid-template-columns:minmax(120px,180px) 1fr;gap:8px;align-items:start}.debug-json-key{color:#7c5f46;font-weight:600;font-size:.78rem;line-height:1.35;word-break:break-word}.debug-json-value{min-width:0}.debug-json-leaf{color:var(--fg-secondary, #6d665f);font-size:.8rem;line-height:1.35;word-break:break-word}@keyframes debugFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes debugSpin{to{transform:rotate(360deg)}}@keyframes debugPulseSoft{0%,to{box-shadow:inset 0 1px #fffc,0 0 #c27a3600}50%{box-shadow:inset 0 1px #fffc,0 0 0 4px #c27a360f}}@keyframes debugDotBounce{0%,80%,to{transform:translateY(0);opacity:.45}40%{transform:translateY(-3px);opacity:1}}@media (prefers-reduced-motion: reduce){.debug-toast,.debug-header,.debug-tabs,.debug-tab-panel,.debug-spinner,.debug-loading-dots i,.debug-loading-banner{animation:none}.debug-panel,.debug-run-item,.debug-tab,.debug-panel button{transition:none}}@media (max-width: 980px){.debug-grid,.debug-unit-layout,.debug-api-layout{grid-template-columns:1fr}.debug-api-list{max-height:40vh}.debug-unit-right{position:static}.debug-result-grid,.debug-result-keyvals{grid-template-columns:1fr}.debug-json-row{grid-template-columns:1fr;gap:4px}.debug-api-editor-grid{grid-template-columns:1fr}.debug-header{flex-direction:column}.debug-tabs{width:100%;display:flex}.debug-tab{flex:1;text-align:center}.debug-panel-full-span{grid-column:auto}}:root{--bg: #FAF7F2;--bg-secondary: #F2ECE6;--card-bg: #FFFFFF;--primary: #C27A36;--primary-hover: #A8642C;--primary-dark: #8A5324;--primary-light: #F6E8D9;--primary-rgb: 194, 122, 54;--secondary: #D8C3A5;--secondary-light: #EEE4D8;--accent: #FFB347;--accent-light: #FFE3C2;--fg: #2F2A26;--fg-secondary: #6D665F;--muted: #A3968A;--text-white: #FFFFFF;--sidebar-bg: #F5EFE7;--sidebar-fg: #4B4239;--sidebar-active-bg: #E8D8C6;--sidebar-active-fg: #7A5E3A;--sidebar-hover-bg: #F3E7DA;--border: #E2DAD2;--border-light: #F3ECE6;--border-focus: #C27A36;--shadow-sm: 0 1px 2px rgba(0,0,0,.06);--shadow-md: 0 2px 4px rgba(0,0,0,.08);--shadow-lg: 0 4px 12px rgba(0,0,0,.1);--shadow-card: 0 1px 4px rgba(0,0,0,.06);--error: #D9534F;--error-dark: #B13C36;--success: #CBA24E;--warning: #F0A04B;--user-bg: #C27A36;--user-light: #F6EDE3;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .12), 0 1px 2px rgba(0, 0, 0, .24);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1), 0 2px 4px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 20px rgba(0, 0, 0, .15), 0 3px 6px rgba(0, 0, 0, .1);--shadow-card: 0 2px 8px rgba(0, 0, 0, .08), 0 1px 3px rgba(0, 0, 0, .1);--bg-rgb: 250, 247, 242;--bg-secondary-rgb: 242, 236, 230;--sidebar-bg-rgb: 245, 239, 231;--fg-rgb: 47, 42, 38;--radius: 16px;--radius-sm: 8px;--radius-lg: 24px;--radius-pill: 999px}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--bg);color:var(--fg);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{display:flex;height:100vh;overflow:hidden;background:var(--bg);position:relative}.chat-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;overflow:hidden;pointer-events:none}.chat-gradient-orb{position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(var(--primary-rgb),.06) 0%,rgba(var(--primary-rgb),.03) 50%,transparent 70%);filter:blur(50px);transform:translate(-50%,-50%);transition:all .4s cubic-bezier(.4,0,.2,1);pointer-events:none;opacity:.8}.chat-gradient-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(var(--bg-rgb),.95) 0%,rgba(var(--bg-rgb),.98) 50%,var(--white) 100%);pointer-events:none}.chat-floating-elements{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;overflow:hidden}.chat-floating-circle{position:absolute;border-radius:50%;background:linear-gradient(135deg,rgba(var(--primary-rgb),.04),rgba(var(--primary-rgb),.02));filter:blur(30px);animation:chatFloatCircle 25s ease-in-out infinite;opacity:.6}.chat-circle-1{width:250px;height:250px;top:15%;left:10%;animation-delay:0s}.chat-circle-2{width:300px;height:300px;top:65%;right:12%;animation-delay:8s}.chat-circle-3{width:200px;height:200px;bottom:25%;left:55%;animation-delay:15s}@keyframes chatFloatCircle{0%,to{transform:translate(0) scale(1);opacity:.5}33%{transform:translate(25px,-25px) scale(1.1);opacity:.7}66%{transform:translate(-15px,15px) scale(.9);opacity:.4}}.sidebar{width:280px;background:var(--sidebar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid rgba(var(--primary-rgb),.12);display:flex;flex-direction:column;padding:0;overflow-y:auto;height:100vh;transition:width .3s cubic-bezier(.4,0,.2,1),padding .3s cubic-bezier(.4,0,.2,1),border .3s ease;position:relative;z-index:10;box-shadow:4px 0 24px #00000014,2px 0 8px #0000000a;will-change:width}.sidebar-resize-handle{position:absolute;right:0;top:0;width:4px;height:100%;cursor:ew-resize;background:transparent;z-index:100;transition:background .2s ease}.sidebar-resize-handle:hover{background:rgba(var(--primary-rgb),.2)}.sidebar.resizing .sidebar-resize-handle{background:rgba(var(--primary-rgb),.3)}.sidebar.resizing{-webkit-user-select:none;user-select:none;transition:none}.sidebar.collapsed{width:0;padding:0;border-right:none;overflow:hidden}.sidebar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px;padding:24px 20px 12px;border-bottom:1px solid rgba(var(--primary-rgb),.08)}.sidebar-close-btn{background:rgba(var(--primary-rgb),.06);color:var(--fg-secondary);border:1px solid rgba(var(--primary-rgb),.08);border-radius:var(--radius-sm);width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0;padding:0;opacity:.7}.sidebar-close-btn:hover{background:rgba(var(--primary-rgb),.1);border-color:rgba(var(--primary-rgb),.15);color:var(--fg);opacity:1;transform:scale(1.05)}.sidebar-close-btn:active{transform:scale(.95)}.sidebar-close-btn svg{width:22px;height:22px;stroke:currentColor}.brand{font-weight:700;font-size:20px;color:var(--fg);letter-spacing:-.02em;transition:opacity .3s ease;display:flex;align-items:center;gap:12px}.brand-logo{height:40px;object-fit:contain}.brand-name{width:100px;object-fit:contain}.sidebar.collapsed .brand{font-size:16px;margin-bottom:0}.sidebar.collapsed .brand span{display:none}.sidebar.collapsed .brand-logo{width:28px;height:28px}.sidebar-toggle{display:none}.toggle-arrow{font-size:16px;font-weight:700;color:#fff;transition:all .3s ease;display:block;line-height:1}.sidebar-restore-btn{display:none}.restore-arrow{font-size:16px;font-weight:700;color:#fff;transition:all .3s ease;display:block;line-height:1}@keyframes slideInLeft{0%{opacity:0;transform:translateY(-50%) translate(-20px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.muted{color:var(--fg-secondary);font-size:13px;font-weight:400;padding:0 16px 20px;transition:opacity .3s ease}.sidebar.collapsed .muted{display:none}.sidebar-divider{height:1px;background:linear-gradient(90deg,transparent,rgba(var(--primary-rgb),.15),transparent);margin:16px 20px}.service-type-selector{padding:0 16px 16px}.service-type-selector label{display:block;font-weight:600;margin-bottom:8px;color:var(--fg-secondary);font-size:12px;text-transform:uppercase;letter-spacing:1px;opacity:.7}.service-description{padding:0 16px 16px;color:var(--fg-secondary);font-size:13px;font-weight:400;line-height:1.4;font-style:italic}.status-badge{background:var(--warning);color:#fff;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:500}.dropdown-option.disabled{opacity:.6;cursor:not-allowed}.dropdown-option.disabled:hover{background:transparent}.filters{display:flex;flex-direction:column;gap:20px}.filters label{display:block;font-weight:500;margin-bottom:4px}.filters select,.filters input[type=number],.filters input[type=text]{width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:8px;font-size:14px;outline:none;transition:all .2s ease;background:var(--card-bg)}.filters select:focus,.filters input:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.08)}#location-input{min-height:48px;width:100%;padding:14px 16px;font-size:15px;border:2px solid var(--border);border-radius:10px;background:var(--gray-light);transition:all .2s ease;resize:vertical}#location-input:focus{border-color:var(--border-focus);background:var(--card-bg);box-shadow:0 0 0 4px rgba(var(--primary-rgb),.08)}#location-input::placeholder{color:var(--muted);font-style:italic}.compact-multi-select{position:relative}.selected-tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px;min-height:0}.selected-tags:empty{display:none}.tag{display:inline-flex;align-items:center;gap:4px;background:var(--primary);color:#fff;padding:4px 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.tag:hover{background:var(--primary-hover);transform:translateY(-1px)}.tag-remove{font-size:14px;font-weight:700;margin-left:4px;opacity:.8}.dropdown-trigger{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;transition:all .2s ease;font-size:14px;min-width:160px}.dropdown-trigger:hover{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.dropdown-text{color:var(--fg);font-weight:500}.dropdown-text.placeholder{color:var(--muted);font-style:italic;font-weight:400}.dropdown-arrow{color:var(--muted);font-size:12px;transition:transform .2s ease}.dropdown-menu{position:absolute;top:100%;left:0;right:0;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:1000;max-height:240px;overflow-y:auto;margin-top:4px}.dropdown-option{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;transition:background .2s ease;font-size:14px}.dropdown-option:hover{background:var(--bg-secondary)}.dropdown-option.selected{background:var(--primary-light);color:var(--primary)}.checkbox{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:3px;font-size:12px;font-weight:700}.dropdown-option.selected .checkbox{background:var(--primary);color:#fff;border-color:var(--primary)}.row{display:flex;align-items:center;gap:8px}.space{height:10px}.model-selector{margin-top:24px;margin-bottom:24px}.model-selector label{display:block;font-weight:600;margin-bottom:8px;color:var(--fg-secondary);font-size:12px;opacity:.7}.chat-history{flex:1;display:flex;flex-direction:column;min-height:0;padding:0 8px}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding:0 8px}.history-header label{font-weight:600;color:var(--fg-secondary);margin:0;font-size:12px;text-transform:uppercase;letter-spacing:1px;opacity:.7}.new-chat-btn{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-hover) 100%);color:#fff;border:none;border-radius:var(--radius-sm);padding:10px 14px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:6px;box-shadow:0 4px 12px rgba(var(--primary-rgb),.15),0 2px 4px rgba(var(--primary-rgb),.1);letter-spacing:.3px}.new-chat-btn:hover{background:linear-gradient(135deg,var(--primary-hover) 0%,var(--primary-dark) 100%);transform:translateY(-2px);box-shadow:0 4px 10px rgba(var(--primary-rgb),.18)}.history-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.history-item{padding:12px 16px;border-radius:var(--radius-sm);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);background:transparent;border:1px solid rgba(var(--primary-rgb),.1);margin:6px 12px;display:flex;align-items:center;justify-content:space-between;position:relative}.history-item:hover{background:var(--sidebar-hover-bg);border-color:rgba(var(--primary-rgb),.2);transform:translate(3px);box-shadow:0 2px 8px rgba(var(--primary-rgb),.06)}.history-item:hover .delete-chat-btn{opacity:1}.history-item.active{background:var(--sidebar-active-bg);border-color:rgba(var(--primary-rgb),.35);border-width:1px;box-shadow:0 4px 12px rgba(var(--primary-rgb),.12),0 2px 4px rgba(var(--primary-rgb),.08);transform:translate(2px)}.history-content{flex:1;min-width:0}.delete-chat-btn{background:var(--error);color:#fff;border:none;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;font-weight:700;opacity:0;transition:all .2s ease;margin-left:8px;flex-shrink:0}.delete-chat-btn:hover{background:var(--error-dark);transform:scale(1.1)}.history-actions{display:flex;align-items:center;gap:4px;margin-left:8px;flex-shrink:0;opacity:0;transition:opacity .2s ease}.history-item:hover .history-actions{opacity:1}.edit-chat-btn{background:var(--primary);color:#fff;border:none;border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:12px;transition:all .2s ease;flex-shrink:0;padding:0}.edit-chat-btn:hover{background:var(--primary-hover);transform:scale(1.1)}.history-title-edit{width:100%}.history-title-input{width:100%;padding:4px 8px;border:2px solid var(--primary);border-radius:var(--radius-sm);background:var(--sidebar-bg);color:var(--sidebar-fg);font-size:14px;font-weight:500;outline:none;transition:all .2s ease}.history-title-input:focus{border-color:var(--primary-hover);box-shadow:0 0 0 3px var(--primary-light)}.history-title{font-weight:500;font-size:14px;color:var(--fg);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:all .2s ease;display:flex;align-items:center}.history-title .chat-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-right:8px;flex-shrink:0;font-size:16px;transition:transform .2s ease}.history-item:hover .history-title .chat-icon{transform:scale(1.1)}.history-item.active .history-title{color:var(--sidebar-active-fg);font-weight:600}.history-item.active .history-title .chat-icon{transform:scale(1.15)}.history-preview{font-size:12px;color:var(--fg-secondary);margin-bottom:8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .2s ease;opacity:.8}.history-item.active .history-preview{color:#f57c00cc;opacity:1}.history-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px}.history-model{background:var(--secondary);color:var(--sidebar-fg);padding:2px 6px;border-radius:4px;font-weight:500;font-size:10px}.history-item.active .history-model{background:#fff3;color:var(--sidebar-active-fg)}.history-time{color:var(--fg-secondary);font-size:10px;transition:color .2s ease;opacity:.7}.history-item.active .history-time{color:#f57c00b3;opacity:1}.main{flex:1;display:flex;flex-direction:column;background:transparent;transition:margin-left .3s ease;position:relative;z-index:10}.app:has(.sidebar.collapsed) .main{margin-left:0;width:100%}.main-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:rgba(var(--bg-rgb),.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-light);gap:16px;min-height:60px;position:relative;z-index:20;box-shadow:0 2px 10px rgba(var(--black-rgb),.05)}.sidebar-toggle-header{background:transparent;color:var(--fg);border:none;border-radius:var(--radius-sm);width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;flex-shrink:0;padding:0;opacity:.7}.sidebar-toggle-header:hover{background:var(--bg-secondary);color:var(--fg);opacity:1}.sidebar-toggle-header:active{transform:scale(.95)}.sidebar-toggle-header svg{width:20px;height:20px;stroke:currentColor}.service-selector-section{display:flex;align-items:center;gap:20px;flex:1}.service-selector-inline{display:flex;align-items:center;gap:12px;flex-shrink:0}.service-selector-inline label{font-weight:500;color:var(--fg-secondary);margin:0;font-size:14px}.service-description-inline{color:var(--muted);font-size:13px;font-style:italic;line-height:1.4;flex:1;min-width:0}.preferences-toggle{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-hover) 100%);color:#fff;border:1px solid rgba(var(--primary-rgb),.2);border-radius:var(--radius-sm);padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 6px rgba(var(--primary-rgb),.15)}.preferences-toggle:hover{background:linear-gradient(135deg,var(--primary-hover) 0%,var(--primary-dark) 100%);color:#fff;border-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 10px rgba(var(--primary-rgb),.18)}.preferences-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(var(--black-rgb),.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:block;animation:fadeIn .3s ease;transition:z-index .3s ease,filter .3s ease,opacity .3s ease}body.map-open .preferences-overlay{z-index:9997;filter:blur(2px);opacity:.6;pointer-events:none}body.map-open .preferences-overlay .preferences-panel{pointer-events:none}.preferences-panel{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:0;width:100%;height:100%;box-shadow:var(--shadow-lg);animation:slideUp .3s ease;position:relative;display:flex;flex-direction:column;overflow:hidden}.preferences-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-light);cursor:move;-webkit-user-select:none;user-select:none}.preferences-overlay .react-resizable-handle{background:rgba(var(--primary-rgb),.1);border:1px solid rgba(var(--primary-rgb),.2);transition:background .2s ease,border-color .2s ease}.preferences-overlay .react-resizable-handle:hover{background:rgba(var(--primary-rgb),.2);border-color:rgba(var(--primary-rgb),.4)}.preferences-overlay .react-resizable-handle-se{width:20px;height:20px;right:0;bottom:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%23C27A36' d='M13 13H3V3h10v10zM4 4v8h8V4H4z'/%3E%3Cpath fill='%23C27A36' d='M11 11H5V5h6v6z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:12px 12px}.preferences-overlay .react-resizable-handle-sw{width:20px;height:20px;left:0;bottom:0}.preferences-overlay .react-resizable-handle-nw{width:20px;height:20px;left:0;top:0}.preferences-overlay .react-resizable-handle-ne{width:20px;height:20px;right:0;top:0}.preferences-overlay .react-resizable-handle-w,.preferences-overlay .react-resizable-handle-e{width:4px;cursor:ew-resize}.preferences-overlay .react-resizable-handle-n,.preferences-overlay .react-resizable-handle-s{height:4px;cursor:ns-resize}.preferences-overlay .react-resizable-handle-nw,.preferences-overlay .react-resizable-handle-ne,.preferences-overlay .react-resizable-handle-sw,.preferences-overlay .react-resizable-handle-se{cursor:nwse-resize}.preferences-overlay .react-resizable-handle-ne,.preferences-overlay .react-resizable-handle-sw{cursor:nesw-resize;background:var(--bg-secondary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-shrink:0;position:relative}.preferences-header h3{margin:0;font-size:18px;font-weight:600;color:var(--fg)}.close-btn{position:absolute;top:12px;right:12px;background:var(--error);color:#fff;border:none;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:18px;font-weight:700;transition:all .2s ease;z-index:10}.close-btn:hover{background:var(--error-dark);transform:scale(1.1)}.preferences-panel .filters{padding:24px;overflow-y:auto;flex:1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.messages{flex:1;overflow-y:auto;padding:24px;width:100%;direction:ltr;text-align:left;scrollbar-width:thin;scrollbar-color:rgba(var(--primary-rgb),.3) rgba(var(--bg-rgb),.5);position:relative;z-index:10}.messages .bubble{max-width:800px;margin-left:auto;margin-right:auto}.messages::-webkit-scrollbar{width:8px}.messages::-webkit-scrollbar-track{background:rgba(var(--bg-rgb),.5);border-radius:4px}.messages::-webkit-scrollbar-thumb{background:rgba(var(--primary-rgb),.3);border-radius:4px;transition:background .3s ease}.messages::-webkit-scrollbar-thumb:hover{background:rgba(var(--primary-rgb),.5)}.bubble{margin-bottom:16px;animation:fadeInUp .4s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:relative}.bubble[data-role=user]{align-items:flex-end}.bubble[data-role=assistant]{align-items:flex-start}.who{font-size:11px;color:var(--muted);margin-bottom:6px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.content{max-width:80%;padding:12px 16px;line-height:1.5;font-size:14px;word-wrap:break-word;border-radius:18px;position:relative}.bubble[data-role=user] .content{background:rgba(var(--bg-rgb),.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(var(--primary-rgb),.12);color:var(--fg);border-bottom-right-radius:4px;box-shadow:0 2px 8px rgba(var(--primary-rgb),.08),0 1px 3px rgba(var(--black-rgb),.06);transition:all .3s ease}.bubble[data-role=user] .content:hover{box-shadow:0 4px 12px rgba(var(--primary-rgb),.12),0 2px 6px rgba(var(--black-rgb),.08);transform:translateY(-1px)}.bubble[data-role=assistant] .content{background:rgba(var(--bg-secondary-rgb),.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(var(--primary-rgb),.1);color:var(--fg);border-bottom-left-radius:4px;box-shadow:0 2px 8px rgba(var(--primary-rgb),.06),0 1px 3px rgba(var(--black-rgb),.04);transition:all .3s ease}.bubble[data-role=assistant] .content:hover{box-shadow:0 4px 12px rgba(var(--primary-rgb),.1),0 2px 6px rgba(var(--black-rgb),.06);transform:translateY(-1px)}.bubble:last-child{margin-bottom:120px}.composer{border-top:1px solid var(--border-light);background:rgba(var(--bg-rgb),.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:20px 24px;position:sticky;bottom:0;max-width:800px;margin:0 auto;width:100%;z-index:20;box-shadow:0 -2px 10px rgba(var(--black-rgb),.05)}.composer-inner{display:flex;align-items:center;gap:12px;background:rgba(var(--bg-rgb),.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(var(--primary-rgb),.2);border-radius:var(--radius-lg);padding:12px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px rgba(var(--primary-rgb),.1),0 1px 3px rgba(var(--black-rgb),.05)}.composer-inner:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px rgba(var(--primary-rgb),.15),0 4px 12px rgba(var(--primary-rgb),.2);background:rgba(var(--bg-rgb),.95);transform:translateY(-1px)}.voice-btn{background:var(--white);border:1px solid var(--gray-border);color:var(--gray-text);border-radius:50%;width:44px;height:44px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;box-shadow:0 1px 2px rgba(var(--black-rgb),.05)}.voice-btn svg{width:20px;height:20px}.voice-btn:hover:not(:disabled){background:var(--gray-light-2);border-color:var(--primary);color:var(--primary);transform:scale(1.05);box-shadow:0 2px 4px rgba(var(--black-rgb),.1)}.voice-btn:disabled{opacity:.5;cursor:not-allowed}.voice-btn.listening{background:var(--error-light-bg);border-color:var(--primary);color:var(--primary);animation:pulse 1.5s infinite;box-shadow:0 0 rgba(var(--primary-rgb),.7)}@keyframes pulse{0%{box-shadow:0 0 rgba(var(--primary-rgb),.7)}70%{box-shadow:0 0 0 10px rgba(var(--primary-rgb),0)}to{box-shadow:0 0 rgba(var(--primary-rgb),0)}}.composer input{flex:1;border:none;outline:none;background:transparent;font-size:15px;color:var(--fg);line-height:1.5}.composer input::placeholder{color:var(--muted)}.send{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-hover) 100%);color:var(--text-white);border:none;border-radius:var(--radius-sm);padding:10px 20px;cursor:pointer;font-size:14px;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:6px;box-shadow:0 2px 8px rgba(var(--primary-rgb),.25)}.send:hover{background:linear-gradient(135deg,var(--primary-hover) 0%,var(--primary-dark) 100%);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--primary-rgb),.35)}.send:active{transform:translateY(0);box-shadow:0 2px 6px rgba(var(--primary-rgb),.25)}.send:disabled{opacity:.6;cursor:not-allowed;transform:none}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:12px}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow-card);transition:all .3s cubic-bezier(.4,0,.2,1)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px);border-color:var(--border-focus)}.badge{display:inline-block;background:var(--primary);color:var(--text-white);border-radius:var(--radius-sm);padding:4px 8px;font-size:11px;font-weight:500}.skeleton{height:12px;background:var(--border);border-radius:4px;animation:shimmer 1.2s infinite}@keyframes shimmer{0%{opacity:.4}50%{opacity:.8}to{opacity:.4}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.sidebar{position:fixed;left:0;top:0;height:100vh;z-index:1000;transform:translate(-100%);transition:transform .3s ease;width:280px}.sidebar:not(.collapsed){transform:translate(0)}.sidebar.collapsed{width:0;transform:translate(-100%)}.sidebar-toggle-header{width:36px;height:36px}.sidebar-toggle-header svg{width:18px;height:18px}.sidebar-close-btn{width:36px;height:36px}.sidebar-close-btn svg{width:20px;height:20px}.app:has(.sidebar:not(.collapsed)) .main{margin-left:0}.main-header{padding:12px 16px;flex-direction:column;gap:12px;align-items:stretch}.service-selector-section{flex-direction:column;align-items:stretch;gap:12px}.service-selector-inline{justify-content:center}.service-description-inline{text-align:center;font-size:12px}.composer{padding:16px}.messages{padding:16px;direction:ltr;text-align:left;width:100%}.messages .bubble{max-width:100%;margin-left:0;margin-right:0}.preferences-panel{width:95%;max-height:90vh}.preferences-panel .filters{padding:16px}.preferences-header{padding:16px 20px}.close-btn{top:8px;right:8px;width:28px;height:28px;font-size:16px}}.confirmation-message{background:transparent;border:none;padding:0;margin:0}.confirmation-text{font-size:14px;line-height:1.5;margin-bottom:12px;color:var(--fg)}.confirmation-actions{display:flex;gap:12px;justify-content:flex-end}.confirm-btn,.cancel-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.confirm-btn{background:var(--primary);color:#fff}.confirm-btn:hover{background:var(--primary-hover);transform:translateY(-1px)}.cancel-btn{background:var(--muted);color:#fff}.cancel-btn:hover{background:var(--border);transform:translateY(-1px)}.thinking-container{background:transparent;border:none;padding:0;margin:0}.thinking-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-weight:500;color:var(--fg);font-size:13px}.thinking-icon{font-size:24px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.thinking-steps{display:flex;flex-direction:column;gap:8px}.thinking-step{display:flex;align-items:flex-start;gap:8px;padding:4px 0;transition:all .3s ease}.thinking-step.thinking,.thinking-step.completed,.thinking-step.error{background:transparent;border:none}.step-indicator{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0;margin-top:1px}.thinking-step.thinking .step-indicator{background:var(--primary);color:#fff;animation:spin 1s linear infinite}.thinking-step.completed .step-indicator{background:var(--success-bright);color:#fff}.thinking-step.error .step-indicator{background:var(--error-bright);color:#fff}.thinking-complete{display:flex;align-items:flex-start;gap:8px;padding:4px 0;background:transparent;border:none;animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.step-content{flex:1}.step-description{font-weight:500;color:var(--fg);margin-bottom:2px;font-size:13px}.step-details{font-size:12px;color:var(--muted);font-style:italic}.processing-container{background:transparent;border:none;padding:0;margin:0;transition:all .3s ease}.processing-container .thinking-steps{margin-top:16px;animation:fadeInUp .5s ease}.processing-container .thinking-step{animation:slideInLeft .4s ease;transition:all .3s ease}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.processing-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-weight:500;color:var(--fg);font-size:13px}.processing-icon{font-size:20px;animation:spin 2s linear infinite}.progress-bar{width:100%;height:6px;background:var(--gray-border);border-radius:3px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:var(--primary);border-radius:3px;transition:width .3s ease}.processing-message{font-size:12px;color:var(--muted);font-style:italic}.preferences-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.preferences-loading p{color:var(--muted);font-size:14px}.loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.preferences-actions{padding:16px 20px;border-top:1px solid var(--border);display:flex;justify-content:flex-end}.submit-preferences-btn{background:var(--primary);color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.submit-preferences-btn:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.submit-preferences-btn:disabled{background:var(--muted);cursor:not-allowed;transform:none}@media (max-width: 768px){.content{max-width:85%}.confirmation-actions{flex-direction:column}.confirm-btn,.cancel-btn{width:100%}.thinking-header,.step-description{font-size:12px}.step-details{font-size:11px}}
