:root{color:#241512;font-synthesis:none;text-rendering:optimizelegibility;background:#f5f1e9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 14% 8%,#b91c1c17,#0000 30%),radial-gradient(circle at 86% 0,#14b8a614,#0000 28%),#f5f1e9;min-width:320px;margin:0;overflow-x:hidden}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{width:min(1480px,100%);max-width:100%;margin:0 auto;padding:18px;overflow-x:hidden}.topbar{background:#fffcf6f0;border:1px solid #2415121f;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;min-height:76px;margin-bottom:16px;padding:16px 18px;display:flex}.brand-lockup,.topbar-actions,.source-strip,.tool-row,.filter-row,.profile-row,.hero-main,.hero-card-actions,.save-row,.share-row,.saved-heading,.source-link,.primary-button,.secondary-button,.account-pill,.freshness-badge,.locked-item{align-items:center;display:flex}.brand-lockup{gap:14px;min-width:0}.brand-mark{color:#fff7ed;background:#b91c1c;border-radius:8px;flex:none;place-items:center;width:42px;height:42px;font-weight:950;display:grid}.eyebrow{color:#b91c1c;letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:.74rem;font-weight:950}h1,h2,p{margin:0}h1{color:#241512;letter-spacing:0;font-size:clamp(1.35rem,3vw,2.2rem);line-height:1.05}h2{color:#241512;letter-spacing:0;font-size:1.08rem;line-height:1.2}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.freshness-badge,.account-pill{color:#3a2923;background:#f8efe3;border:1px solid #2415121f;border-radius:8px;gap:8px;min-height:38px;padding:0 12px;font-size:.88rem;font-weight:850;text-decoration:none}.account-link:hover,.source-link:hover{border-color:#b91c1c}.command-grid{grid-template-columns:minmax(330px,.92fr) minmax(0,1.58fr);align-items:start;gap:16px;min-width:0;display:grid}.planner-panel,.roster-panel,.trust-card{background:#fffcf6f2;border:1px solid #2415121f;border-radius:8px;min-width:0;box-shadow:0 18px 48px #24151212}.planner-panel{padding:16px;position:sticky;top:16px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.profile-row{background:#f2e7d8;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px;padding:10px}.profile-row>span{color:#7b6256;text-transform:uppercase;align-items:center;gap:6px;min-height:30px;font-size:.74rem;font-weight:950;display:inline-flex}.profile-row>div{flex-wrap:wrap;flex:1;justify-content:flex-end;gap:6px;min-width:0;display:flex}.profile-chip{color:#4a342b;background:#fffaf3;border:1px solid #24151221;border-radius:8px;min-height:30px;padding:0 9px;font-size:.78rem;font-weight:900}.profile-chip.active{color:#0f766e;background:#ccfbf1;border-color:#14b8a6}.icon-button,.star-button{color:#60473f;background:#fffaf3;border:1px solid #2415121f;border-radius:8px;place-items:center;width:34px;height:34px;display:inline-grid}.icon-button:hover,.star-button:hover,.icon-button.subtle:hover{color:#b91c1c;border-color:#b91c1c}.squad-slots{gap:8px;display:grid}.squad-slot{color:#fff7ed;text-align:left;background:#2a1d1a;border:1px solid #2415121f;border-radius:8px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-width:0;min-height:64px;padding:10px;display:grid}.squad-slot.active{border-color:#f3c16c;box-shadow:0 0 0 2px #f3c16c33}.slot-number,.hero-initials{color:#241512;background:#f3c16c;border-radius:8px;place-items:center;width:36px;height:36px;font-weight:950;display:grid}.slot-copy{min-width:0}.slot-copy strong,.hero-main strong,.saved-item strong,.locked-item strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.slot-copy span,.hero-main span span,.saved-item span,.locked-item span,.coverage-note,.empty-note,.trust-card p{color:#7b6256;font-size:.9rem;line-height:1.45}.slot-copy span{color:#e8ded0}.slot-add,.slot-clear{color:#fff7ed;background:#fff7ed1f;border-radius:7px;justify-content:center;align-items:center;min-width:38px;min-height:32px;font-size:.78rem;font-weight:900;display:inline-flex}.role-meter{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.role-meter div{background:#f2e7d8;border-radius:8px;min-width:0;min-height:72px;padding:10px}.role-meter span,.saved-heading span,.detail-list dt{color:#7b6256;text-transform:uppercase;font-size:.72rem;font-weight:950}.role-meter strong{color:#241512;margin-top:4px;font-size:1.6rem;display:block}.coverage-note{color:#4a342b;background:#fff6e7;border-radius:8px;margin-top:12px;padding:10px 12px}.readiness-card{background:#ecfdf5;border:1px solid #14b8a642;border-radius:8px;grid-template-columns:86px minmax(0,1fr);align-items:stretch;gap:10px;margin-top:12px;padding:10px;display:grid}.readiness-score{color:#f0fdfa;background:#0f766e;border-radius:8px;place-items:center;min-height:74px;display:grid}.readiness-score span{color:#ccfbf1;text-transform:uppercase;font-size:.66rem;font-weight:950}.readiness-score strong{color:#fff;font-size:1.9rem;line-height:1}.readiness-copy{align-content:center;gap:5px;min-width:0;display:grid}.readiness-copy strong{color:#134e4a;font-size:.98rem}.readiness-copy span,.share-note{color:#47645e;font-size:.84rem;line-height:1.4}.diagnostic-list{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.diagnostic-list li{color:#4a342b;background:#fff6e7;border-radius:8px;min-width:0;padding:9px 10px;font-size:.86rem;font-weight:760;line-height:1.35}.save-row{gap:10px;margin-top:14px}.save-row label{flex:1;gap:6px;min-width:0;display:grid}.save-row label span{color:#7b6256;font-size:.78rem;font-weight:900}input{color:#241512;background:#fffaf3;border:1px solid #24151226;border-radius:8px;outline:none;width:100%;min-height:40px;padding:0 12px}input:focus,button:focus-visible,a:focus-visible{outline-offset:2px;outline:2px solid #14b8a6}.primary-button{color:#fff7ed;background:#b91c1c;border:0;border-radius:8px;justify-content:center;gap:8px;min-height:40px;padding:0 13px;font-weight:900}.secondary-button{color:#241512;background:#fffaf3;border:1px solid #24151221;border-radius:8px;justify-content:center;gap:8px;min-height:40px;padding:0 12px;font-weight:900}.secondary-button:hover{color:#0f766e;border-color:#14b8a6}.primary-button.full{width:100%;margin-top:14px}.saved-panel{border-top:1px solid #2415121f;margin-top:16px;padding-top:14px}.share-row{background:#f8efe3;border-radius:8px;flex-wrap:wrap;gap:10px;margin-top:10px;padding:10px}.share-row label{flex:1;gap:6px;min-width:0;display:grid}.share-row label span{color:#7b6256;font-size:.78rem;font-weight:900}.share-row input{text-overflow:ellipsis;overflow:hidden}.share-note{align-items:center;gap:6px;width:100%;display:inline-flex}.saved-heading{justify-content:space-between;gap:10px;margin-bottom:10px}.saved-list{gap:8px;display:grid}.saved-item{background:#f2e7d8;border-radius:8px;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:8px;padding:8px;display:grid}.saved-item>button:first-child{color:#241512;text-align:left;background:0 0;border:0;min-width:0}.icon-button.subtle{background:#fffaf3}.roster-panel{min-width:0;padding:16px}.source-strip{flex-wrap:wrap;gap:8px;margin-bottom:14px}.source-strip span{color:#0f766e;overflow-wrap:anywhere;background:#ecfdf5;border-radius:8px;align-items:center;gap:7px;max-width:100%;min-height:34px;padding:0 10px;font-size:.82rem;font-weight:900;display:inline-flex}.source-strip .error-chip{color:#be123c;background:#fff1f2}.tool-row{gap:10px;margin-bottom:12px}.search-box{flex:1;align-items:center;min-width:220px;display:flex;position:relative}.search-box svg{color:#7b6256;position:absolute;left:12px}.search-box input{padding-left:38px}.toggle-button,.filter-chip,.text-action{color:#4a342b;background:#fffaf3;border:1px solid #24151221;border-radius:8px;min-height:38px;font-weight:850}.toggle-button{align-items:center;gap:8px;padding:0 12px;display:inline-flex}.toggle-button.active,.filter-chip.active{color:#fff7ed;background:#b91c1c;border-color:#b91c1c}.filter-row{color:#7b6256;flex-wrap:wrap;gap:8px;margin-bottom:14px}.filter-chip{padding:0 12px}.roster-layout{grid-template-columns:minmax(0,1fr) minmax(260px,.46fr);align-items:start;gap:14px;display:grid}.hero-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;min-width:0;display:grid}.hero-card{background:#fffaf3;border:1px solid #2415121f;border-radius:8px;gap:10px;min-width:0;padding:10px;display:grid}.hero-card.selected{border-color:#14b8a6;box-shadow:0 0 0 2px #14b8a626}.hero-main{color:#241512;text-align:left;background:0 0;border:0;gap:10px;min-width:0}.hero-main>span:last-child{min-width:0}.hero-card-actions{justify-content:space-between;gap:8px}.text-action{padding:0 10px}.star-button.active{color:#241512;background:#f3c16c;border-color:#f3c16c}.role-tags{flex-wrap:wrap;gap:6px;display:flex}.role-tags.large{margin-top:12px}.role-chip{border-radius:999px;align-items:center;min-height:28px;padding:0 9px;font-size:.76rem;font-weight:950;display:inline-flex}.role-vanguard{color:#991b1b;background:#fee2e2}.role-duelist{color:#92400e;background:#fef3c7}.role-strategist{color:#0f766e;background:#ccfbf1}.role-flex{color:#3730a3;background:#e0e7ff}.detail-panel{background:#f8efe3;border:1px solid #2415121f;border-radius:8px;min-width:0;padding:14px;position:sticky;top:16px}.detail-list{gap:8px;margin:14px 0;display:grid}.detail-list div{background:#fffaf3;border-radius:8px;min-width:0;padding:10px}.detail-list dt,.detail-list dd{min-width:0;margin:0}.detail-list dd{overflow-wrap:anywhere;color:#241512;font-weight:800}.source-link{color:#241512;border:1px solid #24151221;border-radius:8px;justify-content:space-between;gap:10px;min-height:40px;padding:0 12px;font-weight:900;text-decoration:none}.trust-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:16px;margin-top:16px;display:grid}.trust-card{min-width:0;padding:16px}.source-list{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.source-list a{color:#241512;border:1px solid #2415121f;border-radius:8px;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:.86rem;font-weight:850;text-decoration:none;display:inline-flex}.locked-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.locked-item{background:#f2e7d8;border-radius:8px;align-items:flex-start;gap:10px;min-width:0;padding:10px}.locked-item svg{color:#b91c1c;flex:none;margin-top:2px}.empty-note{background:#fff6e7;border-radius:8px;padding:10px}.empty-note.wide{grid-column:1/-1}@media (width<=1120px){.command-grid,.trust-grid{grid-template-columns:1fr}.planner-panel,.detail-panel{position:static}}@media (width<=760px){.app-shell{padding:10px}.topbar,.tool-row,.save-row,.share-row{flex-direction:column;align-items:stretch}.profile-row{display:grid}.profile-row>div{justify-content:flex-start}.readiness-card{grid-template-columns:1fr}.topbar-actions{justify-content:flex-start}.command-grid{gap:10px}.role-meter{grid-template-columns:repeat(2,minmax(0,1fr))}.roster-layout,.locked-list,.hero-grid{grid-template-columns:1fr}.planner-panel,.roster-panel,.trust-card{padding:12px}.squad-slot{grid-template-columns:34px minmax(0,1fr) 34px;gap:8px}.slot-add,.slot-clear{min-width:30px;padding:0 4px}}
