@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,700;9..144,850&family=Sora:wght@400;500;650;750;850&display=swap";:root{--ink:#071727;--deep:#103f61;--blue:#14759d;--copper:#c4832b;--sand:#eadbc3;--paper:#fffaf2;--muted:#6c746f;--line:#0c20321a;--display:"Fraunces", Georgia, serif;--sans:"Sora", ui-sans-serif, system-ui, sans-serif;color:var(--ink);font-family:var(--sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}.arena-app{min-height:100vh;color:var(--ink);padding:clamp(16px,3vw,34px);position:relative}.arena-app:before{z-index:-2;content:"";background:radial-gradient(circle at 13% 8%,#c4832b2e,#0000 26%),radial-gradient(circle at 88% 0,#14759d29,#0000 24%),linear-gradient(150deg,#fbf3e7 0%,#eadcc7 55%,#d9c5a6 100%);position:fixed;inset:0}.arena-app:after{z-index:-1;pointer-events:none;content:"";opacity:.26;background-image:linear-gradient(#0717270e 1px,#0000 1px),linear-gradient(90deg,#0717270b 1px,#0000 1px);background-size:34px 34px;position:fixed;inset:0}.app-header,.chart-hero,.summary-strip,.analysis-grid,.detail-panel,.quality-note,.data-note,.empty-dashboard,.error-banner{width:min(100%,1380px);margin-inline:auto}.app-header{grid-template-columns:minmax(0,1fr) minmax(360px,520px);align-items:stretch;gap:20px;margin-bottom:18px;display:grid}.auth-shell{place-items:center;display:grid}.auth-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:radial-gradient(circle at 84% 18%,#d9973a2e,#0000 26%),#fffaf2d6;border:1px solid #ffffffb8;border-radius:40px;width:min(100%,760px);padding:clamp(28px,6vw,64px);box-shadow:0 24px 70px #18212a24}.auth-panel.compact{width:min(100%,560px)}.auth-panel h1{font-family:var(--display);letter-spacing:-.06em;margin:12px 0 0;font-size:clamp(54px,10vw,104px);line-height:.84}.auth-panel p{max-width:520px;color:var(--muted);margin:22px 0 0;font-size:16px;font-weight:650;line-height:1.7}.auth-actions,.invite-form{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.auth-actions button,.invite-form button{background:var(--ink);color:#fff7ea;cursor:pointer;border:0;border-radius:18px;min-height:50px;padding:0 18px;font-weight:850}.auth-actions button.secondary{color:var(--ink);background:#ffffff9e;border:1px solid #07172724}.auth-topline,.dashboard-session{justify-content:space-between;align-items:center;gap:14px;display:flex}.invite-panel .error-banner{width:100%;margin-top:16px;margin-bottom:0}.invite-form input{min-height:50px;color:var(--ink);letter-spacing:.04em;text-transform:uppercase;background:#ffffffad;border:1px solid #07172724;border-radius:18px;flex:260px;padding:0 16px;font-weight:800}.invite-form button:disabled{cursor:not-allowed;opacity:.48}.brand-block,.period-picker,.empty-dashboard,.error-banner,.summary-card,.panel,.chart-panel,.data-note,.quality-note{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffaf2c7;border:1px solid #ffffffb8;box-shadow:0 18px 52px #18212a1a}.brand-block{color:#fff7ea;background:radial-gradient(circle at 83% 20%,#fff3,#0000 21%),linear-gradient(135deg,#071727 0%,#103f61 62%,#c4832b 100%);border-radius:40px;min-height:230px;padding:clamp(26px,4vw,48px);position:relative;overflow:hidden}.brand-block:after{content:"";border:1px solid #fff3;border-radius:999px;width:280px;height:280px;position:absolute;bottom:-120px;right:-80px}.micro-label{color:var(--copper);letter-spacing:.18em;text-transform:uppercase;font-size:10px;font-weight:850;display:block}.brand-block .micro-label,.chart-panel.large .micro-label{color:#d9973a}.brand-block h1,.empty-dashboard h2,.panel-title h2{font-family:var(--display);letter-spacing:-.06em;margin:0}.brand-block h1{max-width:760px;margin-top:12px;font-size:clamp(58px,10vw,130px);line-height:.82}.brand-block p{z-index:1;color:#fff7eabd;max-width:640px;margin:24px 0 0;font-size:clamp(15px,1.5vw,19px);line-height:1.7;position:relative}.period-picker{border-radius:34px;align-content:center;gap:14px;padding:22px;display:grid}.period-picker>span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:12px;font-weight:850}.period-picker>div{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.period-picker button{min-height:92px;color:var(--muted);cursor:pointer;background:#ffffff73;border:1px solid #0717271f;border-radius:24px;transition:transform .16s,color .16s,background .16s,box-shadow .16s}.period-picker button:hover{transform:translateY(-2px)}.period-picker button.active{background:var(--ink);color:#fff7ea;border-color:#0000;box-shadow:0 16px 32px #07172733}.period-picker strong,.period-picker small{display:block}.period-picker strong{font-size:15px}.period-picker small{max-width:86px;margin:6px auto 0;font-size:10px;font-weight:750;line-height:1.25}.date-selector{grid-template-columns:minmax(0,1fr) minmax(190px,.9fr);gap:10px;display:grid}.date-selector label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;gap:9px;font-size:11px;font-weight:850;display:grid}.date-selector input,.period-summary{width:100%;color:var(--ink);letter-spacing:0;text-transform:none;background:#ffffff94;border:1px solid #07172724;border-radius:18px;padding:13px 14px;font-size:15px;font-weight:750}.period-summary{align-content:center;min-height:78px;display:grid}.period-summary span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:850}.period-summary strong{color:var(--ink);margin-top:7px;font-size:15px;font-weight:850;display:block}.empty-dashboard{text-align:center;border-radius:40px;place-content:center;min-height:380px;padding:36px;display:grid}.empty-dashboard h2{max-width:720px;margin-top:12px;font-size:clamp(48px,8vw,96px);line-height:.86}.empty-dashboard p{max-width:560px;color:var(--muted);margin:22px auto 0;line-height:1.7}.error-banner{color:#8b321f;border-radius:22px;margin-bottom:14px;padding:16px 18px;font-weight:750}.summary-card span,.summary-card small{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:850;display:block}.chart-hero{grid-template-columns:minmax(0,1.45fr) minmax(280px,.85fr);gap:14px;display:grid}.chart-panel{border-radius:34px;flex-direction:column;min-height:310px;padding:22px;display:flex}.chart-panel.large{color:#fff7ea;background:#0a2336;grid-row:span 2;min-height:636px;box-shadow:inset 0 1px #ffffff14,0 18px 52px #0717272e}.panel-title{justify-content:space-between;align-items:start;gap:16px;display:flex}.panel-title>div{min-width:0}.panel-title h2{margin-top:6px;font-size:clamp(28px,3.2vw,48px);line-height:.92}.panel-title>strong{background:#07172714;border-radius:999px;flex:none;padding:9px 12px;font-size:13px}.panel-title>strong.warning-badge{color:#7d2f1b;background:#ba5b3829}.chart-panel.large .panel-title>strong{background:#ffffff1f}.chart-panel.large .panel-title>strong.warning-badge{color:#fff7ea;background:#ba5b3861}.chart-plot{flex:1;grid-template-columns:62px minmax(0,1fr);gap:12px;min-height:190px;margin-top:24px;display:grid}.chart-selected-value{max-width:100%;color:inherit;background:#0717271f;border:1px solid #ffffff29;border-radius:999px;align-self:flex-start;align-items:center;gap:8px;margin-top:14px;padding:8px 11px;display:inline-flex}.chart-selected-value span,.chart-selected-value strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chart-selected-value span{opacity:.66;text-transform:uppercase;font-size:10px;font-weight:850}.chart-selected-value strong{font-size:13px;font-weight:950}.chart-panel.large .chart-selected-value{background:#ffffff1f}.chart-y-axis{min-height:100%;padding-bottom:23px;position:relative}.chart-y-axis span{max-width:60px;color:inherit;opacity:.68;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:850;line-height:1;position:absolute;right:0;overflow:hidden;transform:translateY(50%)}.chart-stage{min-width:0;height:100%;min-height:100%;position:relative}.chart-grid{pointer-events:none;position:absolute;inset:0 0 23px}.chart-grid span{opacity:.1;transform-origin:50%;border-top:1px solid;width:100%;position:absolute;left:0;transform:scaleY(.5)}.chart-columns{z-index:1;justify-content:space-between;align-items:end;gap:7px;height:100%;display:flex;position:relative}.chart-column{min-width:0;height:100%;color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;flex:1 1 0;grid-template-rows:minmax(0,1fr) 15px;gap:8px;padding:0;display:grid;position:relative}.chart-column i{background:#4f9bb1;border-radius:4px 4px 1px 1px;align-self:end;width:100%;min-height:0;transition:background-color .16s,filter .16s,opacity .16s,transform .16s;display:block;position:relative;box-shadow:inset 0 1px #ffffff2e}.chart-panel.large .chart-column i{background:#bf8434}.chart-column.warning i{background:#ba5b38}.chart-column.selected i{filter:brightness(1.08)saturate(1.04);opacity:1;transform:translateY(-2px)}.chart-column:not(.selected) i{opacity:.82}.chart-panel:not(.large) .chart-grid span{opacity:.08}.chart-panel:not(.large) .chart-column i{width:72%;margin-inline:auto}.chart-value-label{z-index:2;color:#fff7ea;opacity:0;text-align:center;text-overflow:ellipsis;white-space:nowrap;background:#0717278a;border:1px solid #ffffff2e;border-radius:999px;max-width:min(88px,100% + 20px);padding:4px 7px;font-size:9px;font-weight:900;line-height:1;position:absolute;top:0;left:50%;overflow:hidden;transform:translate(-50%,-6px);box-shadow:0 8px 18px #07172729}.chart-column.selected .chart-value-label,.chart-column:hover .chart-value-label,.chart-column:focus-within .chart-value-label{opacity:1}.chart-panel.large .chart-value-label{color:#fff7ea;background:#fff7ea29}.chart-column small{color:inherit;opacity:.66;text-align:center;font-size:10px;font-weight:750}.chart-column .faded-axis-label{opacity:0}.chart-empty-state{text-align:center;flex:1;place-content:center;max-width:520px;margin-inline:auto;display:grid}.chart-empty-state strong{font-family:var(--display);letter-spacing:-.06em;font-size:clamp(38px,4vw,62px);line-height:.88;display:block}.chart-empty-state span{max-width:430px;color:inherit;opacity:.68;margin-top:16px;font-size:14px;font-weight:750;line-height:1.5;display:block}.chart-note{color:#7d2f1b;background:#ba5b381a;border-radius:16px;margin:16px 0 0 74px;padding:11px 13px;font-size:12px;font-weight:750;line-height:1.45}.movement-panel{min-height:310px}.movement-panel .panel-title h2{max-width:520px;font-size:clamp(30px,3vw,44px)}.metric-bar{color:var(--muted);grid-template-columns:118px minmax(0,1fr) 48px;align-items:center;gap:12px;margin-top:24px;font-size:13px;font-weight:850;display:grid}.metric-bar div{background:#07172714;border-radius:999px;height:16px;overflow:hidden}.metric-bar i{border-radius:inherit;background:#14759d;height:100%;display:block}.metric-bar.danger i{background:#ba5b38}.metric-bar strong{color:var(--ink);text-align:right}.summary-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px;display:grid}.summary-card{border-radius:28px;min-height:138px;padding:18px}.summary-card strong{font-family:var(--display);letter-spacing:-.06em;margin-top:18px;font-size:clamp(30px,3.8vw,52px);line-height:.86;display:block}.summary-card small{margin-top:12px}.summary-card.unavailable{border-color:#7d2f1b38}.summary-card.unavailable strong,.summary-card.warning strong{color:#7d2f1b}.summary-card.warning{background:#fff4e8d1;border-color:#ba5b3852}.analysis-grid{grid-template-columns:1fr;gap:14px;margin-top:14px;display:grid}.data-note{background:#fff6e6d1;border-color:#c4832b4d;border-radius:24px;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.data-note strong{color:var(--ink);letter-spacing:.08em;text-transform:uppercase;flex:none;font-size:13px;font-weight:900}.data-note span{color:var(--muted);text-align:right;font-size:13px;font-weight:700;line-height:1.45}.panel{border-radius:34px;width:100%;min-width:0;padding:22px}.channel-panel{overflow:hidden}.channel-list,.reservation-list{gap:10px;margin-top:16px;display:grid}.demand-pie-layout{grid-template-columns:minmax(220px,.45fr) minmax(0,1fr);align-items:center;gap:20px;min-width:0;margin-top:18px;display:grid}.demand-pie{aspect-ratio:1;border-radius:999px;place-items:center;width:min(100%,320px);margin-inline:auto;display:grid;position:relative;box-shadow:inset 0 0 0 1px #fff6,0 22px 42px #0717271f}.demand-pie:before{border-radius:inherit;content:"";background:#fffaf2e6;position:absolute;inset:13%;box-shadow:inset 0 0 0 1px #07172714,0 14px 34px #0717271f}.demand-pie>div{z-index:1;color:var(--ink);text-align:center;place-items:center;gap:3px;display:grid;position:relative}.demand-pie span,.demand-pie small{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:850}.demand-pie strong{font-family:var(--display);letter-spacing:-.06em;font-size:clamp(46px,7vw,72px);line-height:.86}.demand-pie-layout .channel-list{min-width:0;margin-top:0}.channel-row{background:#ffffff7a;border-radius:20px;gap:9px;min-width:0;padding:14px;display:grid;box-shadow:inset 0 0 0 1px #07172712}.channel-row>div:first-child{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.channel-name{flex:auto;align-items:center;gap:9px;min-width:0;display:inline-flex}.channel-name i{border-radius:999px;flex:none;width:11px;height:11px;box-shadow:0 0 0 4px #0717270d}.channel-row strong,.channel-name strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.channel-share{min-width:48px;color:var(--ink);text-align:center;background:#07172714;border-radius:999px;flex:none;padding:6px 9px;font-size:12px;font-weight:900}.channel-row small,.muted-copy,.quality-note{color:var(--muted);font-size:13px;line-height:1.5}.channel-row small{overflow-wrap:anywhere;min-width:0}.bar-track{background:#07172714;border-radius:999px;height:10px;overflow:hidden}.bar-track span{border-radius:inherit;background:linear-gradient(90deg,#c4832b,#14759d);height:100%;display:block}.quality-note{margin-top:14px}.reservation-row{background:#ffffff80;border-radius:20px;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex;box-shadow:inset 0 0 0 1px #07172712}.reservation-row div{gap:4px;display:grid}.reservation-row div:last-child{text-align:right}.reservation-row span{color:var(--muted);font-size:12px}.quality-note{border-radius:24px;padding:16px 18px}.quality-note strong{color:var(--ink)}.loading-line{z-index:20;background:linear-gradient(90deg,#c4832b,#14759d);border-radius:0 999px 999px 0;width:42%;height:3px;animation:.9s ease-in-out infinite alternate loading-slide;position:fixed;top:0;left:0}@media (width<=980px){.arena-app{padding:12px}.app-header,.chart-hero,.summary-strip,.analysis-grid{grid-template-columns:1fr}.brand-block{border-radius:32px;min-height:210px}.brand-block h1{font-size:clamp(52px,17vw,82px)}.period-picker>div,.date-selector{grid-template-columns:1fr}.period-picker button{min-height:72px}.chart-panel.large{grid-row:auto;min-height:380px}.chart-stage{scrollbar-width:none;min-height:220px;padding-bottom:2px;overflow:auto visible}.chart-stage::-webkit-scrollbar{display:none}.chart-grid,.chart-columns{min-width:620px}.chart-plot{grid-template-columns:44px minmax(0,1fr);gap:8px}.chart-y-axis span{max-width:42px;font-size:8px}.chart-note{margin-left:0}.chart-value-label{display:none}.chart-columns{gap:8px}.chart-column{grid-template-rows:minmax(0,1fr) 14px;gap:6px}.chart-column i{min-height:22px}.chart-column small{opacity:.78;font-size:9px}.chart-selected-value{border-radius:14px;justify-content:space-between;width:100%;margin-top:12px}.chart-selected-value strong{font-size:14px}.summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.demand-pie-layout{grid-template-columns:1fr}.demand-pie{width:min(76vw,300px)}}@media (width<=560px){.brand-block,.period-picker,.empty-dashboard,.chart-panel,.panel{border-radius:26px}.summary-strip{grid-template-columns:1fr}.metric-bar{grid-template-columns:1fr 1fr 40px}.data-note{flex-direction:column;align-items:start}.data-note span{text-align:left}.demand-pie{width:min(78vw,260px)}.channel-panel .panel-title{flex-wrap:wrap;gap:10px}.channel-panel .panel-title h2{font-size:clamp(24px,8vw,34px)}.reservation-row{flex-direction:column;align-items:start}.reservation-row div:last-child{text-align:left}}@keyframes grow-up{0%{transform-origin:bottom;transform:scaleY(.2)}to{transform-origin:bottom;transform:scaleY(1)}}@keyframes loading-slide{0%{transform:translate(-10%)}to{transform:translate(150%)}}
