
.npgt-front-shell{--deep:#073b2a;--green:#1f6b45;--bright:#79b829;--cream:#f7f8f4;--ink:#202523;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);max-width:1100px;margin:20px auto}.npgt-app,.npgt-leader{background:var(--cream);border-radius:24px;overflow:hidden;box-shadow:0 15px 50px #073b2a22;border:1px solid #dfe7e1}.npgt-app header,.npgt-leader header{background:var(--deep);color:#fff;padding:14px 18px;display:flex;justify-content:space-between;align-items:center}.npgt-app-logo{display:flex;align-items:center;gap:9px;font-weight:800}.npgt-app-logo b{display:grid;place-items:center;background:var(--bright);width:34px;height:34px;border-radius:9px}.npgt-app-logo small{display:block;font-size:9px;letter-spacing:1px;opacity:.7}.npgt-live{font-size:12px;font-weight:800;letter-spacing:1px}.npgt-event{text-align:center;padding:22px 18px 10px}.npgt-event small{font-weight:800;color:var(--green);letter-spacing:1px}.npgt-event h1{margin:4px 0;color:var(--deep);font-size:clamp(28px,5vw,48px)}.npgt-event p{margin:0;color:#637168}.npgt-hole{display:grid;grid-template-columns:50px 1fr 50px;align-items:center;text-align:center;margin:14px;background:#fff;border-radius:18px;padding:8px;border:1px solid #dfe7e1}.npgt-hole strong{display:block;font-size:46px;line-height:1;color:var(--deep)}.npgt-hole small{font-weight:800;color:var(--green)}.npgt-hole-nav{border:0;background:#e8f2e9;color:var(--deep);font-size:32px;border-radius:12px;height:48px;cursor:pointer}.npgt-player-list{padding:0 14px}.npgt-player-row,.npgt-team-score{background:#fff;border:1px solid #dfe7e1;border-radius:16px;padding:15px;margin:10px 0}.npgt-player-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.npgt-player-row strong{font-size:18px}.npgt-player-row small{display:block;color:#718078}.npgt-counter{display:flex;align-items:center;gap:8px}.npgt-counter button{width:44px;height:44px;border:0;border-radius:12px;background:var(--deep);color:#fff;font-size:28px}.npgt-counter input{width:52px!important;text-align:center;border:0!important;background:transparent!important;font-size:26px!important;font-weight:900!important;box-shadow:none!important}.npgt-team-score{text-align:center;padding:24px}.npgt-team-score>small{font-weight:900;letter-spacing:2px;color:var(--green)}.npgt-counter-large{justify-content:center;margin:14px}.npgt-counter-large button{width:65px;height:65px;font-size:36px}.npgt-counter-large input{width:80px!important;font-size:44px!important}.npgt-submit{display:block;width:calc(100% - 28px);margin:16px 14px;background:linear-gradient(135deg,var(--green),var(--bright));color:#fff;border:0;border-radius:15px;padding:17px;font-weight:900;font-size:17px;cursor:pointer}.npgt-submit:disabled{opacity:.6}.npgt-app footer,.npgt-leader footer{text-align:center;padding:16px;color:#6a776f;font-size:12px}.npgt-message{background:#fff;border-radius:18px;padding:25px;text-align:center;margin:14px}.npgt-leader-table{padding:10px 14px 22px}.npgt-leader-table .head,.npgt-leader-table .row{display:grid;grid-template-columns:55px 1fr 70px 75px;align-items:center;padding:12px 10px}.npgt-leader-table .head{font-size:11px;font-weight:900;color:#6d7a72}.npgt-leader-table .row{background:#fff;border-radius:13px;margin:7px 0;border:1px solid #e2e9e4}.npgt-leader-table .row>span:first-child{font-size:20px;font-weight:900;color:var(--deep)}.npgt-leader-table small{display:block;color:#7a8780}.npgt-leader-table .score{font-size:21px;font-weight:900;color:var(--green)}#npgt-save-status{text-align:center;min-height:25px;font-weight:700;color:var(--green)}
@media(max-width:560px){.npgt-front-shell{margin:0}.npgt-app,.npgt-leader{border-radius:0}.npgt-player-row{padding:12px}.npgt-counter button{width:40px;height:40px}.npgt-leader-table .head,.npgt-leader-table .row{grid-template-columns:45px 1fr 55px 58px;padding:10px 7px}}

/* v0.6 scorer check-in, sponsors and TV leaderboard */
.npgt-checkin{margin:14px;background:#fff;border:1px solid #dfe7e1;border-radius:18px;padding:22px}.npgt-checkin>small{font-weight:900;letter-spacing:1.4px;color:var(--green)}.npgt-checkin h2{margin:5px 0;color:var(--deep)}.npgt-checkin p{color:#637168}.npgt-checkin label{display:block;font-weight:750;margin:12px 0;color:#32473b}.npgt-checkin input{box-sizing:border-box;width:100%;min-height:48px;margin-top:5px;border:1px solid #cfdad2;border-radius:12px;padding:10px 12px;font-size:16px}.npgt-checkin-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.npgt-scorer-chip{margin:0 14px 8px;text-align:center;background:#e9f3ea;color:var(--deep);border-radius:999px;padding:8px 12px;font-size:13px}.npgt-sponsor-strip,.npgt-presented{text-align:center;border-top:1px solid #dfe7e1;padding:14px 18px;background:#fff}.npgt-sponsor-strip>small,.npgt-presented>small{font-size:10px;font-weight:900;letter-spacing:1.5px;color:#708078}.npgt-sponsor-strip>div,.npgt-presented>div{display:flex;justify-content:center;align-items:center;gap:16px;flex-wrap:wrap;margin-top:10px}.npgt-sponsor-strip span{display:flex;align-items:center;justify-content:center;min-height:38px}.npgt-sponsor-strip img{max-height:36px;max-width:120px;object-fit:contain}.npgt-public-meta{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:12px}.npgt-public-meta span{background:#e9f2eb;color:#365343;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750}.npgt-presented span{display:grid;gap:3px;place-items:center;min-width:100px}.npgt-presented img{max-width:135px;max-height:52px;object-fit:contain}.npgt-presented a{color:inherit;text-decoration:none}.npgt-presented em{font-size:10px;color:#718078;font-style:normal}.npgt-leader-table .npgt-top-1{border-color:#a6b67b;background:#fbfdf5}.npgt-leader-table .npgt-top-2,.npgt-leader-table .npgt-top-3{background:#fafcf9}.npgt-refresh-note{text-align:center;font-size:11px;color:#748078;padding:0 12px 10px}.npgt-tv{max-width:none;border-radius:0}.npgt-tv .npgt-event h1{font-size:clamp(42px,6vw,76px)}.npgt-tv .npgt-leader-table{max-width:1400px;margin:auto}.npgt-tv .npgt-leader-table .row{font-size:clamp(18px,2vw,30px);padding:15px 18px}.npgt-tv .npgt-leader-table .score{font-size:clamp(26px,3vw,42px)}.npgt-tv .npgt-leader-table .row>span:first-child{font-size:clamp(26px,3vw,42px)}
@media(max-width:560px){.npgt-checkin-grid{grid-template-columns:1fr}.npgt-presented>div{gap:10px}.npgt-presented img{max-width:100px;max-height:40px}}

/* v0.7 resilient scoring, marshal request, public ads */
.npgt-recovery-note{margin:8px 18px 14px;text-align:center;font-size:12px;line-height:1.45;color:#5f6e65;background:#eef5ef;border-radius:12px;padding:10px 12px}.npgt-marshal-box{margin:14px;border:1px solid #e1c9a6;background:#fffaf3;border-radius:18px;padding:16px;display:grid;grid-template-columns:1fr minmax(190px,260px) auto;gap:12px;align-items:center}.npgt-marshal-box div:first-child{display:grid;gap:2px}.npgt-marshal-box small{font-size:10px;font-weight:900;letter-spacing:1.4px;color:#9a5c17}.npgt-marshal-box strong{font-size:17px;color:#54340e}.npgt-marshal-box span{font-size:12px;color:#786548}.npgt-marshal-box select{min-height:44px;border:1px solid #d9c8ad;border-radius:12px;padding:8px;background:#fff}.npgt-marshal-box button{min-height:44px;border:0;border-radius:12px;background:#805014;color:#fff;font-weight:850;padding:10px 14px;cursor:pointer}.npgt-marshal-box button:disabled{opacity:.65}.npgt-marshal-box #npgt-marshal-status{grid-column:1/-1;font-size:12px;font-weight:750;color:#805014}.npgt-public-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.npgt-public-layout.has-side-ad{grid-template-columns:minmax(0,1fr) 260px}.npgt-public-layout main{min-width:0}.npgt-public-layout .npgt-leader{margin:0}.npgt-ad{background:#fff;border:1px solid #dfe7e1;border-radius:18px;overflow:hidden;box-shadow:0 8px 26px #073b2a12}.npgt-ad-image img{display:block;width:100%;height:auto;max-height:260px;object-fit:cover}.npgt-ad-copy{padding:15px}.npgt-ad-copy small{font-size:9px;letter-spacing:1.4px;color:#869089;font-weight:800}.npgt-ad-copy h3{margin:5px 0;color:var(--deep);font-size:20px}.npgt-ad-copy p{margin:7px 0 12px;color:#657269;font-size:13px}.npgt-ad-copy a{display:inline-block;background:var(--deep);color:#fff!important;text-decoration:none!important;border-radius:10px;padding:9px 12px;font-size:12px;font-weight:800}.npgt-ad-bottom{margin-top:16px;display:grid;grid-template-columns:minmax(140px,240px) 1fr}.npgt-ad-bottom .npgt-ad-image img{height:100%;max-height:160px;object-fit:cover}.npgt-northpoint-cta{margin-top:14px;background:var(--deep);color:#fff;border-radius:16px;padding:15px 18px;display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:13px}.npgt-northpoint-cta a{color:#fff!important;font-weight:850;text-decoration:none!important}.npgt-tv+.npgt-ad{display:none}
@media(max-width:800px){.npgt-public-layout.has-side-ad{grid-template-columns:1fr}.npgt-ad-right{display:grid;grid-template-columns:130px 1fr}.npgt-ad-right .npgt-ad-image img{height:100%;object-fit:cover}.npgt-marshal-box{grid-template-columns:1fr}.npgt-marshal-box #npgt-marshal-status{grid-column:auto}.npgt-ad-bottom{grid-template-columns:1fr}.npgt-northpoint-cta{display:grid;text-align:center}}
.npgt-score-progress{margin:8px 14px 14px;background:#fff;border:1px solid #dfe7e1;border-radius:14px;padding:11px 13px}.npgt-score-progress>div{display:flex;justify-content:space-between;align-items:center}.npgt-score-progress span{font-size:10px;font-weight:850;letter-spacing:1.2px;color:#65756b}.npgt-score-progress strong{color:var(--deep)}.npgt-score-progress i{display:block;height:6px;background:#e8eee9;border-radius:999px;overflow:hidden;margin-top:8px}.npgt-score-progress b{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--bright));border-radius:999px}

/* v0.8.0 activation and Free-plan promotion */
.npgt-activate{max-width:620px;margin:40px auto;background:#fff;border:1px solid #dfe7e1;border-radius:22px;padding:28px;box-shadow:0 14px 45px #073b2a18}.npgt-activate-brand{display:flex;align-items:center;gap:10px;color:var(--deep);font-weight:900}.npgt-activate-brand b{display:grid;place-items:center;width:38px;height:38px;background:var(--bright);color:#fff;border-radius:10px;font-size:20px}.npgt-activate-brand small{display:block;font-size:9px;letter-spacing:1.2px;color:#718078}.npgt-activate h2{font-size:30px;color:var(--deep);margin:18px 0 8px}.npgt-activate p{line-height:1.55;color:#5e6e64}.npgt-activate-form{display:grid;gap:12px;margin-top:20px}.npgt-activate-form label{font-weight:800;color:#31483a}.npgt-activate-form input{box-sizing:border-box;width:100%;min-height:52px;margin-top:6px;border:1px solid #cad8ce;border-radius:12px;padding:10px 13px;font-size:18px;text-transform:uppercase;letter-spacing:1px}.npgt-activate-form button,.npgt-activate-button{display:inline-block;border:0;border-radius:12px;background:var(--deep);color:#fff!important;text-decoration:none!important;padding:13px 17px;font-weight:850;cursor:pointer}.npgt-activation-message{border-radius:12px;padding:12px 14px;margin:15px 0;background:#eef5ef;color:#174f34;font-weight:700}.npgt-activation-message.npgt-invalid,.npgt-activation-message.npgt-expired,.npgt-activation-message.npgt-inactive,.npgt-activation-message.npgt-wrong_user,.npgt-activation-message.npgt-seat_full{background:#fff0ef;color:#8a2a25}.npgt-activate-foot{margin-top:24px!important;padding-top:16px;border-top:1px solid #e3e9e4;font-size:12px}
.npgt-free-upgrade{margin-top:14px;border:1px solid #d4bf7f;background:#fff9e9;border-radius:16px;padding:16px 18px;display:flex;justify-content:space-between;align-items:center;gap:20px}.npgt-free-upgrade>div{display:grid;gap:3px}.npgt-free-upgrade small{font-size:9px;font-weight:900;letter-spacing:1.2px;color:#84620d}.npgt-free-upgrade strong{font-size:17px;color:var(--deep)}.npgt-free-upgrade span{font-size:12px;color:#6b654f}.npgt-free-upgrade a{flex:0 0 auto;background:var(--deep);color:#fff!important;text-decoration:none!important;border-radius:10px;padding:10px 13px;font-weight:850;font-size:12px}
@media(max-width:650px){.npgt-activate{margin:12px}.npgt-free-upgrade{display:grid}.npgt-free-upgrade a{text-align:center}}
