:root{color-scheme:dark;--bg:#06111d;--bg-elevated:rgba(10,28,46,0.86);--bg-soft:rgba(14,37,61,0.74);--border:rgba(120,183,255,0.16);--text:#eff7ff;--muted:#9db3c8;--brand:#52d0ff;--brand-strong:#8ef0ff;--accent:#b7ff5d;--danger:#ff8b8b;--shadow:0 24px 70px rgba(1,8,18,0.42);--font-body:"Avenir Next","Avenir","Segoe UI",sans-serif;--font-display:"Trebuchet MS","Avenir Next Condensed","Arial Narrow",sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;background:radial-gradient(circle at top left,rgba(82,208,255,.16),transparent 24rem),radial-gradient(circle at top right,rgba(183,255,93,.12),transparent 20rem),linear-gradient(180deg,#071321,#08111c);color:var(--text);font-family:var(--font-body),sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}.site-shell{min-height:100vh}.site-header{justify-content:space-between;gap:1rem;padding:1.25rem 1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:rgba(6,17,29,.7);border-bottom:1px solid rgba(255,255,255,.04)}.brand-lockup,.site-header{display:flex;align-items:center}.brand-lockup{gap:.9rem;max-width:min(32rem,calc(100% - 14rem));position:relative;z-index:1}.brand-full{width:clamp(8.5rem,18vw,11.5rem);height:auto;flex:0 0 auto;display:block;filter:drop-shadow(0 12px 24px rgba(82,208,255,.16))}.brand-badge{width:2.6rem;height:2.6rem;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(82,208,255,.9),rgba(183,255,93,.75));color:#04111b;font-weight:800;box-shadow:0 12px 28px rgba(82,208,255,.22)}.brand-name{margin:0;font-family:var(--font-display),sans-serif;font-size:1.05rem;letter-spacing:-.03em}.brand-subtitle{margin:.15rem 0 0;color:var(--muted);font-size:.88rem}.top-nav{display:flex;align-items:center;gap:.8rem;position:relative;z-index:3}.ghost-button,.nav-button,.nav-link,.primary-button,.secondary-button{border:0;border-radius:999px;transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-color .14s ease;cursor:pointer}.ghost-button,.nav-link{padding:.78rem 1rem;background:transparent;color:var(--muted)}.ghost-button:hover,.nav-link-strong,.nav-link:hover{color:var(--text);background:rgba(255,255,255,.05)}.nav-link-strong{border:1px solid var(--border)}.nav-button,.primary-button,.secondary-button{padding:.88rem 1.15rem;font-weight:700;box-shadow:var(--shadow)}.primary-button{background:linear-gradient(135deg,var(--brand),var(--brand-strong));color:#04111b}.nav-button:hover,.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.nav-button,.secondary-button{background:rgba(255,255,255,.07);color:var(--text);border:1px solid var(--border)}.content-wrap{width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:2rem 0 4rem}.hero-grid,.portal-grid{display:grid;grid-gap:1.25rem;gap:1.25rem}.hero-grid{grid-template-columns:minmax(0,1.3fr) minmax(18rem,.9fr);align-items:stretch}.data-card,.glass-card,.hero-card,.stat-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:1.6rem;box-shadow:var(--shadow)}.hero-card{padding:2rem}.eyebrow{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .7rem;background:rgba(82,208,255,.1);border:1px solid rgba(82,208,255,.18);border-radius:999px;color:var(--brand-strong);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.hero-title,.portal-title,.section-title{font-family:var(--font-display),sans-serif;letter-spacing:-.04em}.hero-logo{width:min(100%,25rem);height:auto;display:block;margin-bottom:1rem;filter:drop-shadow(0 18px 28px rgba(1,9,24,.32))}.hero-title{margin:1rem 0 .8rem;font-size:clamp(2.5rem,4vw,4.75rem);line-height:.95}.hero-copy,.muted-copy,.section-copy{color:var(--muted);line-height:1.65}.hero-actions,.inline-actions{display:flex;gap:.85rem;flex-wrap:wrap}.tab-strip{display:flex;gap:.7rem;flex-wrap:wrap}.tab-button{border:1px solid rgba(255,255,255,.06);border-radius:999px;background:rgba(255,255,255,.04);color:var(--muted);padding:.8rem 1rem;font-weight:700;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.tab-button:hover{color:var(--text);transform:translateY(-1px)}.tab-button.active{background:linear-gradient(135deg,rgba(82,208,255,.24),rgba(183,255,93,.18));border-color:rgba(82,208,255,.32);color:var(--text)}.hero-points,.list-stack,.metric-list,.session-list{list-style:none;padding:0;margin:0}.hero-points{display:grid;grid-gap:.8rem;gap:.8rem;margin-top:1.5rem}.hero-point{display:flex;gap:.8rem;align-items:flex-start;color:var(--muted)}.hero-point strong{color:var(--text);display:block;margin-bottom:.15rem}.hero-point-mark{flex:0 0 auto;width:1.75rem;height:1.75rem;border-radius:999px;display:grid;place-items:center;background:rgba(183,255,93,.12);color:var(--accent);font-weight:800}.aside-card{padding:1.4rem}.aside-stack{display:grid;grid-gap:.9rem;gap:.9rem}.label{color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.portal-grid{grid-template-columns:20rem minmax(0,1fr);margin-top:1.5rem;align-items:start}.auth-card,.content-card,.sidebar-card{padding:1.25rem}.sidebar-card{position:-webkit-sticky;position:sticky;top:6rem}.stack{display:grid;grid-gap:1rem;gap:1rem}.row{display:flex;gap:.8rem;flex-wrap:wrap}.form-grid,.plan-grid{display:grid;grid-gap:1rem;gap:1rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-grid{grid-template-columns:minmax(16rem,18rem) minmax(0,1fr);align-items:start}.content-grid,.stat-grid{display:grid;grid-gap:1rem;gap:1rem}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem}.data-card,.stat-card{padding:1.1rem}.stat-title{margin:.2rem 0 0;font-size:1.55rem;font-family:var(--font-display),sans-serif}.pill{display:inline-flex;align-items:center;gap:.35rem;padding:.42rem .7rem;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.05);color:var(--text);font-size:.9rem}.pill.positive{background:rgba(183,255,93,.12);color:var(--accent)}.pill.negative{background:rgba(255,139,139,.14);color:var(--danger)}.pill.neutral{color:var(--muted)}.field-stack{display:grid;grid-gap:.9rem;gap:.9rem}.field-label{display:grid;grid-gap:.45rem;gap:.45rem;color:var(--text);font-weight:600}.text-input{width:100%;border:1px solid var(--border);background:rgba(4,12,22,.74);color:var(--text);border-radius:1rem;padding:.95rem 1rem;outline:none}.text-input:focus{border-color:rgba(82,208,255,.45);box-shadow:0 0 0 3px rgba(82,208,255,.12)}.plan-title-input{width:100%;border:0;background:transparent;color:var(--text);font-family:var(--font-display),sans-serif;font-size:2rem;font-weight:800;letter-spacing:-.04em;line-height:1.05;padding:0;outline:none}.plan-title-input::placeholder{color:rgba(239,247,255,.42)}.text-area{min-height:8.5rem;resize:vertical;width:100%;border:1px solid var(--border);background:rgba(4,12,22,.74);color:var(--text);border-radius:1rem;padding:.95rem 1rem;outline:none;font:inherit}.text-area:focus{border-color:rgba(82,208,255,.45);box-shadow:0 0 0 3px rgba(82,208,255,.12)}.error-text,.helper{margin:0;font-size:.92rem}.helper{color:var(--muted)}.error-text{color:var(--danger)}.section-title{margin:0;font-size:1.55rem}.section-copy{margin:.35rem 0 0}.data-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.data-title{margin:0;font-size:1.2rem;font-family:var(--font-display),sans-serif}.data-subtitle{margin:.25rem 0 0;color:var(--muted)}.portal-list{margin:.55rem 0 0;padding-left:1.1rem;color:var(--muted);line-height:1.6}.checkbox-row{display:inline-flex;align-items:center;gap:.55rem;color:var(--text);font-weight:700}.checkbox-row input{width:1rem;height:1rem}.list-stack,.metric-list,.session-list{display:grid;grid-gap:.85rem;gap:.85rem}.chip-grid{display:flex;flex-wrap:wrap;gap:.65rem}.chip-button{border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.04);color:var(--muted);padding:.72rem .95rem;cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.chip-button:hover{color:var(--text);transform:translateY(-1px)}.chip-button.active{color:#04111b;background:linear-gradient(135deg,rgba(82,208,255,.92),rgba(183,255,93,.82));border-color:transparent}.portal-banner{padding:1rem 1.1rem;border-radius:1.15rem;border:1px solid rgba(82,208,255,.16);background:rgba(12,33,54,.74);box-shadow:var(--shadow)}.session-rail{display:grid;grid-gap:.7rem;gap:.7rem}.session-rail-button{width:100%;text-align:left;display:grid;grid-gap:.25rem;gap:.25rem;padding:.95rem 1rem;border-radius:1rem;border:1px solid rgba(255,255,255,.05);background:var(--bg-soft);color:var(--muted);cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.session-rail-button span,.session-rail-button strong{color:var(--text)}.session-rail-button small{color:var(--muted)}.session-rail-button:hover{transform:translateY(-1px)}.session-rail-button.active{background:rgba(82,208,255,.12);border-color:rgba(82,208,255,.3)}.roster-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}.list-item,.metric-item,.session-item{padding:.95rem 1rem;background:var(--bg-soft);border:1px solid rgba(255,255,255,.04);border-radius:1rem}.metric-top,.session-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem}.value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;margin-top:.75rem}.value-cell{padding:.8rem;border-radius:.95rem;background:rgba(0,0,0,.16)}.empty-state{padding:2rem;text-align:center;background:var(--bg-elevated);border-radius:1.4rem;border:1px dashed var(--border)}.chat-window{display:grid;grid-gap:.85rem;gap:.85rem;max-height:32rem;overflow-y:auto;padding:1rem;border-radius:1.2rem;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.05)}.message-bubble{justify-self:start;max-width:min(44rem,86%);padding:.9rem 1rem;border-radius:1rem 1rem 1rem .35rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.06)}.message-bubble.mine{justify-self:end;background:rgba(82,208,255,.14);border-color:rgba(82,208,255,.24);border-radius:1rem 1rem .35rem 1rem}.message-bubble p{margin:.5rem 0 0;color:var(--text);white-space:pre-wrap}.message-meta{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem}.message-meta span{color:var(--muted);font-size:.84rem}.message-composer{display:grid;grid-gap:.85rem;gap:.85rem}.small{font-size:.9rem}.team-list-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.95rem 1rem;border-radius:1rem;border:1px solid rgba(255,255,255,.06);background:var(--bg-soft);color:var(--text);text-align:left;cursor:pointer}.team-list-button.active{border-color:rgba(82,208,255,.36);background:rgba(82,208,255,.12)}.team-list-meta{color:var(--muted);font-size:.86rem}.saved-plan-header,.team-detail-header{display:flex;align-items:flex-start;gap:1rem}.team-logo-frame{width:5.5rem;height:5.5rem;flex:0 0 5.5rem;border-radius:1.4rem;overflow:hidden;border:1px solid rgba(107,197,255,.22);background:linear-gradient(180deg,rgba(14,32,54,.94),rgba(8,21,37,.94));display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.team-logo-frame.small{width:4rem;height:4rem;flex-basis:4rem;border-radius:1rem}.team-logo-image{width:100%;height:100%;object-fit:contain;display:block}.team-logo-fallback{font-size:1.35rem;font-weight:800;color:#f7fbff;letter-spacing:.04em}.file-button{position:relative;overflow:hidden;cursor:pointer}.file-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.loading-screen{display:grid;place-items:center;min-height:calc(100vh - 7rem)}.print-shell{width:min(1040px,calc(100% - 2rem))}.print-actions{display:flex;justify-content:flex-end;gap:.8rem;margin-bottom:1rem}.print-page{background:#fff;color:#0b1a29;border-radius:1.4rem;padding:2rem;box-shadow:var(--shadow)}.print-header{display:grid;grid-template-columns:14rem minmax(0,1fr);grid-gap:1.5rem;gap:1.5rem;align-items:start;border-bottom:2px solid rgba(11,26,41,.08);padding-bottom:1.4rem}.print-logo-stack{display:grid;grid-gap:.9rem;gap:.9rem;align-content:start}.print-logo{width:100%;height:auto;display:block}.print-team-logo-wrap{width:8.5rem;height:8.5rem;border-radius:1.2rem;overflow:hidden;border:1px solid rgba(11,26,41,.08);background:#f7fbff;padding:.5rem}.print-team-logo{width:100%;height:100%;object-fit:contain;display:block}.print-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.8rem;gap:.8rem;margin-top:1rem}.print-block,.print-meta-grid .data-card,.print-session{background:#f7fbff;border:1px solid rgba(11,26,41,.08);box-shadow:none}.print-session-stack{display:grid;grid-gap:1rem;gap:1rem;margin-top:1.2rem}.print-session{border-radius:1rem;padding:1rem}.print-block-top,.print-session-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.print-block{border-radius:.9rem;padding:.9rem;margin-top:.9rem}.print-table-wrap{overflow:hidden;border-radius:.8rem;border:1px solid rgba(11,26,41,.08);margin-top:.8rem}.print-table{width:100%;border-collapse:collapse;background:#fff}.print-table td,.print-table th{text-align:left;padding:.8rem .85rem;border-bottom:1px solid rgba(11,26,41,.08);vertical-align:top}.print-table th{background:#eff7ff;color:#35506a;font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}@media print{body,html{background:#fff!important;color:#000!important}.no-print,.site-header{display:none!important}.content-wrap,.print-shell{width:100%;margin:0;padding:0}.print-page{border-radius:0;box-shadow:none;padding:0}.print-logo-stack{grid-template-columns:8rem 1fr;align-items:start}.print-team-logo-wrap{width:100%;height:auto;aspect-ratio:1}.print-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.print-block,.print-meta-grid .data-card,.print-session{break-inside:avoid;page-break-inside:avoid}}@media (max-width:1040px){.content-grid,.form-grid,.hero-grid,.plan-grid,.portal-grid,.print-header,.print-meta-grid,.roster-grid,.stat-grid,.value-grid{grid-template-columns:1fr}.sidebar-card{position:static}.message-bubble{max-width:100%}.message-meta{flex-direction:column;align-items:flex-start}}@media (max-width:720px){.site-header{padding:1rem}.brand-lockup,.site-header{align-items:flex-start;flex-direction:column}.content-wrap{width:min(100% - 1rem,1180px);padding-top:1rem}.auth-card,.content-card,.data-card,.hero-card,.sidebar-card,.stat-card{padding:1rem;border-radius:1.2rem}.hero-title{font-size:2.3rem}}