:root{--green:#007050;--green-dark:#004f39;--orange:#f39200;--orange-dark:#d47d00;--bg:#f6faf8;--text:#17352d;--muted:#62736e;--line:#dce7e2;--danger:#b00020;--white:#fff;--shadow:0 16px 50px rgba(0,0,0,.10);--radius:18px}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:linear-gradient(180deg,#fff 0,var(--bg) 260px)}a{color:var(--green);text-decoration:none}a:hover{text-decoration:underline}.site-header{background:var(--green);color:#fff;border-bottom:5px solid var(--orange)}.header-inner{max-width:1120px;margin:0 auto;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:12px;color:#fff;font-weight:800;font-size:22px}.brand img{width:58px;height:auto}.site-header nav{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.site-header nav a{color:#fff;font-weight:650}.site-header nav a + a::before{content:"";display:inline-block;width:6px;height:6px;margin:0 12px 2px 0;border-radius:50%;background:var(--orange);vertical-align:middle}.container{max-width:1120px;margin:0 auto;padding:30px 18px}.hero{display:grid;grid-template-columns:1fr 270px;gap:24px;align-items:center;background:#fff;border-radius:var(--radius);padding:32px;box-shadow:var(--shadow)}.hero img{width:100%;max-width:250px;justify-self:center}.hero-logo{max-width:210px;padding:0;background:transparent}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 8px 24px rgba(0,0,0,.05)}.card h2,.panel h1,.panel h2{margin-top:0}.btn,button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;background:var(--orange);color:#fff;font-weight:800;padding:12px 18px;cursor:pointer;min-height:44px}.btn.secondary,button.secondary{background:var(--green)}.btn.ghost{background:#eef7f3;color:var(--green)}.btn.danger{background:var(--danger)}button:disabled{opacity:.55;cursor:not-allowed}form{display:grid;gap:18px}.field{display:grid;gap:7px}label{font-weight:750}.hint{font-size:14px;color:var(--muted)}input,textarea,select{width:100%;border:1px solid #cbd9d4;border-radius:12px;padding:12px 13px;font:inherit;background:#fff;color:var(--text)}textarea{min-height:110px}.required{color:var(--danger)}.notice{border-left:5px solid var(--orange);background:#fff7e9;padding:20px 22px;border-radius:12px;line-height:1.45;margin-bottom:18px}.success{border-left-color:var(--green);background:#eefaf5}.error{border-left-color:var(--danger);background:#fff1f3}.team-picker{position:relative}.team-search-results{border:1px solid var(--line);border-radius:12px;margin-top:6px;max-height:240px;overflow:auto;background:#fff;display:none;position:absolute;width:100%;z-index:20;box-shadow:var(--shadow)}.team-search-results button{display:block;width:100%;border-radius:0;background:#fff;color:var(--text);text-align:left;justify-content:flex-start;font-weight:600;border-bottom:1px solid #f0f4f2}.team-search-results button:hover{background:#f5fbf8}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.chip{display:inline-flex;align-items:center;gap:8px;background:#eaf6f1;color:var(--green-dark);padding:8px 10px;border-radius:999px;font-weight:700}.chip button{min-height:auto;padding:0;width:22px;height:22px;background:var(--green);font-size:16px}.other-team{display:none;margin-top:10px}.mode-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mode-card{border:2px solid var(--line);border-radius:16px;padding:14px;cursor:pointer}.mode-card input{width:auto;margin-right:8px}.mode-card:has(input:checked){border-color:var(--orange);box-shadow:0 0 0 4px rgba(243,146,0,.14)}.players{display:grid;gap:12px}.player-row{display:grid;grid-template-columns:110px 1fr 1fr 44px;gap:10px;align-items:end;padding:12px;background:#f8fbfa;border:1px solid var(--line);border-radius:16px}.upload-zone{border:2px dashed #c7d9d2;border-radius:12px;padding:12px;background:#fff;text-align:center;min-height:48px}.upload-zone.drag{border-color:var(--orange);background:#fff7e9}.upload-status{font-size:13px;color:var(--muted);margin-top:5px}.hidden{display:none!important}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:16px}.admin-table{width:100%;border-collapse:collapse;min-width:760px}.admin-table th,.admin-table td{padding:11px 13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.admin-table th{background:#f2f8f5}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}.photo-card{border:1px solid var(--line);border-radius:14px;padding:10px;background:#fff}.photo-card img{width:100%;height:180px;object-fit:cover;border-radius:10px;background:#eee}@media (max-width:760px){.header-inner{align-items:flex-start;flex-direction:column}.hero{grid-template-columns:1fr;padding:22px}.cards{grid-template-columns:1fr}.mode-grid{grid-template-columns:1fr}.player-row{grid-template-columns:1fr}.container{padding:20px 14px}.site-header nav{font-size:14px}.brand img{width:48px}}

.admin-section-title{margin-top:28px}.inline-form{display:inline;margin:0}.btn.small,button.small{min-height:34px;padding:7px 11px;font-size:13px}.click-row{cursor:pointer}.click-row:hover td{background:#fbfdfc}.team-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 22px}.team-summary div{border:1px solid var(--line);border-radius:14px;background:#f8fbfa;padding:13px}.team-summary span{display:block;color:var(--muted);font-size:13px;margin-bottom:4px}.team-summary strong{display:block}.photo-book{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}.player-card{border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.05);overflow:hidden}.player-photo{height:260px;background:#f1f5f3;display:flex;align-items:center;justify-content:center}.player-photo img{width:100%;height:100%;object-fit:cover}.no-photo{color:var(--muted);font-weight:750}.player-info{padding:13px 14px;display:flex;align-items:center;gap:10px}.shirt-number{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:34px;border-radius:999px;background:var(--green);color:#fff;font-weight:850}@media (max-width:760px){.team-summary{grid-template-columns:1fr}.photo-book{grid-template-columns:1fr}.player-photo{height:320px}}

/* Admin layout refinements */
.admin-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.admin-header h1{margin:0}.admin-logout{min-height:38px;padding:8px 14px;font-size:14px;line-height:1;border-radius:999px}.admin-section-title{margin-top:46px!important;margin-bottom:18px}.admin-table{margin:0}.table-wrap + .admin-section-title{margin-top:46px!important}
@media (max-width:760px){.admin-header{align-items:center}.admin-logout{min-height:36px;padding:8px 12px}}

/* Homepage refinements */
.home-hero{grid-template-columns:minmax(0,1fr) 250px}.home-hero h1{margin-top:0;margin-bottom:18px;font-size:34px}.home-hero p{max-width:760px;font-size:17px;line-height:1.45;margin-bottom:20px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.home-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:24px}.home-option{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px 28px;box-shadow:0 8px 24px rgba(0,0,0,.05);color:var(--text);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.home-option:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.09);border-color:rgba(0,112,80,.35)}.home-option h2{margin:6px 0 14px;font-size:26px}.home-option p{margin:0 0 20px;line-height:1.45}.option-kicker{display:inline-flex;color:var(--green);font-weight:850;font-size:14px;text-transform:uppercase;letter-spacing:.04em}.option-link{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:#fff;font-weight:850;border-radius:999px;padding:10px 15px}.home-option:first-child .option-link{background:var(--orange)}
@media (max-width:760px){.home-hero{display:block;padding:24px 20px;text-align:left}.home-hero .hero-logo{display:block;width:120px;max-width:42%;margin:0 0 18px 0;order:-1}.home-hero{display:flex;flex-direction:column}.home-hero .hero-logo{order:-1;align-self:flex-start}.home-hero h1{font-size:29px;margin-bottom:14px}.home-hero p{font-size:16px}.hero-actions .btn{width:100%}.home-options{grid-template-columns:1fr;gap:14px;margin-top:18px}.home-option{padding:22px 20px}.home-option h2{font-size:23px}.option-link{width:100%}}

.notice-list {
  margin: 8px 0 0 18px;
  padding: 0;
}

.notice-list li {
  margin: 4px 0;
  line-height: 1.45;
}
