/* PTC page redesign: reference-style task browser with CoinVexa purple identity */
.ptc-page{width:min(1160px,100%);padding:30px 0 46px;margin-inline:auto}
.ptc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}
.ptc-title-block h1{font:800 clamp(32px,3.2vw,44px)/1.12 Manrope,sans-serif;letter-spacing:-1.8px;margin:5px 0}
.ptc-title-block>p{margin:0;color:#b9a8cc;font-size:13px;line-height:1.65}
.ptc-balance-card{display:flex;align-items:center;gap:12px;min-width:224px;padding:13px 15px;border:1px solid #58347a;border-radius:14px;background:linear-gradient(135deg,#27123b,#1b0b2b);box-shadow:0 10px 30px #08020f30;transition:border-color .2s,transform .2s}
.ptc-balance-card:hover{border-color:#a855f7;transform:translateY(-1px)}
.ptc-balance-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;color:#e7c9ff;background:#9333ea36;font-size:19px}
.ptc-balance-copy{display:grid;gap:1px;min-width:0}
.ptc-balance-copy small{color:#a991bf;font-size:9px;font-weight:800;letter-spacing:1px}
.ptc-balance-copy strong{color:#fff;font:800 19px/1.25 Manrope,sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap}
.ptc-balance-copy em{color:#c992fb;font:700 11px 'DM Sans',sans-serif;font-style:normal}
.ptc-balance-link{margin-left:auto;color:#c898f2;font-size:10px;font-weight:700;white-space:nowrap}
.ptc-alert{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;margin:0 0 15px;border:1px solid;border-radius:12px}
.ptc-alert-icon{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;font-weight:800;font-size:12px}
.ptc-alert strong{display:block;font-size:12px;line-height:1.4}
.ptc-alert p{margin:3px 0 0;font-size:11px;line-height:1.6}
.ptc-alert-warning{border-color:#775526;background:#2c1d12;color:#f5dba5}.ptc-alert-warning .ptc-alert-icon{background:#8a612233;color:#f2cf79}.ptc-alert-warning p{color:#d9c59d}
.ptc-alert-error{border-color:#81405f;background:#301527;color:#ffd4e6}.ptc-alert-error .ptc-alert-icon{background:#f43f5e25;color:#ff9db6}.ptc-alert-error p{color:#e8bfd0}
.ptc-safety-note{display:flex;align-items:center;gap:10px;padding:11px 14px;margin:18px 0 16px;border:1px solid #543777;border-radius:10px;background:#241238;color:#d9c4ed}
.ptc-safety-note>span{color:#c58bf5;font-size:16px;flex:0 0 auto}.ptc-safety-note p{margin:0;font-size:11px;line-height:1.5}
.ptc-resume-notice{padding:13px 15px;margin:0 0 16px;background:linear-gradient(100deg,#28143a,#21102f);border-color:#7945a0}
.ptc-resume-mark{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:#9333ea2e;color:#dcafff;font-size:18px}
.ptc-resume-notice>div{flex:1;min-width:0}.ptc-resume-notice strong,.ptc-resume-notice span{display:block}.ptc-resume-notice strong{color:#f4e8ff;font-size:12px}.ptc-resume-notice span{color:#bba8cc;font-size:10px;margin-top:2px}.ptc-resume-notice .btn{flex:0 0 auto}
.ptc-tabs{display:flex;align-items:center;gap:7px;padding:0 0 12px;border-bottom:1px solid #ffffff12;margin:22px 0 20px;overflow-x:auto}
.ptc-tab{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:39px;padding:0 15px;border:1px solid #ffffff0d;border-radius:10px;background:#ffffff05;color:#b8a8c7;white-space:nowrap;font:600 11px 'DM Sans',sans-serif;cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.ptc-tab:hover{border-color:#674486;color:#ead7fb}.ptc-tab.is-active{border-color:#8140b8;background:#612493;color:#fff;box-shadow:0 5px 18px #6b21a733}
.ptc-tab b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:7px;background:#ffffff11;color:inherit;font-size:9px}
.ptc-tab-panel[hidden]{display:none!important}
.ptc-list-toolbar{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 15px}
.ptc-list-toolbar h2{margin:2px 0 1px;color:#f7edff;font:750 19px/1.3 Manrope,sans-serif;letter-spacing:-.4px}.ptc-list-toolbar p{margin:0;color:#a995bb;font-size:10px}
.ptc-campaign-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;align-items:stretch}
.ptc-campaign-card{display:flex;flex-direction:column;min-height:208px;padding:15px;background:linear-gradient(150deg,#201130,#170a24 78%);border:1px solid #38234d;border-radius:14px;box-shadow:0 8px 24px #08020f26;transition:transform .2s,border-color .2s,box-shadow .2s}
.ptc-campaign-card:hover{transform:translateY(-2px);border-color:#724399;box-shadow:0 12px 30px #08020f40}.ptc-card-top{display:flex;align-items:center;justify-content:space-between;gap:7px}
.ptc-icon{width:31px;height:31px;border-radius:9px;background:#9333ea2b;color:#d9b4f9;font-size:15px}.ptc-duration{padding:4px 7px;border:1px solid #ffffff16;border-radius:6px;color:#b9a9c7;font-size:9px;font-weight:700;white-space:nowrap}
.ptc-campaign-card .ptc-reward{margin-top:11px;color:#d7a9ff;font:800 18px/1.2 Manrope,sans-serif;letter-spacing:-.35px}.ptc-campaign-card .ptc-reward span{font:700 10px 'DM Sans',sans-serif;letter-spacing:.3px}
.ptc-campaign-card h3{margin:9px 0 5px;color:#f7efff;font:700 13px/1.45 Manrope,sans-serif;overflow-wrap:anywhere}
.ptc-campaign-instructions{display:-webkit-box;min-height:36px;margin:0;color:#ad9cbb;font-size:10px;line-height:1.55;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal}
.ptc-campaign-foot{display:grid;gap:9px;margin-top:auto;padding-top:13px}.ptc-views{color:#8f7ca1;font-size:9px}.ptc-views span{color:#ae8bd0}
.ptc-start-form{display:grid;gap:8px;margin:0}.ptc-start-form .cf-turnstile{min-height:0;overflow:hidden}.ptc-start-form .btn,.ptc-campaign-foot>.btn{height:39px;min-height:39px;padding:0 12px;border-radius:9px;font-size:10px;gap:10px;box-shadow:0 6px 17px #8425d326}
.ptc-start-form .btn:disabled,.ptc-complete-form .btn:disabled,.ptc-disabled-button{opacity:.58;cursor:not-allowed;transform:none;box-shadow:none}
.ptc-empty{display:grid;justify-items:center;padding:36px 20px;border:1px dashed #54366f;border-radius:14px;background:#190c27;text-align:center}.ptc-empty-compact{padding:26px 18px}
.ptc-empty-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:10px;border:1px solid #7745a14a;border-radius:14px;background:#9333ea20;color:#d5a6ff;font-size:20px}
.ptc-empty h3{margin:0;color:#f5ebff;font:700 14px Manrope,sans-serif}.ptc-empty p{max-width:420px;margin:5px 0 0;color:#aa97ba;font-size:10px;line-height:1.6}.ptc-empty .btn{margin-top:14px}
.ptc-task-row{display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid #38234d;border-radius:12px;background:linear-gradient(120deg,#201130,#170a24)}
.ptc-task-row-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:#9333ea2a;color:#dbb6fb;font-size:16px}.ptc-task-row-icon.is-complete{background:#32b98122;color:#81e0b6}
.ptc-task-row-main{display:grid;gap:3px;min-width:0;flex:1}.ptc-task-row-main strong{color:#f5eaff;font-size:11px;overflow-wrap:anywhere}.ptc-task-row-main>span{color:#9e8bac;font-size:9px}
.ptc-status-pill{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:4px 8px;border:1px solid #674985;border-radius:30px;color:#d4b4ed;font-size:9px;font-weight:700;white-space:nowrap}
.ptc-status-pill.is-active{border-color:#846338;color:#f1d68d;background:#6d4c171a}.ptc-status-pill.is-complete{border-color:#327d5c;color:#8de0b5;background:#1c75481a}
.ptc-task-row .btn{height:34px;padding:0 12px;font-size:9px;border-radius:8px}.ptc-earned{color:#d7a9ff;font:800 11px Manrope,sans-serif;white-space:nowrap}
.ptc-history-section{margin-top:31px}.ptc-history-card{overflow:hidden;border:1px solid #38234d;border-radius:13px;background:#190b28}.ptc-history-card .empty-state{padding:28px}.ptc-history-card .table-scroll{overflow-x:auto}.ptc-history-card table{min-width:620px}.ptc-history-card th{color:#aa96bd;font-size:9px;letter-spacing:.4px}.ptc-history-card td{color:#ded2e9;font-size:10px}
.ptc-disclosure{margin:18px 0 0;padding:0 2px;color:#8f7e9e;font-size:9px;line-height:1.7}.ptc-disclosure strong{color:#b8a6c7}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.ptc-campaign-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ptc-page{width:min(100%,960px)}}
@media(max-width:820px){.ptc-campaign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ptc-page{width:min(100%,720px);padding-top:22px}.ptc-toolbar{align-items:flex-start}}
@media(max-width:620px){.ptc-page{width:100%;padding:12px 0 30px}.ptc-toolbar{display:grid;grid-template-columns:minmax(0,1fr);gap:13px;margin-bottom:17px}.ptc-title-block h1{font-size:31px;letter-spacing:-1.1px}.ptc-title-block>p{font-size:11px}.ptc-balance-card{width:100%;min-width:0;padding:10px 12px}.ptc-balance-icon{width:34px;height:34px;flex-basis:34px}.ptc-balance-copy strong{font-size:17px}.ptc-alert{padding:12px;margin-bottom:11px}.ptc-alert p{font-size:10px}.ptc-safety-note{align-items:flex-start;margin:13px 0;padding:10px 11px}.ptc-resume-notice{align-items:flex-start;flex-wrap:wrap}.ptc-resume-notice>div{flex:1 1 calc(100% - 48px)}.ptc-resume-notice .btn{width:100%;justify-content:center}.ptc-tabs{gap:6px;margin:15px 0;padding-bottom:10px}.ptc-tab{flex:1;min-width:0;min-height:38px;padding:0 8px;gap:6px;font-size:10px}.ptc-tab b{min-width:18px;height:18px}.ptc-list-toolbar{margin-bottom:12px}.ptc-list-toolbar h2{font-size:17px}.ptc-campaign-grid{grid-template-columns:1fr;gap:10px}.ptc-campaign-card{min-height:0;padding:14px}.ptc-campaign-instructions{min-height:0}.ptc-campaign-foot{padding-top:11px}.ptc-task-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;padding:11px}.ptc-task-row-icon{grid-column:1;grid-row:1}.ptc-task-row-main{grid-column:2/4;grid-row:1}.ptc-task-row>.ptc-status-pill{grid-column:1/2;grid-row:2}.ptc-task-row>.btn,.ptc-task-row>.ptc-earned{grid-column:2/4;grid-row:2;justify-self:end}.ptc-task-row>.ptc-earned{align-self:center}.ptc-history-section{margin-top:24px}.ptc-history-card table{min-width:590px}.ptc-disclosure{font-size:9px}}
@media(max-width:360px){.ptc-tab{padding-inline:5px;font-size:9px}.ptc-task-row{grid-template-columns:30px minmax(0,1fr) auto;gap:7px}.ptc-task-row-icon{width:30px;height:30px;flex-basis:30px}}
