:root{--ink:#081a2c;--ink-2:#12324d;--paper:#f6f8fb;--white:#fff;--blue:#1d77ff;--cyan:#34d6dc;--coral:#ff6b56;--gold:#ffbf46;--muted:#667788;--line:#dfe6ee;--success:#167b50;--danger:#b42318;--shadow:0 22px 60px rgba(8,26,44,.12);--radius:22px}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.narrow{max-width:880px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(8,26,44,.94);backdrop-filter:blur(15px);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}
.nav-wrap{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.08em}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--cyan),var(--blue));color:#041625;letter-spacing:-.08em}
.main-nav{display:flex;align-items:center;gap:25px;font-size:.94rem}
.main-nav a:not(.button),.nav-link{color:#d9e5ef;transition:.2s}
.main-nav a:hover,.nav-link:hover{color:#fff}
.nav-link{border:0;background:none;cursor:pointer}
.inline-form{display:inline-flex}
.nav-toggle{display:none;color:#fff;border:1px solid rgba(255,255,255,.3);background:transparent;border-radius:10px;padding:7px 12px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:11px 20px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--blue),#604dff);color:#fff;font-weight:800;cursor:pointer;box-shadow:0 10px 25px rgba(29,119,255,.24);transition:transform .2s,box-shadow .2s}
.button:hover{transform:translateY(-2px);box-shadow:0 15px 30px rgba(29,119,255,.3)}
.button-small{min-height:38px;padding:7px 13px;font-size:.88rem;border-radius:10px}
.button-wide{width:100%}
.button-ghost{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.38);box-shadow:none}
.button-outline{background:transparent;color:var(--blue);border:1px solid #b8d2ff;box-shadow:none}
.hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 75% 35%,rgba(52,214,220,.22),transparent 28%),linear-gradient(125deg,#061727,#102f4a 65%,#164967);padding:95px 0 85px}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(to right,#000,transparent)}
.hero-grid{position:relative;display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center}
.eyebrow{display:inline-block;color:#1c92aa;background:#dffbfc;border-radius:999px;padding:5px 11px;font-size:.74rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.hero .eyebrow,.page-hero .eyebrow,.dashboard-hero .eyebrow{background:rgba(52,214,220,.13);color:#73f4f4;border:1px solid rgba(115,244,244,.2)}
.eyebrow.accent{color:#ffd37f;background:rgba(255,191,70,.13);border-color:rgba(255,191,70,.28)}
h1,h2,h3{line-height:1.15;margin-top:0}
h1{font-size:clamp(2.6rem,6vw,5.2rem);letter-spacing:-.055em;margin:18px 0 24px}
h2{font-size:clamp(1.65rem,3vw,2.5rem);letter-spacing:-.035em}
h3{font-size:1.18rem}
.hero h1 span{color:var(--cyan)}
.hero-copy{font-size:1.18rem;color:#d3e1ec;max-width:680px}
.search-box{display:flex;gap:10px;max-width:680px;background:#fff;border-radius:18px;padding:9px;margin-top:35px;box-shadow:0 20px 55px rgba(0,0,0,.25)}
.search-box input{flex:1;min-width:0;border:0;padding:0 12px;outline:0}
.hero-stats{display:flex;gap:42px;margin-top:35px}
.hero-stats div{display:flex;flex-direction:column}
.hero-stats strong{font-size:2rem}
.hero-stats span{color:#9fb5c7}
.hero-art{position:relative;aspect-ratio:1;display:grid;place-items:center}
.orbit{position:absolute;border:1px solid rgba(255,255,255,.2);border-radius:50%}
.orbit-a{inset:5%;animation:spin 17s linear infinite}
.orbit-b{inset:20%;border-style:dashed;animation:spin 12s linear reverse infinite}
.orbit:before{content:"";position:absolute;top:7%;left:18%;width:16px;height:16px;border-radius:50%;background:var(--coral);box-shadow:0 0 30px var(--coral)}
.podium{position:relative;display:flex;align-items:flex-end;gap:10px;transform:perspective(600px) rotateY(-8deg)}
.podium i{display:grid;place-items:center;width:86px;border-radius:18px 18px 8px 8px;font-style:normal;font-weight:1000;font-size:2rem;color:#062038;box-shadow:0 15px 45px rgba(0,0,0,.28)}
.podium i:nth-child(1){height:130px;background:linear-gradient(#d5e7ef,#759aae)}
.podium i:nth-child(2){height:190px;background:linear-gradient(#ffe6a5,var(--gold))}
.podium i:nth-child(3){height:95px;background:linear-gradient(#ffcbbf,var(--coral))}
@keyframes spin{to{transform:rotate(360deg)}
}
.section{padding:78px 0}
.section.compact{padding-bottom:20px}
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}
.section-heading h2{margin:8px 0 0}
.text-link{color:var(--blue);font-weight:800}
.ranking-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ranking-card{position:relative;display:flex;align-items:flex-start;gap:16px;min-height:185px;padding:26px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 30px rgba(8,26,44,.05);transition:.25s}
.ranking-card:hover{transform:translateY(-5px);border-color:#91b9ff;box-shadow:var(--shadow)}
.rank-number{font-size:.78rem;font-weight:900;color:var(--coral);letter-spacing:.12em}
.card-label{font-size:.73rem;text-transform:uppercase;letter-spacing:.11em;color:var(--muted);font-weight:800}
.ranking-card h3{margin:7px 0;font-size:1.25rem}
.ranking-card p{margin:0;color:var(--muted)}
.card-arrow{margin-left:auto;color:var(--blue);font-size:1.4rem}
.page-hero,.dashboard-hero{color:#fff;background:linear-gradient(125deg,#081a2c,#173f5f);padding:78px 0}
.page-hero.small{padding:58px 0}
.page-hero h1,.dashboard-hero h1{font-size:clamp(2.4rem,5vw,4.4rem)}
.page-hero p,.dashboard-hero p{color:#d1e0ea;font-size:1.12rem}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.sponsored-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.company-card,.panel,.form-card,.portal-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 12px 35px rgba(8,26,44,.06)}
.company-card{padding:25px}
.company-card.sponsored{border-top:4px solid var(--gold)}
.sponsor-badge{display:inline-block;background:#fff3d3;color:#7b5100;border-radius:999px;padding:5px 10px;font-size:.73rem;font-weight:900;text-transform:uppercase}
.company-card h3{font-size:1.3rem;margin:16px 0 8px}
.company-card p,.company-row p{color:#536575}
.company-meta{display:flex;gap:14px;flex-wrap:wrap;color:#637485;font-size:.88rem}
.company-meta a{color:var(--blue);font-weight:800}
.disclosure{font-size:.8rem;color:var(--muted)}
.company-list{display:flex;flex-direction:column;gap:12px}
.company-row{display:grid;grid-template-columns:60px 1fr auto;gap:22px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px 24px}
.position{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--ink);color:#fff;font-size:1.35rem;font-weight:1000}
.company-main h3{margin-bottom:6px}
.company-main p{margin:0 0 10px}
.row-actions{display:flex;flex-direction:column;gap:8px;align-items:end}
.detail-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:24px;align-items:start}
.panel{padding:26px}
.detail-list{display:grid;gap:0;margin:0}
.detail-list div{padding:15px 0;border-bottom:1px solid var(--line)}
.detail-list dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:900}
.detail-list dd{margin:3px 0 0}
.membership{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-weight:750}
.membership span{color:var(--blue);min-width:32px}
.auth-section{min-height:70vh;padding:75px 0;background:radial-gradient(circle at 15% 15%,rgba(52,214,220,.16),transparent 25%),var(--paper)}
.auth-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;align-items:start}
.auth-copy{padding:35px 10px}
.auth-copy h1,.single-card h1{font-size:clamp(2.2rem,4vw,3.8rem)}
.steps{list-style:none;padding:0;display:grid;gap:15px;margin-top:30px}
.steps li{display:flex;align-items:center;gap:12px;font-weight:800}
.steps span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff}
.form-card{padding:32px}
.single-card{max-width:570px}
.form-card h1{font-size:2.3rem}
.form-card label{display:grid;gap:7px;margin-bottom:17px;font-weight:800;font-size:.91rem}
.form-card input,.form-card select,.form-card textarea{width:100%;border:1px solid #cbd6e2;background:#fbfdff;border-radius:12px;padding:12px 13px;color:var(--ink);outline:0}
.form-card input:focus,.form-card select:focus,.form-card textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(29,119,255,.1)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form-row.three{grid-template-columns:1fr 1fr .6fr}
.check{display:flex!important;grid-template-columns:20px 1fr!important;align-items:flex-start;font-weight:500!important}
.check input{width:auto!important;margin-top:5px}
.hp-field{position:absolute!important;left:-9999px!important}
.form-links{display:flex;justify-content:space-between;gap:15px;margin-top:20px;font-size:.9rem}
.form-links a{color:var(--blue)}
.alert{margin-top:20px;padding:14px 18px;border-radius:13px;font-weight:750}
.alert-success{background:#dbf7ea;color:#0b6b43}
.alert-error{background:#fee4e2;color:var(--danger)}
.dashboard-grid{display:grid;grid-template-columns:1fr 330px;gap:25px;align-items:start}
.portal-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:48px}
.portal-card{padding:22px;display:flex;flex-direction:column;justify-content:space-between;gap:15px}
.card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}
.status{display:inline-block;border-radius:999px;padding:4px 9px;background:#e9eef4;color:#526273;font-size:.72rem;font-weight:900;text-transform:uppercase}
.status-active,.status-approved,.status-paid,.status-completed{background:#dff7ec;color:#0d7248}
.status-pending,.status-email_pending,.status-created{background:#fff2cc;color:#795500}
.status-rejected,.status-failed,.status-blocked,.status-reversed{background:#fee4e2;color:#a61b1b}
.notice{padding:14px 0;border-bottom:1px solid var(--line)}
.notice p{margin:4px 0}
.notice small{color:var(--muted)}
.table-wrap{overflow:auto;margin-bottom:45px;background:#fff;border:1px solid var(--line);border-radius:16px}
table{width:100%;border-collapse:collapse;font-size:.9rem}
th,td{padding:13px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
th{background:#eef3f8;color:#30465a;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}
.bid-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}
.bid-summary div{background:#eef5ff;border-radius:14px;padding:14px}
.bid-summary span{display:block;color:var(--muted);font-size:.75rem}
.bid-summary strong{display:block;margin-top:4px}
.form-message{font-weight:750}
.form-message.error{color:var(--danger)}
.clean-list{padding-left:20px}
.empty-state{text-align:center;padding:55px;background:#fff;border:1px dashed #b8c7d7;border-radius:var(--radius);margin-bottom:25px}
.admin-shell{display:grid;grid-template-columns:250px 1fr;min-height:70vh}
.admin-sidebar{background:#0d2438;color:#fff;padding:25px 18px}
.admin-sidebar a{display:block;padding:10px 12px;border-radius:10px;color:#c8d7e4;margin-bottom:4px}
.admin-sidebar a:hover{background:rgba(255,255,255,.08);color:#fff}
.admin-content{padding:34px;min-width:0}
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:30px}
.metric{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px}
.metric span{color:var(--muted);font-size:.8rem}
.metric strong{display:block;font-size:2rem}
.admin-actions{display:flex;gap:10px;flex-wrap:wrap}
.site-footer{background:#061727;color:#afc2d1;padding:55px 0}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}
.footer-grid>div{display:flex;flex-direction:column;gap:8px}
.footer-grid a{color:#d8e6ef}
.brand-footer{color:#fff}
.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}
code{background:#e8eef5;padding:2px 5px;border-radius:5px}

@media(max-width:900px){.hero-grid,.auth-grid,.detail-grid,.dashboard-grid{grid-template-columns:1fr}
.hero-art{display:none}
.ranking-grid,.sponsored-grid{grid-template-columns:repeat(2,1fr)}
.portal-cards{grid-template-columns:1fr}
.metric-grid{grid-template-columns:repeat(2,1fr)}
.admin-shell{grid-template-columns:1fr}
.admin-sidebar{display:flex;overflow:auto;gap:4px}
.admin-sidebar a{white-space:nowrap}
.admin-content{padding:25px 20px}
}

@media(max-width:680px){.container{width:min(100% - 24px,1180px)}
.nav-toggle{display:block}
.main-nav{display:none;position:absolute;left:12px;right:12px;top:68px;flex-direction:column;align-items:stretch;background:#102b43;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:15px}
.main-nav.open{display:flex}
.hero{padding:65px 0}
.search-box{flex-direction:column}
.ranking-grid,.sponsored-grid{grid-template-columns:1fr}
.company-row{grid-template-columns:48px 1fr}
.row-actions{grid-column:2;align-items:flex-start;flex-direction:row}
.section-heading{align-items:flex-start;flex-direction:column}
.form-row,.form-row.three{grid-template-columns:1fr}
.bid-summary{grid-template-columns:1fr}
.metric-grid{grid-template-columns:1fr}
.footer-grid{grid-template-columns:1fr}
.form-links{flex-direction:column}
.hero-stats{gap:25px}
.section{padding:55px 0}
.form-card{padding:23px}
}

.receipt-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}
.receipt{background:#fff;border:1px solid var(--line);border-radius:24px;padding:clamp(1.5rem,4vw,3rem);box-shadow:var(--shadow)}
.receipt-header,.receipt-line{display:flex;justify-content:space-between;gap:2rem;align-items:center}
.receipt-header{padding-bottom:1.5rem;border-bottom:1px solid var(--line)}
.receipt-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:2rem 0}
.receipt-grid div,.receipt-line div{display:flex;flex-direction:column;gap:.35rem}
.receipt-grid small,.receipt-meta dt{color:var(--muted)}
.receipt-line{padding:1.5rem;background:#eef5ff;border-radius:16px}
.receipt-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:2rem 0}
.receipt-meta div{padding:1rem;border:1px solid var(--line);border-radius:12px}
.receipt-meta dt{font-size:.82rem}
.receipt-meta dd{margin:.35rem 0 0;overflow-wrap:anywhere}
.muted{color:var(--muted)}
@media(max-width:640px){.receipt-grid,.receipt-meta{grid-template-columns:1fr}
.receipt-header,.receipt-line,.receipt-actions{align-items:flex-start;flex-direction:column}
}
@media print{.site-header,.site-footer,.receipt-actions,.alert{display:none!important}
.receipt-page{padding:0}
.receipt{box-shadow:none;border:0}
.container{max-width:none}
}
.admin-title{font-size:clamp(2.2rem,4vw,3.5rem);margin:12px 0 28px}
.admin-section-heading{margin-top:48px}.admin-subtitle{margin-top:46px}
.admin-grid-two{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:22px;align-items:start;margin:26px 0 42px}
.info-banner{padding:18px 20px;margin:0 0 24px;border:1px solid #b8d2ff;border-left:5px solid var(--blue);border-radius:14px;background:#edf5ff;color:#24415c}
.filter-bar{display:flex;gap:14px;align-items:end;margin:24px 0}.filter-bar label{display:grid;gap:6px;font-weight:800;min-width:min(100%,520px)}.filter-bar select{border:1px solid #cbd6e2;background:#fff;border-radius:12px;padding:12px}
.rules-list{padding-left:22px}.rules-list li{padding:8px 0;border-bottom:1px solid var(--line)}
.sponsor-admin-card{background:#fff;border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:18px;padding:22px;margin-bottom:16px;box-shadow:0 10px 30px rgba(8,26,44,.05)}
.sponsor-admin-card label{display:grid;gap:6px;margin-bottom:12px;font-weight:800;font-size:.88rem}.sponsor-admin-card input,.sponsor-admin-card select{width:100%;border:1px solid #cbd6e2;background:#fbfdff;border-radius:10px;padding:10px 12px}
.sponsor-admin-head{display:flex;align-items:start;justify-content:space-between;gap:18px;margin-bottom:16px}.sponsor-admin-head h3{margin:10px 0 0}
.button-danger{color:#fff;background:var(--danger);border-color:var(--danger)}.position-input{width:80px;border:1px solid #cbd6e2;border-radius:9px;padding:8px}.move-buttons{display:flex;gap:6px}
.icon-button{display:grid;place-items:center;width:38px;height:38px;border:1px solid #b8d2ff;border-radius:10px;background:#fff;color:var(--blue);font-size:1.2rem;font-weight:900;cursor:pointer}.icon-button:hover{background:#edf5ff}.icon-button:disabled{opacity:.3;cursor:not-allowed}
.align-end{align-self:end;margin-bottom:17px}.connection-state{display:inline-flex;padding:8px 13px;border-radius:999px;font-weight:900;font-size:.78rem;text-transform:uppercase}.connection-state.is-ready{background:#dff7ec;color:#0d7248}.connection-state.is-pending{background:#fff2cc;color:#795500}
.copy-field{display:flex;gap:10px;align-items:center;padding:12px;border-radius:12px;background:#eef3f8;margin:14px 0}.copy-field code{flex:1;overflow-wrap:anywhere}.paypal-test{margin-top:20px}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.status-paused,.status-expired,.status-cancelled,.status-refunded{background:#edf0f3;color:#596979}
.webhook-stats{display:flex;gap:7px;flex-wrap:wrap}.status-processed{background:#dff7ec;color:#0d7248}.status-ignored{background:#edf0f3;color:#596979}.status-invalid,.status-denied{background:#fee4e2;color:#a61b1b}
@media(max-width:900px){.admin-grid-two{grid-template-columns:1fr}}
@media(max-width:680px){.copy-field,.sponsor-admin-head{align-items:flex-start;flex-direction:column}.align-end{align-self:stretch}}
