.swat-my-weekend{margin:10px 0 18px;background:#fff;border:1px solid #d5dbe1;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(0,0,0,.055)}
.swat-my-weekend-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 15px 12px;background:linear-gradient(135deg,#111419,#1d2229);color:#fff}
.swat-my-weekend-head h1{margin:.08rem 0 0;font-family:"Politica XP","Arial Narrow",sans-serif;font-size:2rem;line-height:.95;letter-spacing:-.025em}
.swat-my-weekend-head p:last-child{margin:.45rem 0 0;max-width:420px;color:#b9c0c8;font-size:.75rem;line-height:1.4}
.swat-my-weekend-head>button{flex:0 0 auto;border:1px solid rgba(255,255,255,.22);border-radius:9px;background:transparent;color:#fff;padding:9px 10px;font-size:.6rem;font-weight:950}
.swat-itinerary-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:10px 12px 0;background:#fff}
.swat-itinerary-tabs button{min-width:0;min-height:52px;border:1px solid #d7dce2;border-radius:11px;background:#f7f8f9;padding:7px 6px;color:#333a42;text-align:center}
.swat-itinerary-tabs button strong{display:block;font-size:.58rem;line-height:1.15;white-space:normal}
.swat-itinerary-tabs button span{display:block;margin-top:3px;color:#77808a;font-size:.54rem;font-weight:900;letter-spacing:.08em}
.swat-itinerary-tabs button.is-active{border-color:#b58b00;background:#fff5c8;box-shadow:inset 0 0 0 1px #b58b00;color:#16191d}
.swat-itinerary-tabs button.is-active span{color:#695100}
.swat-followed-chips{display:flex;gap:7px;overflow-x:auto;padding:10px 12px 0}
.swat-followed-chip{flex:0 0 auto;display:flex;align-items:center;gap:7px;min-height:34px;border:1px solid #d3d9df;border-radius:999px;background:#f6f7f8;padding:5px 9px 5px 10px;color:#23272c;font-size:.68rem;font-weight:900}
.swat-followed-chip em{font-style:normal;font-size:1rem;line-height:1;color:#69717b}
.swat-team-tone-1{border-left:4px solid #b68b00!important}.swat-team-tone-2{border-left:4px solid #1c6b9c!important}.swat-team-tone-3{border-left:4px solid #6b4d91!important}
.swat-smart-alert-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 12px 0;padding:11px;border-radius:12px;background:#fff8dc;border:1px solid #ead68c}
.swat-smart-alert-row>div{display:grid;gap:1px}.swat-smart-alert-row strong{font-size:.68rem}.swat-smart-alert-row span{font-size:.64rem;color:#6a6250;line-height:1.35}
.swat-smart-alert-row button{flex:0 0 auto;border:0;border-radius:8px;background:#111419;color:#fff;padding:8px 9px;font-size:.6rem;font-weight:950}.swat-smart-alert-row button.is-on{background:#137746}
.swat-my-weekend-empty{margin:12px;padding:18px;border:1px dashed #c9ced4;border-radius:13px;text-align:center;background:#fafbfb}
.swat-my-weekend-empty strong{font-size:.8rem}.swat-my-weekend-empty p{margin:.45rem auto .85rem;max-width:420px;color:#68717b;font-size:.75rem}.swat-my-weekend-empty button{border:0;border-radius:9px;background:#f6c515;padding:10px 13px;color:#111;font-size:.66rem;font-weight:950}
.swat-weekend-timeline{padding:12px}.swat-itinerary-day{display:flex;align-items:baseline;gap:7px;margin:13px 2px 7px}.swat-itinerary-day strong{font-size:.73rem;letter-spacing:.08em}.swat-itinerary-day span{font-size:.66rem;color:#747d87}
.swat-itinerary-game{display:grid;grid-template-columns:72px minmax(0,1fr);gap:11px;position:relative;padding:13px 4px;border-top:1px solid #e6e9ec}.swat-itinerary-game:first-of-type{border-top:0}
.swat-itinerary-time{display:grid;align-content:start;gap:4px;padding-top:2px}.swat-itinerary-time strong{font-size:.9rem;white-space:nowrap}.swat-itinerary-time span{display:inline-flex;width:max-content;padding:3px 6px;border-radius:999px;background:#e8ebee;color:#5d6670;font-size:.55rem;font-weight:950;letter-spacing:.06em}
.swat-itinerary-game.is-live .swat-itinerary-time span{background:#dff5e9;color:#08683a}.swat-itinerary-game.is-delayed .swat-itinerary-time span{background:#fff0cd;color:#8b5700}.swat-itinerary-game.is-cancelled .swat-itinerary-time span{background:#fbe3e0;color:#9a2c24}
.swat-itinerary-team{display:inline-flex;max-width:100%;padding:3px 7px;border-radius:6px;background:#f3f4f5;font-size:.62rem;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.swat-itinerary-main h3{margin:.34rem 0 .15rem;font-size:1.02rem;line-height:1.15}.swat-itinerary-main p{margin:.18rem 0;font-size:.76rem;color:#444c55}.swat-itinerary-main small{display:block;color:#7a828c;font-size:.64rem}
.swat-itinerary-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:8px}.swat-itinerary-actions a{display:inline-flex;align-items:center;min-height:32px;padding:5px 8px;border:1px solid #d0d5db;border-radius:8px;text-decoration:none;font-size:.58rem;font-weight:950;color:#514000}
.swat-weekend-change{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px;padding:10px 11px;border-radius:10px;background:#fff4c7;border:1px solid #e7cf73}.swat-weekend-change strong{font-size:.64rem}.swat-weekend-change span{font-size:.62rem;color:#6e6040}
.swat-itinerary-empty{padding:18px 8px;text-align:center}.swat-itinerary-empty strong{font-size:.76rem}.swat-itinerary-empty p{margin:.4rem 0;color:#69717a;font-size:.73rem}
.swat-next-events{padding:4px 12px 14px}.swat-next-events-head{margin:12px 1px 8px}.swat-next-events-head h2{margin:.1rem 0;font-family:"Politica XP","Arial Narrow",sans-serif;font-size:1.55rem}
.swat-next-event-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border-radius:12px;background:#111419;color:#fff;margin-top:8px}.swat-next-event-card span{color:#f6c515;font-size:.6rem;font-weight:950}.swat-next-event-card h3{margin:.2rem 0;font-size:.9rem}.swat-next-event-card p{margin:0;color:#b8c0c8;font-size:.68rem}.swat-next-event-card>div:last-child{display:grid;gap:6px;flex:0 0 auto}.swat-next-event-card a,.swat-next-event-card button{border:1px solid #454b54;border-radius:7px;background:transparent;color:#fff;padding:7px 8px;text-decoration:none;text-align:center;font-size:.55rem;font-weight:950}.swat-next-event-card button{background:#f6c515;color:#111;border-color:#f6c515}
body.swat-team-picker-open{overflow:hidden}.swat-team-picker[hidden]{display:none}.swat-team-picker{position:fixed;inset:0;z-index:300;display:grid;align-items:end}.swat-team-picker-backdrop{position:absolute;inset:0;background:rgba(4,7,11,.64);backdrop-filter:blur(3px)}.swat-team-picker-sheet{position:relative;z-index:1;width:min(100%,640px);max-height:min(78vh,720px);margin:0 auto;background:#fff;border-radius:20px 20px 0 0;padding:16px 14px calc(16px + env(safe-area-inset-bottom));overflow:auto;box-shadow:0 -20px 60px rgba(0,0,0,.25)}
.swat-team-picker-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.swat-team-picker-head h2{margin:.05rem 0;font-family:"Politica XP","Arial Narrow",sans-serif;font-size:1.7rem}.swat-team-picker-head button{border:0;background:#111419;color:#fff;border-radius:8px;padding:8px 10px;font-size:.62rem;font-weight:950}.swat-team-picker-help{margin:.5rem 0 12px;color:#68717a;font-size:.72rem}
.swat-team-search span{display:block;margin-bottom:5px;font-size:.64rem;font-weight:900}.swat-team-search input{width:100%;min-height:48px;border:1px solid #cbd1d7;border-radius:10px;padding:0 11px;font-size:16px}
.swat-team-picker-list{display:grid;gap:6px;margin-top:10px}.swat-team-pick-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;border:1px solid #dbe0e5;border-radius:11px;background:#fff;padding:9px 11px;text-align:left}.swat-team-pick-row span{display:grid}.swat-team-pick-row strong{font-size:.78rem}.swat-team-pick-row small{color:#77808a;font-size:.62rem}.swat-team-pick-row em{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eef0f2;font-style:normal;font-weight:950}.swat-team-pick-row.is-followed{border-color:#b28a00;background:#fffaf0}.swat-team-pick-row.is-followed em{background:#f6c515;color:#111}
.swat-team-picker-count{position:sticky;bottom:0;margin-top:10px;padding:9px 4px;background:#fff;text-align:center;color:#69717a;font-size:.66rem;font-weight:800}.swat-picker-empty{padding:18px;text-align:center;color:#69717a;font-size:.72rem}
@media(min-width:700px){.swat-itinerary-game{grid-template-columns:96px minmax(0,1fr)}.swat-team-picker{align-items:center}.swat-team-picker-sheet{border-radius:20px;max-height:80vh}.swat-my-weekend-head{padding:18px}.swat-weekend-timeline{padding:14px 18px}}