:root{color:#172033;background:#f4f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{min-height:42px;border:0;border-radius:8px;background:#002b7f;color:#fff;cursor:pointer;font-weight:700;padding:0 16px}button:disabled,input:disabled,textarea:disabled,select:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}.app-shell{min-height:100vh}.auth-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);min-height:100vh}.brand-panel{display:flex;flex-direction:column;justify-content:center;gap:24px;background:linear-gradient(135deg,#002b7fe0,#ce1126bf),url(/jdt_logo.webp) center / min(58vw,620px) no-repeat;color:#fff;padding:clamp(28px,7vw,96px)}.brand-panel .crest{width:96px;height:96px;object-fit:contain}.brand-panel h1{max-width:780px;margin:0;font-size:clamp(2.15rem,5vw,5.2rem);line-height:.98;letter-spacing:0}.match-strip{display:flex;align-items:center;gap:16px;width:fit-content;border:1px solid rgba(255,255,255,.35);border-radius:8px;padding:12px 14px;background:#ffffff1f}.auth-card{display:flex;flex-direction:column;justify-content:center;gap:18px;padding:clamp(24px,6vw,72px);background:#fff}.auth-card h2,.topbar h1,.hero h2,.panel h3{margin:0;letter-spacing:0}.panel h3{display:flex;align-items:center;gap:8px}.help-tip{position:relative;display:inline-grid;place-items:center;width:24px;min-width:24px;height:24px;min-height:24px;border:1px solid #c9d7ea;border-radius:999px;background:#f2f6fc;color:#002b7f;padding:0;font-size:.82rem;line-height:1}.help-tip:focus-visible,.tooltip-target:focus-visible{outline:2px solid #ce1126;outline-offset:2px}.tooltip-target{position:relative}.tooltip-target:after{position:absolute;z-index:20;right:0;bottom:calc(100% + 10px);width:min(280px,72vw);border:1px solid #b9c8dc;border-radius:8px;background:#07152f;color:#fff;box-shadow:0 16px 38px #08183638;content:attr(data-tooltip);font-size:.82rem;font-weight:700;line-height:1.35;opacity:0;padding:10px 12px;pointer-events:none;transform:translateY(5px);transition:opacity .16s ease,transform .16s ease}.tooltip-target:hover:after,.tooltip-target:focus-visible:after,.tooltip-target:focus-within:after{opacity:1;transform:translateY(0)}.inline-help{display:inline-grid;place-items:center;width:18px;min-width:18px;height:18px;border:1px solid #c9d7ea;border-radius:999px;background:#f2f6fc;color:#002b7f;font-size:.72rem;line-height:1}.field-label{display:inline-flex;align-items:center;gap:6px}.text-button,.ghost{background:#eef3fb;color:#002b7f}.danger{background:#ce1126}.sidebar{position:fixed;inset:0 auto 0 0;width:260px;background:#07152f;color:#fff;padding:22px}.sidebar-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.sidebar-brand img{width:46px;height:46px;object-fit:contain}.sidebar-brand span,.list-row span,.team-card span,.booking-card span,.muted{color:#6f7d94;font-size:.92rem}.sidebar-brand span{display:block;color:#b9c7dd}.sidebar nav{display:grid;gap:8px}.sidebar nav button{justify-content:flex-start;width:100%;background:transparent;color:#d9e5f8;text-align:left}.sidebar nav button.active{background:#ce1126;color:#fff}.workspace{margin-left:260px;padding:24px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.topbar-actions,.row-actions,.role-actions{display:flex;flex-wrap:wrap;gap:8px}.eyebrow{margin:0 0 7px;color:#ce1126;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.stack{display:grid;gap:18px}.hero{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:250px;border-radius:8px;background:linear-gradient(90deg,#002b7feb,#002b7fb8,#ce1126b8),url(/jdt_logo.webp) right 32px center / min(36vw,360px) no-repeat;color:#fff;padding:clamp(24px,5vw,54px)}.hero h2{max-width:720px;font-size:clamp(2rem,4vw,4.6rem);line-height:1}.hero p{max-width:620px;color:#dfe9fb}.operator-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:18px;align-items:stretch;border-radius:8px;background:linear-gradient(110deg,#07152ff5,#002b7fe6),url(/jdt_logo.webp) right 28px center / 240px no-repeat;color:#fff;padding:clamp(22px,4vw,42px)}.operator-hero h2{max-width:760px;margin:0;font-size:clamp(1.8rem,3vw,3.4rem);line-height:1.02;letter-spacing:0}.operator-hero p{max-width:680px;color:#d8e4f6}.operator-scorecard{display:grid;align-content:center;gap:12px;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#ffffff1a;padding:18px}.operator-scorecard strong{font-size:1.35rem;line-height:1.2}.operator-scorecard small{color:#c8d7ed;font-weight:700}.ticket-link{display:inline-flex;align-items:center;justify-content:center;min-width:130px;min-height:48px;border-radius:8px;background:#fff;color:#002b7f;font-weight:800;text-decoration:none}.metrics-grid,.content-grid,.facility-grid,.operator-metrics,.admin-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.content-grid,.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.facility-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metrics-grid article,.queue-card,.panel{border:1px solid #dce4f0;border-radius:8px;background:#fff;box-shadow:0 12px 34px #08183612}.metrics-grid article{display:grid;gap:4px;padding:20px}.queue-card{display:grid;gap:4px;min-height:112px;padding:18px;border-left:5px solid #002b7f}.queue-card.urgent{border-left-color:#ce1126}.queue-card.active{border-left-color:#1d7d49}.queue-card strong,.metrics-grid strong{color:#002b7f;font-size:2rem}.queue-card.urgent strong{color:#ce1126}.queue-card.active strong{color:#1d7d49}.queue-card span,.metrics-grid span{color:#6f7d94}.panel{display:grid;gap:14px;padding:18px}.list-row,.table-row,.team-card,.booking-card{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #edf1f7;padding:12px 0 0}.compact-row{min-height:58px}.list-row>div,.team-card>div,.booking-card>div{display:grid;gap:3px}.table-row{display:grid;grid-template-columns:34px 1fr auto}.pill{border-radius:999px;background:#eef3fb;color:#002b7f;font-size:.78rem;font-weight:800;padding:6px 10px;white-space:nowrap}.danger-pill{background:#fee9ec;color:#a20d1d}.alert{border-radius:8px;font-weight:700;margin:0 0 16px;padding:12px 14px}.alert.error{background:#fee9ec;color:#9f0b1b}.alert.notice{background:#e8f6ed;color:#146c2e}form,label{display:grid;gap:8px}label{color:#39465c;font-weight:700}input,select,textarea{width:100%;border:1px solid #ccd6e4;border-radius:8px;background:#fff;color:#172033;min-height:42px;padding:10px 12px}textarea{min-height:92px;resize:vertical}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.code-box{width:fit-content;border-radius:8px;background:#07152f;color:#fff;font-size:1.35rem;font-weight:900;letter-spacing:.08em;padding:10px 14px}.nested-list,.detail-panel,.profile-form{display:grid;gap:10px}.discover-grid,.roster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.discovery-card{display:grid;gap:4px;min-height:86px;background:#f8fafd;color:#172033;text-align:left}.discovery-card span,.roster-grid span{color:#6f7d94;font-size:.88rem}.roster-grid span{border-radius:8px;background:#f8fafd;padding:10px}.check-row{display:flex;align-items:center}.check-row input{width:auto}.three-col,.targeting-controls{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.targeting-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.targeting-controls select{min-height:120px}.demographic-target-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.demographic-target-grid select{min-height:112px}.command-panel{align-content:start}.admin-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-summary-grid span{display:grid;gap:3px;border-radius:8px;background:#f8fafd;color:#6f7d94;padding:12px}.admin-summary-grid strong{color:#002b7f;font-size:1.35rem}.visual-bars,.campaign-funnel{display:grid;gap:12px}.visual-bar-row,.funnel-row{display:grid;gap:8px;border-radius:8px;background:#f8fafd;padding:12px}.visual-bar-row>div:first-child,.funnel-row>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.visual-bar-row strong,.funnel-row strong{color:#002b7f;font-size:1.4rem}.visual-bar-row span,.funnel-row span,.funnel-row small{color:#6f7d94;font-weight:800}.bar-track,.funnel-track{height:10px;overflow:hidden;border-radius:999px;background:#e5edf8}.bar-track span,.funnel-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#002b7f,#ce1126)}.quick-actions{display:flex;flex-wrap:wrap;gap:8px}.analytics-grid{align-items:stretch}.analytics-scene-tabs{display:flex;flex-wrap:wrap;gap:8px;border-radius:8px;background:#eef4fc;padding:6px}.analytics-scene-tabs button{flex:1 1 180px;border:0;border-radius:8px;background:transparent;color:#526079;cursor:pointer;font-weight:900;padding:11px 14px}.analytics-scene-tabs button.active{background:#002b7f;color:#fff}.interaction-chart{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:10px;min-height:230px;border-radius:8px;background:#f8fafd;padding:16px 12px 10px}.interaction-column{display:grid;grid-template-rows:minmax(130px,1fr) auto;gap:8px;min-width:0;text-align:center}.interaction-column span{align-self:end;min-height:10px;border-radius:999px 999px 6px 6px;background:linear-gradient(180deg,#ce1126,#002b7f)}.interaction-column strong{color:#526079;font-size:.82rem}.analytics-chip-row{display:flex;flex-wrap:wrap;gap:8px}.analytics-chip-row span{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:#f2f6fc;color:#526079;padding:8px 11px;font-weight:700}.analytics-chip-row strong{color:#002b7f}.article-analytics-list{display:grid;gap:12px}.article-analytics-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.45fr);gap:14px;border-radius:8px;background:#f8fafd;padding:14px}.article-analytics-row>div{display:grid;gap:6px}.article-analytics-row strong{color:#10233f}.article-analytics-row small{color:#6f7d94;font-weight:700}.viewer-stack{align-content:start}.viewer-stack span{color:#526079;font-size:.88rem;font-weight:700}.behavior-report-grid,.audience-breakdowns{display:grid;gap:12px}.behavior-card{display:grid;gap:5px;border-radius:8px;background:#f8fafd;padding:14px}.behavior-card strong{color:#002b7f;font-size:1.75rem}.behavior-card span{color:#10233f;font-weight:900}.behavior-card small{color:#6f7d94;font-weight:700}.audience-section{display:grid;gap:10px;border-radius:8px;background:#f8fafd;padding:14px}.audience-section>strong{color:#10233f}.audience-row{display:grid;grid-template-columns:minmax(100px,.5fr) minmax(120px,1fr) 48px;align-items:center;gap:10px;color:#526079;font-weight:800}.audience-row div{height:10px;overflow:hidden;border-radius:999px;background:#e5edf8}.audience-row i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#002b7f,#ce1126)}.audience-row em{color:#10233f;font-style:normal;text-align:right}.campaign-workspace{align-items:start}.campaign-form{align-content:start}.campaign-guide{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.campaign-guide span,.campaign-preview span,.sponsor-strip{border-radius:8px;background:#f8fafd;color:#526079;font-weight:800;padding:10px}.campaign-guide strong{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:6px;border-radius:999px;background:#002b7f;color:#fff}.builder-section{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;border:1px solid #dce4f0;border-radius:8px;padding:12px}.builder-step{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:#002b7f;color:#fff;font-weight:900}.builder-fields{display:grid;gap:12px}.builder-fields h4{margin:0;color:#10233f}.sponsor-section{background:linear-gradient(180deg,#fff,#f8fbff)}.sponsor-select-preview{display:grid;gap:5px;border-left:4px solid #ce1126;border-radius:8px;background:#f8fafd;padding:12px}.sponsor-select-preview strong{color:#002b7f}.sponsor-select-preview span,.sponsor-select-preview small{color:#526079;font-weight:700}.campaign-preview{display:grid;gap:8px;grid-template-columns:repeat(6,minmax(0,1fr))}.campaign-preview span{display:grid;gap:4px}.campaign-preview small{color:#6f7d94}.campaign-preview strong{color:#10233f}.campaign-list{display:grid;gap:12px;margin-top:14px}.campaign-card{display:grid;gap:12px;border-radius:8px;background:#f8fafd;padding:14px}.campaign-card>div{display:grid;gap:6px}.campaign-card strong{color:#10233f}.campaign-card small,.campaign-targets span,.campaign-stats span{color:#6f7d94;font-weight:700}.campaign-targets,.campaign-stats{display:flex;flex-wrap:wrap;gap:8px}.campaign-targets span,.campaign-stats span{border-radius:999px;background:#fff;padding:7px 10px}.sponsor-strip{display:grid;gap:4px;background:#fff;border-left:4px solid #ce1126}.sponsor-strip strong{color:#002b7f}@media(max-width:1020px){.metrics-grid,.operator-metrics,.facility-grid,.discover-grid,.roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-hero,.admin-grid,.campaign-guide,.campaign-preview{grid-template-columns:1fr}}@media(max-width:820px){.auth-layout,.content-grid,.admin-grid,.two-col,.three-col,.targeting-controls,.demographic-target-grid,.campaign-guide,.campaign-preview,.metrics-grid,.operator-metrics,.facility-grid,.discover-grid,.roster-grid,.admin-summary-grid,.article-analytics-row{grid-template-columns:1fr}.brand-panel{min-height:44vh}.sidebar{position:static;width:auto}.sidebar nav{grid-template-columns:repeat(5,minmax(0,1fr));overflow-x:auto}.sidebar nav button{justify-content:center;min-width:96px;text-align:center}.workspace{margin-left:0;padding:18px}.topbar,.hero,.operator-hero,.article-analytics-row,.list-row,.team-card,.booking-card{align-items:flex-start;flex-direction:column}}
