@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--bg:#0a0a0a;--bg-sidebar:#121212;--card:#141414;--card-border:#262626;--glass-border:#ffffff14;--text:#ededed;--text-muted:#888;--text-brand:#fff;--primary:#333;--primary-hover:#404040;--accent:#10b981;--accent-hover:#059669;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--brand-alt:#a3a3a3;--shadow-sm:0 1px 2px #00000080;--shadow-md:0 4px 12px #000c;--shadow-lg:0 12px 24px #000000e6;--radius:.75rem;--radius-sm:.5rem;--transition:all .2s cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Inter,-apple-system,sans-serif;line-height:1.5}.app-container{max-width:1400px;margin:0 auto;padding:2rem}header{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;margin-bottom:2.5rem;padding-bottom:1.5rem;display:flex}.header-main{text-align:left}.header-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--text-brand);background:var(--card-border);border:1px solid #ffffff1a;border-radius:9999px;margin-bottom:.75rem;padding:.25rem .6rem;font-size:.65rem;font-weight:700;display:inline-block}h1{letter-spacing:-.03em;color:var(--text-brand);font-size:1.7rem;font-weight:800}h1 .grad{color:var(--text-muted);font-weight:500}.subtitle{color:var(--text-muted);margin-top:.2rem;font-size:.95rem}.settings-btn{background:var(--card);border:1px solid var(--card-border);box-shadow:var(--shadow-sm);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;transition:var(--transition);width:auto;padding:.6rem 1rem;font-size:.8rem;font-weight:600}.settings-btn:hover{background:#262626;border-color:#333}.dashboard,.layout{grid-template-columns:360px 1fr;align-items:start;gap:2rem;display:grid}@media (width<=1024px){.dashboard,.layout{grid-template-columns:1fr}.app-container{padding:1.5rem}}.panel{background:var(--card);border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow-md);transition:var(--transition);padding:1.75rem}.panel-title{color:var(--text-brand);letter-spacing:-.01em;align-items:center;gap:.75rem;margin-bottom:1.5rem;font-size:1.05rem;font-weight:600;display:flex}.divider{border:none;border-top:1px solid var(--card-border);margin:1.5rem 0}.form-group{margin-bottom:1.2rem}.form-group label{color:var(--text-muted);margin-bottom:.4rem;font-size:.75rem;font-weight:600;display:block}input[type=text],input[type=date],input[type=number],input[type=time],select{border:1px solid var(--card-border);border-radius:var(--radius-sm);transition:var(--transition);background:#0a0a0a;outline:none;width:100%;min-height:42px;padding:.6rem .75rem;font-family:inherit;font-size:.9rem;line-height:1.5;color:#fff!important}input:focus,select:focus{border-color:var(--text-muted);background:#0f0f0f;box-shadow:0 0 0 1px #ffffff1a;color:#fff!important;caret-color:#fff!important}input:-webkit-autofill{transition:background-color 5000s ease-in-out;-webkit-text-fill-color:#fff!important;color:#fff!important;caret-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #0a0a0a!important}input:-webkit-autofill:hover{transition:background-color 5000s ease-in-out;-webkit-text-fill-color:#fff!important;color:#fff!important;caret-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #0a0a0a!important}input:-webkit-autofill:focus{transition:background-color 5000s ease-in-out;-webkit-text-fill-color:#fff!important;color:#fff!important;caret-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #0a0a0a!important}input:-webkit-autofill:active{transition:background-color 5000s ease-in-out;-webkit-text-fill-color:#fff!important;color:#fff!important;caret-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #0a0a0a!important}.date-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2.5rem;display:grid}.stat-card{background:var(--card);border:1px solid var(--card-border);border-radius:var(--radius);text-align:left;box-shadow:var(--shadow-sm);transition:var(--transition);padding:1.5rem}.stat-card:hover{border-color:#333;transform:translateY(-2px)}.stat-icon{opacity:.7;margin-bottom:.5rem;font-size:1.25rem}.stat-value{color:var(--text-brand);letter-spacing:-.05em;font-size:1.85rem;font-weight:700}.stat-label{color:var(--text-muted);margin-top:.25rem;font-size:.75rem;font-weight:500}.stat-alert{border-left:3px solid var(--danger)}.stat-ok{border-left:3px solid var(--success)}.bar-row{margin-bottom:1rem}.bar-label{color:var(--text-muted);margin-bottom:.4rem;font-size:.8rem;font-weight:500}.bar-track{background:#ffffff0d;border-radius:4px;height:24px;overflow:hidden}.bar-fill{border-radius:0 4px 4px 0;align-items:center;height:100%;padding:0 .5rem;transition:width 1s cubic-bezier(.16,1,.3,1);display:flex}.bar-price{color:#111;font-size:.7rem;font-weight:600}.bar-fill-normal{background:var(--text-muted)}.bar-fill-ours{background:var(--text-brand)}.bar-fill-alert{background:var(--danger)}.bar-fill-alert .bar-price{color:#fff}.history-table-wrap{margin:0 -1.75rem -1.75rem;overflow-x:auto}.history-table{border-collapse:collapse;width:100%;font-size:.85rem}.history-table th{text-align:left;background:var(--bg);color:var(--text-muted);border-bottom:1px solid var(--card-border);padding:1rem 1.75rem;font-weight:600}.history-table td{border-bottom:1px solid var(--card-border);transition:var(--transition);color:var(--text);padding:1rem 1.75rem}.history-table tbody tr{cursor:pointer}.history-table tbody tr:hover{background:#1a1a1a}.row-selected{border-left:3px solid var(--text-brand);background:#1a1a1a!important}.results-grid{flex-direction:column;gap:.4rem;margin-top:.5rem;display:flex}.grid-header{color:var(--text-muted);border-bottom:1px solid var(--card-border);grid-template-columns:1fr 100px 100px;margin-bottom:.5rem;padding:.5rem 1rem;font-size:.75rem;font-weight:500;display:grid}.grid-row{background:var(--bg);border:1px solid var(--card-border);border-radius:var(--radius-sm);transition:var(--transition);grid-template-columns:1fr 100px 100px;align-items:center;padding:.8rem 1rem;display:grid}.grid-row:hover{border-color:#333}.col-name{overflow:hidden}.hotel-name{color:var(--text-brand);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:500;overflow:hidden}.col-price{justify-self:center}.col-diff{justify-self:flex-end}.row-ours{border:1px solid var(--text-muted);background:#1a1a1a}.row-exact{border-left:3px solid #60a5fa}.row-alert{border-left:3px solid var(--danger)}.row-opportunity{border-left:3px solid var(--warning)}.chips-preview{flex-wrap:wrap;gap:.4rem;margin-top:.5rem;display:flex}.chip{background:var(--bg);border:1px solid var(--card-border);color:var(--text-muted);border-radius:4px;padding:.25rem .5rem;font-size:.7rem;font-weight:500}.chip-more{background:var(--card-border);color:var(--text);border:none}.search-btn,.whatsapp-btn,.save-btn{border-radius:var(--radius-sm);border:1px solid var(--card-border);cursor:pointer;width:100%;transition:var(--transition);justify-content:center;align-items:center;gap:.5rem;padding:.85rem;font-size:.85rem;font-weight:500;display:flex}.search-btn{background:var(--text-brand);color:#000;border:none}.search-btn:hover{background:#d4d4d4}.whatsapp-btn{background:var(--accent);color:#000;border:none;width:auto!important;padding:.6rem 1rem!important;font-size:.85rem!important}.whatsapp-btn:hover{background:var(--accent-hover)}.ref-bar{background:var(--bg);border-radius:var(--radius-sm);border:1px solid var(--card-border);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem;display:flex}.ref-label{color:var(--text-muted);font-size:.75rem;font-weight:600}.ref-price{color:var(--text-brand);font-size:1.1rem;font-weight:600}.switch{width:40px;height:20px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:var(--card-border);border-radius:20px;transition:all .2s;position:absolute;inset:0}.slider:before{content:"";background-color:var(--text-brand);border-radius:50%;width:16px;height:16px;transition:all .2s;position:absolute;bottom:2px;left:2px}input:checked+.slider{background-color:var(--accent)}input:checked+.slider:before{transform:translate(20px)}.tabs{border-bottom:1px solid var(--card-border);gap:.5rem;margin-bottom:2rem;padding-bottom:.5rem;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:color .15s}.tab-btn:hover{color:var(--text)}.tab-active{position:relative;color:var(--text-brand)!important}.tab-active:after{content:"";background:var(--text-brand);width:100%;height:2px;position:absolute;bottom:-.6rem;left:0}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{border-radius:var(--radius);width:90%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-lg);padding:2rem;overflow-y:auto;background:var(--bg)!important;border:1px solid var(--card-border)!important;color:var(--text)!important}.modal h2{margin-bottom:1.5rem;font-size:1.25rem;font-weight:600}.settings-section h3{color:var(--text-muted);margin-bottom:.75rem;font-size:.8rem;font-weight:600}.tag-list{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.tag{background:var(--card);border:1px solid var(--card-border);color:var(--text);border-radius:4px;align-items:center;gap:.5rem;padding:.25rem .6rem;font-size:.75rem;font-weight:500;display:inline-flex}.tag button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:1rem}.tag button:hover{color:var(--text-brand)}.number-row{background:var(--card);border-radius:var(--radius-sm);border:1px solid var(--card-border);align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.5rem .75rem;display:flex}.number-name{color:var(--text);min-width:80px;font-size:.85rem;font-weight:500}.number-num{color:var(--text-muted);flex:1;font-size:.8rem}.remove-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:1.1rem}.remove-btn:hover{color:var(--text-brand)}.add-row{gap:.5rem;margin-top:.5rem;display:flex}.add-btn{background:var(--card);border:1px solid var(--card-border);width:auto;color:var(--text-brand);cursor:pointer;padding:.5rem 1rem;font-size:.8rem}.add-btn:hover{background:#262626}.modal-actions{gap:1rem;margin-top:2rem;display:flex}.cancel-btn{border-radius:var(--radius-sm);cursor:pointer;width:100%;padding:.85rem;font-weight:500;color:var(--text)!important;border:1px solid var(--card-border)!important;background:0 0!important}.cancel-btn:hover{background:var(--card)!important}.diff-badge{border-radius:4px;padding:.2rem .4rem;font-family:monospace;font-weight:600}.diff-up{color:var(--warning);background:#f59e0b1a}.diff-down{color:var(--danger);background:#ef44441a}.diff-zero{background:var(--card-border);color:var(--text-muted)}.animate-fade{animation:.3s cubic-bezier(.16,1,.3,1) fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.session-detail-item{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.detail-hotel-name{font-size:.85rem;font-weight:500}.detail-hotel-name.is-acaua{color:var(--purple);font-weight:600}.detail-hotel-name.is-exact{color:#60a5fa}.detail-hotel-name.is-low{color:#f87171}.detail-price{font-size:.9rem;font-weight:600}.detail-badge{border-radius:2px;padding:.1rem .3rem;font-size:.6rem}.source-selector{gap:.4rem;margin-top:.25rem;display:flex}.source-btn{border-radius:var(--radius-sm);border:1px solid var(--card-border);background:var(--bg);color:var(--text-muted);cursor:pointer;transition:var(--transition);text-align:center;flex:1;padding:.55rem .5rem;font-size:.78rem;font-weight:600}.source-btn:hover{color:var(--text);border-color:#444}.source-active{box-shadow:inset 0 1px 2px #0000004d;background:var(--card-border)!important;color:var(--text-brand)!important;border-color:#555!important}
