:root{color-scheme:light;--ink:#112c45;--gold:#b59052;--paper:#f5f3ee;--line:#deded8;--muted:#657482}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border:1px solid #cdd5da;border-radius:13px;background:white;color:var(--ink);font-weight:650;cursor:pointer;text-decoration:none;min-height:46px}button:hover,.button:hover{background:#e9eef1}button:disabled{opacity:.48;cursor:default}.primary{background:var(--ink);color:white;border-color:var(--ink)}.primary:hover{background:#204863}.gold{background:#e9d9b9;border-color:#d3b67f}header{background:var(--ink);color:white;padding:24px max(20px,calc((100vw - 1060px)/2));display:flex;justify-content:space-between;gap:20px;align-items:center}.brand{font:600 25px Georgia,serif;letter-spacing:4px;color:#e2c890}header small{display:block;font-size:12px;letter-spacing:2px;color:#c3ccd3}main{max-width:1100px;margin:auto;padding:28px 20px 60px}h1{font-size:28px;line-height:1.3;margin:0 0 8px}h2{font-size:21px;margin:0 0 16px}h3{font-size:17px;margin:0 0 8px}p{margin:8px 0 16px}.muted,small{color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--gold);font-weight:700}.intro{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:22px}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.card{background:white;border:1px solid var(--line);border-radius:22px;padding:24px;margin:0 0 18px;box-shadow:0 5px 20px #102a4305}.hero{grid-column:span 7;background:linear-gradient(125deg,#102b45,#234965);color:white;border-color:transparent;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-60px;top:-70px;width:250px;height:250px;border:1px solid #ffffff12;border-radius:50%;pointer-events:none}.hero small{color:#cad8e3}.amount{display:block;font-size:clamp(36px,7vw,58px);font-weight:750;letter-spacing:-2px;font-variant-numeric:tabular-nums;line-height:1.25;margin:12px 0 18px}.hero .actions{position:relative;z-index:1}.stats{grid-column:span 5;display:grid;grid-template-columns:1fr 1fr;gap:14px}.stat{margin:0 0 18px;padding:20px}.stat b{display:block;font-size:24px;line-height:1.3;margin:9px 0;font-variant-numeric:tabular-nums}.wide{grid-column:1/-1}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.section-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 24px}.section-tabs button[aria-selected=true]{background:var(--ink);color:white}.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:16px 0 22px}.podium article{padding:22px 12px;text-align:center;border:1px solid var(--line);border-radius:17px;background:#f9faf9}.podium article:first-child{background:#fbf5e7;border-color:#dec591}.medal{font-size:34px;display:block;line-height:1.4}.podium strong{display:block;overflow-wrap:anywhere}.podium b{font-size:27px;display:block}.rank-row{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:14px 0;border-top:1px solid #edf0f1}.rank-row.mine{font-weight:700;color:#805b24}.rank-row small{display:block;font-weight:400}.profile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:16px 0 0}.profile div{min-width:0}.profile dt{font-size:12px;color:var(--muted)}.profile dd{margin:5px 0 0;overflow-wrap:anywhere}.ref-code{font-size:30px;letter-spacing:7px;font-weight:750;color:#835e2e}.note{padding:14px 18px;border-radius:12px;background:#faf2df;border-left:4px solid var(--gold)}.error{color:#a52f25;white-space:pre-wrap}.success{color:#277044}.entry{border-top:1px solid #e8ecee;padding:18px 0}.entry:first-child{border-top:0}.entry-head{display:flex;justify-content:space-between;gap:16px}.entry-head strong{white-space:nowrap}.pill{display:inline-block;padding:3px 10px;font-size:12px;background:#eff3f5;border-radius:20px}.pending{background:#fbf0d8;color:#8b641f}.cash-options{display:flex;flex-wrap:wrap;gap:12px}.cash-options button{flex:1;min-width:220px;padding:24px;font-size:18px}.rules ol{padding-left:24px}.rules li{padding:0 0 14px}.qr{text-align:center}.qr canvas{display:block;max-width:100%;width:300px;height:auto;margin:16px auto;border-radius:8px}.qr #codeMessage{font-size:20px;font-weight:700}dialog{border:1px solid var(--line);border-radius:22px;max-width:480px;width:calc(100% - 28px);padding:26px;color:var(--ink);max-height:90vh;overflow:auto}dialog::backdrop{background:#102a4399}label{display:block;margin:12px 0 6px;font-size:14px}input,select,textarea{width:100%;padding:12px;border:1px solid #cbd4da;border-radius:10px;color:var(--ink);background:white}input[type=checkbox]{width:auto;margin-right:8px}.scanner video{display:block;width:100%;max-height:300px;background:#102b45;border-radius:14px;margin:14px 0}.scroll{overflow-x:auto}[hidden]{display:none!important}@media(max-width:650px){header{padding:18px 20px}.brand{font-size:21px}header small{font-size:10px}main{padding:22px 14px 40px}.card{padding:20px;border-radius:18px}.hero,.stats{grid-column:1/-1}.grid{gap:0}.stats{gap:12px}.stat{padding:16px}.intro{align-items:flex-start}h1{font-size:24px}.podium{gap:8px}.podium article{padding:18px 6px}.podium strong{font-size:14px}.profile{grid-template-columns:1fr}.actions button{flex:1}.section-tabs button{padding:10px 12px;font-size:14px}.amount{font-size:48px}}

#referrals input,#referrals select{font:inherit;padding:10px;max-width:150px;border:1px solid #ccd3db;border-radius:8px}#birthday .hero{margin-bottom:18px}#birthdayPay{margin:12px 0}.stat button{font-size:12px;margin-top:8px}
#overview .hero .actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
#overview .hero .actions>button{width:100%;min-width:0;padding:12px 8px;line-height:1.5;overflow-wrap:anywhere}

/* Employee nickname and six-person leaderboard pages. */
.profile-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:18px}.profile-heading h2{margin:0}
.ranking-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:18px 0 8px}.ranking-pagination button{padding:10px 14px}.ranking-pagination span{white-space:nowrap;font-variant-numeric:tabular-nums}.ranking-note{font-size:13px;margin:8px 0 14px}
#rankingRows .rank-row>div{min-width:0;overflow-wrap:anywhere}#rankingRows .rank-row>strong{white-space:nowrap}#employeeGreeting{overflow-wrap:anywhere}
#nicknameSave{width:100%;margin:18px 0 4px}#rankingPodium b{font-size:clamp(19px,4.8vw,27px)}#rankingPodium span:last-child{font-size:13px}
@media(max-width:380px){#rankingRows .rank-row{grid-template-columns:28px minmax(0,1fr) auto;gap:8px}.ranking-pagination button{padding:10px}.ranking-pagination span{font-size:14px}}

/* Activity prizes and owner controls. */
.campaign-card{border-color:#d6bf91;background:linear-gradient(180deg,#fffdf7,#fff 200px)}#activityTitle{font-size:18px;font-weight:650;margin-bottom:0;overflow-wrap:anywhere}.activity-prize,#activityParticipation,#activityMine{white-space:pre-wrap;overflow-wrap:anywhere}.activity-podium .activity-prize{font-size:16px;margin:12px 0 0;font-weight:600}.participation-prize{display:flex;gap:14px;background:#f7f1e4;border:1px solid #e3d4b6;border-radius:14px;padding:18px;margin-bottom:18px}.participation-prize>span{font-size:28px}.participation-prize>div{min-width:0}.participation-prize p{margin:6px 0 0}#activityRows .rank-row{grid-template-columns:36px minmax(0,1fr) auto}#activityRows .rank-row>strong{white-space:nowrap}.campaign-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.campaign-switch{padding:16px;background:#f5f1e8;border-radius:12px;font-weight:700}.campaign-fields>div{min-width:0}#campaignForm textarea{resize:vertical}#campaignForm .actions{margin-top:20px}@media(max-width:480px){.campaign-fields{grid-template-columns:1fr;gap:0}.activity-podium{grid-template-columns:1fr}.activity-podium article{display:grid;grid-template-columns:40px 70px minmax(0,1fr);align-items:center;gap:10px;text-align:left;padding:14px}.activity-podium .medal{font-size:28px}.activity-podium .activity-prize{margin:0;font-size:15px}.campaign-card .intro{flex-wrap:wrap}}

/* Each cashout slot has its own state and 30-day availability. */
.cashout-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.cashout-slot{border:1px solid var(--line);border-radius:16px;padding:20px;background:#fffdf7;min-width:0}.cashout-slot .entry-head{align-items:flex-start;flex-wrap:wrap;gap:8px}.cashout-slot strong{font-size:20px}.cashout-slot .cashout-value b{font-size:25px}.cashout-slot small{display:block;overflow-wrap:anywhere}.cashout-slot button{width:100%;margin-top:16px}.cashout-slot.cooldown{background:#f4f6f7}.cashout-slot .pill{white-space:nowrap}@media(max-width:540px){.cashout-slots{grid-template-columns:1fr}.cashout-slot{padding:18px}}

#birthday .hero .birthday-identity-notice{color:#ff7b7b;font-size:20px;font-weight:750;line-height:1.7;background:none;border:0;border-radius:0;box-shadow:none;padding:0}
