/* Squadistry 2.1 — energetic, layered midnight-blue + orange. No external fonts/assets. */
:root {
  color-scheme: dark;
  --bg:#07152c; --surface:#0d2241; --surface-2:#102d54; --surface-3:#193a65;
  --line:#294664; --ink:#f5f9ff; --muted:#b6c9dd; --subtle:#8aa9c7;
  --accent:#ff9d43; --accent-dark:#482f1f; --success:#86e7bd;
  --squad-glow:#1d7bdb; --squad-blue:#65c9fc;
}
html {scrollbar-color:#315678 #061326}
body {
  background:radial-gradient(ellipse 56% 45% at 7% -7%,rgba(24,115,226,.29),transparent 75%),
             radial-gradient(ellipse 52% 46% at 104% 22%,rgba(13,83,176,.19),transparent 75%),
             radial-gradient(ellipse 38% 35% at 52% 110%,rgba(255,142,38,.055),transparent 85%),#07152c;
  background-attachment:fixed; color:#f5f9ff;
}
::selection{background:#ff9939;color:#061a34}
:focus-visible{outline:3px solid #ffc36c!important;outline-offset:3px}
.site-header{background:linear-gradient(90deg,rgba(7,24,50,.93),rgba(13,36,74,.85));border-color:#2a466b;box-shadow:0 15px 40px #0002}
.brand-period,.brand-symbol,.eyebrow,.tip-label,.card-topline,.mode-emoji,.nav-count,.section-kicker,.ghost-link,.text-button,.mini-icon{color:var(--accent)}
.brand-symbol{background:linear-gradient(145deg,#ffc06f,#ff8b24);color:#081c39;box-shadow:0 0 24px #ff983343}
.nav-link,.icon-button{color:#bed0e3}.nav-link:hover,.nav-link.is-active{background:#143760;color:#fff}
.icon-button{border-color:#2f5274}.icon-button:hover{background:#193c65}
.mode-switch{background:#102946;border-color:#315476}.mode{color:#b9d2ee}.mode.is-active{background:linear-gradient(120deg,#184c85,#15335c);color:#fff;box-shadow:inset 0 0 0 1px #4e83b18f}
.intro h1 span{background:linear-gradient(95deg,#ffbe6d,#ff8d28 63%,#ffd39c);-webkit-background-clip:text;background-clip:text;color:transparent}
.intro-secondary{color:#afc9e5}
.filters-panel,.tips-column,.editor-panel,.profile-preview-block,.pilot-profile-wrap,.settings-panel,.auth-panel,.next-step-card{
  background:linear-gradient(150deg,rgba(17,49,86,.96),rgba(8,27,55,.98));border-color:#345271;
  box-shadow:0 18px 48px rgba(0,8,26,.15);
}
.filters-panel h2{color:#fff}.section-kicker{color:#ffb86a}
.required-pill{background:#50331f;color:#ffcf97}.field>span{color:#e2edf7}
.field select,.field input,.setting-row select,.game-search,.extra-game-tools select{
  background-color:#0a2445;color:#f5f9ff;border-color:#375878;
}
.field select:hover,.field input:hover{border-color:#71a4d6}
.filter-summary,.aside-rule{border-color:#335377}
.summary-icon{background:#4c301f;color:#ffb45f}
.secondary-btn,.quiet-btn{background:#123a65;border:1px solid #4679a5;color:#daebff}
.secondary-btn:hover,.quiet-btn:hover{background:#205184;border-color:#7fc0ff}
.primary-button,.swipe-like,.pilot-chat-form button{
  background:linear-gradient(120deg,#ffb25c,#ff8b22);color:#10223c;border:1px solid #ffc26c;
  box-shadow:0 8px 28px rgba(255,131,35,.19);font-weight:800;
}
.primary-button:hover,.swipe-like:hover,.pilot-chat-form button:hover{background:linear-gradient(120deg,#ffcb86,#ffa340)}
.real-discovery{background:linear-gradient(125deg,#153b70 0%,#0d2b57 45%,#091d3b 100%);border-color:#4375a6;box-shadow:0 28px 74px #00102b55}
.real-discovery:before{content:"";position:absolute;pointer-events:none;inset:0;background:linear-gradient(132deg,transparent 44%,rgba(78,164,244,.065) 46%,transparent 48%,transparent 58%,rgba(255,157,67,.06) 60%,transparent 62%)}
.real-discovery-glow{background:radial-gradient(circle,rgba(17,135,252,.39),rgba(250,153,66,.12) 39%,transparent 70%);width:520px;height:520px}
.real-discovery-mark{color:#ffd49e;border-color:#ffba6f73;background:linear-gradient(135deg,#ff993f52,#147ee54e);box-shadow:0 12px 40px #ff993018}
.real-discovery h2 em{color:#ffb562}.real-status{color:#d6eaff}.real-filter-pill{background:#123963b8;border-color:#6a92bb88;color:#e8f5ff}
.real-filter-pill>span:first-child,.real-discovery-foot>span:first-child{color:#ffb86e}
.real-discovery p{color:#c6d8eb}.real-discovery-foot{color:#bfcee1}
.card-topline{color:#ffb468}
.pilot-person,.match-card,.own-ranks-box,.extra-game-row,.account-preview,.expanded-details{background:#102849;border-color:#375777}
.pilot-banner{background:radial-gradient(circle at 84% 19%,#2366b6 0%,transparent 60%),linear-gradient(125deg,#133966,#08203e)}
.pilot-banner span{color:#ffbf73}.pilot-identity{border-color:#355575}.pilot-avatar,.pilot-chat-avatar{background:#1d5590;color:#fff}
.pilot-score,.compatibility{background:#163a66;color:#fff;border-color:#4375a1}.pilot-score strong,.compatibility strong{color:#ffba73}
.pilot-criteria{background:#0c2345;border-color:#30557d}.pilot-criteria>div{border-color:#254b71}
.pilot-tabs{background:#0d2748;border-color:#37597a}.pilot-tabs button{color:#d0e3f7}.pilot-tabs button.is-active{background:#23588c;color:#fff}
.pilot-empty,.pilot-gate{background:linear-gradient(125deg,#112f58,#0b2241);border-color:#37638c;color:#d5e6f8}
.pilot-conversation,.pilot-chat,.pilot-chat-head,.pilot-chat-list,.pilot-chat-form{background:#102847;border-color:#345779;color:#e6f3ff}
.pilot-bubble{background:#20476c;color:#fff}.pilot-bubble.mine{background:#215da1}
.pilot-profile-wrap{max-width:1000px;margin:0 auto;padding:clamp(18px,3vw,33px);border-radius:23px;position:relative;overflow:hidden}
.pilot-profile-wrap:before{content:"";position:absolute;right:-140px;top:-180px;width:380px;height:380px;background:radial-gradient(circle,rgba(30,121,218,.18),transparent 70%);pointer-events:none}
.pilot-profile-wrap h2{font-size:clamp(26px,3vw,38px);letter-spacing:-.045em;margin:12px 0 6px}
.pilot-profile-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.pilot-check input,.auth-consent input{accent-color:#ff9d43}
.legal-preview-banner{background:#0e2d51;color:#d4e7f8;border-color:#355e86}.legal-preview-banner a{color:#ffc681}
.legal-footer-links a{color:#a9cce9}.legal-footer-links a:hover{color:#ffd39e}
.extra-chip,.meta-chip{background:#173658;border-color:#385a81;color:#d4e8ff}
.extra-game-header button,.game-search-toggle{color:#ffbb77}
.extra-game-row small{color:#a8c5e1}
.auth-notice,.auth-signup-status{background:#123356;border-color:#426c94;color:#d7e9fa}
.auth-modes{background:#0b2444;border-color:#355b7d}
.auth-mode.is-active{background:#235b95;color:#fff}
.auth-entry{background:#143b66;border-color:#4679ac;color:#fff}
.mobile-tabbar{background:#081d3aee;border-top-color:#315778}.mobile-nav-item{color:#aac5df}.mobile-nav-item.is-active{color:#ffac55}
.next-step-card{background:linear-gradient(135deg,#143d6d,#0b2448);border-color:#376596}.next-step-card .next-step-number{color:#ffb05a}
/* Player-owned listing */
.listing-topline,.listing-rules-heading,.listing-action-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.listing-kicker{font-size:10px;letter-spacing:.18em;color:#ffb76b;font-weight:850}
.listing-badge{border:1px solid #4279ac;border-radius:100px;color:#d4eaff;background:#153f69;padding:7px 10px;font-size:10px;font-weight:750;letter-spacing:.04em}
.listing-rules{margin:27px 0 20px;padding:22px;background:linear-gradient(135deg,#102e53,#0b2546);border:1px solid #376189;border-radius:19px}
.listing-rules-heading{align-items:flex-start}.listing-rules-heading h3{font-size:21px;letter-spacing:-.025em;margin:5px 0}.listing-rules-heading p{margin:0 0 15px;max-width:580px;line-height:1.65}
.rule-counter{color:#ffd5a5;background:#50331f;border:1px solid #98602d;padding:8px 11px;border-radius:100px;font-size:11px;font-weight:850;white-space:nowrap}
.pilot-rule-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:12px 0}
.listing-rule-row{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid #365d81;border-radius:12px;background:#102b4e}
.listing-rule-label{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700;color:#eef5ff;min-width:0}
.listing-rule-label small{font-size:10px;color:#9ebcdb;font-weight:500;overflow-wrap:anywhere}
.listing-rule-row select{font-size:11px;max-width:128px;min-height:37px;border-radius:9px;color:#e8f3ff;background:#123c69;border:1px solid #4b79a3;padding:7px 8px;flex:none}
.listing-preview{margin:18px 0;padding:17px;border:1px solid #375d84;background:#091e3b;border-radius:13px}
.listing-rule-legend{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;color:#abcce8}.listing-rule-legend span{display:flex;align-items:center;gap:7px}
.listing-rule-legend i{display:block;width:10px;height:10px;border-radius:50%}.legend-orange{background:#ffa645}.legend-blue{background:#59b7fb}
.published-rules{display:grid;gap:13px;margin:16px 0}.published-rule-title{font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.095em;color:#ffe0b3}.published-rule-title span{color:#b5cee5;font-weight:500;text-transform:none;letter-spacing:0}
.published-rule-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.published-rule{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;line-height:1.4;border:1px solid #4a74a0;border-radius:10px;padding:7px 10px;font-size:11px;background:#142e50;color:#dbeeff}
.published-rule strong{font-weight:830}.published-rule.is-must{border-color:#aa6730;background:#48301e;color:#ffe0b5}.published-rule.is-prefer{border-color:#3e86bd;background:#153d6a;color:#d4efff}
.published-rule-empty{color:#8daaca;font-size:11px;font-style:italic}
.pilot-visibility{border:1px solid #4d7499;background:#102d50;padding:14px;border-radius:13px;align-items:flex-start}
.pilot-visibility input{margin-top:3px;width:17px;height:17px;flex:none}.pilot-visibility span{display:flex;flex-direction:column;gap:4px}.pilot-visibility small{font-size:11px;color:#aec6df}
.listing-action-row{justify-content:flex-start;margin-top:18px}.listing-action-row button{min-height:44px}
#pilot-listing-feedback{min-height:22px;margin:12px 0 0}
#pilot-card .published-rules{padding:8px 18px 12px;margin:0}
#pilot-card .published-rule{font-size:10px}
#pilot-setup .field>span{color:#e4f0ff}
@media(max-width:900px){.pilot-profile-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.pilot-profile-fields,.pilot-rule-fields{grid-template-columns:1fr}.pilot-profile-wrap{padding:19px}.listing-rules{padding:15px}.listing-rules-heading{gap:8px}.listing-action-row{display:flex;flex-direction:column;align-items:stretch}.listing-action-row button{justify-content:center;width:100%}.pilot-tabs{overflow-x:auto;justify-content:flex-start}.pilot-tabs button{min-width:max-content}}
@media(max-width:430px){.listing-rule-row{padding:10px}.listing-rule-row select{max-width:118px}.published-rule-list{gap:6px}.real-discovery-mark{width:48px;height:48px}}
/* Legal pages retain their document layout while sharing the blue/orange identity. */
.shell .mast,.shell .doc-head,.shell .links,.shell>.footer{border-color:#315173}
.shell .logo i,.shell .eyebrow,.shell .back,.shell .links a,.shell a[data-contact]{color:#ffb564}
.shell .mast nav a{color:#c6def5}
.shell h1,.shell h2,.shell strong{color:#f7fbff}
.shell p,.shell li{color:#b7cfe4}
.shell .draft{background:#332b27;border-color:#a76b34;color:#ffdda9}
.shell .info{background:#102a4b;border-color:#375c80}
.shell .action{background:#ff9e43;color:#122441}
.shell .action.alt{background:#184777;color:#e9f6ff;border-color:#467ca7}
/* Legacy profile-preview tones and dialogs receive the same theme. */
.cover,.cover[data-tone="purple"],.cover[data-tone="blue"]{background:radial-gradient(circle at 92% 17%,#ff9d4366,transparent 45%),linear-gradient(115deg,#103d75,#1c6bac 65%,#0f345c)}
.avatar[data-tone="purple"],.avatar[data-tone="blue"]{background:linear-gradient(135deg,#1a5da1,#ff9845);border-color:#102a4b}
.modal-panel{background:linear-gradient(150deg,#123963,#081f3e);border-color:#3b6288;color:#f5f9ff}
.modal-overlay{background:#031020ce}
.rule-row{border-color:#335b82;background:#0d2a4d}
.rule-row select{background:#103762;color:#e9f5ff;border-color:#467da8}
.modal-intro,.settings-foot{color:#c2d8ed}
.auth-message[data-kind="warning"],.auth-error{color:#ffd0a3}
.editor-heading,.tip-hero span,.tip-rule{color:#ffb365}
.upload-box,.file-row{background:#112f55;border-color:#38648a}
.upload-mark{color:#ffbb75}
@media(max-width:760px){body{background-attachment:scroll}}

/* Squadistry 2.1.1 — weekly playtime, consistent with the blue/orange release. */
.availability-editor,.listing-availability{border:1px solid #29517c;border-radius:17px;background:linear-gradient(155deg,rgba(17,57,99,.88),rgba(9,25,52,.95));padding:20px;margin-top:22px;box-shadow:inset 0 1px 0 rgba(150,203,255,.1)}
.availability-editor .editor-heading{margin-top:0}.availability-zone{max-width:360px;margin:18px 0}.availability-zone select{min-height:46px;width:100%;background:#0b2444;border:1px solid #3d6b9b;border-radius:10px;color:#edf6ff;padding:10px;font:inherit}
.availability-days{display:grid;gap:8px}.availability-day{display:grid;grid-template-columns:minmax(112px,1.1fr) minmax(0,1fr) minmax(0,1fr);align-items:center;gap:14px;border:1px solid #244568;border-radius:12px;background:rgba(6,19,40,.58);padding:10px 12px}
.availability-check{display:flex;align-items:center;gap:10px;color:#eef5ff;font-weight:680;font-size:13px}.availability-check input{width:18px;height:18px;accent-color:#ff9d43;flex:none}
.availability-time{display:flex;align-items:center;gap:8px;color:#9fc6ee;font-size:11px}.availability-time input{min-width:0;width:100%;min-height:38px;border:1px solid #37618a;border-radius:9px;background:#102c50;color:#fff;padding:7px;font:inherit;color-scheme:dark}
.availability-time input:disabled{opacity:.4;cursor:not-allowed}.availability-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}.availability-summary{font-size:12px;line-height:1.7;color:#c2dcf4;margin-top:12px;overflow-wrap:anywhere}
.listing-availability{margin:22px 0;padding:20px}.listing-availability .pilot-check{margin:15px 0 0}.listing-availability .pilot-check input{accent-color:#ff9d43}.published-availability{display:flex;flex-direction:column;gap:5px;border-top:1px solid #294e75;margin:0 20px 12px;padding:16px 4px;color:#eef6ff;font-size:13px}.published-availability strong{color:#ffbd7d;font-size:12px;text-transform:uppercase;letter-spacing:.8px}.published-availability small{font-size:11px;color:#a5c2df}
@media(max-width:570px){.availability-day{grid-template-columns:1fr 1fr;gap:8px;padding:12px}.availability-check{grid-column:1 / -1}.availability-time{flex-direction:column;align-items:stretch}.availability-time input{width:100%;min-height:44px;font-size:14px}.availability-editor,.listing-availability{padding:15px}.availability-actions .secondary-btn{width:100%;justify-content:center}}
