:root{--bg:#f8fafc;--bg-side:#0c1222;--bg-card:#fff;--bg-hover:#f1f5f9;--bg-soft:#f8fafc;--bg-sub:#f1f5f9;--bd:#e2e8f0;--bd-s:#f1f5f9;--tx:#0f172a;--tx2:#475569;--txm:#94a3b8;--ac:#0891b2;--ac-s:#ecfeff;--ac-h:#0e7490;--ok:#059669;--ok-s:#ecfdf5;--wn:#d97706;--wn-s:#fffbeb;--dn:#e11d48;--dn-s:#fff1f2;--ch-b:#3b82f6;--ch-d:#059669;--ch-e:#d97706;--sh-xs:0 1px 2px #0000000a;--sh-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--sh-md:0 4px 8px #0000000a, 0 2px 4px #0000000f;--sh-lg:0 12px 24px #0000000f, 0 4px 8px #0000000a;--sh-xl:0 24px 48px #00000014, 0 8px 16px #0000000a;--r-s:6px;--r-m:8px;--r-l:12px;--r-xl:16px;--vip:#f59e0b;--vip-s:#fffbeb}*{box-sizing:border-box;margin:0;padding:0}body{font-feature-settings:"cv02", "cv03", "cv04", "cv11";-webkit-font-smoothing:antialiased;background:var(--bg);color:var(--tx);height:100vh;font-family:Inter,system-ui,sans-serif;font-size:14px;display:flex;overflow:hidden}.tnum{font-variant-numeric:tabular-nums}.sidebar{background:var(--bg-side);flex-direction:column;flex-shrink:0;width:220px;padding:12px;display:flex}.s-logo{letter-spacing:-.5px;color:#e2e8f0;align-items:center;gap:10px;padding:12px 8px 20px;font-size:1rem;font-weight:800;display:flex}.s-logo span{background:var(--ac);color:#fff;border-radius:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:700;display:flex}.ns{margin-bottom:20px}.nt{text-transform:uppercase;color:#475569;letter-spacing:.8px;padding:8px 8px 6px;font-size:.65rem;font-weight:700}.ni{cursor:pointer;color:#94a3b8;border-radius:0;align-items:center;gap:10px;padding:7px 10px;font-size:.85rem;font-weight:500;transition:all .15s;display:flex}.ni:hover{color:#e2e8f0;background:#ffffff0f}.ni.act{color:var(--ac);background:#0891b226;font-weight:600}.ni svg{stroke-width:1.5px;flex-shrink:0;width:16px;height:16px}.ni .nb{background:var(--dn);color:#fff;text-align:center;border-radius:0;min-width:18px;margin-left:auto;padding:1px 6px;font-size:.6rem;font-weight:700}.mc{flex-direction:column;flex:1;display:flex;overflow:hidden}.tb{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--bd);background:#ffffffd9;flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex}.st{background:var(--bg-soft);border:1px solid var(--bd);white-space:nowrap;cursor:pointer;width:440px;color:var(--txm);border-radius:0;align-items:center;gap:10px;padding:6px 14px;font-size:.85rem;transition:all .2s;display:flex}.st:hover{border-color:var(--txm);background:#fff}.st svg{flex-shrink:0;width:15px;height:15px}.st .sk{border:1px solid var(--bd);color:var(--txm);background:#fff;border-radius:0;margin-left:auto;padding:1px 5px;font-size:.65rem;font-weight:600}.tr{align-items:center;gap:12px;display:flex}.tc{color:var(--tx2);align-items:center;gap:6px;font-size:.85rem;font-weight:600;display:flex}.tc svg{width:14px;height:14px;color:var(--txm)}.ib{cursor:pointer;width:32px;height:32px;color:var(--tx2);border-radius:0;justify-content:center;align-items:center;transition:background .2s;display:flex;position:relative}.ib:hover{background:var(--bg-hover)}.ib svg{width:16px;height:16px}.nd{background:var(--dn);border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:6px;right:6px}.ua{background:linear-gradient(135deg, var(--ac), #8b5cf6);cursor:pointer;color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:.75rem;font-weight:700;line-height:1;display:flex}.ca{scroll-behavior:smooth;flex:1;padding:24px;overflow-y:auto}.ca::-webkit-scrollbar{width:6px}.ca::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:0}.ph{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.pt{letter-spacing:-.5px;font-size:1.5rem;font-weight:800}.pst{color:var(--tx2);margin-top:2px;font-size:.85rem}.gs{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:20px;display:grid}.sc{background:var(--bg-card);border:1px solid var(--bd);cursor:pointer;box-shadow:var(--sh-xs);border-radius:0;flex-direction:column;gap:6px;padding:16px;transition:all .2s;display:flex}.sc:hover{box-shadow:var(--sh-sm);border-color:#dce0e5;transform:translateY(-1px)}.sl{color:var(--txm);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;font-size:.7rem;font-weight:700;display:flex}.sl svg{width:13px;height:13px}.sv{letter-spacing:-1px;font-size:1.75rem;font-weight:800}.st2{align-items:center;gap:3px;font-size:.75rem;font-weight:600;display:flex}.tu{color:var(--ok)}.td2{color:var(--dn)}.pn{background:var(--bg-card);border:1px solid var(--bd);box-shadow:var(--sh-xs);border-radius:0;margin-bottom:20px;overflow:hidden}.ph2{border-bottom:1px solid var(--bd-s);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.pn-t{align-items:center;gap:6px;font-size:.9rem;font-weight:700;display:inline-flex}.lr{border-bottom:1px solid var(--bd-s);cursor:pointer;align-items:center;gap:12px;padding:10px 16px;font-size:.85rem;transition:background .12s;display:grid}.lr>div>div{text-overflow:ellipsis;overflow:hidden}.lr:last-child{border-bottom:none}.lr:hover{background:var(--bg-hover)}.bg{white-space:nowrap;border-radius:0;align-items:center;gap:4px;padding:3px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.bg-ok{background:var(--ok-s);color:var(--ok)}.bg-wn{background:var(--wn-s);color:var(--wn)}.bg-dn{background:var(--dn-s);color:var(--dn)}.bg-n{background:var(--bg-sub);color:var(--tx2);border:1px solid var(--bd)}.bg-ac{background:var(--ac-s);color:var(--ac)}.bg-bk{color:var(--ch-b);background:#eff6ff}.bg-dc{background:var(--ok-s);color:var(--ch-d)}.bg-ex{background:var(--wn-s);color:var(--ch-e)}.bg-vip{background:var(--vip-s);color:var(--vip)}.btn{cursor:pointer;white-space:nowrap;border:none;border-radius:0;align-items:center;gap:5px;padding:6px 14px;font-size:.8rem;font-weight:600;transition:all .15s;display:inline-flex}.btn svg{width:14px;height:14px}.btn-p{background:var(--tx);color:#fff}.btn-p:hover{background:#1e293b}.btn-a{background:var(--ac);color:#fff}.btn-a:hover{background:var(--ac-h)}.btn-g{color:var(--tx2);background:0 0}.btn-g:hover{background:var(--bg-hover);color:var(--tx)}.btn-d{background:var(--dn-s);color:var(--dn)}.btn-d:hover{background:#fecdd3}.btn-sm{padding:4px 10px;font-size:.75rem}.btn-block{justify-content:center;width:100%;margin-top:8px;padding:10px}.input{border:1px solid var(--bd);border-radius:0;outline:none;width:100%;padding:8px 12px;font-family:inherit;font-size:.85rem;transition:border .2s}.input:focus{border-color:var(--ac)}select.input{cursor:pointer;background:#fff}.pw{border:1px solid var(--bd);box-shadow:var(--sh-xs);background:#fff;border-radius:0;position:relative;overflow:auto}.pg{min-width:max-content;display:grid}.pc{z-index:5;background:var(--bg-soft);border-bottom:1px solid var(--bd);border-right:1px solid var(--bd);color:var(--txm);text-transform:uppercase;justify-content:center;align-items:center;padding:8px 10px;font-size:.7rem;font-weight:700;display:flex;position:sticky;top:0;left:0}.pd{z-index:3;background:var(--bg-soft);border-bottom:1px solid var(--bd);border-right:1px solid var(--bd-s);text-align:center;color:var(--txm);text-transform:uppercase;flex-direction:column;align-items:center;gap:1px;min-width:68px;padding:6px 2px;font-size:.65rem;font-weight:700;display:flex;position:sticky;top:0}.pd .dn2{color:var(--tx);font-size:.85rem;font-weight:800}.pd.tod{background:var(--ac-s);color:var(--ac)}.pd.tod .dn2{color:var(--ac)}.pd.heat-high{color:#dc2626;background:#fef2f2}.pd.heat-high .dn2{color:#dc2626}.pd.heat-mid{color:#d97706;background:#fffbeb}.pd.heat-mid .dn2{color:#d97706}.pr{z-index:2;border-bottom:1px solid var(--bd-s);border-right:1px solid var(--bd);background:#fff;flex-direction:column;gap:1px;min-width:68px;padding:6px 8px;font-size:.8rem;font-weight:700;display:flex;position:sticky;left:0}.pr .rt{color:var(--txm);font-size:.65rem;font-weight:400}.pce{border-bottom:1px solid var(--bd-s);border-right:1px solid var(--bd-s);min-height:44px;position:relative}.pce.tod-c{background:#0891b208}.pb{cursor:pointer;box-shadow:var(--sh-xs);white-space:nowrap;z-index:2;border-radius:0;align-self:stretch;align-items:center;margin:4px 1px;padding:3px 6px;font-size:.68rem;font-weight:700;transition:all .15s;display:flex;position:relative;overflow:hidden}.pb:hover{box-shadow:var(--sh-md);z-index:10;transform:scale(1.02)}.pb.c-b{border-left:3px solid var(--ch-b);color:var(--ch-b);background:#eff6ff}.pb.c-d{background:var(--ok-s);border-left:3px solid var(--ch-d);color:var(--ch-d)}.pb.c-e{background:var(--wn-s);border-left:3px solid var(--ch-e);color:var(--ch-e)}.pb .ttip{background:var(--tx);color:#fff;white-space:nowrap;opacity:0;pointer-events:none;z-index:100;border-radius:0;padding:6px 10px;font-size:.7rem;transition:opacity .2s;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.pb:hover .ttip{opacity:1}.ptl{z-index:4;pointer-events:none;position:relative}.ptl:after{content:"";background:var(--ac);opacity:.7;border-radius:0;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.mo{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;opacity:0;pointer-events:none;background:#0f172a8c;justify-content:center;align-items:flex-start;padding-top:12vh;transition:opacity .15s;display:flex;position:fixed;inset:0}.mo.on{opacity:1;pointer-events:all}.cp{width:100%;max-width:520px;box-shadow:var(--sh-xl);background:#fff;border-radius:0;transition:transform .15s;overflow:hidden;transform:scale(.97)translateY(-8px)}.mo.on .cp{transform:scale(1)translateY(0)}.ciw{border-bottom:1px solid var(--bd);align-items:center;gap:10px;padding:14px 16px;display:flex}.ciw svg{width:18px;height:18px;color:var(--txm);flex-shrink:0}.ci{background:0 0;border:none;outline:none;flex:1;font-size:.95rem;font-weight:500}.crs{max-height:360px;padding:6px;overflow-y:auto}.cc{text-transform:uppercase;color:var(--txm);letter-spacing:.5px;padding:8px 10px 4px;font-size:.65rem;font-weight:700}.cci{cursor:pointer;border-radius:0;align-items:center;gap:10px;padding:8px 10px;transition:background .1s;display:flex}.cci:hover,.cci.sel{background:var(--bg-soft)}.cci-i{background:var(--bg-soft);width:28px;height:28px;color:var(--tx2);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.cci-i svg{width:14px;height:14px}.cci-t{flex-direction:column;min-width:0;display:flex}.cci-t1{text-overflow:ellipsis;font-size:.85rem;font-weight:500;overflow:hidden}.cci-t2{color:var(--txm);font-size:.7rem}.wo{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;opacity:0;pointer-events:none;background:#0f172a8c;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:fixed;inset:0}.wo.on{opacity:1;pointer-events:all}.wm{width:100%;max-width:480px;box-shadow:var(--sh-xl);background:#fff;border-radius:0;transition:transform .15s;overflow:hidden;transform:scale(.97)}.wo.on .wm{transform:scale(1)}.wp{background:var(--bg-sub);height:3px}.wpb{background:var(--ac);height:100%;transition:width .3s}.wh{justify-content:space-between;align-items:center;padding:20px 24px 0;display:flex}.wsl{color:var(--ac);font-size:.75rem;font-weight:600}.wb{padding:16px 24px}.wf{border-top:1px solid var(--bd-s);justify-content:space-between;gap:8px;padding:16px 24px;display:flex}.wfd{margin-bottom:14px}.wfd label{color:var(--txm);text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px;font-size:.75rem;font-weight:600;display:block}.wfd .wv{background:var(--bg-soft);border:1px solid var(--bd);border-radius:0;padding:8px 12px;font-size:.95rem;font-weight:600}.wfd .wv.pp{color:var(--wn);border-color:var(--wn)}.so{z-index:900;opacity:0;pointer-events:none;background:#00000026;transition:opacity .2s;position:fixed;inset:0}.so.on{opacity:1;pointer-events:all}.sp{z-index:1000;background:#fff;flex-direction:column;width:400px;height:100vh;transition:transform .25s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-8px 0 30px #00000014}.sp.on{transform:translate(0)}.sph{border-bottom:1px solid var(--bd);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.spt{font-size:1rem;font-weight:700}.spc{background:var(--bg-soft);cursor:pointer;width:28px;height:28px;color:var(--tx2);border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .15s;display:flex}.spc:hover{background:var(--bg-hover)}.spc svg{width:14px;height:14px}.spcn{flex:1;padding:20px;overflow-y:auto}.spf{border-top:1px solid var(--bd);gap:8px;padding:12px 20px;display:flex}.ttc{z-index:2000;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.tt{pointer-events:all;background:var(--tx);color:#fff;box-shadow:var(--sh-lg);border-radius:0;align-items:center;gap:8px;padding:10px 16px;font-size:.85rem;font-weight:600;animation:.25s cubic-bezier(.32,.72,0,1) tIn;display:flex}.tt.ok{background:var(--ok)}.tt.wn{background:var(--wn)}.tt.dn{background:var(--dn)}.tt .tc2{background:#ffffff40;border-radius:0;margin-left:4px;padding:1px 6px;font-size:.7rem}@keyframes tIn{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(20px)}}.skl{background:linear-gradient(90deg, var(--bg-sub) 25%, #e2e8f0 50%, var(--bg-sub) 75%);background-size:200% 100%;border-radius:0;animation:1.5s infinite shm}@keyframes shm{0%{background-position:200% 0}to{background-position:-200% 0}}.skc{background:var(--bg-card);border:1px solid var(--bd);border-radius:0;flex-direction:column;gap:8px;padding:16px;display:flex}.skl2{border-radius:0;height:12px}.es{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:48px 20px;display:flex}.es svg{opacity:.2;color:var(--tx);margin-bottom:12px}.es h4{margin-bottom:4px;font-size:.95rem;font-weight:700}.es p{color:var(--txm);margin-bottom:14px;font-size:.85rem}.tli{gap:12px;padding:8px 0;display:flex;position:relative}.tld{z-index:1;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:5px;position:relative}.tli:not(:last-child):before{content:"";background:var(--bd);width:1px;position:absolute;top:23px;bottom:-8px;left:3.5px}.fu{animation:.3s ease-out fUp}@keyframes fUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.sp-sect{border-top:1px solid var(--bd-s);margin-top:20px;padding-top:16px}.folio-item{border-bottom:1px dashed var(--bd-s);justify-content:space-between;padding:8px 0;font-size:.85rem;display:flex}.hk-board{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.hk-col{background:var(--bg-soft);border-radius:0;min-height:400px;padding:12px}.hk-col-title{justify-content:space-between;align-items:center;margin-bottom:12px;font-size:.85rem;font-weight:700;display:flex}.hk-card{border:1px solid var(--bd);cursor:pointer;background:#fff;border-radius:0;margin-bottom:8px;padding:10px;transition:all .2s}.hk-card:hover{box-shadow:var(--sh-sm);transform:translateY(-1px)}.hk-card-actions{flex-direction:column;gap:4px;margin-top:8px;display:flex}.tag-vip{background:var(--vip);color:#fff;border-radius:0;margin-left:6px;padding:1px 6px;font-size:.6rem;font-weight:700}.client-search-wrapper{align-items:center;gap:8px;display:flex;position:relative}.client-search-wrapper .input{flex:1}.icon-btn{background:var(--bg-sub);border:1px solid var(--bd);cursor:pointer;width:36px;height:36px;color:var(--tx2);border-radius:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.icon-btn:hover{background:var(--ac);color:#fff;border-color:var(--ac)}.mini-form{background:var(--bg-soft);border:1px solid var(--bd);border-radius:0;flex-direction:column;gap:8px;margin-top:10px;padding:12px;display:flex}.s-logo{align-items:flex-start}.s-logo-sub{color:#64748b;margin-top:1px;font-size:.62rem;font-weight:500}.s-scroll{flex:1;margin:0 -6px;padding:0 6px;overflow-y:auto}.s-scroll::-webkit-scrollbar{width:4px}.s-scroll::-webkit-scrollbar-thumb{background:#334155;border-radius:0}.ni-label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.nb{background:var(--dn)}.ni.act .nb{background:var(--ac)}.grid-2{grid-template-columns:1.35fr 1fr;align-items:start;gap:20px;display:grid}@media (width<=1180px){.grid-2{grid-template-columns:1fr}}.form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.input-sm{margin-top:4px;padding:5px 8px;font-size:.75rem}.prog{background:var(--bg-sub);border-radius:0;height:6px;overflow:hidden}.prog-fill{border-radius:0;height:100%;transition:width .4s}.lr-arr{grid-template-columns:22px 52px minmax(0,1.6fr) 90px 66px 96px auto}.lr-dep{grid-template-columns:22px 52px minmax(0,1.6fr) 90px 108px auto}.ops-head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:20px;display:grid}.ops-head-copy{min-width:0}.ops-head-actions,.ops-row-actions{justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.ops-board{box-shadow:none}.ops-board-head>div{align-items:center;gap:8px;min-width:0;display:flex}.ops-count{background:var(--bg-sub);min-width:22px;height:20px;color:var(--tx2);place-items:center;padding:0 6px;font-size:.68rem;font-weight:800;display:inline-grid}.ops-board-note{color:var(--txm);white-space:nowrap;align-items:center;gap:6px;font-size:.74rem;display:inline-flex}.ops-board-note i,.ops-room span i{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.ops-board-note i.is-ok{color:var(--ok)}.ops-board-note i.is-warn{color:var(--wn)}.ops-grid{align-items:center;gap:12px;min-width:0;display:grid}.ops-arr-grid{grid-template-columns:62px minmax(150px,1.5fr) 82px minmax(125px,.9fr) 106px 100px 102px}.ops-dep-grid{grid-template-columns:62px minmax(145px,1.35fr) 68px minmax(120px,.85fr) 108px 96px minmax(172px,auto)}.ops-done-grid{grid-template-columns:62px minmax(190px,1.5fr) 82px minmax(135px,1fr) 110px}.ops-grid-head{background:var(--bg-soft);border-bottom:1px solid var(--bd);min-height:34px;color:var(--txm);text-transform:uppercase;padding:0 16px;font-size:.65rem;font-weight:700}.ops-align-end{text-align:right}.ops-row{border-bottom:1px solid var(--bd-s);cursor:pointer;min-height:68px;padding:9px 16px;transition:background-color .14s,box-shadow .14s}.ops-row:last-child{border-bottom:0}.ops-row:hover{background:var(--bg-hover);box-shadow:inset 3px 0 0 var(--ac)}.ops-row>*{min-width:0}.ops-time,.ops-guest,.ops-room,.ops-stay,.ops-money{flex-direction:column;gap:3px;min-width:0;display:flex}.ops-time .tnum,.ops-primary,.ops-room>strong,.ops-stay>strong,.ops-money>strong{color:var(--tx);font-size:.82rem;font-weight:750}.ops-time small,.ops-secondary,.ops-stay>span,.ops-money>span{color:var(--txm);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;line-height:1.35;overflow:hidden}.ops-primary{text-overflow:ellipsis;white-space:nowrap;line-height:1.35;overflow:hidden}.ops-room span{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;font-size:.66rem;font-weight:650;display:flex;overflow:hidden}.ops-row .is-ok{color:var(--ok)}.ops-row .is-warn{color:var(--wn)}.ops-row .is-danger{color:var(--dn)}.ops-alert{color:var(--wn);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:.66rem;display:flex;overflow:hidden}.ops-room-number{color:var(--tx);font-size:.84rem}.ops-status{overflow:hidden}.ops-status .bg{text-overflow:ellipsis;max-width:100%;overflow:hidden}.ops-action,.ops-row-actions .btn{white-space:nowrap;justify-content:center}.ops-done-amount{color:var(--tx2);font-weight:700}.ops-completed .ops-row{min-height:52px}@media (width<=1180px){.ops-dep-grid{grid-template-columns:58px minmax(130px,1.3fr) 58px minmax(95px,.8fr) 96px 88px minmax(136px,auto);gap:8px}.ops-row-actions .btn{padding-inline:8px}.ops-row-actions .ops-icon-action span{display:none}}@media (width<=900px){.ops-head{grid-template-columns:minmax(0,1fr) auto;align-items:start}.ops-grid-head{display:none}.ops-arr-grid,.ops-dep-grid,.ops-done-grid{grid-template-columns:58px minmax(0,1fr) auto;gap:8px 12px}.ops-row{align-items:start;min-height:0;padding-block:12px}.ops-time{grid-area:1/1}.ops-guest{grid-area:1/2}.ops-room,.ops-room-number{text-align:right;grid-area:1/3}.ops-stay{grid-area:2/2}.ops-money{text-align:right;grid-area:2/3}.ops-status{grid-area:3/2}.ops-action,.ops-row-actions{grid-area:3/3;align-self:end}.ops-done-grid .ops-secondary,.ops-done-grid .ops-done-amount{grid-area:2/2}.ops-done-grid .ops-status{grid-area:2/3}}@media (width<=560px){.ops-head{grid-template-columns:minmax(0,1fr);gap:12px}.ops-head-actions{justify-content:flex-start}.ops-head-actions .btn{justify-content:center;width:34px;height:34px;padding:0}.ops-head-actions .btn span{display:none}.ops-board-head{align-items:flex-start;gap:6px}.ops-board-note{display:none}.ops-board-head>div{justify-content:space-between;width:100%}.ops-arr-grid,.ops-dep-grid,.ops-done-grid{grid-template-columns:minmax(0,1fr);gap:10px}.ops-row{padding:12px}.ops-time,.ops-guest,.ops-room,.ops-room-number,.ops-stay,.ops-money,.ops-status,.ops-action,.ops-row-actions,.ops-done-grid .ops-secondary,.ops-done-grid .ops-done-amount,.ops-done-grid .ops-status{text-align:left;grid-area:auto/1;width:100%}.ops-time{flex-direction:row;align-items:baseline;gap:6px}.ops-room{border-block:1px solid var(--bd-s);padding-block:7px}.ops-money{text-align:left}.ops-action{min-height:34px}.ops-row-actions{flex-direction:column;align-items:stretch}.ops-row-actions .ops-icon-action span{display:inline}.ops-row-actions .btn{width:100%}}.lr-res{grid-template-columns:22px 66px minmax(0,1.7fr) 84px 88px 58px 104px 106px}.lr-cli{grid-template-columns:22px 30px minmax(0,1.5fr) 52px 84px 90px 88px 88px}@media (width<=1240px){.lr-res{grid-template-columns:22px 60px minmax(0,1.5fr) 76px 80px 54px 96px 96px}.lr-cli{grid-template-columns:22px 30px minmax(0,1.4fr) 48px 78px 82px 82px 80px}}@media (width<=1040px){.lr-arr,.lr-dep,.lr-res,.lr-cli{grid-template-columns:22px minmax(0,1fr) auto;grid-auto-flow:dense}.lr-arr>:nth-child(n+4),.lr-dep>:nth-child(n+4),.lr-res>:nth-child(n+4),.lr-cli>:nth-child(n+4){grid-column:2/-1}}.alert-row{cursor:pointer;border-radius:0;align-items:center;gap:10px;margin:-8px;padding:8px;transition:background .15s;display:flex}.alert-row:hover{background:var(--bg-hover)}.alert-ico{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.alert-row>svg{color:var(--txm);flex-shrink:0;margin-left:auto}.task-row{border-bottom:1px dashed var(--bd-s);cursor:pointer;align-items:center;gap:10px;padding:9px 0;display:flex}.task-row:last-child{border-bottom:none}.task-check{border:2px solid var(--bd);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:17px;height:17px;transition:all .15s;display:flex}.task-row:hover .task-check{border-color:var(--ac)}.task-check.done{background:var(--ok);border-color:var(--ok);color:#fff}.task-done{opacity:.5}.task-done div{text-decoration:line-through}.handover-grid{padding:14px 16px 16px;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;padding:14px 16px 16px;display:grid}.handover-item,.kpi{background:var(--bg-card);border:1px solid var(--bd);min-width:0;box-shadow:var(--sh-xs);padding:14px}.handover-label,.kpi-l{min-width:0;color:var(--txm);letter-spacing:.35px;text-transform:uppercase;align-items:center;gap:6px;font-size:.68rem;font-weight:700;line-height:1.25;display:flex}.handover-label svg,.kpi-l svg{flex:none}.handover-value,.kpi-v{color:var(--tx);letter-spacing:-.5px;margin-top:10px;font-size:1.45rem;font-weight:800;line-height:1}.kpi-s{color:var(--txm);margin-top:7px;font-size:.72rem;line-height:1.4}.gs .kpi{min-height:126px}.gan-title{align-items:center;gap:8px;display:flex}.gan-title svg{flex:none}@media (width<=1200px){.handover-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.handover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.handover-label{min-width:0;color:var(--txm);letter-spacing:.35px;text-transform:uppercase;align-items:center;gap:6px;font-size:.68rem;font-weight:700;line-height:1.25;display:flex}.handover-label svg{flex:none}.handover-value{color:var(--tx);letter-spacing:-.5px;margin-top:10px;font-size:1.45rem;font-weight:800;line-height:1}@media (width<=1200px){.handover-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=720px){.handover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.status-strip{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.status-chip{background:var(--bg-card);border:1px solid var(--bd);cursor:pointer;color:var(--tx2);border-radius:0;align-items:center;gap:6px;padding:6px 12px;font-size:.78rem;font-weight:600;transition:all .15s;display:flex}.status-chip:hover{border-color:var(--ac);color:var(--ac)}.status-chip.active{background:var(--ac);color:#fff;border-color:var(--ac)}.status-chip strong{background:var(--bg-sub);border-radius:0;padding:0 6px;font-size:.72rem}.status-chip.active strong{background:#ffffff40}.floor-head{color:var(--tx2);align-items:center;gap:8px;margin:20px 0 10px;font-size:.86rem;font-weight:700;display:flex}.floor-head span{color:var(--txm);margin-left:auto;font-size:.76rem;font-weight:500}.room-card{min-height:118px}.guest-card{background:var(--bg-card);border:1px solid var(--bd);cursor:pointer;box-shadow:var(--sh-xs);border-radius:0;padding:14px;transition:all .2s}.guest-card:hover{box-shadow:var(--sh-md);border-color:#dce0e5;transform:translateY(-1px)}.hk-table-panel{padding:0;overflow:hidden}.hk-table-head{border-bottom:1px solid var(--bd-s);justify-content:space-between;align-items:center;min-height:58px;padding:0 18px;display:flex}.hk-table-head>div:first-child{flex-direction:column;gap:2px;display:flex}.hk-table-sub{color:var(--txm);font-size:.7rem;font-weight:400}.hk-summary{color:var(--tx2);align-items:center;gap:18px;font-size:.72rem;font-weight:600;display:flex}.hk-summary span,.hk-status,.hk-done{align-items:center;gap:7px;display:inline-flex}.hk-dot{background:var(--txm);border-radius:50%;flex:none;width:7px;height:7px;display:inline-block}.hk-dot-ready{background:var(--ok)}.hk-dot-urgent{background:var(--dn)}.hk-tabs{border-bottom:1px solid var(--bd);background:var(--bg-soft);align-items:stretch;gap:24px;height:43px;padding:0 18px;display:flex}.hk-tab{color:var(--txm);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 1px;font:600 .72rem inherit;display:flex;position:relative}.hk-tab span{background:var(--bg-sub);min-width:19px;height:18px;color:var(--tx2);justify-content:center;align-items:center;padding:0 5px;font-size:.65rem;display:inline-flex}.hk-tab.active{color:var(--ac)}.hk-tab.active:after{content:"";background:var(--ac);height:2px;position:absolute;bottom:-1px;left:0;right:0}.hk-table-wrap{overflow-x:auto}.hk-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:900px}.hk-table th{background:var(--bg-soft);border-bottom:1px solid var(--bd);height:36px;color:var(--txm);text-align:left;text-transform:uppercase;padding:0 12px;font-size:.63rem;font-weight:700}.hk-table th:nth-child(2){width:17%}.hk-table th:nth-child(3){width:13%}.hk-table th:nth-child(4){width:11%}.hk-table th:nth-child(5),.hk-table th:nth-child(6){width:18%}.hk-table th:nth-child(7){width:17%}.hk-table .hk-check{text-align:center;width:38px;padding-left:12px;padding-right:4px}.hk-table td{border-bottom:1px solid var(--bd-s);height:58px;color:var(--tx2);vertical-align:middle;padding:7px 12px;font-size:.75rem}.hk-table tbody tr{cursor:pointer;transition:background .12s}.hk-table tbody tr:hover{background:var(--bg-soft)}.hk-table tbody tr.hk-row-urgent{box-shadow:inset 3px 0 0 var(--dn)}.hk-table td strong{color:var(--tx);font-size:.78rem;line-height:1.35;display:block}.hk-table td small{color:var(--txm);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:.65rem;line-height:1.45;display:block;overflow:hidden}.hk-status{color:var(--tx2);white-space:nowrap;font-size:.7rem;font-weight:650}.hk-status-sucia .hk-dot{background:var(--wn)}.hk-status-en-limpieza .hk-dot{background:var(--ac)}.hk-status-inspeccion .hk-dot{background:var(--tx2)}.hk-status-libre .hk-dot{background:var(--ok)}.hk-priority{background:var(--bg-sub);min-height:21px;color:var(--txm);align-items:center;padding:0 7px;font-size:.66rem;font-weight:700;display:inline-flex}.hk-priority.high{background:var(--wn-s);color:var(--wn)}.hk-priority.urgent{background:var(--dn-s);color:var(--dn)}.hk-today{color:var(--dn)!important}.hk-muted{color:var(--txm);font-size:.7rem}.hk-assignee{width:100%;height:29px;padding-top:0;padding-bottom:0;font-size:.7rem}.hk-action-col{text-align:right!important}.hk-next{justify-content:center;min-width:118px}.hk-next-en-limpieza{background:var(--sb);color:var(--sb-fg)}.hk-next-inspeccion{background:var(--ok-s);color:var(--ok);border-color:#0000}.hk-done{color:var(--ok);justify-content:flex-end;font-size:.68rem;font-weight:650}.hk-table-foot{background:var(--bg-soft);border-top:1px solid var(--bd-s);height:38px;color:var(--txm);align-items:center;padding:0 18px;font-size:.67rem;display:flex}@media (width<=900px){.hk-table-head{align-items:flex-start;gap:10px;padding-top:12px;padding-bottom:12px}.hk-summary{gap:10px}.hk-tabs{gap:18px;overflow-x:auto}.hk-table{min-width:850px}}.hk-count{background:var(--bg-sub);border-radius:0;margin-left:auto;padding:1px 8px;font-size:.72rem}.hk-urgent{border-left:3px solid var(--dn)}.hk-person{background:var(--bg-soft);border:1px solid var(--bd);border-radius:0;padding:11px}.avatar-sm{background:var(--bg-sub);width:28px;height:28px;color:var(--tx2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.66rem;font-weight:700;display:flex}.avatar-vip{background:var(--vip-s);color:var(--vip)}.avatar-lg{background:var(--ac-s);width:46px;height:46px;color:var(--ac);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;font-weight:700;display:flex}.tag-alt{background:var(--tx2)}.legend{color:var(--tx2);flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:10px;font-size:.76rem;display:flex}.legend-item{align-items:center;gap:5px;font-weight:600;display:flex}.legend-dot{border-radius:0;width:10px;height:10px;display:inline-block}.legend-dot.c-b{background:var(--ch-b)}.legend-dot.c-d{background:var(--ch-d)}.legend-dot.c-e{background:var(--ch-e)}.legend-dot.c-a{background:var(--dn)}.legend-dot.c-g{background:#8b5cf6}.pb.c-a{background:var(--dn-s);border-left:3px solid var(--dn);color:var(--dn)}.pb.c-g{color:#7c3aed;background:#f5f3ff;border-left:3px solid #8b5cf6}.pb-unpaid{border-top:2px dotted}.pb-name{text-overflow:ellipsis;overflow:hidden}.pb-meta{opacity:.65;margin-left:auto;padding-left:5px;font-size:.62rem;font-weight:600}.pd-occ{opacity:.75;font-size:.58rem;font-weight:600}.pr{cursor:pointer}.pr:hover{background:var(--bg-hover)}.pr-block{opacity:.5}.pce{cursor:pointer}.pce:hover{background:var(--ac-s)}.pce-block{background:repeating-linear-gradient(45deg, var(--bg-sub), var(--bg-sub) 5px, transparent 5px, transparent 10px);cursor:not-allowed}.bg-ab{background:var(--dn-s);color:var(--dn)}.bg-ag{color:#7c3aed;background:#f5f3ff}.rate-plan{background:var(--bg-soft);border:1px solid var(--bd);border-radius:0;padding:11px}.rate-cell{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-height:46px;display:flex}.rate-cell:hover{background:var(--ac-s)}.rate-price{font-size:.8rem;font-weight:700}.rate-manual{color:var(--ac)}.rate-free{color:var(--txm);font-size:.62rem}.rate-free.zero{color:var(--dn);font-weight:700}.rate-full{background:var(--dn-s)}.rate-low{background:var(--wn-s)}.group-card,.channel-card{background:var(--bg-card);border:1px solid var(--bd);box-shadow:var(--sh-xs);border-radius:0;padding:16px;transition:all .2s}.group-card{cursor:pointer}.group-card:hover{box-shadow:var(--sh-md);transform:translateY(-1px)}.check-dot{border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.check-dot.ok{background:var(--ok-s);color:var(--ok)}.check-dot.ko{background:var(--wn-s);color:var(--wn)}.sp{width:440px}@media (width<=520px){.sp{width:100%}}.sp-head{align-items:center;gap:13px;margin-bottom:16px;display:flex}.sp-tabs{background:var(--bg-sub);border-radius:0;gap:2px;margin-bottom:16px;padding:3px;display:flex}.sp-tab{text-align:center;cursor:pointer;color:var(--tx2);border-radius:0;flex:1;padding:7px;font-size:.79rem;font-weight:600;transition:all .15s}.sp-tab:hover{color:var(--tx)}.sp-tab.on{color:var(--tx);box-shadow:var(--sh-xs);background:#fff}.sp-h4{margin:16px 0 9px;font-size:.84rem;font-weight:700}.kv-box{background:var(--bg-soft);border:1px solid var(--bd);border-radius:0;padding:13px;font-size:.83rem}.kv{justify-content:space-between;gap:12px;padding:3px 0;display:flex}.kv span{color:var(--txm);flex-shrink:0}.kv strong{text-align:right}.wiz-note{background:var(--ac-s);color:var(--ac-h);border:1px solid #a5f3fc;border-radius:0;margin-top:12px;padding:10px 12px;font-size:.79rem;line-height:1.5}.wiz-note.wn{background:var(--wn-s);color:#92400e;border-color:#fde68a}.action-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.action-item{border:1px solid var(--bd);text-align:left;justify-content:flex-start;padding:11px;font-size:.78rem}.action-item.btn-g{background:#fff}.folio-item{border-bottom:1px dashed var(--bd-s);justify-content:space-between;align-items:center;gap:10px;padding:9px 0;font-size:.83rem;display:flex}.folio-del{color:var(--txm);cursor:pointer;background:0 0;border:none;border-radius:0;flex-shrink:0;padding:3px}.folio-del:hover{color:var(--dn);background:var(--dn-s)}.folio-total{border-top:2px solid var(--bd);justify-content:space-between;margin-top:6px;padding:11px 0;font-size:1rem;font-weight:800;display:flex}.room-option{border:1px solid var(--bd);cursor:pointer;border-radius:0;justify-content:space-between;align-items:center;gap:10px;margin-bottom:7px;padding:11px;font-size:.83rem;transition:all .15s;display:flex}.room-option:hover{border-color:var(--ac);background:var(--ac-s)}.quote-box{background:var(--bg-soft);border:1px solid var(--bd);border-radius:0;margin-top:6px;padding:13px;font-size:.83rem}.quote-line{justify-content:space-between;padding:3px 0;display:flex}.quote-line.total{border-top:1px solid var(--bd);margin-top:6px;padding-top:8px;font-size:.95rem;font-weight:800}.pos-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.pos-item{border:1px solid var(--bd);cursor:pointer;color:var(--tx2);text-align:left;background:#fff;border-radius:0;flex-direction:column;align-items:flex-start;gap:3px;padding:11px;font-family:inherit;transition:all .15s;display:flex}.pos-item:hover{border-color:var(--ac);background:var(--ac-s);color:var(--ac-h)}.pos-desc{color:var(--tx);font-size:.78rem;font-weight:600}.pos-price{color:var(--ac);font-size:.74rem;font-weight:700}.tag-picker{flex-wrap:wrap;gap:6px;display:flex}.tag-btn{border:1px solid var(--bd);color:var(--tx2);cursor:pointer;background:#fff;border-radius:0;padding:5px 11px;font-family:inherit;font-size:.75rem;font-weight:600;transition:all .15s}.tag-btn:hover{border-color:var(--ac)}.tag-btn.on{background:var(--ac);color:#fff;border-color:var(--ac)}.check-label{cursor:pointer;align-items:center;gap:8px;margin:10px 0;font-size:.82rem;display:flex}.invoice-head{border-bottom:2px solid var(--bd);justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;padding-bottom:14px;display:flex}.xlink{color:var(--ac);cursor:pointer;border-bottom:1px dotted #0000;font-weight:600;text-decoration:none;transition:border-color .15s}.xlink:hover{border-bottom-color:var(--ac)}.filter-banner{background:var(--ac-s);color:var(--ac-h);border:1px solid #a5f3fc;border-radius:0;align-items:center;gap:9px;margin-bottom:16px;padding:9px 14px;font-size:.82rem;font-weight:600;display:flex}.filter-banner strong{color:var(--tx)}.filter-clear{border:1px solid var(--bd);color:var(--tx2);cursor:pointer;background:#fff;border-radius:0;align-items:center;gap:4px;margin-left:auto;padding:4px 10px;font-family:inherit;font-size:.74rem;font-weight:600;transition:all .15s;display:inline-flex}.filter-clear:hover{border-color:var(--dn);color:var(--dn)}.hint-bar{background:var(--bg-soft);border:1px dashed var(--bd);color:var(--txm);border-radius:0;align-items:center;gap:7px;margin-bottom:14px;padding:8px 13px;font-size:.76rem;line-height:1.5;display:flex}.related-list{flex-direction:column;gap:6px;display:flex}.related-item{border:1px solid var(--bd);cursor:pointer;text-align:left;width:100%;color:var(--tx2);background:#fff;border-radius:0;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;transition:all .15s;display:flex}.related-item:hover{border-color:var(--ac);background:var(--ac-s);color:var(--ac-h)}.related-item span{flex-direction:column;flex:1;min-width:0;display:flex}.related-item strong{color:var(--tx);font-size:.82rem;font-weight:600}.related-item em{color:var(--txm);font-size:.71rem;font-style:normal}.related-item:hover strong{color:var(--ac-h)}.ctx-menu{z-index:3000;border:1px solid var(--bd);box-shadow:var(--sh-xl);background:#fff;border-radius:0;min-width:212px;padding:5px;animation:.12s ease-out ctxIn;position:fixed}@keyframes ctxIn{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.ctx-item{cursor:pointer;width:100%;color:var(--tx2);text-align:left;background:0 0;border:none;border-radius:0;align-items:center;gap:9px;padding:7px 10px;font-family:inherit;font-size:.82rem;font-weight:500;transition:background .1s;display:flex}.ctx-item:hover{background:var(--bg-soft);color:var(--tx)}.ctx-item.danger{color:var(--dn)}.ctx-item.danger:hover{background:var(--dn-s)}.ctx-item em{color:var(--txm);margin-left:auto;font-size:.71rem;font-style:normal;font-weight:600}.ctx-sep{background:var(--bd-s);height:1px;margin:4px 6px}.sel-box{border:2px solid var(--bd);cursor:pointer;color:#fff;background:#fff;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:all .15s;display:inline-flex}.sel-box:hover{border-color:var(--ac)}.sel-box.on{background:var(--ac);border-color:var(--ac)}.sel-all{cursor:pointer;color:var(--ac);align-items:center;gap:4px;margin-right:10px;font-size:.74rem;font-weight:600;display:inline-flex}.sel-all:hover{text-decoration:underline}.sel-bar{z-index:2500;background:var(--tx);color:#fff;box-shadow:var(--sh-xl);border-radius:0;flex-wrap:wrap;align-items:center;gap:8px;max-width:calc(100vw - 40px);padding:10px 14px;animation:.2s cubic-bezier(.32,.72,0,1) selIn;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@keyframes selIn{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.sel-bar .sel-count{white-space:nowrap;border-right:1px solid #fff3;padding-right:8px;font-size:.82rem;font-weight:700}.sel-bar .btn{color:#fff;background:#ffffff1f}.sel-bar .btn:hover{background:#ffffff38}.sel-bar .btn-a{background:var(--ac)}.sel-bar .btn-a:hover{background:var(--ac-h)}.sel-bar .btn-d{background:var(--dn);color:#fff}.sel-bar .btn-d:hover{background:#be123c}.sel-bar .btn-p{color:var(--tx);background:#fff}.sel-bar .btn-p:hover{background:#e2e8f0}.sel-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:0;padding:4px;display:flex}.sel-close:hover{color:#fff;background:#ffffff1f}.pb[draggable=true]{cursor:grab}.pb.dragging{opacity:.4;cursor:grabbing}.pce.drop-ok{background:var(--ac-s);box-shadow:inset 0 0 0 2px var(--ac)}body.dragging-res .pce[data-room]{background:#0891b20a}.hk-card[draggable=true]{cursor:grab}.hk-card.dragging{opacity:.4}.hk-col.drop-ok{background:var(--ac-s);box-shadow:inset 0 0 0 2px var(--ac)}.hk-empty{color:var(--txm);text-align:center;border:1px dashed var(--bd);border-radius:0;padding:16px 8px;font-size:.74rem}.hk-flag{color:var(--dn);align-items:center;gap:3px;margin-top:3px;font-size:.69rem;font-weight:700;display:flex}.hk-person-click{cursor:pointer;transition:all .15s}.hk-person-click:hover{border-color:var(--ac);background:var(--ac-s)}.pr-id{align-items:center;gap:3px;display:flex}.pr-wo{color:var(--dn);display:inline-flex}.pb-vip{color:var(--vip);flex-shrink:0;margin-right:2px;display:inline-flex}.pb-in{box-shadow:inset 0 0 0 1.5px}.pb-today{animation:2.5s ease-in-out infinite pbPulse}@keyframes pbPulse{0%,to{box-shadow:var(--sh-xs)}50%{box-shadow:0 0 0 2px #0891b259}}.pd.heat-full{color:#b91c1c;background:#fee2e2}.pd.heat-full .dn2{color:#b91c1c}.pd{cursor:pointer}.pd:hover{filter:brightness(.96)}.legend-click{cursor:pointer;border-radius:0;padding:2px 6px;transition:background .15s}.legend-click:hover{background:var(--bg-hover)}.legend-hint{color:var(--txm);align-items:center;gap:5px;margin-left:auto;font-size:.73rem;font-weight:500;display:flex}.lr-today{background:#0891b209}.mix-row{cursor:pointer;border-radius:0;margin:0 -6px 8px;padding:5px 6px;transition:background .15s}.mix-row:hover{background:var(--bg-hover)}.channel-click{cursor:pointer}.channel-click:hover{border-color:var(--ac);box-shadow:var(--sh-md);transform:translateY(-1px)}.room-card{position:relative}.room-sel{opacity:0;transition:opacity .15s;position:absolute;top:9px;right:9px}.room-card:hover .room-sel,.room-sel .sel-box.on{opacity:1}.mini-flag{background:var(--bg-sub);color:var(--tx2);vertical-align:middle;border-radius:0;align-items:center;gap:3px;padding:1px 6px;font-size:.63rem;font-weight:700;display:inline-flex}.mini-flag.ok{background:var(--ok-s);color:var(--ok)}.mini-flag.wn{background:var(--wn-s);color:var(--wn)}.mini-flag.dn{background:var(--dn-s);color:var(--dn)}.rate-cell.editing{background:var(--ac-s);box-shadow:inset 0 0 0 2px var(--ac);padding:0}.rate-input{text-align:center;width:100%;height:100%;color:var(--ac-h);background:0 0;border:none;outline:none;padding:0;font-family:inherit;font-size:.82rem;font-weight:700}.rate-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.rate-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quick-add{border-bottom:1px solid var(--bd-s);background:var(--bg-soft);gap:7px;padding:11px 16px;display:flex}.quick-add .input{flex:1}.lr-head{cursor:default;background:var(--bg-soft);border-bottom:1px solid var(--bd);color:var(--txm);text-transform:uppercase;letter-spacing:.4px;padding-top:8px;padding-bottom:8px;font-size:.68rem;font-weight:700}.lr-head:hover{background:var(--bg-soft)}.lr-head>div{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lr>*{min-width:0}.lr .bg{text-overflow:ellipsis;max-width:100%;overflow:hidden}.lr .tnum{white-space:nowrap}.lr>div>div{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lr>div>div.wrap{white-space:normal}@media (width<=1040px){.lr-head{display:none}}:root{--chat-w:420px}.chat-fab{background:linear-gradient(140deg, var(--ac), #7c3aed);color:#fff;cursor:pointer;z-index:1400;border:none;border-radius:0;justify-content:center;align-items:center;width:54px;height:54px;transition:all .25s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 24px #0891b257}@keyframes badgePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.75;transform:scale(1.18)}}.chat-dock{height:100vh;width:var(--chat-w);background:var(--bg-card);border-left:1px solid var(--bd);z-index:1350;flex-direction:column;transition:transform .32s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-10px 0 40px #0f172a0f}.chat-top{border-bottom:1px solid var(--bd);background:var(--bg-card);flex-shrink:0;align-items:center;gap:10px;padding:13px 14px;display:flex}.chat-avatar{background:linear-gradient(140deg, var(--ac), #7c3aed);color:#fff;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.chat-brand-txt strong{font-size:.9rem;font-weight:700}@keyframes live{0%{box-shadow:0 0 #05966973}70%{box-shadow:0 0 0 5px #05966900}to{box-shadow:0 0 #05966900}}.chat-ib{cursor:pointer;width:29px;height:29px;color:var(--txm);background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.chat-ib:hover{background:var(--bg-hover);color:var(--tx)}.cm{animation:.3s cubic-bezier(.32,.72,0,1) both cmIn}@keyframes cmIn{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.cm-user{background:var(--ac);color:#fff;white-space:pre-wrap;word-break:break-word;border-radius:0;align-self:flex-end;max-width:86%;padding:9px 13px;font-size:.845rem;line-height:1.5;box-shadow:0 2px 8px #0891b233}.cm-bot{border:1px solid var(--bd);max-width:92%;color:var(--tx);word-break:break-word;box-shadow:var(--sh-xs);background:#fff;border-radius:0;align-self:flex-start;padding:10px 13px;font-size:.845rem;line-height:1.58}.cm-caret{background:var(--ac);vertical-align:text-bottom;width:2px;height:.92em;margin-left:2px;animation:.9s steps(2,end) infinite caret;display:inline-block}@keyframes caret{0%,to{opacity:1}50%{opacity:0}}.welcome-ico{background:linear-gradient(140deg, var(--ac-s), #f3e8ff);width:46px;height:46px;color:var(--ac);border-radius:0;justify-content:center;align-items:center;margin:0 auto 12px;animation:3.5s ease-in-out infinite floaty;display:flex}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.welcome h4{margin-bottom:6px;font-size:.98rem;font-weight:800}.chat-typing{border:1px solid var(--bd);background:#fff;border-radius:0;align-self:flex-start;gap:4px;width:fit-content;padding:11px 15px;animation:.25s both cmIn;display:flex}.chat-typing span{background:var(--txm);border-radius:50%;width:6px;height:6px;animation:1.3s infinite tBounce}.chat-typing span:nth-child(2){animation-delay:.16s}.chat-typing span:nth-child(3){animation-delay:.32s}@keyframes tBounce{0%,62%,to{opacity:.35;transform:translateY(0)}31%{opacity:1;transform:translateY(-5px)}}.tool-card{border:1px solid var(--bd);background:#fff;border-radius:0;align-self:stretch;padding:8px 11px;font-size:.78rem;transition:all .3s cubic-bezier(.32,.72,0,1);animation:.25s both cmIn}.tool-card.done{background:var(--bg-soft)}.tool-card.failed{background:var(--dn-s);border-color:#fecdd3}.tool-line{align-items:center;gap:8px;min-width:0;display:flex}.tool-spin{color:var(--ac);flex-shrink:0;animation:1s linear infinite spin;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.tool-ico{color:var(--ok);flex-shrink:0;animation:.34s cubic-bezier(.34,1.56,.64,1) both pop;display:flex}.tool-card.failed .tool-ico{color:var(--dn)}.tool-card.done .tool-ico{color:var(--txm)}@keyframes pop{0%{transform:scale(0)}to{transform:scale(1)}}.tool-name{color:var(--tx2);white-space:nowrap;font-weight:700}.tool-card.running .tool-name{color:var(--ac-h)}.tool-card.failed .tool-name{color:var(--dn)}.tool-tag{background:var(--ok);color:#fff;text-transform:uppercase;letter-spacing:.4px;border-radius:0;flex-shrink:0;padding:1px 6px;font-size:.6rem;font-weight:800}.tool-args{color:var(--txm);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.72rem;overflow:hidden}.tool-trace{border:1px solid var(--bd);color:var(--ac);cursor:pointer;background:#fff;border-radius:0;flex-shrink:0;align-items:center;gap:3px;padding:3px 8px;font-family:inherit;font-size:.69rem;font-weight:700;transition:all .15s;display:inline-flex}.tool-trace:hover{background:var(--ac);color:#fff;border-color:var(--ac)}.cr-card{border:1px solid var(--bd);box-shadow:var(--sh-xs);background:#fff;border-radius:0;overflow:hidden}.cr-card.tone-ok .cr-head{background:var(--ok-s);color:var(--ok)}.cr-card.tone-wn .cr-head{background:var(--wn-s);color:var(--wn)}.cr-card.tone-dn .cr-head{background:var(--dn-s);color:var(--dn)}.cr-chips{flex-wrap:wrap;gap:6px;padding:10px 12px;display:flex}.cr-chip{background:var(--bg-soft);border:1px solid var(--bd);border-radius:0;align-items:center;gap:5px;padding:5px 9px;font-size:.74rem;animation:.3s cubic-bezier(.34,1.56,.64,1) both chipIn;display:inline-flex}@keyframes chipIn{0%{opacity:0;transform:scale(.88)translateY(4px)}to{opacity:1;transform:scale(1)translateY(0)}}.cr-chip em{color:var(--txm);font-size:.68rem;font-style:normal}.cr-chip strong{font-variant-numeric:tabular-nums;font-weight:800}.cr-chip.ok{background:var(--ok-s);color:var(--ok);border-color:#a7f3d0}.cr-chip.wn{background:var(--wn-s);color:var(--wn);border-color:#fde68a}.cr-chip.dn{background:var(--dn-s);color:var(--dn);border-color:#fecdd3}.cr-total{color:var(--ac);font-size:.95rem}.cr-tr{border-bottom:1px solid var(--bd-s);border-radius:0;grid-template-columns:minmax(0,1.6fr) 68px minmax(0,1fr) 80px;align-items:center;gap:7px;padding:6px 5px;font-size:.75rem;display:grid}.cr-clickable{cursor:pointer;transition:background .15s}.cr-empty{text-align:center;color:var(--txm);padding:14px 12px;font-size:.79rem}.cr-btn:hover{background:var(--ac);color:#fff;border-color:var(--ac);transform:translateY(-1px)}.chat-chip{border:1px solid var(--bd);color:var(--tx2);cursor:pointer;background:#fff;border-radius:0;padding:6px 11px;font-family:inherit;font-size:.73rem;font-weight:600;transition:all .18s;animation:.3s both cmIn}.chat-chip:hover{background:var(--ac-s);border-color:var(--ac);color:var(--ac-h);transform:translateY(-1px)}.chat-compose{border-top:1px solid var(--bd);background:#fff;flex-shrink:0;align-items:flex-end;gap:7px;padding:10px 12px;display:flex}.chat-compose textarea{resize:none;border:1px solid var(--bd);border-radius:0;outline:none;flex:1;max-height:130px;padding:9px 12px;font-family:inherit;font-size:.845rem;line-height:1.45;transition:border-color .18s,box-shadow .18s}.chat-send,.chat-stop{cursor:pointer;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:37px;height:37px;transition:all .18s;display:flex}.chat-send{background:var(--ac);color:#fff}.chat-send:hover:not(:disabled){background:var(--ac-h);transform:scale(1.05)}.chat-send:disabled{background:var(--bd);cursor:not-allowed}.chat-stop{background:var(--dn-s);color:var(--dn);display:none}.chat-foot{color:var(--txm);text-align:center;flex-shrink:0;padding:0 14px 9px;font-size:.67rem}.chat-settings-panel{width:100%;max-width:460px;box-shadow:var(--sh-xl);background:#fff;border-radius:0;padding:24px;transition:transform .22s cubic-bezier(.32,.72,0,1);transform:scale(.96)translateY(8px)}@media (width<=900px){:root{--chat-w:100%}body.chat-open .mc{margin-right:0}.chat-dock{width:100%}}:root{--z-veil:1100;--z-panel:1150;--z-chat:1200;--z-fab:1210;--z-modal:1300;--z-selbar:1400;--z-toast:1500;--z-settings:1600;--z-ctx:1700;--gap:12px}.so{z-index:var(--z-veil)}.sp{z-index:var(--z-panel)}.mo,.wo{z-index:var(--z-modal)}.sel-bar{z-index:var(--z-selbar)}.ttc{z-index:var(--z-toast)}.ctx-menu{z-index:var(--z-ctx)}body.chat-open .sp{right:var(--chat-w);width:min(440px, calc(100vw - var(--chat-w) - var(--gap)))}body.chat-open .so,body.chat-open .mo,body.chat-open .wo{right:var(--chat-w)}body.chat-open .ttc{right:calc(var(--chat-w) + 20px)}body.chat-open .sel-bar{transform:translateX(calc(-50% - var(--chat-w) / 2))}@keyframes selInDocked{0%{transform:translate(calc(-50% - var(--chat-w) / 2), 20px);opacity:0}to{transform:translate(calc(-50% - var(--chat-w) / 2), 0);opacity:1}}body.chat-open .sel-bar{animation-name:selInDocked}.sp,.so,.mo,.wo,.ttc,.sel-bar{transition-property:transform,opacity,right,width;transition-duration:.32s;transition-timing-function:cubic-bezier(.32,.72,0,1)}.sp{transition-property:transform,right,width}body.chat-resizing .sp,body.chat-resizing .so,body.chat-resizing .mo,body.chat-resizing .wo,body.chat-resizing .ttc,body.chat-resizing .sel-bar{transition:none}@media (width<=900px){body.chat-open .sp{width:100%;z-index:calc(var(--z-chat) + 5);right:0}body.chat-open .so{z-index:calc(var(--z-chat) + 4);right:0}body.chat-open .mo,body.chat-open .wo{z-index:calc(var(--z-chat) + 6);right:0}body.chat-open .ttc{z-index:calc(var(--z-chat) + 7);right:16px}body.chat-open .sel-bar{animation-name:selIn;transform:translate(-50%)}body.chat-open:after{content:"";z-index:calc(var(--z-chat) - 1);background:#0f172a40;animation:.3s both fadeIn;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.chat-resizer{display:none}}.rate-tabs{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:16px;display:flex}.rate-tab{border:1px solid var(--bd);color:var(--tx2);cursor:pointer;background:#fff;border-radius:0;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:.82rem;font-weight:600;transition:all .18s;display:inline-flex}.rate-tab:hover{border-color:var(--ac);color:var(--ac)}.rate-tab.on{background:var(--tx);color:#fff;border-color:var(--tx)}.rate-help{background:var(--ac-s);color:var(--ac-h);cursor:pointer;border:1px solid #a5f3fc;border-radius:0;align-items:center;gap:6px;margin-left:auto;padding:7px 13px;font-family:inherit;font-size:.78rem;font-weight:600;transition:all .18s;display:inline-flex}.rate-help:hover,.rate-help.on{background:var(--ac);color:#fff;border-color:var(--ac)}.opp-list{padding:6px 0}.opp{border-bottom:1px solid var(--bd-s);cursor:pointer;grid-template-columns:34px 150px minmax(120px,1fr) 168px minmax(150px,1.1fr) 84px;align-items:center;gap:12px;padding:11px 16px;transition:background .15s;animation:.34s cubic-bezier(.32,.72,0,1) both oppIn;display:grid}@keyframes oppIn{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.opp:last-child{border-bottom:none}.opp:hover{background:var(--bg-hover)}.opp-dir{border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.opp-up .opp-dir{background:var(--ok-s);color:var(--ok)}.opp-down .opp-dir{background:var(--wn-s);color:var(--wn)}.opp-when strong{font-size:.85rem;font-weight:700;display:block}.opp-when span{color:var(--txm);font-size:.72rem}.opp-bars{min-width:0}.opp-metric span{color:var(--tx2);margin-bottom:3px;font-size:.72rem;font-weight:600;display:block}.opp-sub{color:var(--txm);margin-top:4px;font-size:.69rem}.opp-price{font-variant-numeric:tabular-nums;align-items:center;gap:6px;display:flex}.opp-from{color:var(--txm);font-size:.8rem;text-decoration:line-through}.opp-to{font-size:.98rem;font-weight:800}.opp-to.up{color:var(--ok)}.opp-to.down{color:var(--wn)}.opp-pct{border-radius:0;padding:2px 6px;font-size:.68rem;font-weight:800}.opp-pct.up{background:var(--ok-s);color:var(--ok)}.opp-pct.down{background:var(--wn-s);color:var(--wn)}.opp-why{min-width:0}.opp-why strong{font-size:.79rem;font-weight:700;display:block}.opp-why span{color:var(--txm);text-overflow:ellipsis;white-space:nowrap;font-size:.71rem;display:block;overflow:hidden}.opp-apply{justify-content:center}@media (width<=1250px){.opp{grid-row-gap:8px;grid-template-columns:34px 1fr auto}.opp-bars,.opp-why{grid-column:2/-1}}.rate-legend{border-bottom:1px solid var(--bd-s);color:var(--tx2);flex-wrap:wrap;align-items:center;gap:16px;padding:11px 16px;font-size:.75rem;display:flex}.rl{align-items:center;gap:6px;font-weight:600;display:flex}.rl-dot{border-radius:0;width:10px;height:10px;display:inline-block}.rl-dot.up{background:var(--ok)}.rl-dot.down{background:var(--wn)}.rl-dot.ok{background:var(--bd)}.rl-dot.manual{background:var(--ac)}.rate-cell{position:relative}.rate-up{background:#05966917}.rate-up:hover{background:#0596692b}.rate-down{background:#d977061a}.rate-down:hover{background:#d977062e}.rate-past{opacity:.42}.rate-fixed .rate-price{color:var(--ac)}.rate-sig{opacity:.75;line-height:0;position:absolute;top:2px;right:3px}.rate-up .rate-sig{color:var(--ok)}.rate-down .rate-sig{color:var(--wn)}.rate-guide{background:linear-gradient(180deg, var(--ac-s), #fff 120px);border-color:#a5f3fc}.guide-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:12px;padding:14px 16px;display:grid}.guide-card{border:1px solid var(--bd);background:#fff;border-radius:0;gap:11px;padding:13px;animation:.34s cubic-bezier(.32,.72,0,1) both oppIn;display:flex}.guide-ico{background:var(--ac-s);width:30px;height:30px;color:var(--ac);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.guide-card strong{margin-bottom:3px;font-size:.83rem;font-weight:700;display:block}.guide-card p{color:var(--tx2);font-size:.77rem;line-height:1.55}.guide-foot{color:var(--ac-h);align-items:flex-start;gap:7px;padding:0 16px 15px;font-size:.76rem;line-height:1.5;display:flex}.rd-head{background:var(--bg-soft);border:1px solid var(--bd);border-radius:0;margin-bottom:14px;padding:14px}.rd-head.ok{background:var(--ok-s);border-color:#a7f3d0}.rd-head.wn{background:var(--wn-s);border-color:#fde68a}.rd-when strong{font-size:1rem;font-weight:800;display:block}.rd-when span{color:var(--txm);font-size:.76rem}.rd-verdict{border-top:1px dashed #0000001a;margin-top:10px;padding-top:10px}.rd-label{text-transform:uppercase;letter-spacing:.4px;color:var(--tx2);font-size:.76rem;font-weight:800}.rd-prices{font-variant-numeric:tabular-nums;align-items:center;gap:8px;margin-top:4px;display:flex}.rd-now{color:var(--txm);font-size:1.02rem;text-decoration:line-through}.rd-new{font-size:1.42rem;font-weight:800}.rd-new.up{color:var(--ok)}.rd-new.down{color:var(--wn)}.rd-pct{background:#ffffffb3;border-radius:0;padding:2px 7px;font-size:.73rem;font-weight:800}.rd-metrics{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:6px;display:grid}.rd-m{background:var(--bg-soft);border:1px solid var(--bd);text-align:center;cursor:help;border-radius:0;padding:9px}.rd-m span{color:var(--txm);text-transform:uppercase;letter-spacing:.3px;font-size:.65rem;font-weight:700;display:block}.rd-m strong{font-variant-numeric:tabular-nums;margin:2px 0;font-size:1.15rem;font-weight:800;display:block}.rd-m strong.good{color:var(--ok)}.rd-m strong.crit{color:var(--dn)}.rd-m em{color:var(--txm);font-size:.64rem;font-style:normal}.rd-reasons{flex-direction:column;gap:7px;display:flex}.rd-reason{border:1px solid var(--bd);background:#fff;border-radius:0;gap:9px;padding:10px;animation:.3s cubic-bezier(.32,.72,0,1) both oppIn;display:flex}.rd-reason.up{border-left:3px solid var(--ok)}.rd-reason.down{border-left:3px solid var(--wn)}.rd-reason.neutral{border-left:3px solid var(--txm);background:var(--bg-soft)}.rd-r-ico{border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.rd-reason.up .rd-r-ico{background:var(--ok-s);color:var(--ok)}.rd-reason.down .rd-r-ico{background:var(--wn-s);color:var(--wn)}.rd-reason.neutral .rd-r-ico{background:var(--bg-sub);color:var(--tx2)}.rd-reason strong{font-size:.81rem;font-weight:700}.rd-reason p{color:var(--tx2);margin-top:3px;font-size:.75rem;line-height:1.5}.rd-weight{vertical-align:middle;border-radius:0;margin-left:5px;padding:1px 5px;font-size:.64rem;font-weight:800}.rd-weight.up{background:var(--ok-s);color:var(--ok)}.rd-weight.down{background:var(--wn-s);color:var(--wn)}.rd-score{background:var(--bg-soft);color:var(--tx2);border-radius:0;margin-top:10px;padding:9px 11px;font-size:.76rem}.rd-score span{color:var(--txm);margin-top:2px;font-size:.71rem;display:block}.rd-quick{grid-template-columns:repeat(6,1fr);gap:5px;margin-bottom:9px;display:grid}.rd-q{border:1px solid var(--bd);cursor:pointer;background:#fff;border-radius:0;padding:8px 0;font-family:inherit;font-size:.76rem;font-weight:700;transition:all .15s}.rd-q.up{color:var(--ok)}.rd-q.down{color:var(--wn)}.rd-q.up:hover{background:var(--ok);color:#fff;border-color:var(--ok)}.rd-q.down:hover{background:var(--wn);color:#fff;border-color:var(--wn)}.rd-manual{gap:7px;display:flex}.rd-manual .input{flex:1}.rd-limits{color:var(--txm);flex-wrap:wrap;align-items:center;gap:6px;margin-top:9px;font-size:.72rem;display:flex}.rd-reset{color:var(--ac);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin-left:auto;font-family:inherit;font-size:.72rem;font-weight:700;display:inline-flex}.rd-reset:hover{text-decoration:underline}.dq{border:1px solid var(--bd);background:var(--bg-soft);border-radius:0;align-items:flex-start;gap:11px;margin-bottom:14px;padding:12px 14px;display:flex}.dq-ok{background:var(--ok-s);border-color:#a7f3d0}.dq-wn{background:var(--wn-s);border-color:#fde68a}.dq-dn{background:var(--dn-s);border-color:#fecdd3}.dq-ico{flex-shrink:0;margin-top:1px}.dq-ok .dq-ico{color:var(--ok)}.dq-wn .dq-ico{color:var(--wn)}.dq-dn .dq-ico{color:var(--dn)}.dq strong{margin-bottom:2px;font-size:.81rem;font-weight:700;display:block}.dq p{color:var(--tx2);font-size:.77rem;line-height:1.5}.signals{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:11px;margin-bottom:16px;display:grid}.signal{border:1px solid var(--bd);box-shadow:var(--sh-xs);background:#fff;border-radius:0;gap:11px;padding:13px;animation:.34s cubic-bezier(.32,.72,0,1) both oppIn;display:flex}.signal-ico{border-radius:0;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.signal-ac .signal-ico{background:var(--ac-s);color:var(--ac)}.signal-ok .signal-ico{background:var(--ok-s);color:var(--ok)}.signal-wn .signal-ico{background:var(--wn-s);color:var(--wn)}.signal-dn .signal-ico{background:var(--dn-s);color:var(--dn)}.signal-body{min-width:0}.signal-body strong{margin-bottom:3px;font-size:.83rem;font-weight:700;display:block}.signal-body p{color:var(--tx2);font-size:.76rem;line-height:1.5}.signal-list{color:var(--txm);margin:7px 0 0;padding-left:15px;font-size:.73rem}.signal-list li{margin-bottom:2px}.fbar{background:var(--bg-sub);border-radius:0;height:7px;position:relative;overflow:hidden}.fbar-band{background:repeating-linear-gradient(45deg,#0891b238,#0891b238 3px,#0000 3px 6px);position:absolute;top:0;bottom:0}.fbar-sold{background:var(--ac);border-radius:0;position:absolute;top:0;bottom:0;left:0}.fbar-proj{background:var(--tx);border-radius:0;width:2px;position:absolute;top:-2px;bottom:-2px}.opp-calc{background:var(--ac-s);color:var(--ac-h);text-transform:uppercase;letter-spacing:.3px;cursor:help;border-radius:0;padding:1px 5px;font-size:.6rem;font-weight:800}.rd-forecast{background:linear-gradient(180deg, var(--ac-s), #fff);border:1px solid #a5f3fc;border-radius:0;margin-bottom:13px;padding:13px}.rd-f-head{color:var(--ac-h);text-transform:uppercase;letter-spacing:.3px;align-items:center;gap:6px;font-size:.73rem;font-weight:800;display:flex}.rd-f-conf{text-transform:none;letter-spacing:0;background:#fff;border-radius:0;margin-left:auto;padding:1px 7px;font-size:.63rem}.conf-alta{color:var(--ok)}.conf-media{color:var(--wn)}.conf-baja{color:var(--dn)}.rd-f-big{font-variant-numeric:tabular-nums;margin:5px 0 1px;font-size:2rem;font-weight:800;line-height:1.1}.rd-f-band{color:var(--tx2);margin-bottom:8px;font-size:.74rem}.rd-f-note{color:var(--txm);margin-top:8px;font-size:.72rem;line-height:1.5}.rd-optimal{background:var(--bg-soft);border:1px solid var(--bd);border-radius:0;margin-top:13px;padding:12px}.rd-o-head{color:var(--tx2);text-transform:uppercase;letter-spacing:.3px;align-items:center;gap:6px;margin-bottom:8px;font-size:.73rem;font-weight:800;display:flex}.rd-o-row{justify-content:space-between;gap:10px;padding:3px 0;font-size:.79rem;display:flex}.rd-o-row span{color:var(--txm)}.rd-o-row strong.pos{color:var(--ok)}.rd-o-row strong.neg{color:var(--dn)}.rd-o-note{color:var(--txm);border-top:1px dashed var(--bd);margin-top:8px;padding-top:8px;font-size:.71rem;line-height:1.5}.dq-why{color:var(--txm);border-top:1px dashed #0000001f;margin-top:7px;padding-top:7px;font-size:.74rem;line-height:1.5}.dq-why strong{color:var(--tx2);font-size:.74rem;display:inline}.gan-cal{padding:14px 16px 6px;overflow-x:auto}.gan-cal-row{grid-template-columns:190px 1fr;align-items:center;gap:10px;padding:6px 0;animation:.25s both oppIn;display:grid}.gan-cal-head{border-bottom:1px solid var(--bd-s);margin-bottom:4px;padding-bottom:8px}.gan-cal-label{color:var(--tx2);white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;font-weight:600;overflow:hidden}.gan-cal-track{background:var(--bg-soft);border-radius:0;height:22px;position:relative}.gan-cal-m{text-align:center;color:var(--txm);text-transform:uppercase;letter-spacing:.3px;flex:1;font-size:.66rem;display:inline-block}.gan-cal-head .gan-cal-track{display:none}.gan-cal-head{grid-template-columns:190px repeat(12,1fr);display:grid}.gan-cal-row:not(.gan-cal-head){grid-template-columns:190px 1fr;display:grid}.gan-cal-m.now{color:var(--ac);font-weight:800}.gan-cal-bar{cursor:pointer;border-radius:0;justify-content:flex-end;align-items:center;padding:0 6px;transition:filter .15s;display:flex;position:absolute;top:1px;bottom:1px;overflow:hidden}.gan-cal-bar:hover{filter:brightness(.96)}.gan-cal-bar .bg{white-space:nowrap;transform:scale(.82)}.gan-cal-alta{background:var(--ok-s);border:1px solid #a7f3d0}.gan-cal-media{background:var(--wn-s);border:1px solid #fde68a}.gan-cal-baja{background:var(--dn-s);border:1px solid #fecdd3}.gan-legend{color:var(--txm);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:16px;padding:11px 16px;font-size:.74rem;display:flex}.gan-legend .rl-dot.ok{background:var(--ok)}.gan-legend .rl-dot.wn{background:var(--wn)}.gan-legend .rl-dot.dn{background:var(--dn)}.gan-list{padding:6px 0}.gan-card{border-bottom:1px solid var(--bd-s);animation:.25s both oppIn}.gan-card:last-child{border-bottom:none}.gan-card-h{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;transition:background .15s;display:flex}.gan-card-h:hover{background:var(--bg-soft)}.gan-ficha{padding:4px 16px 16px;animation:.2s both oppIn}.gan-prep{background:var(--ac-s);color:var(--ac-h);border-radius:0;margin:4px 0 12px;padding:10px 12px;font-size:.79rem;line-height:1.5}.gan-prep strong{align-items:center;gap:5px;margin-right:4px;display:inline-flex}.gan-ficha-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px 16px;margin-bottom:12px;display:grid}.gan-ficha-grid>div{flex-direction:column;gap:2px;display:flex}.gan-fk{color:var(--txm);text-transform:uppercase;letter-spacing:.3px;font-size:.66rem;font-weight:800}.gan-ficha-grid>div span:last-child{color:var(--tx2);font-size:.82rem}.gan-docs{margin-bottom:10px}.gan-doc-list{flex-direction:column;gap:6px;margin-top:6px;display:flex}.gan-doc-item{color:var(--tx2);cursor:pointer;align-items:center;gap:8px;font-size:.79rem;display:flex}.gan-doc-item input{cursor:pointer;flex-shrink:0;width:15px;height:15px}.gan-notas{color:var(--txm);background:var(--bg-soft);border-radius:0;margin-bottom:12px;padding:8px 10px;font-size:.74rem;line-height:1.5}.gan-ficha-actions{flex-wrap:wrap;gap:6px;display:flex}@media (width<=900px){.gan-cal-head{display:none}.gan-cal-row{grid-template-columns:1fr}.gan-cal-track{height:26px;margin-top:4px}}.st .kbd{letter-spacing:.04em;color:var(--txm);background:var(--bg);border:1px solid var(--bd);border-radius:0;margin-left:auto;padding:2px 6px;font-size:.68rem;font-weight:700}.cs-wrap{margin-top:16px}.cs-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.cs-kpis{border-bottom:1px solid var(--bd);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;padding:14px 16px;display:grid}.cs-kpi{background:var(--bg,#f8fafc);border:1px solid var(--bd);border-radius:0;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.cs-kpi-l{color:var(--txm);text-transform:uppercase;letter-spacing:.03em;font-size:11px}.cs-kpi-v{color:var(--tx);font-size:20px;font-weight:700}.cs-kpi-v.up{color:#059669}.cs-kpi-v.dn{color:#dc2626}.cs-kpi-h{color:var(--txm);font-size:11px}.cs-wrap{overflow-x:auto}.cs-source-note{background:var(--wn-bg);border-bottom:1px solid var(--bd);color:var(--txm);align-items:flex-start;gap:8px;padding:10px 16px;font-size:12px;display:flex}.cs-source-note svg{color:var(--wn);flex:none}.cs-hotels{border-bottom:1px solid var(--bd);grid-template-columns:repeat(5,minmax(180px,1fr));gap:8px;min-width:980px;padding:12px 16px;display:grid}.cs-hotel{border:1px solid var(--bd);background:var(--pn);border-radius:0;flex-direction:column;gap:4px;padding:9px 10px;display:flex}.cs-hotel-main{justify-content:space-between;align-items:flex-start;gap:6px;display:flex}.cs-hotel-name{color:var(--tx);font-size:12px;font-weight:700}.cs-stars{color:var(--wn);white-space:nowrap;font-size:10px}.cs-hotel-zone,.cs-checked{color:var(--txm);font-size:10px}.cs-hotel-links{flex-wrap:wrap;gap:9px;margin-top:3px;display:flex}.cs-hotel-links a{color:var(--ac);align-items:center;gap:3px;font-size:10px;font-weight:600;text-decoration:none;display:inline-flex}.cs-hotel-links a:hover{text-decoration:underline}.cs-checked{border-top:1px solid var(--bd);margin-top:auto;padding-top:3px}.lr-cs{grid-template-columns:92px 74px repeat(5,82px) 74px 52px 56px 112px minmax(130px,1fr) 74px;align-items:center;min-width:1090px}.lr-cs>div{overflow:hidden}.cs-col-hotel{white-space:normal;font-size:10px;line-height:1.15;display:block}.cs-col-stars{color:var(--txm);margin-top:2px;font-size:9px;display:block}.cs-price-cell{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.cs-price-cell>span{color:var(--txm);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:9px;overflow:hidden}.cs-price-link{border-bottom:1px dashed;align-items:center;gap:2px;font-weight:700;text-decoration:none;display:inline-flex}.cs-price-link:hover{border-bottom-style:solid}.cs-below{color:#dc2626}.cs-above,.cs-up{color:#059669}.cs-dn{color:#dc2626}.cs-delta{margin-left:6px;font-size:11px;font-weight:600}.cs-delta.up{color:#059669}.cs-delta.dn{color:#dc2626}.cs-reason{color:var(--txm);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.3;display:-webkit-box;overflow:hidden}.cs-conf{opacity:.7;margin-left:4px;font-size:10px}.cs-ev{color:var(--ac);white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:600;display:block;overflow:hidden}.cs-event{background:#0891b20d}.exp-view .pn,.exp-view .btn,.exp-view .input,.exp-view .bg{box-shadow:none;border-radius:0}.exp-view .btn{border:1px solid #0000}.exp-view .btn-g{border-color:var(--bd)}.exp-view .btn-g:hover{background:var(--bg-hover)}.exp-kbar{align-items:baseline;gap:0;display:flex}.exp-k{border-left:1px solid var(--bd-s);align-items:baseline;gap:7px;padding:0 16px;display:flex}.exp-k:last-child{padding-right:0}.exp-k-l{text-transform:uppercase;letter-spacing:.06em;color:var(--txm);font-size:.64rem;font-weight:700}.exp-k-v{font-size:.92rem;font-weight:700;line-height:1.2}.auth-shell{color:#0f172a;background:#fff;grid-template-columns:minmax(0,1.38fr) minmax(420px,.62fr);width:100%;min-height:100vh;font-family:Inter,system-ui,sans-serif;display:grid}.auth-scene{color:#fff;background:#0c1222;min-height:100vh;position:relative;overflow:hidden}.auth-scene>img,.auth-welcome>img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.auth-scene-shade{background:linear-gradient(#050d1c47 0%,#050d1c1f 38%,#050d1cd1 100%);position:absolute;inset:0}.auth-scene-top{letter-spacing:.16em;align-items:center;gap:13px;font-size:.72rem;font-weight:700;display:flex;position:absolute;top:42px;left:48px}.auth-monogram{letter-spacing:.04em;border:1px solid #ffffffa6;place-items:center;width:37px;height:37px;font-size:.72rem;display:grid}.auth-scene-copy{max-width:680px;position:absolute;bottom:54px;left:48px;right:48px}.auth-scene-copy p{color:#80d7e8;letter-spacing:.18em;margin:0 0 18px;font-size:.68rem;font-weight:700}.auth-scene-copy h1{color:#fff;letter-spacing:0;margin:0;font-family:Georgia,serif;font-size:clamp(2.15rem,4vw,4rem);font-weight:400;line-height:1.08}.auth-scene-copy>span{color:#ffffffc2;letter-spacing:.09em;margin-top:22px;font-size:.76rem;display:block}.auth-access{background:#fff;align-items:center;min-height:100vh;display:flex}.auth-access-inner{width:min(100%,470px);margin:0 auto;padding:40px 54px}.auth-intro{margin-bottom:34px}.auth-intro p{color:#0891b2;letter-spacing:.16em;margin:0 0 11px;font-size:.66rem;font-weight:800}.auth-intro h2{color:#0c1222;letter-spacing:0;margin:0 0 9px;font-family:Georgia,serif;font-size:2.05rem;font-weight:400}.auth-intro>span{color:#64748b;font-size:.82rem}.auth-f{margin-bottom:17px;display:block}.auth-f>span{color:#475569;letter-spacing:.1em;margin-bottom:7px;font-size:.63rem;font-weight:800;display:block}.auth-control{color:#64748b;border:1px solid #cbd5e1;align-items:center;gap:11px;height:48px;padding:0 13px;transition:border-color .18s,box-shadow .18s;display:flex}.auth-control:focus-within{color:#0891b2;border-color:#0891b2;box-shadow:0 0 0 3px #0891b21a}.auth-control input{color:#0f172a;background:0 0;border:0;outline:0;flex:1;min-width:0;font:500 .83rem Inter,sans-serif}.auth-control input::placeholder{color:#94a3b8;font-weight:400}.auth-company{color:#64748b;background:#f8fafc}.auth-company input{color:#334155;cursor:default}.auth-eye{color:#64748b;cursor:pointer;background:0 0;border:0;place-items:center;padding:4px;display:grid}.auth-msg{border-left:3px solid;align-items:center;gap:8px;margin:-2px 0 15px;padding:10px 11px;font-size:.74rem;display:flex}.auth-msg.err{color:#991b1b;background:#fef2f2;border-color:#dc2626}.auth-submit{color:#fff;background:#0c1222;border:1px solid #0c1222;justify-content:center;align-items:center;gap:10px;width:100%;height:48px;font-size:.76rem;font-weight:700;display:flex}.auth-submit:hover:not(:disabled){background:#15213a}.auth-submit:disabled{opacity:.72;cursor:wait}.auth-help{color:#64748b;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;align-items:flex-start;gap:11px;margin-top:29px;padding:17px 0;display:flex}.auth-help svg{color:#0891b2;margin-top:1px}.auth-help p{flex-direction:column;gap:3px;margin:0;font-size:.7rem;line-height:1.4;display:flex}.auth-help strong{color:#334155;font-size:.72rem}.auth-foot{color:#94a3b8;letter-spacing:.04em;justify-content:space-between;gap:12px;margin-top:20px;font-size:.58rem;display:flex}.auth-welcome{color:#fff;background:#0c1222;place-items:center;min-height:100dvh;font-family:Inter,sans-serif;animation:.6s both auth-w-in;display:grid;position:fixed;inset:0;overflow:hidden}.auth-welcome>img{object-fit:cover;object-position:50% 48%;transform-origin:50% 48%;will-change:transform;width:100%;height:100%;animation:4.2s cubic-bezier(.22,.61,.36,1) forwards auth-w-ken;transform:scale(1.045)}.auth-welcome-shade{background:radial-gradient(120% 90% at 50% 45%,#050d1c85 0%,#050d1cdb 70%,#050d1c 100%);animation:.9s both auth-w-in;position:absolute;inset:0}.auth-welcome-content{z-index:1;text-align:center;max-width:680px;padding:30px;position:relative}.auth-welcome-mark{border:1px solid #ffffff9e;place-items:center;width:58px;height:58px;margin:0 auto 24px;font-size:.86rem;font-weight:800;animation:.9s cubic-bezier(.22,.61,.36,1) both auth-w-mark;display:grid;position:relative}.auth-welcome-mark:after{content:"";border:1px solid #80d7e88c;width:58px;height:58px;animation:2.8s ease-out infinite auth-w-halo;position:absolute}.auth-welcome-content p{color:#80d7e8;letter-spacing:.18em;margin:0 0 16px;font-size:.68rem;font-weight:700;animation:.8s cubic-bezier(.22,.61,.36,1) .12s both auth-w-up}.auth-welcome-content h1{letter-spacing:0;margin:0;font-family:Georgia,serif;font-size:clamp(2.4rem,6vw,4.8rem);font-weight:400;animation:1s cubic-bezier(.22,.61,.36,1) .22s both auth-w-title}.auth-welcome-rule{transform-origin:50%;background:#80d7e8;width:48px;height:1px;margin:24px auto;animation:.8s cubic-bezier(.22,.61,.36,1) .5s both auth-w-rule}.auth-welcome-content>span{color:#ffffffb8;letter-spacing:.06em;font-size:.76rem;animation:.8s cubic-bezier(.22,.61,.36,1) .62s both auth-w-up;display:block}.auth-welcome-bar{background:#ffffff29;width:190px;height:2px;margin:30px auto 0;animation:.6s .76s both auth-w-up;position:relative;overflow:hidden}.auth-welcome-bar i{transform-origin:0;background:linear-gradient(90deg,#80d7e8,#fff);width:100%;animation:1.7s cubic-bezier(.4,0,.2,1) .8s forwards auth-w-load;position:absolute;inset:0 auto 0 0;transform:scaleX(0)}.auth-spin{animation:.9s linear infinite auth-spin}@keyframes auth-spin{to{transform:rotate(360deg)}}@keyframes auth-w-in{0%{opacity:0}to{opacity:1}}@keyframes auth-w-ken{to{transform:scale(1)}}@keyframes auth-w-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes auth-w-title{0%{opacity:0;filter:blur(6px);transform:translateY(22px)scale(.985)}to{opacity:1;filter:blur();transform:none}}@keyframes auth-w-mark{0%{opacity:0;transform:translateY(10px)scale(.86)}to{opacity:1;transform:none}}@keyframes auth-w-halo{0%{opacity:.55;transform:scale(1)}70%,to{opacity:0;transform:scale(1.7)}}@keyframes auth-w-rule{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes auth-w-load{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.app-loading-screen{background:var(--sb);color:var(--sw);place-items:center;display:grid;position:fixed;inset:0}.app-loading-mark{border:1px solid color-mix(in srgb, var(--sw) 60%, transparent);place-items:center;width:44px;height:44px;font-size:.72rem;font-weight:800;animation:.45s both auth-w-mark;display:grid}@media (prefers-reduced-motion:reduce){.auth-spin,.auth-welcome,.auth-welcome>img,.auth-welcome-shade,.auth-welcome-mark,.auth-welcome-mark:after,.auth-welcome-content p,.auth-welcome-content h1,.auth-welcome-rule,.auth-welcome-content>span,.auth-welcome-bar,.auth-welcome-bar i{opacity:1;filter:none;animation:none;transform:none}}@media (width<=900px){.auth-shell{grid-template-columns:1fr}.auth-scene{min-height:34vh}.auth-scene-top{top:24px;left:24px}.auth-scene-copy{bottom:26px;left:24px;right:24px}.auth-scene-copy h1{font-size:2rem}.auth-scene-copy>span{display:none}.auth-access{align-items:flex-start;min-height:66vh}.auth-access-inner{width:100%;padding:30px 24px}}@media (width<=520px){.auth-scene{min-height:29vh}.auth-scene-copy p{margin-bottom:10px}.auth-scene-copy h1{font-size:1.65rem}.auth-access{min-height:71vh}.auth-access-inner{padding:24px 20px 28px}.auth-intro{margin-bottom:26px}.auth-intro h2{font-size:1.75rem}}.um{position:relative}.um-pop{z-index:60;background:#fff;border:1px solid #e2e8f0;width:220px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 8px 24px #0f172a1f}.um-head{border-bottom:1px solid #f1f5f9;flex-direction:column;gap:2px;padding:12px;display:flex}.um-head strong{font-size:.84rem}.um-head span{color:#64748b;font-size:.72rem}.um-role{text-transform:capitalize;font-weight:600;color:#0891b2!important}.um-item{color:#0f172a;cursor:pointer;background:#fff;border:0;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:.8rem;display:flex}.um-item:hover{background:#f8fafc}:root{--chat-w:420px;--chat-grad:linear-gradient(135deg,#0891b2,#7c3aed);--chat-grad-soft:linear-gradient(135deg,#0891b217,#7c3aed17);--chat-glow:0 0 0 3px #0891b224;--chat-brand-surface:var(--ac);--chat-brand-foreground:#fff;--chat-ease:cubic-bezier(.32,.72,0,1);--chat-ease-pop:cubic-bezier(.34,1.56,.64,1)}body.chat-open .mc{margin-right:var(--chat-w);transition:margin-right .32s var(--chat-ease)}.mc{transition:margin-right .32s var(--chat-ease)}body.chat-resizing *{-webkit-user-select:none!important;user-select:none!important;cursor:col-resize!important}body.chat-resizing .mc{transition:none}.chat-fab{background:var(--chat-brand-surface);width:58px;height:58px;color:var(--chat-brand-foreground);cursor:pointer;z-index:var(--z-fab);transition:all .25s var(--chat-ease);border:1px solid #ffffff57;border-radius:0;justify-content:center;align-items:center;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 10px 26px #0891b259,0 4px 12px #7c3aed47}.chat-fab:hover{transform:translateY(-2px)scale(1.05);box-shadow:0 14px 34px #0891b273,0 6px 16px #7c3aed59}.chat-fab:active{transform:scale(.95)}.chat-fab-mark{width:36px;height:36px;color:var(--chat-brand-foreground);border:1px solid #ffffffb8;place-items:center;font-family:Georgia,serif;font-size:23px;font-weight:700;line-height:1;display:grid}.chat-fab-mark:after{content:"";background:var(--chat-brand-surface);border-bottom:1px solid #ffffffb8;border-right:1px solid #ffffffb8;width:7px;height:7px;position:absolute;bottom:9px;right:10px;transform:rotate(45deg)}.chat-avatar span,.welcome-ico span{font-family:Georgia,serif;font-size:21px;font-weight:700;line-height:1}body.chat-open .chat-fab{opacity:0;pointer-events:none;transform:translateY(14px)scale(.9)}.cf-badge{background:var(--wn);border:2.5px solid #fff;border-radius:50%;width:13px;height:13px;animation:2s ease-in-out infinite badgePulse;position:absolute;top:-3px;right:-3px}.chat-dock{height:100vh;width:var(--chat-w);-webkit-backdrop-filter:blur(16px);z-index:var(--z-chat);transition:transform .32s var(--chat-ease);background:linear-gradient(#f8fafce6,#fff 240px);border-left:1px solid #0f172a14;flex-direction:column;display:flex;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-14px 0 50px #0f172a1a}.chat-dock.on{transform:translate(0)}.chat-resizer:hover{background:linear-gradient(90deg,#0000,#0891b259)}.chat-top{background:var(--chat-grad-soft);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #0f172a0f;flex-shrink:0;align-items:center;gap:10px;padding:14px 16px;display:flex;position:relative}.chat-top:after{content:"";background:linear-gradient(90deg,#0000,#0891b259,#7c3aed59,#0000);height:1px;position:absolute;bottom:-1px;left:14px;right:14px}.chat-brand{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.chat-avatar{background:var(--chat-brand-surface);width:36px;height:36px;color:var(--chat-brand-foreground);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;animation:10s linear infinite chatHue;display:flex;position:relative;box-shadow:0 4px 14px #7c3aed52}@keyframes chatHue{0%,to{filter:hue-rotate()}50%{filter:hue-rotate(24deg)}}.chat-avatar:after{content:"";background:var(--ok);border:2.5px solid #fff;border-radius:50%;width:11px;height:11px;animation:2.2s infinite live;position:absolute;bottom:-2px;right:-2px;box-shadow:0 0 #05966980}.chat-brand-txt{flex-direction:column;min-width:0;display:flex}.chat-brand-txt strong{letter-spacing:0;color:var(--sd);font-size:.92rem;font-weight:800}.chat-brand-txt span{color:var(--txm);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;font-size:.68rem;display:flex;overflow:hidden}.dot-live{background:var(--ok);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2.2s infinite live;box-shadow:0 0 #05966980}.dot-off{background:var(--wn);border-radius:50%;flex-shrink:0;width:6px;height:6px}.chat-top-actions{gap:2px;display:flex}.chat-ib{cursor:pointer;width:30px;height:30px;color:var(--txm);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fff9;border:none;border-radius:0;justify-content:center;align-items:center;transition:all .18s;display:flex}.chat-ib:hover{color:var(--ac);box-shadow:var(--chat-glow);background:#fff}.chat-scroll{background:linear-gradient(180deg,#f8fafc99,var(--bg-card) 200px);scroll-behavior:smooth;flex-direction:column;flex:1;gap:12px;padding:18px 14px 6px;display:flex;overflow-y:auto}.chat-scroll::-webkit-scrollbar{width:5px}.chat-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:0}.chat-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}.cm{animation:cmIn .32s var(--chat-ease) both;animation-delay:calc(var(--i,0)*40ms);position:relative}.cm-user{flex-direction:column;align-self:flex-end;align-items:flex-end;gap:3px;max-width:86%;display:flex}.cm-user .cm-user-txt{color:#fff;white-space:pre-wrap;word-break:break-word;background:linear-gradient(135deg,#0891b2,#0e7490);border-radius:0;padding:10px 14px;font-size:.845rem;line-height:1.5;box-shadow:0 3px 12px #0891b247}.cm-bot{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"av body""av time";align-self:flex-start;align-items:end;column-gap:9px;max-width:94%;display:grid}.cm-bot:before{content:"";background:var(--chat-grad);border-radius:0;flex-shrink:0;grid-area:av;width:28px;height:28px;animation:10s linear infinite chatHue;box-shadow:0 2px 10px #7c3aed47}.cm-bot .cm-body{color:var(--tx);word-break:break-word;grid-area:body;min-width:0;padding:3px 1px;font-size:.845rem;line-height:1.58}.cm-bot .cm-time{grid-area:time;justify-self:start}.cm-bot code{background:var(--bg-sub);border-radius:0;padding:1px 5px;font-family:ui-monospace,monospace;font-size:.79rem}.cm-li{margin:2px 0;padding-left:4px;display:block}.cm-time{color:var(--txm);opacity:.85;padding:0 4px;font-size:.64rem}.cm-user .cm-time{align-self:flex-end}.cm-caret{vertical-align:text-bottom;background:linear-gradient(#0891b2,#7c3aed);border-radius:0;width:2px;height:.92em;margin-left:2px;animation:.9s steps(2,end) infinite caret;display:inline-block}.cm-note{max-width:100%;color:var(--txm);text-align:center;justify-content:center;align-self:center;align-items:center;gap:6px;padding:5px 10px;font-size:.75rem;display:flex}.cm-note.tone-dn{background:var(--dn-s);color:var(--dn);border-radius:0;font-weight:600}.cm-note code{background:var(--bg-sub);border-radius:0;padding:1px 5px}.cm-card{align-self:stretch;max-width:100%}.cm-welcome{align-self:stretch}.welcome{text-align:center;padding:26px 16px 18px}.welcome-ico{background:var(--sd);color:#fff;border-radius:0;justify-content:center;align-items:center;width:54px;height:54px;margin:0 auto 14px;animation:3.5s ease-in-out infinite floaty;display:flex;box-shadow:0 8px 24px #7c3aed59}.welcome-ico svg{width:26px;height:26px}.welcome h4{letter-spacing:-.3px;margin-bottom:6px;font-size:1.02rem;font-weight:800}.welcome p{color:var(--txm);max-width:310px;margin:0 auto 16px;font-size:.8rem;line-height:1.6}.welcome-grid{grid-template-columns:repeat(3,1fr);gap:7px;max-width:340px;margin:0 auto;display:grid}.welcome-grid span{color:var(--tx2);background:var(--bg-soft);border:1px solid var(--bd);cursor:default;border-radius:0;justify-content:center;align-items:center;gap:6px;padding:8px 4px;font-size:.72rem;font-weight:700;transition:all .18s;display:flex}.welcome-grid span:hover{background:var(--ac-s);border-color:var(--ac);color:var(--ac-h);transform:translateY(-1px)}.welcome-grid svg{width:14px;height:14px;color:var(--ac)}.chat-typing{background:#fff;border:1px solid #0f172a12;border-radius:0;align-self:flex-start;gap:5px;width:fit-content;padding:13px 16px;animation:.25s both cmIn;display:flex;box-shadow:0 1px 3px #0f172a0d}.chat-typing span{border-radius:50%;width:7px;height:7px;animation:1.3s infinite tBounce}.chat-typing span:first-child{background:#0891b2}.chat-typing span:nth-child(2){background:#5b5bd6;animation-delay:.16s}.chat-typing span:nth-child(3){background:#7c3aed;animation-delay:.32s}.tool-card{border:1px solid var(--bd);transition:all .3s var(--chat-ease);background:#fff;border-radius:0;align-self:stretch;padding:9px 12px;font-size:.78rem;animation:.28s both cmIn;position:relative}.tool-card.running{background:linear-gradient(135deg,#0891b20d,#7c3aed0d);border-color:#0891b24d}.tool-args{border-top:1px dashed #0f172a1f;margin-top:7px;padding-top:6px}.tool-args-toggle{cursor:pointer;color:var(--txm);text-align:left;background:0 0;border:none;align-items:center;gap:6px;width:100%;padding:0;font-family:inherit;font-size:.72rem;transition:color .15s;display:inline-flex}.tool-args-toggle:before{content:"▸";transition:transform .2s var(--chat-ease);font-size:.6rem}.tool-args-toggle.open:before{transform:rotate(90deg)}.tool-args-toggle:hover{color:var(--ac)}.tool-args-body{margin-top:6px;display:none}.tool-args.open .tool-args-body{animation:cmIn .2s var(--chat-ease) both;display:block}.tool-arg{justify-content:space-between;gap:10px;padding:3px 2px;font-size:.72rem;display:flex}.tool-arg span{color:var(--txm)}.tool-arg strong{text-align:right;text-overflow:ellipsis;font-weight:600;overflow:hidden}.cr-card{border:1px solid var(--bd);animation:cmIn .32s var(--chat-ease) both;animation-delay:calc(var(--i,0)*40ms);background:#fff;border-radius:0;overflow:hidden;box-shadow:0 1px 3px #0f172a0a,0 8px 24px #0f172a0d}.cr-card.tone-ok{border-color:#a7f3d0}.cr-card.tone-wn{border-color:#fde68a}.cr-card.tone-dn{border-color:#fecdd3}.cr-head{background:var(--bg-soft);border-bottom:1px solid var(--bd-s);color:var(--tx2);text-transform:uppercase;letter-spacing:.4px;align-items:center;gap:7px;padding:9px 13px;font-size:.74rem;font-weight:800;display:flex}.cr-card.tone-ok .cr-head{color:var(--ok);background:linear-gradient(135deg,#0596691f,#05966908)}.cr-card.tone-wn .cr-head{color:var(--wn);background:linear-gradient(135deg,#d977061f,#d9770608)}.cr-card.tone-dn .cr-head{color:var(--dn);background:linear-gradient(135deg,#e11d481f,#e11d4808)}.cr-chips{grid-template-columns:repeat(3,1fr);gap:7px;padding:11px 12px;display:grid}.cr-chip{background:var(--bg-soft);border:1px solid var(--bd);animation:chipIn .34s var(--chat-ease-pop) both;animation-delay:calc(var(--ci,0)*45ms);border-radius:0;align-items:center;gap:6px;min-width:0;padding:7px 9px;font-size:.74rem;transition:all .18s;display:flex}.cr-chip:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 4px 12px #0f172a14}.cr-chip em{color:var(--txm);text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;font-style:normal;overflow:hidden}.cr-chip strong{font-variant-numeric:tabular-nums;margin-left:auto;font-size:.8rem;font-weight:800}.cr-chip svg{width:14px;height:14px;color:var(--tx2);flex-shrink:0}.cr-chip.ok{background:var(--ok-s);border-color:#a7f3d0}.cr-chip.ok strong,.cr-chip.ok svg{color:var(--ok)}.cr-chip.wn{background:var(--wn-s);border-color:#fde68a}.cr-chip.wn strong,.cr-chip.wn svg{color:var(--wn)}.cr-chip.dn{background:var(--dn-s);border-color:#fecdd3}.cr-chip.dn strong,.cr-chip.dn svg{color:var(--dn)}.cr-kv{border-bottom:1px dashed var(--bd-s);justify-content:space-between;gap:10px;padding:6px 13px;font-size:.79rem;display:flex}.cr-kv:last-child{border-bottom:none}.cr-kv span{color:var(--txm)}.cr-kv strong{text-align:right}.cr-total{color:var(--ac);font-size:.95rem;font-weight:800}.cr-sub{color:var(--txm);text-transform:uppercase;letter-spacing:.5px;padding:9px 13px 3px;font-size:.67rem;font-weight:800}.cr-table{padding:3px 9px 9px}.cr-tr{border-bottom:1px solid var(--bd-s);white-space:normal;text-align:left;width:100%;height:auto;box-shadow:none;border-radius:0;grid-template-columns:minmax(0,1.45fr) minmax(62px,.7fr) minmax(70px,.8fr) 18px;justify-content:stretch;align-items:center;gap:7px;padding:8px 6px;font-size:.75rem;transition:background .15s;display:grid}.cr-tr:last-child{border-bottom:none}.cr-tr>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cr-th{color:var(--txm);text-transform:uppercase;letter-spacing:.4px;border-bottom:1px solid var(--bd);font-size:.64rem;font-weight:800}.cr-clickable{cursor:pointer}.cr-clickable:hover{background:var(--ac-s)}.cr-clickable:focus-visible{outline:2px solid var(--ac);outline-offset:-2px}.cr-tr strong{font-weight:700;display:block}.cr-tr em{color:var(--txm);font-size:.66rem;font-style:normal;display:block}.cr-badge{background:var(--bg-sub);color:var(--tx2);border-radius:0;padding:1px 7px;font-size:.66rem;font-weight:700;display:inline-block}.cr-badge-dn{background:var(--dn-s);color:var(--dn)}.cr-ok{color:var(--ok);font-weight:700}.cr-warn{color:var(--wn);font-weight:700}.cr-empty{text-align:center;color:var(--txm);flex-direction:column;align-items:center;gap:6px;padding:16px 12px;font-size:.79rem;display:flex}.cr-empty svg{opacity:.25;width:26px;height:26px}.cr-error{padding:10px 13px;font-size:.79rem;line-height:1.5}.cr-note{background:var(--bg-soft);color:var(--tx2);border-radius:0;align-items:flex-start;gap:6px;margin:8px 12px;padding:8px 11px;font-size:.74rem;line-height:1.45;display:flex}.cr-note.tone-dn{background:var(--dn-s);color:var(--dn)}.cr-ok-box{background:var(--ok-s);color:var(--ok);text-align:center;border-radius:0;margin:8px 12px;padding:9px;font-size:.76rem;font-weight:600}.cr-alerts{flex-direction:column;gap:5px;padding:0 12px 11px;display:flex}.cr-alert{color:var(--wn);background:var(--wn-s);border-radius:0;align-items:center;gap:6px;padding:6px 10px;font-size:.74rem;display:flex}.cr-btn{border:1px solid var(--bd);cursor:pointer;width:calc(100% - 24px);color:var(--ac);background:#fff;border-radius:0;justify-content:center;align-items:center;gap:6px;margin:9px 12px 12px;padding:9px;font-family:inherit;font-size:.77rem;font-weight:700;transition:all .18s;display:flex}.cr-btn:hover{background:var(--chat-grad);color:#fff;border-color:#0000;transform:translateY(-1px);box-shadow:0 6px 16px #7c3aed4d}.cr-metrics{border-bottom:1px solid var(--bd-s);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.cr-metric{border-right:1px solid var(--bd-s);border-bottom:1px solid var(--bd-s);flex-direction:column;gap:2px;min-width:0;padding:9px 12px;display:flex}.cr-metric:nth-child(2n){border-right:none}.cr-metric span{color:var(--txm);text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;overflow:hidden}.cr-metric strong{color:var(--tx);font-variant-numeric:tabular-nums;text-overflow:ellipsis;font-size:.82rem;overflow:hidden}.cr-section+.cr-section{border-top:1px solid var(--bd-s)}.cr-bars{flex-direction:column;gap:8px;padding:8px 13px 12px;display:flex}.cr-bar-row{grid-template-columns:86px 1fr 74px;align-items:center;gap:10px;font-size:.74rem;display:grid}.cr-bar-row em{color:var(--tx2);text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-weight:700;overflow:hidden}.cr-bar-track{background:var(--bg-sub);border-radius:0;height:7px;overflow:hidden}.cr-bar-fill{background:var(--chat-grad);width:0;height:100%;animation:barGrow .7s var(--chat-ease) both;border-radius:0}@keyframes barGrow{0%{width:0}}.cr-bar-row strong{text-align:right;font-variant-numeric:tabular-nums}.chat-suggest{flex-wrap:wrap;flex-shrink:0;gap:6px;padding:0 14px 9px;display:flex}.chat-chip{border:1px solid var(--bd);color:var(--tx2);cursor:pointer;animation:.3s both cmIn;animation-delay:calc(var(--i,0)*35ms);background:#fff;border-radius:0;padding:6px 12px;font-family:inherit;font-size:.73rem;font-weight:600;transition:all .18s;box-shadow:0 1px 2px #0f172a0a}.chat-chip:hover{background:var(--ac-s);border-color:var(--ac);color:var(--ac-h);transform:translateY(-1px);box-shadow:0 4px 10px #0891b226}.chat-compose{border-top:1px solid var(--bd);background:linear-gradient(#f8fafc80,#fff);flex-shrink:0;padding:11px 12px 10px}.chat-compose>form>div{border-color:var(--bd);box-shadow:none;background:#fff;border-radius:0}.chat-compose>form>div:focus-within{border-color:var(--ac);box-shadow:var(--chat-glow)}.chat-compose textarea{min-height:52px;max-height:130px;font-family:inherit;font-size:.845rem;line-height:1.45}.chat-compose button[type=submit]{background:var(--ac);color:var(--primary-foreground);flex:none;width:32px;height:32px;margin:2px}.chat-conversation-content{gap:12px;padding:18px 14px 8px}.chat-scroll-button{z-index:3;border-color:var(--bd);color:var(--tx);background:#fff;position:absolute;bottom:12px;left:auto;right:16px;transform:none}.chat-thinking{color:var(--txm);align-self:flex-start;margin-left:38px;font-size:.78rem}.chat-error{border-left:3px solid var(--dn);background:var(--dn-s);color:var(--dn);margin:4px 0 4px 38px;padding:9px 11px;font-size:.76rem;line-height:1.45}.chat-tool{border-color:var(--bd);background:#fff;margin:0}.chat-tool>button{text-transform:capitalize;padding:8px 10px}.chat-tool [data-slot=badge]{font-size:.62rem}.chat-compose textarea{resize:none;border:1px solid var(--bd);background:#fff;border-radius:0;outline:none;flex:1;max-height:130px;padding:10px 13px;font-family:inherit;font-size:.845rem;line-height:1.45;transition:border-color .18s,box-shadow .18s}.chat-compose textarea:focus{border-color:var(--ac);box-shadow:var(--chat-glow)}.chat-send,.chat-stop{cursor:pointer;width:40px;height:40px;transition:all .18s var(--chat-ease);border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-send{background:var(--chat-grad);color:#fff;box-shadow:0 4px 12px #0891b24d}.chat-send:hover:not(:disabled){transform:scale(1.06)translateY(-1px);box-shadow:0 8px 20px #7c3aed59}.chat-send:disabled{background:var(--bd);cursor:not-allowed;box-shadow:none}.chat-stop{background:var(--dn-s);color:var(--dn);animation:1.4s ease-in-out infinite stopPulse;display:none}.chat-dock.busy .chat-send{display:none}.chat-dock.busy .chat-stop{display:flex}.chat-stop:hover{background:var(--dn);color:#fff}@keyframes stopPulse{0%,to{box-shadow:0 0 #e11d4859}50%{box-shadow:0 0 0 6px #e11d4800}}.chat-foot{color:var(--txm);text-align:center;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:0 14px 10px;font-size:.67rem;display:flex}.chat-secure-dot{background:var(--ok);border-radius:50%;width:6px;height:6px;display:inline-block}.chat-foot code{background:var(--bg-sub);border-radius:0;padding:1px 4px}.chat-settings{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:var(--z-settings);opacity:0;pointer-events:none;background:#0f172a8c;justify-content:center;align-items:center;transition:opacity .18s;display:flex;position:fixed;inset:0}.chat-settings.on{opacity:1;pointer-events:all}.chat-settings-panel{width:100%;max-width:460px;box-shadow:var(--sh-xl);transition:transform .22s var(--chat-ease);background:#fff;border-radius:0;padding:24px;transform:scale(.96)translateY(10px)}.chat-settings.on .chat-settings-panel{transform:scale(1)translateY(0)}.chat-settings-panel h3{margin-bottom:5px;font-size:1.06rem;font-weight:800}.chat-settings-panel p.hint{color:var(--txm);margin-bottom:17px;font-size:.78rem;line-height:1.55}.chat-settings-panel p.hint code{background:var(--bg-sub);border-radius:0;padding:1px 5px}.cs-field{margin-bottom:12px}.cs-field label{color:var(--txm);text-transform:uppercase;letter-spacing:.3px;margin-bottom:4px;font-size:.71rem;font-weight:700;display:block}.cs-row{gap:8px;margin-top:18px;display:flex}@media (prefers-reduced-motion:reduce){.chat-dock *,.chat-fab,.chat-scroll{transition:none!important;animation:none!important}.chat-dock,.mc{transition:none!important}}@media (width<=900px){:root{--chat-w:100%}body.chat-open .mc{margin-right:0}.chat-dock{width:100%}}.chat-jump{z-index:3;background:var(--tx);color:#fff;cursor:pointer;opacity:0;pointer-events:none;border:none;border-radius:0;align-items:center;gap:5px;padding:7px 12px;font-family:inherit;font-size:.73rem;font-weight:700;transition:all .26s cubic-bezier(.32,.72,0,1);display:flex;position:absolute;bottom:104px;right:16px;transform:translateY(10px)scale(.92);box-shadow:0 6px 18px #0f172a38}.chat-jump.on{opacity:1;pointer-events:all;transform:translateY(0)scale(1)}.chat-jump:hover{background:var(--ac)}.chat-jump svg{transform:rotate(90deg)}.jump-n{background:var(--ac);text-align:center;border-radius:0;min-width:17px;padding:0 6px;font-size:.68rem}.chat-jump:hover .jump-n{background:#ffffff40}.chat-resizer{cursor:col-resize;z-index:4;touch-action:none;justify-content:center;align-items:center;width:11px;display:flex;position:absolute;top:0;bottom:0;left:-5px}.chat-resizer:before{content:"";background:0 0;border-radius:0;width:3px;height:44px;transition:background .18s}.chat-resizer:hover:before,body.chat-resizing .chat-resizer:before{background:var(--ac)}.cm-tool{color:#0e7490;background:#ecfeff;border:1px solid #a5f3fc;border-radius:0;align-items:center;gap:6px;margin:2px 0;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.cm-typing{color:#64748b;padding:4px 0;font-size:12px;font-style:italic}
