@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Sora:wght@400;600;700;800&display=swap");:root{--background:oklch(98.5% 0.006 190);--foreground:oklch(25% 0.05 238);--card:#ffffff;--card-foreground:oklch(25% 0.05 238);--primary:oklch(33% 0.07 238);--primary-foreground:oklch(98% 0.01 190);--secondary:oklch(63% 0.11 192);--secondary-foreground:oklch(99% 0 0);--muted:oklch(95.5% 0.015 190);--muted-foreground:oklch(50% 0.04 230);--accent:oklch(83% 0.17 85);--accent-foreground:oklch(25% 0.05 238);--destructive:oklch(58% 0.2 27);--border:oklch(91% 0.02 200);--input:oklch(89% 0.025 200);--ring:oklch(63% 0.11 192);--teal:oklch(63% 0.11 192);--mint:oklch(84% 0.06 170);--navy:oklch(33% 0.07 238);--sun:oklch(83% 0.17 85);--coral:oklch(58% 0.2 27);--radius:0.875rem;--shadow-soft:0 1px 2px oklch(33% 0.07 238/0.06),0 12px 32px -12px oklch(33% 0.07 238/0.18);--shadow-lift:0 24px 60px -20px oklch(33% 0.07 238/0.45);--gradient-hero:radial-gradient(120% 90% at 85% 0%,oklch(63% 0.11 192/0.55),transparent 55%),linear-gradient(160deg,oklch(33% 0.07 238),oklch(24% 0.06 240));--font-sans:"Manrope",ui-sans-serif,system-ui,sans-serif;--font-display:"Sora",ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html{color-scheme:light;scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--background);color:var(--foreground);font-family:var(--font-sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}a:hover{color:var(--teal)}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:800;letter-spacing:-.035em;line-height:1.08;color:inherit}h1{font-size:clamp(2.4rem,6vw,4.25rem)}h2{font-size:clamp(1.35rem,2.5vw,1.8rem)}h3{font-size:1.05rem}p{margin:0;color:var(--muted-foreground)}strong{color:inherit}hr{border:0;border-top:1px solid var(--border)}.page{width:100%;max-width:72rem;margin:0 auto;padding:0 1.5rem 4.5rem}.page-narrow{max-width:44rem}.nav{justify-content:space-between;gap:1.5rem;max-width:72rem;margin:0 auto;padding:1.25rem 0}.nav,.nav-actions{display:flex;align-items:center}.nav-actions{gap:.75rem}.brand{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--font-display);font-size:1.12rem;font-weight:700;letter-spacing:-.03em}.brand-logo{display:inline-block;width:2.4rem;height:2.4rem;flex:0 0 auto;border-radius:.65rem;background:#fff;padding:.2rem;box-shadow:0 1px 2px oklch(33% .07 238/.18)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:3rem;padding:0 1.4rem;border:1px solid transparent;border-radius:999px;font-family:var(--font-sans);font-size:.9rem;font-weight:700;line-height:1.2;cursor:pointer;transition:transform .16s ease,background .16s ease,box-shadow .16s ease,opacity .16s ease;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--navy);color:var(--primary-foreground)}.btn-primary:hover{background:oklch(30% .07 238);color:#fff}.btn-secondary{background:var(--teal);color:#fff}.btn-secondary:hover{background:oklch(58% .11 192);color:#fff}.btn-sun{background:var(--sun);color:var(--navy)}.btn-sun:hover{background:oklch(78% .17 85);color:var(--navy)}.btn-outline{background:transparent;border-color:var(--border);color:var(--foreground)}.btn-outline:hover{border-color:var(--teal);color:var(--teal)}.btn-ghost{background:transparent;color:var(--foreground)}.btn-ghost:hover{background:var(--muted);color:var(--foreground)}.btn-light{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22);color:#fff}.btn-light:hover{background:rgba(255,255,255,.18);color:#fff}.btn-sm{min-height:2.25rem;padding:0 .95rem;font-size:.78rem}.btn-lg{min-height:3.5rem;padding:0 1.8rem;font-size:.98rem}.btn-block{width:100%}.pill{display:inline-flex;align-items:center;gap:.35rem;padding:.32rem .65rem;border-radius:999px;background:var(--muted);color:var(--muted-foreground);font-size:.72rem;font-weight:700;letter-spacing:.01em}.pill.success{background:color-mix(in oklch,var(--teal) 16%,white);color:oklch(40% .1 192)}.pill.warning{background:color-mix(in oklch,var(--sun) 24%,white);color:oklch(42% .11 85)}.pill.danger{background:color-mix(in oklch,var(--coral) 14%,white);color:oklch(46% .17 27)}.pill.outline{background:transparent;color:var(--muted-foreground)}.card,.pill.outline{border:1px solid var(--border)}.card{background:var(--card);border-radius:1.3rem;padding:1.5rem;box-shadow:var(--shadow-soft)}.card-flat{box-shadow:none}.card-tight{padding:1.15rem}.label{display:block;font-size:.68rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.label,.muted{color:var(--muted-foreground)}.tiny{font-size:.75rem}.error{color:var(--destructive);font-size:.85rem;font-weight:600}.row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.stack{display:grid;grid-gap:.85rem;gap:.85rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));grid-gap:1rem;gap:1rem}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1.25rem;gap:1.25rem}.grid-3,.grid-6{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1rem;gap:1rem}.line-grid{display:grid;grid-template-columns:2.2fr .7fr .9fr 1.2fr auto;grid-gap:.75rem;gap:.75rem;align-items:end}.chip{background:var(--card);border-color:var(--border);color:var(--foreground);box-shadow:var(--shadow-soft)}.chip:hover{border-color:var(--teal);color:var(--teal)}.chip-active{background:var(--navy);border-color:var(--navy);color:var(--primary-foreground)}.chip-active:hover{background:oklch(30% .07 238);color:var(--primary-foreground)}@media (max-width:880px){.grid-4,.line-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.section{margin-top:2rem}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:1rem}.section-head p{margin-top:.25rem;font-size:.9rem}.hero-band{position:relative;width:100%;overflow:hidden;background:var(--gradient-hero);color:#fff}.hero-band:after{content:"";position:absolute;inset:auto -10% -30% 45%;height:18rem;border-radius:999px;background:radial-gradient(circle,oklch(63% .11 192/.35),transparent 65%);pointer-events:none}.hero-inner{position:relative;z-index:1;max-width:72rem;margin:0 auto;padding:1.5rem 1.5rem 4.5rem}.hero-band .nav{color:#fff}.hero-band .nav a:hover{color:var(--sun)}.hero-band .btn-ghost{color:rgba(255,255,255,.78)}.hero-band .btn-ghost:hover{background:rgba(255,255,255,.1);color:#fff}.hero-title{margin-top:.8rem;color:#fff;max-width:12ch}.hero-title .highlight{color:var(--sun)}.hero-copy{max-width:34rem;margin-top:1.35rem;color:rgba(255,255,255,.74);font-size:1rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(20rem,.95fr);grid-gap:3rem;gap:3rem;align-items:center;padding-top:3rem}.hero-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);font-size:.72rem;font-weight:700}.invoice-visual{position:relative;padding:1rem 0 1.5rem}.invoice-paper{position:relative;z-index:1;background:#fff;color:var(--foreground);border-radius:1.25rem;padding:1.5rem;box-shadow:var(--shadow-lift);transform:rotate(-1.5deg)}.invoice-paper .invoice-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.invoice-number{font-family:var(--font-display);font-size:1.15rem;font-weight:800}.invoice-client{margin-top:.2rem;font-size:.78rem;color:var(--muted-foreground)}.invoice-lines{padding-top:.8rem}.invoice-line{padding:.35rem 0;font-size:.8rem;border-bottom:1px dotted var(--border)}.invoice-line,.invoice-total{display:flex;justify-content:space-between;gap:1rem}.invoice-total{align-items:baseline;margin-top:1rem;font-family:var(--font-display);font-size:1.35rem;font-weight:800;color:var(--navy)}.credit-float{position:relative;z-index:2;margin:-1.6rem 0 0 -1.1rem;width:-moz-fit-content;width:fit-content;background:var(--card);color:var(--foreground);border-radius:1.1rem;padding:.9rem 1.1rem;box-shadow:var(--shadow-soft);transform:rotate(1deg)}.credit-float .credit-value{color:var(--teal);font-family:var(--font-display);font-size:1.4rem;font-weight:800}.landing-section{max-width:72rem;margin:0 auto;padding:4rem 1.5rem 0}.landing-section.tight{padding-top:3rem}.feature-card{display:flex;flex-direction:column;gap:.65rem;min-height:11rem}.feature-icon{display:inline-grid;place-items:center;width:2.6rem;height:2.6rem;border-radius:.8rem;background:var(--muted);color:var(--teal)}.feature-card h3{margin-top:.2rem}.feature-card p{font-size:.88rem}.feature-number{font-family:var(--font-display);font-size:.8rem;font-weight:800;color:var(--teal)}.feature-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1rem;gap:1rem;margin-top:1.5rem}.text-link{color:var(--teal);font-weight:700}.text-link:hover{text-decoration:underline}.auth-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100vh}.auth-brand{position:relative;overflow:hidden;background:var(--gradient-hero);color:#fff;padding:2rem;display:flex;flex-direction:column;justify-content:space-between}.auth-brand:after{content:"";position:absolute;inset:auto -20% -25% 20%;height:22rem;border-radius:999px;background:radial-gradient(circle,oklch(63% .11 192/.35),transparent 65%)}.auth-brand .brand,.auth-brand-content{position:relative;z-index:1}.auth-brand-content{max-width:26rem;padding-bottom:3rem}.auth-brand h1{color:#fff;font-size:clamp(2rem,4vw,3.2rem)}.auth-brand p{color:rgba(255,255,255,.72);margin-top:1rem}.auth-form-side{display:flex;align-items:center;justify-content:center;padding:3rem 1.5rem}.auth-form{width:100%;max-width:30rem}.auth-form h1{font-size:clamp(2rem,4vw,3rem)}.auth-form .sub{margin-top:.5rem;margin-bottom:1.6rem}.auth-form .sub,.auth-note{color:var(--muted-foreground)}.auth-note{margin-top:1.1rem;padding:.85rem 1rem;border-radius:.8rem;background:color-mix(in oklch,var(--teal) 8%,white);font-size:.78rem}.form{display:grid;grid-gap:1rem;gap:1rem}.field{display:grid;grid-gap:.4rem;gap:.4rem}.input,select.input,textarea.input{width:100%;min-height:3.2rem;padding:0 1rem;border:1px solid var(--input);border-radius:.9rem;background:#fff;color:var(--foreground);font-family:var(--font-sans);font-size:.95rem;outline:none;transition:border-color .15s ease,box-shadow .15s ease}textarea.input{padding-top:.8rem;padding-bottom:.8rem;min-height:7rem;resize:vertical}.input:focus,select.input:focus,textarea.input:focus{border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in oklch,var(--teal) 18%,transparent)}.input::placeholder{color:oklch(68% .03 230)}.input-group{display:flex;align-items:stretch}.input-prefix{display:inline-flex;align-items:center;padding:0 .85rem;border:1px solid var(--input);border-right:0;border-radius:.9rem 0 0 .9rem;background:var(--muted);color:var(--muted-foreground);font-size:.85rem;font-weight:700}.input-group .input{border-radius:0 .9rem .9rem 0}.checkbox-row{display:flex;align-items:flex-start;gap:.6rem;font-size:.8rem;color:var(--muted-foreground)}.checkbox-row input{margin-top:.2rem;accent-color:var(--teal)}.wallet-hero{padding-bottom:5rem}.wallet-hero-grid{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap;margin-top:2.2rem}.wallet-hero h1{color:#fff;margin-top:.65rem}.wallet-hero .org-meta{color:rgba(255,255,255,.72);margin-top:.55rem;font-size:.9rem}.wallet-stats{display:flex;gap:.9rem;flex-wrap:wrap}.wallet-stat{min-width:10.5rem;padding:1rem 1.15rem;border:1px solid rgba(255,255,255,.16);border-radius:1rem;background:rgba(255,255,255,.1);color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.wallet-stat.sun{background:var(--sun);border-color:var(--sun);color:var(--navy)}.wallet-stat .label{color:rgba(255,255,255,.62)}.wallet-stat.sun .label{color:rgba(15,23,42,.62)}.wallet-stat .value{margin-top:.15rem;font-family:var(--font-display);font-size:1.65rem;font-weight:800;line-height:1.1}.wallet-body{margin-top:-3.2rem;position:relative;z-index:2}.pack-card{position:relative;display:flex;flex-direction:column;gap:.4rem;padding:1.15rem;border:1px solid var(--border);border-radius:1.05rem;background:#fff}.pack-card.popular{border:2px solid var(--teal);background:color-mix(in oklch,var(--mint) 25%,white)}.pack-badge{position:absolute;top:-.65rem;left:1rem;background:var(--teal);color:#fff;border-radius:999px;padding:.18rem .6rem;font-size:.62rem;font-weight:800;letter-spacing:.03em}.pack-amount{font-family:var(--font-display);font-size:1.6rem;font-weight:800;letter-spacing:-.03em}.pack-note{font-size:.78rem;color:var(--muted-foreground)}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.82rem}.table th{padding:.7rem 1rem;text-align:left;background:var(--muted);color:var(--muted-foreground);font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.table td{padding:.8rem 1rem;border-bottom:1px solid var(--border);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table .amount{font-weight:800;white-space:nowrap}.table .date{color:var(--muted-foreground);white-space:nowrap}.admin-hero{padding-bottom:4.8rem}.admin-hero h1{color:#fff;margin-top:.6rem}.admin-stats{position:relative;z-index:2;margin-top:-3.4rem}.stat-card{display:flex;align-items:flex-start;gap:.85rem;padding:1.1rem;border:1px solid var(--border);border-radius:1rem;background:#fff;box-shadow:var(--shadow-soft)}.stat-icon{display:grid;place-items:center;width:2.5rem;height:2.5rem;flex:0 0 auto;border-radius:.75rem;background:color-mix(in oklch,var(--mint) 55%,white);color:var(--foreground)}.stat-icon.teal{background:var(--teal);color:#fff}.stat-icon.sun{background:var(--sun);color:var(--navy)}.stat-icon.coral{background:color-mix(in oklch,var(--coral) 14%,white);color:var(--coral)}.stat-card .label{font-size:.62rem}.stat-value{margin-top:.1rem;font-family:var(--font-display);font-size:1.25rem;font-weight:800;letter-spacing:-.03em;line-height:1.15}.stat-note{margin-top:.15rem;font-size:.7rem;color:var(--muted-foreground)}.receipt-page{max-width:42rem;margin:0 auto;padding:2rem 1.5rem 4rem}.receipt-actions{display:flex;justify-content:space-between;gap:.8rem;margin-bottom:1.2rem}.receipt{overflow:hidden;border-radius:1.2rem;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-soft)}.receipt-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.4rem;background:var(--gradient-hero);color:#fff}.receipt-head .brand{color:#fff}.receipt-body{padding:1.6rem}.receipt-success{display:flex;gap:.75rem;align-items:flex-start;padding-bottom:1.2rem;border-bottom:1px solid var(--border)}.receipt-check{display:grid;place-items:center;width:2rem;height:2rem;flex:0 0 auto;border-radius:999px;border:2px solid var(--teal);color:var(--teal)}.receipt-amount{margin:1.3rem 0;font-family:var(--font-display);font-size:clamp(2.2rem,6vw,3.2rem);font-weight:800;letter-spacing:-.04em;color:var(--navy)}.receipt-rows{display:grid;grid-gap:.75rem;gap:.75rem}.receipt-row{display:flex;justify-content:space-between;gap:1rem;padding-bottom:.7rem;border-bottom:1px solid var(--border);font-size:.85rem}.receipt-row .muted{color:var(--muted-foreground)}.receipt-total{display:flex;justify-content:space-between;gap:1rem;margin-top:1rem;padding-top:.8rem;font-weight:800}.receipt-total .amount{color:var(--teal)}.footer{margin-top:3rem;padding-top:1.2rem;border-top:1px solid var(--border);align-items:center;justify-content:space-between;flex-wrap:wrap;color:var(--muted-foreground);font-size:.75rem}.footer,.footer-links{display:flex;gap:1rem}.center{text-align:center}.right{text-align:right}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mb-0{margin-bottom:0}.hide-mobile{display:initial}@media (max-width:980px){.hero-grid{grid-template-columns:1fr;gap:2rem;padding-top:2rem}.hero-title{max-width:none}.feature-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:1fr}.grid-6{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-shell{grid-template-columns:1fr}.auth-brand{min-height:18rem;padding:1.5rem}.auth-brand-content{padding-top:2rem;padding-bottom:1rem}.auth-form-side{padding:2.5rem 1.25rem 3rem}.wallet-hero-grid{align-items:flex-start}}@media (max-width:640px){.page{padding:0 1rem 3.5rem}.nav{padding:1rem 0;flex-wrap:wrap}.nav-actions{gap:.4rem}.btn{min-height:2.7rem;padding:0 1.1rem;font-size:.82rem}.btn-lg{min-height:3.1rem;padding:0 1.3rem}.hero-inner{padding:1rem 1rem 3.5rem}.landing-section{padding:3rem 1rem 0}.feature-grid-4,.grid-3,.grid-6{grid-template-columns:1fr}.card{padding:1.15rem;border-radius:1.1rem}.wallet-stats{width:100%}.wallet-stat{flex:1 1 9rem}.receipt-page{padding:1rem .75rem 3rem}.receipt-body{padding:1.2rem}.receipt-row{font-size:.8rem}.hide-mobile{display:none}.footer{flex-direction:column;align-items:flex-start}}@media print{.footer,.nav,.no-print,.receipt-actions{display:none!important}body{background:#fff!important;color:#0f172a!important}.page,.receipt-page{max-width:none!important;padding:0!important}.card,.receipt{background:#fff!important;border:1px solid #d7dde6!important;color:#0f172a!important;box-shadow:none!important}.label,.muted{color:#64748b!important}}