@import"https://fonts.googleapis.com/css2?family=Fredoka:wght@400;600;700&family=Nunito:wght@400;600;700&family=Poppins:wght@400;600;700&family=Space+Grotesk:wght@400;600&display=swap";:root{--ink: #1c1b20;--muted: #5a5961;--cream: #fff7e8;--sunrise: #ffb45a;--sea: #45c2f0;--leaf: #58d18d;--berry: #ff6f91;--shadow: 0 18px 45px rgba(28, 27, 32, .12);--radius: 22px;--font-ui: "Poppins", "Segoe UI", sans-serif;--font-body: "Nunito", "Segoe UI", sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);color:var(--ink);background:radial-gradient(circle at top,#fff7e8,#f0f7ff,#f7fbf2);min-height:100vh}a{text-decoration:none;color:inherit}.text-link{background:none;border:none;padding:0;font:inherit;color:var(--ink);text-decoration:underline;cursor:pointer}.page{min-height:100vh;display:flex;flex-direction:column}.top-bar{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;padding:24px 8vw 12px}.brand{display:flex;align-items:center;gap:12px;font-family:var(--font-ui)}.brand-mark{width:52px;height:52px;border-radius:14px;display:block;object-fit:contain;background:#fff;box-shadow:var(--shadow)}.app-splash{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top,#fff7e8,#f0f7ff,#f7fbf2);display:grid;place-items:center;z-index:2000;opacity:1;transition:opacity .35s ease}.app-splash.fading{opacity:0;pointer-events:none}.splash-content{display:grid;place-items:center;gap:10px;font-family:var(--font-ui);text-align:center}.splash-logo{width:120px;height:120px;object-fit:contain;background:#fff;border-radius:26px;box-shadow:var(--shadow)}.splash-title{font-size:1.4rem;font-weight:700}.splash-sub{color:var(--muted);font-size:.95rem}.brand-title{font-size:1.2rem;font-weight:700}.brand-sub{font-size:.8rem;color:var(--muted)}.nav-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.nav-links a{padding:8px 12px;border-radius:999px;font-weight:600;font-family:var(--font-ui)}.nav-links a.active{background:var(--ink);color:#fff}.nav-links .cta{background:var(--sea);color:#fff;box-shadow:var(--shadow)}main{flex:1;padding:24px 8vw 64px}.hero{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:center;padding:24px 0 40px;animation:floatIn .8s ease}.hero-text h1{font-size:clamp(2rem,3vw,3rem);font-family:var(--font-ui);margin-bottom:12px}.page-title{font-size:clamp(2rem,3vw,3rem);font-family:var(--font-ui);margin:6px 0 12px}.definition{font-size:1.05rem;color:var(--ink);margin:10px 0}.definition.detail{color:var(--muted)}.lead{font-size:1.05rem;color:var(--muted)}.benefit-list{list-style:none;padding:0;margin:18px 0;display:grid;gap:12px}.benefit-list li{display:grid;gap:6px;background:rgba(255,255,255,.75);padding:12px 16px;border-radius:16px;box-shadow:var(--shadow)}.benefit-list span{color:var(--muted)}.hero-actions{display:flex;gap:12px;margin:24px 0;flex-wrap:wrap}.hero-card{background:#fff;border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.hero-visuals{display:grid;gap:18px}.hero-scene{width:100%;border-radius:var(--radius);box-shadow:var(--shadow);object-fit:cover}.hero-card ul{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:12px}.hero-card li{display:flex;justify-content:space-between;font-weight:600}.card-header,.card-footer{font-size:.9rem;color:var(--muted)}.pill{display:inline-block;background:rgba(255,180,90,.25);color:#a35b00;padding:6px 14px;border-radius:999px;font-weight:600}.section-heading,.features-intro{margin-bottom:24px}.overview{margin-bottom:32px}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.feature-card{background:#fff;padding:20px;border-radius:var(--radius);box-shadow:var(--shadow);display:grid;gap:12px}.feature-card img{width:100%;height:auto;border-radius:16px}.faq-section{margin-top:40px;display:grid;gap:18px}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.faq-item h3{margin-top:0;margin-bottom:8px}.faq-item p{margin:0;color:var(--muted)}.footer{display:flex;justify-content:space-between;padding:16px 8vw 32px;font-size:.85rem;color:var(--muted)}.footer-link{background:var(--ink);color:#fff;padding:8px 14px;border-radius:999px;font-weight:600;font-family:var(--font-ui)}.app-shell{background:radial-gradient(circle at top right,rgba(255,180,90,.18),transparent 40%),radial-gradient(circle at 20% 30%,rgba(69,194,240,.18),transparent 45%),linear-gradient(135deg,rgba(69,194,240,.08),rgba(88,209,141,.1))}.app-header{padding:20px 8vw;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.app-header.login-header{padding-top:24px}.app-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.session-pill{display:flex;gap:12px;align-items:center;background:rgba(255,255,255,.9);padding:8px 14px;border-radius:999px;box-shadow:var(--shadow);font-weight:600}.app-body{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:0 8vw 48px}.side-nav{display:flex;flex-direction:column;gap:12px;background:rgba(255,255,255,.9);padding:18px;border-radius:var(--radius);box-shadow:var(--shadow);height:fit-content}.side-nav a{padding:10px 14px;border-radius:12px;font-weight:600;background:#f6f6f9;transition:transform .2s ease,box-shadow .2s ease}.side-nav a.active{background:var(--ink);color:#fff}.side-nav a:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(28,27,32,.12)}.content{display:grid;gap:24px}.content-section{display:grid;gap:18px}.card{background:#fff;padding:22px;border-radius:var(--radius);box-shadow:var(--shadow)}.card.accent{background:linear-gradient(135deg,rgba(255,180,90,.2),rgba(255,111,145,.2))}.split-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}.list{list-style:none;padding:0;display:grid;gap:12px;margin:0}.list li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border-radius:16px;background:#f8f8fb}.list li.dimmed{opacity:.6}.list span{color:var(--muted);display:block;font-size:.9rem}.amount{font-weight:700}.actions{display:flex;gap:12px;justify-content:flex-end;margin-top:12px}.primary,.secondary,.ghost{border:none;padding:10px 18px;border-radius:999px;font-weight:600;cursor:pointer;font-family:var(--font-ui)}.primary{background:var(--ink);color:#fff}.secondary{background:#fff;color:var(--ink);border:2px solid var(--ink)}.ghost{background:transparent;color:var(--ink);border:1px dashed var(--muted)}.full{width:100%}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:12px;text-align:left;border-bottom:1px solid #ececf1}.approval-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.field{display:grid;gap:6px;font-weight:600;font-family:var(--font-ui)}.field input{padding:10px 12px;border-radius:12px;border:1px solid #ddd}.field select{padding:10px 12px;border-radius:12px;border:1px solid #ddd;background:#fff}.file-picker{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.file-button{border:2px solid var(--ink);padding:10px 18px;border-radius:999px;font-weight:600;cursor:pointer;font-family:var(--font-ui);background:#fff;color:var(--ink)}.chore-media,.submission-photo{display:block;margin-top:10px;width:min(320px,100%);border-radius:16px;box-shadow:var(--shadow)}.file-picker{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.file-input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.file-button{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:999px;background:var(--ink);color:#fff;font-weight:600;cursor:pointer;font-family:var(--font-ui)}.submission-photo{margin-top:8px;width:min(240px,100%);border-radius:12px;border:1px solid #ececf1;box-shadow:var(--shadow)}.feedback-field{min-width:220px}.progress{background:#f2f2f6;border-radius:999px;overflow:hidden;height:12px}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--sea),var(--leaf))}.stat{font-size:1.6rem;font-weight:700;font-family:var(--font-ui)}.muted{color:var(--muted)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-top:12px}.stats-grid strong{display:block;font-size:1.1rem}.chart{display:grid;gap:16px}.chart-row{display:grid;gap:8px}.chart-label{display:flex;justify-content:space-between;gap:12px;font-weight:600}.chart-label span{color:var(--muted);font-size:.9rem}.chart-bar{background:#f1f1f6;border-radius:999px;height:12px;overflow:hidden}.chart-fill{height:100%;background:linear-gradient(90deg,var(--sea),var(--leaf));border-radius:inherit}.chart-values{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.9rem}.inline-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(28,27,32,.45);display:grid;place-items:center;padding:24px;z-index:1000}.modal{background:#fff;border-radius:24px;padding:24px;width:min(480px,100%);box-shadow:var(--shadow);animation:floatIn .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-family:var(--font-ui)}.modal-body{display:grid;gap:16px}.media-preview{width:100%;max-height:60vh;border-radius:16px;object-fit:contain;background:#111}.modal-form{display:grid;gap:16px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}.notice{padding:10px 12px;border-radius:12px;font-weight:600}.notice.error{background:rgba(255,111,145,.15);color:#a30f2b}.notice.success{background:rgba(88,209,141,.2);color:#0c6b3f}.code-block{display:grid;gap:6px;background:#f6f6f9;border-radius:16px;padding:12px 16px;font-weight:700}.success-block{display:grid;gap:16px}.login-shell{background:radial-gradient(circle at top left,rgba(255,180,90,.22),transparent 45%),radial-gradient(circle at 80% 10%,rgba(88,209,141,.18),transparent 50%),linear-gradient(180deg,rgba(255,255,255,.95),rgba(240,247,255,.9))}.login-main{flex:1;padding:24px 8vw 64px}.login-hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:32px;align-items:center;animation:floatIn .8s ease}.login-copy h1{font-size:clamp(2rem,3.2vw,3.2rem);font-family:var(--font-ui);margin-bottom:12px}.login-highlights{display:grid;gap:12px;margin-top:20px}.login-highlights div{background:rgba(255,255,255,.8);padding:12px 16px;border-radius:16px;box-shadow:var(--shadow)}.login-highlights span{color:var(--muted);display:block;font-size:.9rem}.login-card{background:#fff;border-radius:var(--radius);padding:26px;box-shadow:var(--shadow);display:grid;gap:18px}.login-card-header h2{margin:0 0 8px;font-family:var(--font-ui)}.login-form{display:grid;gap:16px}.login-help{display:grid;gap:12px;align-items:start}@media(max-width:900px){.app-body{grid-template-columns:1fr}.side-nav{flex-direction:row;flex-wrap:wrap}.top-bar{padding:20px 6vw 10px}}@keyframes floatIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
