/* No Defence app. Layout concept: one narrow column, black and green like the team kit; tabs switch between season, tries, games, recap and result entry */
:root{--bg:#0B0D0B;--surface:#141814;--line:#2A312A;--fg:#F2F4F0;--muted:#A8B0A6;--green:#15803D;--green-ink:#4ADE80;--on-green:#FFFFFF;--loss:#FDBA74;--chip:#1B211B;--warn:#FCD34D;
--display:'Anton',Impact,'Arial Narrow',sans-serif;--label:'Barlow Condensed','Arial Narrow',sans-serif;--body:'Barlow',system-ui,-apple-system,'Segoe UI',sans-serif;color-scheme:dark}
@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){--bg:#F5F6F2;--surface:#FFFFFF;--line:#D6DBD3;--fg:#0E120E;--muted:#4F574E;--green:#15803D;--green-ink:#166534;--on-green:#FFFFFF;--loss:#B45309;--chip:#ECEFE8;--warn:#92400E;color-scheme:light}}
:root[data-theme="light"]{--bg:#F5F6F2;--surface:#FFFFFF;--line:#D6DBD3;--fg:#0E120E;--muted:#4F574E;--green:#15803D;--green-ink:#166534;--on-green:#FFFFFF;--loss:#B45309;--chip:#ECEFE8;--warn:#92400E;color-scheme:light}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.45 var(--body)}
.wrap{max-width:560px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--green-ink);outline-offset:2px}
h2{margin:24px 0 8px;font:400 17px/1.2 var(--display);letter-spacing:2px;text-transform:uppercase;color:var(--green-ink)}
.muted{color:var(--muted)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));gap:10px;margin-top:16px}
.stat{background:var(--surface);border:1px solid var(--line);padding:12px 14px;border-radius:8px}
.stat b{display:block;font:400 34px/1 var(--display);font-variant-numeric:tabular-nums}
.stat span{font:600 13px var(--label);letter-spacing:2px;text-transform:uppercase;color:var(--muted)}
.card{background:var(--surface);border:1px solid var(--line);padding:16px;border-radius:8px}
.card .big{font:400 26px/1.15 var(--display);letter-spacing:1px;text-transform:uppercase}
.card .meta{font:600 16px var(--label);letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin-top:4px}
.row{display:grid;grid-template-columns:34px 82px minmax(0,1fr) auto;gap:10px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--line)}
.row.next{background:color-mix(in srgb,var(--green) 28%,transparent);padding-left:6px;padding-right:6px}
.row .rd{font:400 18px var(--display);color:var(--green-ink)}
.row .dt{font:600 17px var(--label);letter-spacing:1px;color:var(--muted)}
.row .opp{font-weight:600;overflow-wrap:anywhere}
.row .opp small{display:block;font-weight:400;color:var(--muted);font-size:14px}
.row .opp button{margin-top:4px}
.res{display:inline-block;font:700 16px var(--label);letter-spacing:1px;padding:2px 9px;white-space:nowrap;font-variant-numeric:tabular-nums}
.res.w{background:var(--green);color:var(--on-green)}
.res.l{border:1px solid var(--loss);color:var(--loss)}
.res.d{border:1px solid var(--muted);color:var(--fg)}
.res.x,.res.n{border:1px solid var(--line);color:var(--muted)}
.tr{display:grid;grid-template-columns:minmax(0,1fr) 60px 48px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.tr.head{font:600 13px var(--label);letter-spacing:1px;text-transform:uppercase;color:var(--muted)}
.tr .n,.tr .g{text-align:right}
.tr .n{font:400 20px var(--display)}
.bar{height:6px;background:var(--chip);margin-top:4px}
.bar i{display:block;height:100%;background:var(--green)}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.tags li{background:var(--chip);border:1px solid var(--line);padding:6px 12px;font-weight:500}
.btn{min-height:44px;padding:0 18px;font:700 17px var(--label);letter-spacing:2px;text-transform:uppercase;background:var(--green);color:var(--on-green);border:0;cursor:pointer}
.btn.alt{background:transparent;color:var(--fg);border:1px solid var(--line)}
.btn.sm{min-height:36px;padding:0 12px;font-size:14px}
.btn[disabled]{opacity:.55;cursor:default}
label.f{display:block;margin-top:14px;font:600 14px var(--label);letter-spacing:2px;text-transform:uppercase;color:var(--muted)}
input[type=text],input[type=number],input[type=date],select,textarea{display:block;width:100%;min-height:44px;margin-top:4px;padding:8px 10px;font:inherit;color:var(--fg);background:var(--bg);border:1px solid var(--line);border-radius:0}
textarea{min-height:200px;line-height:1.5}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.seg{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.seg label{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border:1px solid var(--line);background:var(--bg);font:600 16px var(--body);letter-spacing:0;text-transform:none;color:var(--fg);margin:0}
.seg input,.chip input{accent-color:#15803D;width:18px;height:18px;margin:0}
.step{display:grid;grid-template-columns:minmax(0,1fr) 44px 36px 44px;align-items:center;gap:6px;padding:4px 0;border-bottom:1px solid var(--line)}
.step button{height:44px;width:44px;font:700 22px var(--label);background:var(--chip);color:var(--fg);border:1px solid var(--line);cursor:pointer}
.step output{text-align:center;font:400 20px var(--display);font-variant-numeric:tabular-nums}
.chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px;margin-top:6px}
.chip{display:flex;align-items:center;gap:8px;min-height:44px;padding:0 10px;border:1px solid var(--line);background:var(--bg)}
.chk{margin-top:10px;font-weight:600}
.chk.warn,.msg.err{color:var(--warn)}
.msg{min-height:24px;margin-top:12px}
.lrow{display:grid;grid-template-columns:34px minmax(0,1fr) repeat(3,34px) 46px;gap:6px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}
.lrow.head{font:600 13px var(--label);letter-spacing:2px;text-transform:uppercase;color:var(--muted)}
.lrow.us{background:color-mix(in srgb,var(--green) 28%,transparent);padding-left:6px;padding-right:6px;font-weight:700}
.lrow .pos{font:400 18px var(--display);color:var(--green-ink)}
.lrow .num{text-align:right}
.lrow .pts{text-align:right;font:400 20px var(--display)}
.lrow.nowdl{grid-template-columns:34px minmax(0,1fr) 46px}
.ledit{display:grid;grid-template-columns:minmax(0,1fr) 54px 54px 54px 64px 40px;gap:6px;margin-top:6px;align-items:center}
.ledit input{margin-top:0;padding:8px 6px;min-width:0}
.ledit button{height:44px;background:var(--chip);color:var(--fg);border:1px solid var(--line);cursor:pointer;font:700 18px var(--label)}
.ledit.head{font:600 12px var(--label);letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-top:14px}
input[type=file]{display:block;width:100%;margin-top:6px;font:inherit;color:var(--fg)}
.top{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:12px;padding:calc(10px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-left,0px)) 10px;margin:0 calc(-1 * max(16px,env(safe-area-inset-left,0px)));background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top h1{margin:0;flex:none;line-height:0}
.top img{width:46px;height:auto;display:block}
.top .tt{flex:1;min-width:0}
.top .tt b{display:block;font:400 22px/1.05 var(--display);letter-spacing:1px;text-transform:uppercase}
.top .tt span{display:block;font:600 13px/1.3 var(--label);letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.top .add{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--green);color:var(--on-green);text-decoration:none}
.top .add[aria-current="page"]{outline:2px solid var(--green-ink);outline-offset:2px}
nav.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:6;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--line);padding:6px max(8px,env(safe-area-inset-left,0px)) calc(6px + env(safe-area-inset-bottom,0px))}
nav.tabbar div{display:flex;max-width:560px;margin:0 auto}
nav.tabbar a{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;padding:4px 0;color:var(--muted);text-decoration:none;font:600 12px/1 var(--body);letter-spacing:.2px}
nav.tabbar a i{display:grid;place-items:center;width:56px;height:30px;border-radius:15px}
nav.tabbar a svg{width:22px;height:22px}
nav.tabbar a[aria-current="page"]{color:var(--fg)}
nav.tabbar a[aria-current="page"] i{background:color-mix(in srgb,var(--green) 45%,transparent);color:var(--green-ink)}
.hero{margin-top:16px;padding:18px;border-radius:14px;background:linear-gradient(135deg,var(--green),color-mix(in srgb,var(--green) 55%,#000));color:#fff}
.hero small{font:600 13px var(--label);letter-spacing:2px;text-transform:uppercase;opacity:.85}
.hero b{display:block;margin-top:4px;font:400 30px/1.05 var(--display);text-transform:uppercase;letter-spacing:.5px}
.hero span{display:block;margin-top:6px;font-weight:500;opacity:.92}
.strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:12px;background:var(--surface);border:1px solid var(--line);border-radius:14px}
.strip a,.strip div{padding:12px 4px;text-align:center;color:inherit;text-decoration:none}
.strip>*+*{border-left:1px solid var(--line)}
.strip b{display:block;font:400 26px/1 var(--display);font-variant-numeric:tabular-nums}
.strip span{display:block;margin-top:4px;font:600 12px var(--label);letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}
.list{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:0 14px}
.li{display:flex;align-items:center;gap:12px;min-height:52px;border-bottom:1px solid var(--line)}
.li:last-child{border-bottom:0}
.li .k{flex:1;min-width:0}
.li .k small{display:block;color:var(--muted);font-size:14px}
.li .v{font:400 22px var(--display)}
.more{display:block;margin-top:8px;text-align:right;color:var(--green-ink);font-weight:600;text-decoration:none}
.foot{margin-top:28px;text-align:center;font:600 12px var(--label);letter-spacing:2px;text-transform:uppercase;color:var(--muted)}
.foot b{color:var(--green-ink)}
input[type=text],input[type=number],input[type=date],select,textarea,.btn,.seg label,.chip,.step button,.ledit button,.tags li{border-radius:10px}
.row.next,.lrow.us{border-radius:8px}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.foot a{color:inherit}
.loading{padding:40px 0;text-align:center;color:var(--muted)}
.signin{margin-top:8px}
.foot a{display:inline-block;margin-top:10px}
