@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./outfit-latin-ext-wght-normal-DdQaqQDo.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./outfit-latin-wght-normal-Bc-8i84L.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--accent: #e6247a;--accent-2: color-mix(in srgb, var(--accent) 80%, #000);--accent-tint: color-mix(in srgb, var(--accent) 9%, #fff);--accent-soft: color-mix(in srgb, var(--accent) 20%, #fff);--bg: #f8f7f5;--card: #fff;--ink: #1c1b1e;--muted: #6a616a;--line: #e9e2e6;--line-soft: #f2edf0;--green: #138a63;--red: #d6455d;--amber: #c78520;--green-tint: #e8f6f0;--red-tint: #fdebee;--amber-tint: #fdf4e3;--grey-tint: #efecee;--side: #111014;--side-2: #27151f;--shadow: 0 1px 2px rgb(28 27 30 / .04), 0 8px 24px rgb(28 27 30 / .05);--shadow-lift: 0 2px 4px rgb(28 27 30 / .05), 0 18px 42px rgb(28 27 30 / .1);--radius: 16px;--radius-sm: 10px;--side-w: 256px;--side-w-collapsed: 76px;--top-h: 60px;font-family:Outfit Variable,Outfit,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;color:var(--ink);-webkit-font-smoothing:antialiased;word-spacing:.06em}*{box-sizing:border-box}body{margin:0;background:var(--bg);line-height:1.5}a{color:var(--accent-2)}h1{font-size:1.6rem;margin:12px 0;letter-spacing:-.02em;font-weight:650}h2{font-size:1.15rem;margin:6px 0;letter-spacing:-.01em;font-weight:620}h3{font-size:1.02rem;margin:14px 0 6px;font-weight:600}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.boot{max-width:520px;margin:80px auto;padding:0 20px}.app{display:flex;min-height:100vh}.app-main{flex:1;min-width:0;display:flex;flex-direction:column}main{width:100%;max-width:1600px;margin:0 auto;padding:24px 28px 72px}.pad{padding:16px 24px}.sidebar{position:sticky;top:0;z-index:40;flex:none;width:var(--side-w);height:100vh;display:flex;flex-direction:column;color:#fff;background:linear-gradient(170deg,var(--side-2) 0%,var(--side) 62%);box-shadow:4px 0 20px #2513280d;transition:width .2s ease;overflow:hidden}.sidebar.collapsed{width:var(--side-w-collapsed)}.sidebar-head{height:80px;flex:none;display:flex;align-items:center;justify-content:space-between;padding:0 22px}.sidebar-head a{display:flex;align-items:center;min-width:0;text-decoration:none}.brandmark{display:inline-flex;align-items:center;gap:10px;color:#fff;font-weight:800;letter-spacing:.02em}.brand-wordmark{display:block;height:54px;width:auto;filter:invert(1);margin-left:-8px}.brand-icon{display:block;width:36px;height:36px;border-radius:10px}.brand-badge{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--accent);color:#fff;font-weight:800}.brand-text{font-size:1.15rem;white-space:nowrap}.sidebar.collapsed .sidebar-head{justify-content:center;padding:0}.sidebar-nav{flex:1;overflow-y:auto;padding:4px 14px 16px}.nav-group{margin-bottom:14px}.nav-title{padding:10px 14px 6px;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#ffffff59;white-space:nowrap}.sidebar.collapsed .nav-title{height:1px;padding:0;margin:10px 14px;overflow:hidden;background:#ffffff1a;font-size:0}.nav-item{display:flex;align-items:center;gap:13px;width:100%;min-height:44px;padding:10px 14px;margin:2px 0;border:0;border-radius:10px;background:transparent;color:#c9bdcc;font:inherit;font-size:.93rem;font-weight:500;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s}.nav-item .nav-ico{flex:none;color:#b6a4bb}.nav-item:hover{background:#ffffff0f;color:#fff}.nav-item.active{color:#fff;font-weight:600;background:linear-gradient(110deg,var(--accent),var(--accent-2));box-shadow:0 5px 16px color-mix(in srgb,var(--accent) 32%,transparent)}.nav-item.active .nav-ico{color:#fff}.nav-label{flex:1;text-align:left}.sidebar.collapsed .nav-item{justify-content:center;padding:10px 0;position:relative}.sidebar.collapsed .nav-label{display:none}.sidebar-foot{flex:none;padding:10px 14px 16px;border-top:1px solid #ffffff14}.sidebar-tag{margin:4px 14px 10px;font-size:.75rem;color:#b9a9b9;line-height:1.4}.collapse-btn{color:#b9a9b9}.nav-badge{display:inline-block;min-width:22px;padding:0 7px;border-radius:999px;background:var(--red);color:#fff;font-size:.75rem;font-weight:800;text-align:center;line-height:21px}.active .nav-badge{background:#fff;color:var(--accent-2)}.sidebar.collapsed .nav-badge{position:absolute;top:3px;right:10px;min-width:18px;line-height:17px;padding:0 4px;font-size:.65rem}.sidebar .sidebar-close,.scrim{display:none}.icon-btn{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:10px;background:transparent;color:inherit;cursor:pointer}.icon-btn:hover{background:#0000000a}.sidebar .icon-btn:hover{background:#ffffff14}.topbar{position:sticky;top:0;z-index:30;height:var(--top-h);display:flex;align-items:center;gap:12px;padding:0 28px;background:#ffffffdb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.topbar-title{margin:0;font-size:1.05rem;font-weight:620;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-btn{display:none;margin-left:-8px}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:10px;min-width:0}.status-chip,.hubchip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:.8rem;font-weight:600;white-space:nowrap;text-decoration:none;border:1px solid transparent}.status-chip.tone-green{background:var(--green-tint);color:#0d6a4b;border-color:#c4e8da}.status-chip.tone-red{background:var(--red-tint);color:#a42a3f;border-color:#f4c9d0}.status-chip.tone-grey{background:var(--grey-tint);color:#4b4549}.hubchip{background:#fff;color:var(--ink);border-color:var(--line)}.hubchip .dot{width:9px;height:9px}.user-menu{position:relative}.user-btn{display:flex;align-items:center;gap:8px;padding:4px 8px 4px 4px;border:1px solid var(--line);border-radius:999px;background:#fff;font:inherit;color:var(--ink);cursor:pointer}.user-btn:hover{border-color:var(--accent-soft);background:var(--accent-tint)}.user-name{font-size:.88rem;font-weight:600;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-caret{color:var(--muted)}.menu-pop{position:absolute;right:0;top:calc(100% + 8px);min-width:210px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lift);z-index:60}.menu-who{display:grid;padding:8px 12px 10px;border-bottom:1px solid var(--line-soft);margin-bottom:4px}.menu-pop a,.menu-pop button{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;font:inherit;font-size:.92rem;color:var(--ink);text-decoration:none;cursor:pointer;text-align:left}.menu-pop a:hover,.menu-pop button:hover{background:var(--accent-tint)}.banner-red{margin:16px 28px 0;background:var(--red);color:#fff;padding:12px 16px;border-radius:12px;font-weight:600;box-shadow:var(--shadow)}.banner-red ul{margin:6px 0 0 18px;padding:0;font-weight:500}.banner-red a{color:#fff;text-decoration:underline}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 22px}.page-head h1{margin:0;font-size:clamp(1.6rem,2.4vw,2.1rem);line-height:1.15;font-weight:680;letter-spacing:-.02em}.page-head .sub{margin:6px 0 0;color:var(--muted);font-size:.95rem}.page-head-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.back-link{display:inline-flex;align-items:center;gap:6px;margin-bottom:10px;color:var(--muted);font-size:.88rem;font-weight:600;text-decoration:none}.back-link:hover{color:var(--accent-2)}.girl-head{display:flex;align-items:center;gap:16px;margin-bottom:18px}.girl-head h1{margin:0;font-size:2rem;line-height:1.1;font-weight:680;letter-spacing:-.02em}.girl-head .sub{margin:6px 0 0;display:flex;align-items:center;gap:8px}.girl-head .chip{margin-left:0}section{margin-bottom:28px}section>h2{margin:0 0 12px;font-size:1.1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:inherit;font-size:.93rem;font-weight:600;padding:9px 16px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;min-height:42px;text-decoration:none;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s}.btn:hover:not(:disabled){border-color:var(--accent-soft);background:var(--accent-tint)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-big,.btn-primary{background:linear-gradient(110deg,var(--accent),var(--accent-2));color:#fff;border:0;min-height:46px;padding:11px 22px;box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 28%,transparent)}.btn-big:hover:not(:disabled),.btn-primary:hover:not(:disabled){background:linear-gradient(110deg,var(--accent),var(--accent-2));filter:brightness(1.06);box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 38%,transparent)}.btn-big{margin:8px 0}.btn-big.btn-ghost{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}.btn-big.btn-ghost:hover:not(:disabled){filter:none;background:var(--accent-tint);box-shadow:none}.btn-small{min-height:36px;padding:6px 12px;font-size:.86rem;border-radius:9px}.btn-ghost{background:transparent}.btn-danger{background:var(--red);color:#fff;border-color:var(--red)}.btn-danger:hover:not(:disabled){background:#bf3a50;border-color:#bf3a50}.btn-green,.btn-ok{background:var(--green);color:#fff;border-color:var(--green)}.btn-green:hover:not(:disabled),.btn-ok:hover:not(:disabled){background:#0f7452;border-color:#0f7452}.btn-wide{min-height:54px;font-size:1.02rem;padding:14px 22px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.row>.btn-big{flex:1}.between{justify-content:space-between}label{display:block;margin:12px 0;font-size:.92rem;font-weight:500}label>b,label>span{display:block;margin-bottom:2px}label small{display:block;font-weight:400}input,textarea,select{font:inherit;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);margin-top:4px;transition:border-color .15s,box-shadow .15s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}label.empty input,label.empty textarea{border-color:var(--red);background:#fff7f8}label.check{display:flex;align-items:center;gap:10px}label.check input,label.switch input{width:22px;height:22px;margin:0;flex:none;accent-color:var(--accent)}label.switch{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;transition:border-color .15s}label.switch:hover{border-color:var(--accent-soft)}label.switch.disabled{background:#f6f3f5;color:#837a82}.switches{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}.switches label.switch{margin:0}.keybox input{font-family:ui-monospace,monospace;background:#fffbea}.keybox{border:2px solid var(--amber)}.swatch{display:inline-block;width:14px;height:14px;border-radius:4px;border:1px solid #0003;vertical-align:middle}.cards{display:grid;gap:16px;margin:10px 0 16px}.cards.tiles{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.cards.wide-tiles{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.cards .card{margin:0}.card{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;color:inherit;text-decoration:none;margin:4px 0;box-shadow:var(--shadow);overflow-wrap:anywhere}a.card{transition:transform .18s,border-color .18s,box-shadow .18s}a.card:hover{transform:translateY(-2px);border-color:var(--accent-soft);box-shadow:var(--shadow-lift)}.card small{display:block;margin:2px 0}.card.dead{border-color:#f1b7c0;background:#fffafb}.card.active{border-color:var(--green)}.card h2{margin:0}.card.soon{max-width:none;padding:24px;border-style:dashed}.form{max-width:720px}.new-girl{margin-bottom:18px}.panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:18px;align-items:start;margin-bottom:18px}.panels .wide{grid-column:1 / -1}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:6px 18px 16px;box-shadow:var(--shadow)}.split{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:18px;align-items:start}.split>.panel:first-child{position:sticky;top:calc(var(--top-h) + 16px);max-height:calc(100vh - var(--top-h) - 32px);overflow:auto}.dot{display:inline-block;width:12px;height:12px;border-radius:50%;vertical-align:middle}.dot.green{background:var(--green)}.dot.red{background:var(--red)}.dot.grey{background:#a39ba2}.chip{display:inline-flex;align-items:center;padding:3px 11px;border-radius:999px;font-size:.78rem;font-weight:700;margin-left:4px;letter-spacing:.01em}.chip-green{background:var(--green-tint);color:#0d6a4b}.chip-red{background:var(--red-tint);color:#a42a3f}.chip-grey{background:var(--grey-tint);color:#4b4549}.chip-amber{background:var(--amber-tint);color:#8a5a0d}.stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 0}.stats>div{background:var(--bg);border-radius:10px;padding:8px 12px;min-width:0}.stats dt{font-size:.74rem;color:var(--muted);font-weight:500}.stats dd{margin:2px 0 0;font-weight:650;font-size:1.02rem;word-break:break-word;font-variant-numeric:tabular-nums}.bad{color:var(--red)}.ok{color:var(--green);font-weight:600}.muted{color:var(--muted)}.error{background:var(--red-tint);border:1px solid #f4c9d0;color:#8f2336;border-radius:12px;padding:10px 14px;margin:10px 0}.error ul{margin:6px 0 0;padding-left:20px}.note{background:var(--amber-tint);border:1px solid #f1dba8;border-radius:12px;padding:10px 14px;margin:8px 0}.ok-box{display:flex;align-items:center;gap:10px;background:var(--green-tint);border:1px solid #c4e8da;color:#0d5a41;border-radius:12px;padding:12px 16px;margin:8px 0;font-weight:500}.problems{background:var(--red-tint);border:1px solid #f4c9d0;border-left:5px solid var(--red);border-radius:12px;padding:12px 18px;margin:10px 0 16px;color:#8f2336}.problems b{color:#a42a3f}.problems ul{margin:6px 0 0 18px;padding:0}.clone-card{position:relative;display:flex;flex-direction:column;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:18px 20px 16px;box-shadow:var(--shadow);transition:transform .2s,border-color .2s,box-shadow .2s}.clone-card:hover{transform:translateY(-3px);border-color:var(--accent-soft);box-shadow:var(--shadow-lift)}.clone-card.dead{border-color:#f1b7c0}.clone-link{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:22px;z-index:1}.clone-head{display:flex;align-items:center;gap:14px}.avatar-wrap{position:relative;flex:none}.avatar{display:inline-grid;place-items:center;flex:none;border-radius:50%;color:#fff;font-weight:700;letter-spacing:.02em;border:3px solid #fff;box-shadow:0 3px 12px #1730420f;-webkit-user-select:none;user-select:none}.avatar-dot{position:absolute;right:0;bottom:0;width:14px;height:14px;border:2px solid #fff}.clone-name{flex:1;min-width:0}.clone-name h2{margin:0;font-size:1.15rem;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clone-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px}.clone-note{margin:8px 0 0;font-size:.86rem}.clone-card .stats{margin-bottom:14px}.clone-actions{position:relative;z-index:2;display:flex;gap:8px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line-soft)}.clone-open{margin-left:auto;color:var(--accent-2)}.tilestats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin:10px 0 18px}.tile{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;box-shadow:var(--shadow);min-width:0}.tile small{color:var(--muted);display:block;font-weight:500;font-size:.84rem}.tile b{font-size:clamp(1.4rem,2vw,1.85rem);line-height:1.2;font-weight:680;letter-spacing:-.02em;display:block;margin-top:10px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.tile:first-child{border-color:color-mix(in srgb,var(--accent) 28%,#fff)}.tile-alert{border-color:var(--red)}.tile-alert b,.tile b.bad{color:var(--red)}.stat-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.stat-ico{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--accent-tint);color:var(--accent-2);flex:none}.stat-note{display:block;margin-top:4px;font-size:.8rem;color:var(--muted)}.bigtiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:10px 0 18px}.bigtile{border-radius:16px;padding:16px 18px;background:var(--grey-tint);color:#3d373b;border:1px solid #e0dadd;border-left-width:5px;box-shadow:var(--shadow)}.bigtile.green{background:var(--green-tint);border-color:#c4e8da;border-left-color:var(--green);color:#0d4f39}.bigtile.red{background:var(--red-tint);border-color:#f4c9d0;border-left-color:var(--red);color:#8f2336}.bigtile.grey{border-left-color:#a39ba2}.bigtile small{display:block;font-weight:600;opacity:.85}.bigtile b{display:block;font-size:1.5rem;margin:2px 0;letter-spacing:-.02em}.bigtile span{font-size:.86rem;opacity:.95}.hubsources{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.hubsource.alive{border-color:#c4e8da}.hubsource.dead{border-color:#f1b7c0;background:#fffafb}.hubsource h2{margin:0;font-size:1.08rem}.todayrow{grid-template-columns:repeat(6,minmax(0,1fr))}.subnav{display:flex;gap:4px;overflow-x:auto;margin:0 0 18px;border-bottom:1px solid var(--line)}.subnav a{position:relative;padding:11px 16px;text-decoration:none;color:var(--muted);white-space:nowrap;font-weight:600;font-size:.93rem;border-radius:10px 10px 0 0}.subnav a:hover{color:var(--ink);background:var(--accent-tint)}.subnav a.active{color:var(--accent-2)}.subnav a.active:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--accent)}.tabs{display:inline-flex;gap:3px;margin:4px 0 18px;padding:4px;background:#efebee;border-radius:12px;max-width:100%;overflow-x:auto}.tabs button{font:inherit;font-size:.9rem;font-weight:600;padding:9px 18px;border-radius:9px;border:0;background:transparent;color:var(--muted);cursor:pointer;white-space:nowrap}.tabs button:hover{color:var(--ink)}.tabs .on{background:#fff;color:var(--accent-2);box-shadow:0 1px 4px #1c1b1e14}.pills{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}.pill{font:inherit;font-size:.9rem;font-weight:600;padding:8px 18px;border-radius:999px;border:1px solid var(--line);background:#fff;min-height:42px;cursor:pointer;transition:all .15s}.pill:hover{border-color:var(--accent-soft);background:var(--accent-tint)}.pill.on{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 28%,transparent)}.tablewrap{overflow:auto;max-height:min(72vh,680px);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}table{width:100%;border-collapse:separate;border-spacing:0;background:#fff}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line-soft);white-space:nowrap;font-size:.92rem}thead th{position:sticky;top:0;z-index:1;background:#fbf9fa;font-size:.72rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--line)}tbody tr{transition:background .12s}tbody tr:hover{background:var(--accent-tint)}tbody tr:last-child td{border-bottom:0}tbody tr.empty-row:hover{background:transparent}.tablewrap.scroll{max-height:440px}.hubfilters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:10px;margin:8px 0 12px}.hubfilters input,.hubfilters select{margin-top:0}.hubcharts{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}.hubchart{margin:0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 18px 12px;box-shadow:var(--shadow)}.hubchart figcaption{font-weight:650;margin:2px 0 6px;letter-spacing:-.01em}.hubchart svg{width:100%;height:auto;display:block}.hubchart svg text{font-family:inherit}.chartwrap{background:#fff;border:1px solid var(--line);border-radius:16px;padding:10px;overflow-x:auto;box-shadow:var(--shadow)}.chartwrap svg{width:100%;min-width:360px;height:auto;display:block}.legend{display:flex;gap:14px;flex-wrap:wrap;margin:8px 0;font-size:.85rem;color:var(--muted)}.legend i{display:inline-block;width:11px;height:11px;border-radius:3px;vertical-align:-1px}.skel{display:block;border-radius:8px;background:linear-gradient(90deg,#efeaed 25%,#f8f5f7,#efeaed 65%);background-size:220% 100%;animation:shimmer 1.3s linear infinite}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-100% 0}}.skel-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px;display:grid;gap:12px;box-shadow:var(--shadow)}.skel-stack{display:grid;gap:12px}.skel-title{height:20px;width:45%}.skel-line{height:13px}@media (prefers-reduced-motion: reduce){.skel{animation:none}}.empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:36px 20px;text-align:center;background:#fff;border:1.5px dashed #ddd2d8;border-radius:var(--radius)}.empty-state p{margin:0 0 6px;max-width:420px}.empty-ico{display:grid;place-items:center;width:46px;height:46px;margin-bottom:4px;border-radius:14px;background:var(--accent-tint);color:var(--accent-2)}td>.empty-state{border:0;background:transparent;padding:28px 12px}.asof{color:var(--muted);font-weight:500;display:inline;margin:0}.asof.stale{color:#6b6469;background:var(--grey-tint);border-radius:6px;padding:1px 7px;display:inline-block}.stale-wrap{opacity:.55;filter:grayscale(1)}pre{white-space:pre-wrap;word-break:break-word;margin:0;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.86rem}pre.prompt{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;line-height:1.65}pre.out{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px;margin:4px 0 8px}pre.final{border-color:var(--green)}.pp{border-radius:4px;cursor:pointer;padding:1px 0}.pp.fixed{color:#6b6469;background:#f2eff1}.pp.computed{background:#e4f0fb;border-bottom:2px dashed #2f7fc1}.pp.var{border-bottom:2px solid #0003}.pp.empty{background:#fcc9d0!important;color:#7a1d2d;font-weight:700}.pp.sel{outline:3px solid var(--accent)}.legend .pp{padding:3px 8px}.detail{background:#fff;border:2px solid var(--accent);border-radius:12px;padding:10px 14px;margin:8px 0;min-height:48px}.detail code{white-space:pre-wrap}.fanmsg{margin:6px 0 2px;font-weight:600}.reply{margin:2px 0 6px;color:#433d41}.msg{margin:6px 0}.msg small{color:var(--muted);font-weight:700}.msg-user pre{background:var(--accent-tint)}.msg-assistant pre{background:var(--green-tint)}.collapse-body{margin-top:6px}.collapse .btn{justify-content:flex-start;width:100%}.diff{padding-left:18px;word-break:break-word}.diff li{margin:8px 0;font-size:.9rem}.trace-sec{margin:18px 0;border-top:3px solid var(--line);padding-top:4px}.alert-row{border-left:6px solid var(--red)}.alert-row.recovery{border-left-color:var(--green)}.alert-row.acked{opacity:.6;border-left-color:var(--line)}.alert-row.test{border-left-color:var(--amber)}.alert-row p{margin:6px 0 0;overflow-wrap:anywhere}.kill{border:1px solid #c4e8da;border-left:6px solid var(--green);border-radius:14px;padding:12px 18px;background:var(--green-tint);margin-bottom:14px}.kill.on{border-color:#f4c9d0;border-left-color:var(--red);background:var(--red-tint)}.sticky-bar{position:sticky;bottom:12px;background:var(--side);color:#fff;padding:10px 14px;border-radius:14px;margin:10px 0;z-index:4;box-shadow:var(--shadow-lift)}.sticky-bar input{width:auto;flex:1 1 140px;margin:0}.sticky-bar .btn{min-height:42px}.drop{border:2px dashed var(--accent);border-radius:18px;background:color-mix(in srgb,var(--accent) 5%,#fff);padding:30px 16px;text-align:center;cursor:pointer;margin:8px 0 14px;transition:background .15s}.drop:hover{background:var(--accent-tint)}.drop.over{background:var(--accent-soft);border-style:solid}.drop b{font-size:1.1rem;display:block}.uplist{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px;margin-bottom:12px}.uprow{background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 12px;overflow-wrap:anywhere}.media-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:12px 16px 14px;box-shadow:var(--shadow);transition:border-color .15s,box-shadow .15s}.media-card:hover{border-color:var(--accent-soft);box-shadow:var(--shadow-lift)}.media-card.sel{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 5%,#fff)}.media-card.flash{border-color:var(--amber);box-shadow:0 0 0 4px #f7e2ab}.media-card.hidden{opacity:.62}.media-card textarea{min-height:84px}.fields2{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.fields3{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0 10px}.thumb{display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:220px;padding:0;margin:4px 0 10px;border:0;border-radius:14px;background:var(--side);overflow:hidden;cursor:zoom-in}.thumb img,.thumb video{width:100%;height:100%;object-fit:contain}.thumb .play{position:absolute;font-size:2.2rem;color:#fff;text-shadow:0 0 8px #000;pointer-events:none}.media-card.needs-ok{border-color:var(--red);box-shadow:0 0 0 3px #f9d3d9}.needs-badge{display:inline-block;margin:0 0 6px;padding:4px 12px;border-radius:999px;background:var(--red);color:#fff;font-size:.8rem;font-weight:800;letter-spacing:.05em}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:16px;background:#111014e6;cursor:zoom-out}.lightbox>div{max-width:96vw;max-height:94vh;text-align:center;color:#fff;cursor:default}.lightbox img,.lightbox video{max-width:96vw;max-height:82vh;border-radius:12px}.lightbox-x{position:absolute;top:12px;right:12px}.chats{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:18px;align-items:start}.chat-list{margin:0;position:sticky;top:calc(var(--top-h) + 16px);max-height:calc(100vh - var(--top-h) - 32px);overflow-y:auto;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}.chat-list input{margin:0 0 10px}.chat-list ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}.chat-item{display:grid;gap:2px;border:1px solid transparent;border-radius:12px;padding:10px 12px;color:inherit;text-decoration:none;overflow-wrap:anywhere;transition:background .12s}.chat-item:hover{background:var(--accent-tint)}.chat-item.on{border-color:var(--accent-soft);background:var(--accent-tint)}.chat-item .snippet{color:#494347;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.88rem}.chat-view{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:18px;align-items:start;min-width:0}.chat-view.chat-empty{display:block}.chat-main{min-width:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:6px 16px 16px;box-shadow:var(--shadow)}.chat-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chat-back{display:none;font-weight:700;text-decoration:none;padding:8px 0}.bubbles{display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 220px);min-height:240px;overflow-y:auto;padding:10px 2px}.bubble{max-width:min(78%,560px);padding:9px 14px;border-radius:18px;overflow-wrap:anywhere;display:flex;flex-direction:column;gap:2px}.bubble-text{white-space:pre-wrap}.bubble small{font-size:.72rem;opacity:.75}.bubble.fan{align-self:flex-start;background:#efebee;border-bottom-left-radius:5px}.bubble.her{align-self:flex-end;background:linear-gradient(120deg,var(--accent),var(--accent-2));color:#fff;border-bottom-right-radius:5px}.bubble.her a{color:#ffe3ee}.bubble-note{align-self:center;max-width:92%;text-align:center;font-style:italic;font-size:.85rem;color:var(--muted);background:var(--amber-tint);border:1px dashed #e8cf93;border-radius:12px;padding:4px 12px;overflow-wrap:anywhere}.chat-side{display:grid;gap:14px;min-width:0}.chat-side .panel h2{margin-top:10px}.side-list{list-style:none;margin:0;padding:0 4px 0 0;display:grid;gap:8px;max-height:340px;overflow-y:auto}.side-row{border-bottom:1px solid var(--line-soft);padding-bottom:6px;overflow-wrap:anywhere}.side-row small{display:block}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(900px 600px at 15% 10%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 65%),linear-gradient(160deg,var(--side-2),var(--side) 70%)}.login{width:100%;max-width:420px;padding:30px 30px 26px;background:#fff;border-radius:24px;box-shadow:0 30px 80px #0000005c}.login-logo{display:inline-flex;margin:-6px 0 6px;padding:0 22px 0 14px;border-radius:16px;background:linear-gradient(170deg,var(--side-2),var(--side))}.login-logo .brand-wordmark{height:56px;margin-left:0}.login-logo .brand-badge{margin:10px 0}.login-logo .brandmark{min-height:56px}.login h1{margin:12px 0 6px;font-size:1.7rem}.login .btn-big{width:100%}@media (max-width: 1200px){.chat-view{grid-template-columns:1fr}.bubbles{max-height:60vh}.todayrow{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 900px){:root{--top-h: 56px}.sidebar,.sidebar.collapsed{position:fixed;left:0;top:0;bottom:0;width:min(290px,84vw);transform:translate(-102%);transition:transform .24s ease;box-shadow:none}.sidebar.open{transform:none;box-shadow:12px 0 40px #00000059}.sidebar.collapsed .nav-label,.sidebar.collapsed .nav-title{display:initial}.sidebar.collapsed .nav-title{height:auto;padding:10px 14px 6px;margin:0;background:none;font-size:.68rem}.sidebar.collapsed .nav-item{justify-content:flex-start;padding:10px 14px}.sidebar.collapsed .nav-badge{position:static;min-width:22px;line-height:21px;padding:0 7px;font-size:.75rem}.sidebar.collapsed .sidebar-head{justify-content:space-between;padding:0 16px 0 22px}.collapse-btn{display:none}.sidebar .sidebar-close{display:inline-grid;color:#fff}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;background:#11101480;opacity:0;pointer-events:none;transition:opacity .2s}.scrim.show{opacity:1;pointer-events:auto}.menu-btn{display:inline-grid}.topbar{padding:0 14px;gap:6px}.topbar-right{gap:6px}.user-name,.user-caret{display:none}.user-btn{padding:3px}main{padding:18px 14px 72px}.banner-red{margin:12px 14px 0}.split{grid-template-columns:1fr}.split>.panel:first-child{position:static;max-height:none}.todayrow{grid-template-columns:repeat(3,minmax(0,1fr))}.hubfilters{grid-template-columns:1fr 1fr}.hubfilters input{grid-column:1 / -1}.chats{grid-template-columns:1fr}.chats.has-fan .chat-list{display:none}.chats:not(.has-fan) .chat-empty{display:none}.chat-list{position:static;max-height:none}.chat-back{display:inline-block}.bubble{max-width:88%}}@media (max-width: 600px){.fields2{grid-template-columns:1fr}.tile b{font-size:1.35rem}th,td{padding:10px}.thumb{height:180px}.topbar-title{font-size:1rem}.status-chip .status-text{display:none}.status-chip{padding:7px 9px}.hubchip{font-size:.75rem;padding:6px 9px}.cards.tiles,.cards.wide-tiles,.hubsources{grid-template-columns:1fr}.page-head h1{font-size:1.65rem}.btn-big{width:100%}.girl-head h1{font-size:1.6rem}.login{padding:24px 20px}}@media (max-width: 480px){.todayrow{grid-template-columns:repeat(2,minmax(0,1fr))}}
