*{box-sizing:border-box}body{margin:0;background:#e9e9e3;color:#20251f;font-family:Arial,Helvetica,sans-serif}.app{max-width:480px;margin:auto;background:#f7f7f2;min-height:100dvh}header{background:#151715;color:white;padding:14px 22px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:10px;color:white;text-decoration:none;font-size:10px;letter-spacing:1.7px;line-height:1.5}.brand b{font-size:13px}.brand img{width:53px;height:57px;object-fit:cover}.avatar{border:1px solid #555c51;border-radius:50%;padding:13px;font-size:12px}main{padding:0 24px 110px}.demo{font-size:8px;letter-spacing:1.1px;color:#74796f;padding:14px 0 25px}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:1.5px;color:#71786a}h1{font-size:39px;line-height:1.06;letter-spacing:-1.8px;margin:12px 0 26px}h2{font-size:17px;letter-spacing:-.4px;margin:0}h3{font-size:23px;letter-spacing:-.7px;margin:12px 0}.match{background:#1c241e;color:white;border-radius:18px;padding:20px;overflow:hidden;position:relative}.match-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:#bfc8b7}.date{display:flex;gap:18px;align-items:center;padding:17px 0}.date strong{font-size:76px;letter-spacing:-5px;line-height:1;color:#ff7b21}.date div{font-size:10px;line-height:2}.date b{font-size:22px}.date b span{font-weight:normal;font-size:15px;color:#bfc8b7}.match-bottom{display:flex;justify-content:space-between;border-top:1px solid #465044;padding-top:15px;font-size:10px;color:#bec7b7}.match-bottom span{font-weight:bold;color:white}.match-bottom i{font-style:normal;color:#ff7b21;padding:0 6px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:28px}.section-head>span{font-size:11px;color:#777f71}.muted{font-size:12px;color:#737b6c;line-height:1.6;margin:8px 0 16px}.choice{display:flex;align-items:center;justify-content:space-between;padding:15px 0;border-top:1px solid #dedfd5}.choice>div:first-child{display:flex;align-items:center;gap:12px;font-size:14px}.icon{font-size:20px;width:24px}.options{display:flex;gap:5px}button{font:inherit;cursor:pointer}.options button,.tabs button{border:1px solid #dedfd5;border-radius:8px;background:transparent;padding:10px 17px;font-size:12px;color:#68715e}.options .selected,.tabs .selected{background:#202a21;color:#fff;border-color:#202a21}.primary{margin-top:8px;padding:17px;background:#ff7b21;border:0;border-radius:10px;width:100%;font-size:14px;font-weight:bold;display:flex;justify-content:space-between}.primary span{font-size:20px}.feedback{font-size:10px;color:#6e7668;min-height:15px;line-height:1.5}.text{border:0;background:transparent;color:#69775d;font-size:10px;padding:8px 0}.captains{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}.captains>div{background:#eeefe6;border-radius:12px;padding:17px;display:flex;flex-direction:column;gap:9px}.initial{width:38px;height:38px;border-radius:50%;background:#dce0d0;display:grid;place-items:center;font-size:12px;font-weight:bold}.initial.orange{background:#f8dcc1}.captains b{font-size:13px}.captains small{font-size:9px;color:#4b7050}.captains .pending{color:#8f754c}.dinner{border-left:3px solid #ff7b21;padding:4px 0 4px 17px;margin-top:28px}.dinner>span{font-size:9px;letter-spacing:1.4px;color:#7b806f}.dinner p{font-size:12px;color:#747b6b;line-height:1.6;margin-bottom:0}nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:480px;background:#f7f7f2f5;backdrop-filter:blur(12px);border-top:1px solid #dddfd3;display:flex;padding:12px 8px max(15px,env(safe-area-inset-bottom));z-index:2}nav button{border:0;background:none;font-size:9px;color:#838a7a;flex:1;display:flex;align-items:center;flex-direction:column;gap:6px}nav button span{font-size:22px;height:25px}nav button.active{color:#d85f0b;font-weight:bold}.page{display:none}.page.active{display:block}.stats{display:flex;background:#eaece1;border-radius:14px;padding:20px;justify-content:space-around}.stats div{display:flex;flex-direction:column;gap:6px}.stats b{font-size:30px}.stats span{font-size:11px;color:#6d7563}.person{display:flex;align-items:center;gap:12px;border-bottom:1px solid #dfe2d5;padding:17px 0}.person .details{flex:1}.person b{font-size:14px}.person small{display:block;margin-top:5px;color:#77806d;font-size:11px}.person .points{font-size:23px;font-weight:bold}.place{width:22px;font-size:13px;color:#89927c}.schedule{border-top:1px solid #d5dac9;padding:22px 0}.schedule>span{font-size:12px;color:#ce650f;font-weight:bold}.schedule small{font-size:8px;padding-left:10px;color:#7c866e}.schedule h2{margin-top:13px}.schedule p{font-size:12px;color:#7b826e}.tabs{display:flex;gap:8px}.table-head{display:flex;justify-content:space-between;font-size:9px;color:#8b937e;margin-top:26px}.footnote{margin-top:23px}.search{display:flex;background:#eaede1;padding:14px;border-radius:10px;gap:8px}.search input{border:0;background:none;outline:none;min-width:0;flex:1;font-size:14px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #f39848;outline-offset:3px}@media(max-width:350px){main{padding-left:17px;padding-right:17px}h1{font-size:34px}.captains>div{padding:12px}}

.admin-link{background:none;border:1px solid #555c51;border-radius:8px;color:white;padding:10px;font-size:11px}.admin-form{display:grid;gap:14px;margin:20px 0 32px}.admin-form label{display:grid;gap:7px;font-size:12px;color:#616c58}.admin-form input,.admin-form select{width:100%;min-width:0;border:1px solid #d5dac9;border-radius:8px;padding:13px;background:#fff;font:inherit;font-size:15px;color:#20251f}.admin-form [hidden]{display:none}

/* Refinamento da identidade e dos controles para celular */
:root{--accent:#f87824;--ink:#202b24;--muted:#697566;--line:#e2e6dc}
body{font-family:ui-rounded,"SF Pro Rounded",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;background:#e9ece5;color:var(--ink)}
.app{background:#fafbf7;box-shadow:0 0 70px #17291c10}header{padding:22px 22px 21px;background:linear-gradient(125deg,#17241c,#24382a);border-bottom:3px solid #f87824;gap:12px}.brand{gap:11px;letter-spacing:0;min-width:0}.crest{width:64px;height:76px;overflow:hidden;position:relative;flex:none}.brand .crest img{position:absolute;width:151.6px;height:107.1px;max-width:none;left:-44px;top:-14px;object-fit:fill;mix-blend-mode:screen}.wordmark{display:flex;flex-direction:column;line-height:1.01}.wordmark>span{font-size:24px;font-weight:650;letter-spacing:-.8px}.wordmark>b{font-size:28px;letter-spacing:-1px;color:#fff;font-weight:800}.wordmark .brand-dot{color:#ff8c41}.wordmark small{font-size:6.6px;letter-spacing:1.05px;color:#c3d0bd;margin-top:9px;font-weight:600;white-space:nowrap}.admin-link{border:1px solid #ffffff24;background:#ffffff09;border-radius:13px;min-width:48px;min-height:50px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;padding:7px;color:#e2ebdc;font-size:9px}.admin-link>span:first-child{font-size:21px;line-height:1.1}
main{padding-left:24px;padding-right:24px}.demo{padding:15px 0 26px;font-size:8px;letter-spacing:.9px;color:#7e8975}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:#6b7d61}h1{font-size:40px;letter-spacing:-1.7px;line-height:1.09;font-weight:760;margin-top:13px;margin-bottom:25px}h2{font-size:18px;font-weight:700;letter-spacing:-.5px}.match{border-radius:22px;background:linear-gradient(130deg,#253d2c,#1b2b22);box-shadow:0 10px 25px #20322214;padding:22px}.match-top{font-size:10px;font-weight:650}.date strong{color:#ff9954;font-weight:750}.date div{line-height:2.15;letter-spacing:.3px}.section-head{margin-top:30px}.section-head>span{background:#edf0e7;padding:6px 10px;border-radius:20px;color:#65765d;font-size:11px}.muted{font-size:13px;color:var(--muted)}
.choice{background:#fff;border:1px solid var(--line);border-radius:15px;padding:13px 14px;margin-bottom:10px;gap:8px;box-shadow:0 2px 4px #26382403}.choice>div:first-child{font-size:14px;gap:9px}.options{background:#f0f3ec;border-radius:11px;padding:4px;gap:3px}.options button{border:0;padding:10px 13px;min-height:42px;min-width:46px;border-radius:8px;font-weight:650;font-size:13px;color:#65735d}.options button.selected{background:#263f2d;box-shadow:0 2px 5px #20322220;color:white}.options button.selected:before{content:"✓ ";font-size:11px}.primary{background:#f87824;color:#251c13;border-radius:14px;padding:17px 18px;min-height:55px;font-weight:750;font-size:14px;align-items:center;box-shadow:0 5px 12px #ef762323;border:1px solid #e96819}.primary:hover{background:#ff8c3d}.primary:active{transform:translateY(1px);box-shadow:none}.feedback{line-height:1.6;font-size:11px;margin-top:10px}.text{font-size:11px;color:#506b43;font-weight:650;min-height:44px}.captains>div{border:1px solid var(--line);background:#f1f4eb;border-radius:16px;padding:18px;gap:10px}.captains b{font-size:14px}.captains small{font-size:10px}.initial{width:42px;height:42px;background:#e3e9d9;font-weight:700;color:#4d6440}.initial.orange{background:#ffe3cc;color:#ab581c}.dinner{margin-top:30px;border-left-color:#f87824;padding-left:18px}.dinner p{font-size:13px;line-height:1.65}.dinner h3{font-size:24px;font-weight:700}.tabs{background:#eef2e7;border-radius:13px;padding:5px}.tabs button{flex:1;border:0;border-radius:10px;padding:13px 8px;font-weight:650;min-height:46px}.tabs .selected{background:#29412e}.person{padding:18px 0;border-color:var(--line)}.person b{font-size:15px}.person small{font-size:12px}.admin-form input,.admin-form select{border-color:#dce3d3;min-height:50px;border-radius:12px;background:#fff}.admin-form label{font-size:13px;gap:8px}.search{border:1px solid var(--line);border-radius:14px;padding:16px;background:#f0f4e9}.search input{font:inherit;font-size:15px}
nav{padding-top:10px;background:#fcfdf9f5;border-color:#e3e8da;box-shadow:0 -5px 20px #26382406}nav button{font-size:10px;gap:3px;min-height:53px;border-radius:12px;margin:0 2px;padding:5px 0;color:#728068}nav button span{font-size:23px;width:47px;height:29px;border-radius:12px;line-height:29px}nav button.active{color:#b34d0c}nav button.active span{background:#ffead9;color:#c15b17}button{touch-action:manipulation;transition:background .16s,color .16s,box-shadow .16s}button:hover{filter:brightness(.98)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #efaa6f;outline-offset:3px}
@media(min-width:600px){.app{margin:24px auto;border-radius:26px;overflow:hidden;min-height:calc(100dvh - 48px)}nav{border-radius:0 0 22px 22px}}@media(max-width:370px){header{padding:18px 16px;gap:7px}.crest{width:55px}.wordmark>span{font-size:21px}.wordmark>b{font-size:25px}.wordmark small{font-size:5.8px;letter-spacing:.8px}main{padding-left:18px;padding-right:18px}h1{font-size:36px}.options button{padding:10px;min-width:42px}.choice{padding:12px 10px}.captains>div{padding:14px}}

.report-link{display:block;color:#546b45;font-size:13px;font-weight:650;margin:18px 0 24px;text-decoration:none}.report-label{display:grid;gap:8px;color:#63755b;font-size:12px;margin:16px 0}.report-label select{width:100%;padding:13px;border:1px solid #dce3d3;border-radius:12px;background:white;font:inherit;font-size:14px}.table-scroll{overflow-x:auto;margin:20px 0}table{border-collapse:collapse;min-width:100%;font-size:12px;white-space:nowrap}th,td{padding:12px 10px;text-align:left;border-bottom:1px solid #dce3d3}th{background:#eaf0e2;color:#435a38}#report-chart{margin-top:20px}#report-chart h2{font-size:16px;margin-bottom:18px}.bar-row{display:flex;align-items:center;gap:10px;margin:13px 0;font-size:11px}.bar-row>span{width:90px}.bar-row>div{flex:1;background:#e6eddf;height:12px;border-radius:5px;overflow:hidden}.bar-row i{display:block;height:100%;background:#ed8436}.bar-row>b{width:22px}

.wordmark{flex:1;min-width:0}.wordmark>b.group-title{font-size:22px;line-height:1.2;letter-spacing:-.65px}.group-emojis{display:block;font-size:20px;letter-spacing:2px;margin-top:5px}.brand{flex:1}.wordmark small{white-space:normal;line-height:1.5}@media(max-width:370px){.wordmark>b.group-title{font-size:19px}.group-emojis{font-size:18px;letter-spacing:1px}}

[hidden]{display:none!important}.teams-entry{background:#edf2e5;padding:18px;border-radius:14px}.team-assignment{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #dce3d3;font-size:12px}.team-assignment span{flex:1}.team-assignment select{max-width:140px;padding:10px;border:1px solid #dce3d3;border-radius:9px;background:white;font-size:12px;min-height:44px}.team-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.team-card{padding:16px 12px;border-radius:16px;background:#26352a;color:white}.team-card.laranja{background:#ffe2ca;color:#6b3512}.team-card h2{font-size:19px}.team-card p{font-size:11px;opacity:.75}.team-card>div{font-size:12px;padding:10px 0;border-top:1px solid #ffffff30;overflow-wrap:anywhere}.played-player{display:flex!important;align-items:center;gap:12px!important;padding:8px 0}.played-player input{width:22px!important;min-height:22px!important;height:22px;accent-color:#2c4b32}.score-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}#team-editor .primary{margin-top:20px}

.history-links{display:flex;gap:12px;margin-bottom:20px}.history-links a{flex:1;background:#edf2e5;border-radius:12px;padding:14px 10px;text-decoration:none;color:#415a36;font-size:12px;text-align:center}.rules-content p{font-size:14px;line-height:1.8;white-space:pre-wrap;margin:20px 0}.admin-form textarea{width:100%;border:1px solid #dce3d3;border-radius:12px;padding:14px;font:inherit;font-size:14px;line-height:1.6;resize:vertical}.champion-card{background:#f0f3e9;border:1px solid #e0e6d7;border-radius:18px;padding:22px;margin:16px 0}.champion-card h2{margin-bottom:20px}.champion-card p{font-size:13px;line-height:1.7}.champion-card strong{display:block;font-size:18px;margin-top:3px}

.calendar{background:white;border:1px solid #dfe6d7;border-radius:22px;padding:17px 12px;box-shadow:0 8px 25px #26382408}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin:0 2px 20px}.calendar-toolbar h2{font-size:18px;text-transform:capitalize}.calendar-toolbar button{width:44px;height:44px;border:0;border-radius:12px;background:#f0f4e9;font-size:28px;color:#345030}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-week{margin-bottom:10px;text-align:center;font-size:8px;font-weight:700;color:#7a856f}.calendar-week span:nth-child(5){color:#c75f16}.calendar-day{height:49px;border:1px solid transparent;background:transparent;border-radius:12px;font-size:14px;color:#526047;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:3px;min-width:0}.calendar-day small{font-size:8px}.calendar-day.has-round{background:#ffeddf;color:#a24a10;font-weight:750}.calendar-day.selected{background:#294431;color:white;border-color:#294431;box-shadow:0 3px 8px #29443128}.calendar-legend{display:flex;gap:14px;font-size:9px;color:#7d866f;border-top:1px solid #e8ecdf;margin:17px 4px 0;padding-top:13px}.calendar-detail{border-left:4px solid #f87824;background:#f0f4e9;border-radius:0 16px 16px 0;padding:20px;margin-top:20px}.calendar-detail h2{margin:14px 0 8px;line-height:1.4}.calendar-detail .muted{margin-bottom:0}.calendar-agenda{display:flex;align-items:center;gap:15px;text-align:left;width:100%;background:transparent;border:0;border-bottom:1px solid #e0e6d6;padding:17px 8px;color:#33452d}.calendar-agenda>strong{font-size:25px;background:#edf2e5;width:49px;height:49px;display:grid;place-items:center;border-radius:13px;flex:none}.calendar-agenda>span{font-size:14px;font-weight:650;line-height:1.5}.calendar-agenda small{display:block;font-size:11px;color:#7c876e;font-weight:400;margin-top:4px}.calendar-agenda.selected>strong{background:#ffe3cc;color:#ac5419}@media(max-width:350px){.calendar{padding:14px 8px}.calendar-day{height:44px}.calendar-toolbar h2{font-size:16px}}

.password-field{display:flex;border:1px solid #dce3d3;border-radius:12px;background:white;align-items:center}.password-field input{border:0;min-width:0;flex:1}.password-field button{padding:10px;min-height:48px}.report-label textarea{width:100%;border:1px solid #dce3d3;border-radius:12px;padding:14px;font:inherit;font-size:13px;line-height:1.6;resize:vertical}#login .primary,#recuperar .primary{margin-top:10px}#login a.text{color:#526b44;text-align:center;padding:13px;text-decoration:none}
/* Áreas conectadas ao banco, com o mesmo tema do protótipo. */
#football>nav button{font-size:11px;min-height:52px;justify-content:center;padding:8px 3px;overflow-wrap:anywhere}#football>nav button.selected{background:#ffead9;color:#9e450b;font-weight:750}#football-page>h2{margin:25px 0 14px}#football-page>label{display:grid;gap:8px;font-size:13px;margin:15px 0}#football-page>label select{width:100%;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff;font:inherit}details{border:1px solid var(--line);border-radius:14px;padding:15px;margin:20px 0;background:#fff}summary{font-size:14px;font-weight:650;cursor:pointer;min-height:30px}details h2{margin:20px 0 10px}.table-wrap{overflow:auto;margin:18px 0}progress{display:block;width:100%;height:16px;accent-color:#f87824;margin:7px 0 16px}#status:not(:empty){position:fixed;bottom:90px;left:50%;transform:translateX(-50%);width:calc(100% - 32px);max-width:448px;background:#253d2c;color:#fff;padding:14px;border-radius:12px;box-shadow:0 5px 20px #0002;z-index:5;max-height:120px;overflow:auto}button:disabled{cursor:default;opacity:.55}.calendar-day:disabled{opacity:.5}textarea{max-width:100%}
.dashboard-title{font-size:29px;margin-bottom:12px}#football-page>label select{appearance:none;-webkit-appearance:none;min-height:50px;padding:13px;background:#fff;border:1px solid var(--line);border-radius:12px}#football-page .history-links{align-items:center}#football-page .history-links button{flex:1;background:#edf2e5;border-radius:12px;padding:12px}
.admin-menu{display:grid;gap:10px;margin:22px 0}.admin-menu .calendar-agenda{margin:0;justify-content:space-between;width:100%;text-align:left}.admin-menu small{display:block;margin-top:5px;font-size:12px;font-weight:400}.admin-menu b{font-size:15px}#cycle-points{display:grid;gap:12px}#scoring-form{margin-top:18px}#dinners-online{margin:25px 0}#dinners-online h2{margin-bottom:12px}
.header-actions{display:flex;flex-direction:column;gap:8px;flex:none}.header-actions .admin-link{min-height:40px;min-width:52px;font-size:11px}.header-actions #admin-button{background:#f87824;border-color:#f87824;color:#251c13;font-weight:750}
