@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fredoka;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink: #223653;--muted: #647a91;--green: #58cc72;--green-dark: #35a853;--blue: #3e9df5;--purple: #8e6de9;--orange: #ff8c6b;--yellow: #ffd75f;--bg: #f7fbff;--edge: #e3ecf6;--shadow: #d9e5f0;--radius: 23px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Nunito,system-ui,-apple-system,Segoe UI,sans-serif;font-weight:700;font-size:16px;line-height:1.52;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.14;letter-spacing:-.04em;font-weight:900}a{color:inherit;text-decoration:none}.shell{width:min(100% - 30px,1040px);margin-inline:auto}.topbar{background:#fff;position:sticky;top:0;z-index:10;border-bottom:2px solid #e8f0f8;padding-top:env(safe-area-inset-top)}.top-inner{height:84px;display:flex;align-items:center;justify-content:space-between;gap:9px}.identity{display:flex;align-items:center;gap:12px;min-width:0;line-height:1.06;text-decoration:none}.logo{width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#6bdb87,#43c76b);box-shadow:0 4px #2ca754;display:grid;place-items:center;flex:none;overflow:hidden;border:1px solid rgba(255,255,255,.35)}.logo svg{width:34px;height:34px;display:block;filter:drop-shadow(0 1px 0 rgba(28,126,60,.12))}.brand-wordmark{display:inline-block;font-family:Fredoka,Nunito,system-ui,sans-serif;font-size:clamp(26px,6.8vw,32px);font-weight:600;letter-spacing:-.025em;color:#49b96c;line-height:.95;transform:translateY(1px);text-shadow:0 1px 0 rgba(255,255,255,.65)}.desktop-links{display:none;gap:28px;font-size:14px;font-weight:900;color:#586f84}.desktop-links a:hover{color:#248f57}main{padding-bottom:18px}.hero{padding-top:17px}.hero-card{background:linear-gradient(136deg,#63d77e,#50c96d 66%,#48bf69);min-height:378px;padding:23px 22px 24px;border-radius:28px;border-bottom:7px solid #31a451;box-shadow:none;position:relative;isolation:isolate;overflow:hidden;color:#fff}.hero-card:before{content:"";position:absolute;right:-85px;top:-100px;width:260px;height:260px;border:37px solid rgba(255,255,255,.15);border-radius:50%;z-index:-1}.hero-card:after{content:"";position:absolute;left:-80px;bottom:-115px;width:220px;height:220px;border:27px solid rgba(255,255,255,.12);border-radius:50%;z-index:-1}.hero-eyebrow{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:40px;background:#fff;color:#29964e;font-size:11px;letter-spacing:.055em;font-weight:900;margin-bottom:15px}.hero h1{font-size:clamp(34px,9.4vw,46px);max-width:520px;line-height:1.065;letter-spacing:-.053em;text-wrap:balance;position:relative;z-index:2}.hero h1 .accent{color:#fff0a6}.hero p{font-size:15px;line-height:1.5;font-weight:800;max-width:290px;margin-top:13px;color:#f7fff9;position:relative;z-index:2}.hero p strong{font-weight:900;color:#fff}.hero-action{position:absolute;bottom:24px;left:22px;z-index:3;background:#fff;color:#269b4f;border-radius:14px;border-bottom:5px solid #d6ecde;min-height:47px;display:inline-flex;align-items:center;justify-content:center;padding:9px 15px;gap:7px;font-size:13px;font-weight:900;box-shadow:none;max-width:calc(100% - 48px)}.hero-action{transition:transform .11s ease,border-bottom-width .11s ease,background-color .11s ease,box-shadow .11s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none}.hero-action:active,.hero-action.is-pressed{transform:translateY(4px);border-bottom-width:1px;background-color:#f6fff8;box-shadow:0 1px #166b3c09}.hero-action:focus-visible{outline:2px solid transparent;box-shadow:0 0 0 3px #384c4024}.mascot{position:absolute;width:176px;right:-20px;bottom:7px;z-index:1;pointer-events:none;filter:drop-shadow(0 7px 0 rgba(48,127,81,.14))}.mascot svg{display:block;width:100%;height:auto}.hero-spark{position:absolute;right:22px;top:22px;font-size:23px;transform:rotate(13deg);opacity:.95}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;text-align:center;background:#fff;border:1.5px solid var(--edge);border-bottom:4px solid var(--shadow);border-radius:16px;padding:12px 5px 10px;font-size:12px;font-weight:900;line-height:1.25;box-shadow:none}.stat .emoji{font-size:23px;line-height:1.1}.stat b{font-size:12px;font-weight:900;display:block}.section{padding-top:47px}.section-head{margin:0 0 18px;display:flex;gap:12px;align-items:center}.section-label{width:40px;height:40px;border-radius:13px;background:#e1f2ff;color:#2683d0;flex:none;display:grid;place-items:center;border-bottom:3px solid #c0ddf6;font-size:15px;font-weight:900}.section-head h2{font-size:26px;letter-spacing:-.046em;line-height:1.15}.section-head p{color:var(--muted);font-size:13px;font-weight:800;margin-top:4px}.steps{display:grid;grid-template-columns:1fr;gap:11px}.step{display:flex;align-items:center;gap:13px;background:#fff;padding:15px 14px;border:1.5px solid var(--edge);border-bottom:4px solid var(--shadow);border-radius:19px;min-width:0}.step-icon{width:50px;height:50px;border-radius:16px;background:#e3f9e9;display:grid;place-items:center;flex:none;font-size:25px}.step:nth-child(2) .step-icon{background:#fff2d4}.step:nth-child(3) .step-icon{background:#ebe7ff}.step:nth-child(4) .step-icon{background:#e6f4ff}.step-copy{min-width:0;flex:1}.step-index{font-size:10px;color:#88a0b6;font-weight:900;letter-spacing:.07em;display:block;margin-bottom:2px}.step h3{font-size:17px;letter-spacing:-.025em;margin:0 0 3px}.step p{font-size:13px;color:var(--muted);font-weight:700;line-height:1.46}.reward-section{background:#edf6ff;border-top:2px solid #e5effa;border-bottom:2px solid #e5effa;margin-top:46px;padding:36px 0 40px}.reward-section .section-head{margin-bottom:17px}.awards{display:grid;grid-template-columns:1fr;gap:15px}.award{min-width:0;border:1.5px solid var(--edge);border-bottom:5px solid var(--shadow);border-radius:23px;overflow:hidden;background:#fff}.award-top{padding:17px;display:flex;align-items:center;gap:11px;border-bottom:2px solid #ebf0f6}.award-symbol{display:grid;place-items:center;flex:none;width:50px;height:50px;font-size:27px;border-radius:15px}.good .award-symbol{background:#dff9e5}.bad .award-symbol{background:#fff0e8}.award-top h3{font-size:22px;margin:0}.award-top p{font-size:12px;line-height:1.45;color:var(--muted);font-weight:800;margin-top:3px}.award-rows{padding:4px 16px 8px}.award-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 0;border-bottom:1px solid #edf1f5;font-size:14px;line-height:1.35;font-weight:800}.award-row:last-child{border-bottom:0}.award-row .amount{flex:none;white-space:nowrap;font-weight:900;font-size:16px;letter-spacing:-.02em}.good .amount{color:#249953}.bad .amount{color:#e56b47}.award-foot{padding:12px 13px;background:#f4f8fd;border-radius:12px;margin:1px 16px 17px;font-size:12px;font-weight:800;color:#596f86;line-height:1.6}.explain strong{color:#2b5e90;font-weight:900}.explain{font-size:12px;font-weight:800;color:#688096;margin:15px 1px 0;line-height:1.6;text-align:center}.funds{display:grid;grid-template-columns:1fr;gap:13px}.fund-main{background:linear-gradient(140deg,#469df4,#3188e9);border-radius:23px;padding:22px 19px;border-bottom:6px solid #2676cd;color:#fff;min-width:0;overflow:hidden}.fund-main h3{font-size:23px;margin-bottom:5px}.fund-main>p{font-size:14px;color:#f0f8ff;font-weight:800;line-height:1.56;margin-bottom:17px}.money-cards{display:grid;grid-template-columns:1fr 1fr;gap:9px}.money-card{background:#fff;color:var(--ink);border-radius:15px;border-bottom:4px solid #cbdef3;padding:14px 11px;min-width:0}.money-card .icon{font-size:22px}.money-card b{font-weight:900;display:block;font-size:18px;line-height:1.2;margin:7px 0 4px;letter-spacing:-.04em;overflow-wrap:anywhere}.money-card span:last-child{display:block;font-size:11px;font-weight:800;color:#647c93;line-height:1.4}.fund-approval{background:#fff;border:1.5px solid var(--edge);border-bottom:5px solid var(--shadow);border-radius:23px;padding:20px 19px}.approval-heading{display:flex;align-items:center;gap:12px;margin-bottom:8px}.approval-heading span{font-size:26px;background:#fff2d9;border-radius:13px;width:48px;height:48px;display:grid;place-items:center;flex:none}.fund-approval h3{font-size:21px}.fund-approval p{font-size:14px;font-weight:700;color:#60748b;line-height:1.56}.flow{margin-top:13px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:11px;font-weight:900;color:#247cc9}.flow span{background:#ebf5ff;padding:9px;border-radius:10px}.flow i{font-style:normal;color:#869ab0}.final{margin-top:41px;margin-bottom:28px;background:#fff9e4;border:1.5px solid #f6e5a5;border-bottom:6px solid #f1d68a;border-radius:24px;padding:24px 20px;display:flex;align-items:center;gap:14px}.final h2{font-size:26px;margin:0 0 7px}.final p{font-size:14px;color:#6f684a;font-weight:800;line-height:1.57}.trophy{font-size:54px;flex:none;filter:drop-shadow(0 4px 0 #f0d989);align-self:flex-start}footer{padding:18px 0 calc(25px + env(safe-area-inset-bottom));border-top:2px solid #e5edf5;background:#fff;font-size:11px;text-align:center;font-weight:900;color:#7d8fa2}:focus-visible{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 3px #384c4024}@media(max-width:370px){.shell{width:calc(100% - 24px)}.hero-card{padding:21px 18px 23px;min-height:365px}.hero h1{font-size:34px}.hero p{font-size:14px;max-width:240px}.hero-action{left:18px;font-size:12px;padding-inline:11px}.mascot{right:-31px;width:153px;bottom:4px}.identity{font-size:11.5px}.logo{width:39px;height:39px}.logo svg{width:31px;height:31px}.section-head h2{font-size:24px}.stat{font-size:11px}.award-row{font-size:13px}.award-row .amount{font-size:15px}.money-card b{font-size:16px}.final .trophy{font-size:45px}}@media(min-width:600px){.shell{width:min(100% - 48px,1040px)}.hero-card{min-height:400px;padding:38px 34px}.hero h1{font-size:clamp(46px,6.5vw,66px)}.hero p{font-size:18px;max-width:440px}.hero-action{left:34px;bottom:30px;font-size:15px;padding:12px 20px}.mascot{width:250px;right:20px;bottom:0}.hero-eyebrow{font-size:12px}.stats{gap:13px}.stat{font-size:14px;flex-direction:row;gap:9px}.stat b{font-size:15px}.section{padding-top:58px}.section-head h2{font-size:33px}.section-head p{font-size:15px}.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.step{min-height:116px;padding:17px}.step h3{font-size:19px}.step p{font-size:14px}.reward-section{margin-top:62px;padding:46px 0 51px}.awards{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.award-row{font-size:14px}.award-row .amount{font-size:16px}.funds{grid-template-columns:1.03fr .97fr;gap:17px}.fund-main,.fund-approval{padding:26px}.fund-main h3{font-size:25px}.fund-approval h3{font-size:24px}.money-card b{font-size:20px}.final{padding:31px 33px;gap:25px}.final h2{font-size:33px}.final p{font-size:17px}.trophy{font-size:85px}}@media(min-width:930px){.top-inner{height:86px}.desktop-links{display:flex}.hero{padding-top:28px}.hero-card{min-height:440px;padding:46px 48px;border-radius:33px}.hero h1{font-size:69px}.hero p{font-size:20px;max-width:540px}.hero-action{left:48px;bottom:35px}.mascot{width:370px;right:45px;bottom:3px}.section{padding-top:72px}.section-head h2{font-size:37px}.steps{grid-template-columns:repeat(4,minmax(0,1fr))}.step{display:block;min-height:208px}.step-icon{margin-bottom:15px}.award-top{padding:22px}.award-rows{padding:7px 23px 10px}.award-foot{margin:4px 23px 23px}.award-row{font-size:16px}.award-row .amount{font-size:20px}.fund-main,.fund-approval{padding:33px}.fund-main h3{font-size:29px}.money-card b{font-size:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.topbar{position:static}.hero-action{display:none}.shell{width:100%}.hero-card,.fund-main{-webkit-print-color-adjust:exact;print-color-adjust:exact}.section{padding-top:26px}.reward-section{margin-top:20px;padding:26px 0}.final{margin-top:22px}footer{padding:12px}}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}input,select,textarea{width:100%;min-width:0;max-width:100%;min-height:48px;border:2px solid var(--edge);border-radius:14px;background:#fff;color:var(--ink);padding:11px 12px;font-size:16px}textarea{resize:vertical}button,summary{touch-action:manipulation}button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 3px #384c4024}p,span,h1,h2,h3{overflow-wrap:anywhere}.btn3d{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:48px;border:2px solid transparent;border-bottom-width:5px;border-radius:15px;padding:10px 16px;font-weight:900;line-height:1.3;transition:transform .1s,border-bottom-width .1s;user-select:none}.btn3d.green{background:var(--green);color:#123c25;border-color:#35a853}.btn3d.white{background:#fff;color:#27536a;border-color:#d9e5f0}.btn3d.danger{background:#ffe8de;color:#9e381c;border-color:#efb29d}.btn3d:active:not(:disabled){transform:translateY(3px);border-bottom-width:2px}.text-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px;color:#526f86;background:none;border:0;text-decoration:underline;text-underline-offset:3px}.login-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 13px;border-radius:12px;background:#e3f9e9;color:#246b3b;border:1px solid #c4eccc;border-bottom:3px solid #b3dfbd;font-weight:900;white-space:nowrap;font-size:13px}#landing-auth-slot{margin-left:auto;flex:none}.landing .desktop-links{order:0}.landing #landing-auth-slot{order:1}.landing .top-inner,.landing .identity{gap:9px}.application{min-height:100dvh}.app-top{max-width:900px;padding:15px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:78px}.app-main{width:min(100% - 30px,800px);margin:auto;padding:25px 0 calc(110px + env(safe-area-inset-bottom))}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:25px}.page-heading h1{font-size:31px;line-height:1.15}.page-heading>span{font-size:43px}.eyebrow{color:#32794c;font-size:10px;letter-spacing:.08em;margin-bottom:7px;font-weight:900}.muted{font-size:13px;color:#586f84;line-height:1.5}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:22px}.inline-check{display:flex!important;align-items:center;gap:9px;min-height:44px;font-size:14px}.inline-check input{width:22px;min-height:22px;flex:none;accent-color:#35a853}.card-list{display:grid;gap:16px;margin-bottom:20px}.task-card{background:#fff;border:1.5px solid var(--edge);border-bottom:5px solid var(--shadow);border-radius:23px;padding:20px;min-width:0}.task-card h2{font-size:21px;line-height:1.3;letter-spacing:-.025em}.task-heading{display:flex;justify-content:space-between;gap:10px}.task-heading>div{min-width:0}.task-emoji{font-size:31px;flex:none}.chip-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:10px 0}.chip{display:inline-flex;align-items:center;font-size:11px;line-height:1.35;padding:5px 9px;border-radius:9px;background:#eef4fa;color:#4c647c;font-weight:900}.chip.approved,.chip.completed{color:#1c6a37;background:#e1f7e8}.chip.pending{color:#81551e;background:#fff2d4}.chip.rejected,.chip.invalidated{color:#9b3f2a;background:#ffece4}.task-card .disclosure{margin-top:12px;font-size:14px}.task-card .disclosure p{white-space:pre-wrap;margin:10px 0;color:#52687e}.select-trigger,.disclosure>summary{min-height:48px;padding:11px 13px;color:#3f6175;background-color:#f2f7fb;border:1px solid #dce7ef;border-radius:13px;cursor:pointer;font-size:14px;font-weight:800;line-height:1.5;transition:background-color .15s,border-color .15s}.select-trigger,.disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none}.disclosure>summary::-webkit-details-marker{display:none}.select-trigger svg,.disclosure>summary svg{flex:none;transition:transform .15s}.select-trigger:not(:disabled):hover,.disclosure>summary:hover{background-color:#eaf3f8;border-color:#bfd3e0}.select-trigger[aria-expanded=true],.disclosure[open]>summary{color:#246d40;background-color:#edf8f0;border-color:#c6e4ce}.select-trigger:disabled{cursor:not-allowed;opacity:.6}.select-trigger[aria-expanded=true] svg,.disclosure[open]>summary svg{transform:rotate(180deg)}.disclosure-content{padding:12px;margin-top:7px;border:1px solid #e0eaf0;border-radius:13px;background:#fbfdff}.disclosure-content>:first-child{margin-top:0}.disclosure-content>:last-child{margin-bottom:0}.select-field{display:grid;min-width:0;gap:7px;font-size:14px}.form .select-field>label{display:flex;flex-wrap:wrap;gap:5px}.select-control{position:relative;min-width:0}.select-trigger{width:100%;text-align:left}.select-trigger>span{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.select-native{position:absolute;width:1px;min-height:0;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.select-menu{position:fixed;inset:auto;margin:0;padding:6px;border:1px solid #dce6df;border-radius:16px;background:#fff;color:var(--ink);box-shadow:0 12px 32px #233c3024,0 2px 6px #233c300d;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cad7cf transparent}.select-menu [role=option]{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px 12px;border-radius:10px;font-size:14px;font-weight:700;line-height:1.5;cursor:pointer;overflow-wrap:anywhere}.select-menu [role=option]+[role=option]{margin-top:3px}.select-menu [role=option] svg{flex:none}.select-menu [aria-selected=true]{background:#edf8ef;color:#256c3d;font-weight:900}.select-menu [data-active=true]{background:#f0f4f1}.select-menu [aria-selected=true][data-active=true]{background:#e2f2e6}.select-menu [aria-disabled=true]{opacity:.5;cursor:not-allowed}.select-trigger[aria-invalid=true]{border-color:#c9755d}.select-error{font-size:12px;color:#9e381c}@media(forced-colors:active){:focus-visible{outline:2px solid CanvasText}.select-menu [data-active=true]{outline:1px solid Highlight;outline-offset:-2px}.select-menu [aria-selected=true]{color:HighlightText;background:Highlight;forced-color-adjust:none}}.task-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:14px}.task-options{width:100%}.task-options>.disclosure-content{display:flex;flex-wrap:wrap;gap:8px}.is-complete{border-color:#c4e8ce}.task-options .btn3d{width:100%;font-size:14px}.editor-management{margin-top:22px;padding-top:18px;border-top:1px solid #dce6ee}.editor-management h3{margin-bottom:11px;color:#587086;font-size:13px;font-weight:800}.management-actions{display:flex;flex-wrap:wrap;gap:10px}.management-actions .compact-action{min-height:44px;padding:8px 13px;font-size:14px}.is-complete .task-heading h2{color:#277c42}.reward-text{color:#1d7842;font-weight:900}.penalty-text{color:#b34326;font-weight:900}.bottom-nav{position:fixed;z-index:20;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:7px max(6px,calc((100vw - 800px)/2)) calc(7px + env(safe-area-inset-bottom));background:#fff;border-top:2px solid var(--edge);box-shadow:0 -5px 24px #22365308}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:56px;padding:6px 2px;color:#5c7185;font-size:11px;font-weight:900;border-radius:15px}.bottom-nav a.active{background:#e3f9e9;color:#23713d}.empty{text-align:center;padding:40px 12px;background:#fff;border:2px dashed #d1e6dc;border-radius:24px;margin:18px 0}.empty>span{font-size:65px;display:block;margin-bottom:12px}.empty h2{font-size:24px;margin-bottom:10px}.empty p{font-size:14px;max-width:340px;margin:0 auto 20px;color:#536d80}.loading{display:flex;justify-content:center;align-items:center;gap:8px;padding:30px 15px;color:#426a58}.error-box{display:flex;flex-direction:column;align-items:flex-start;gap:12px;background:#fff0e9;color:#993d24;border:1px solid #efc9b9;border-radius:15px;padding:15px;margin:12px 0;font-size:14px}.notice{background:#fff8e2;color:#725c2d;border-radius:14px;padding:13px;font-size:13px;margin:12px 0;line-height:1.5}.sheet{position:fixed;inset:auto 0 0;margin:0 auto;width:min(100%,540px);max-width:100%;max-height:90dvh;padding:20px 20px calc(24px + env(safe-area-inset-bottom));border:2px solid var(--edge);border-radius:26px 26px 0 0;background:var(--bg);color:var(--ink);overflow:auto;overscroll-behavior:contain}.sheet::backdrop{background:#17344d85}.sheet>header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.sheet h2{font-size:23px}.icon-btn{display:inline-flex;justify-content:center;align-items:center;width:44px;min-height:44px;flex:none;border:1px solid var(--edge);border-radius:14px;background:#fff;color:var(--ink);font-size:26px}.form{display:grid;gap:17px}.form label{display:grid;gap:7px;font-size:14px}.form .muted{display:inline}.form h3{font-size:19px;line-height:1.4}.form .btn3d{width:100%}.tabs{display:flex;gap:5px;padding:5px;background:#e9f2fa;border-radius:17px;margin-bottom:20px}.tabs button{flex:1;min-width:0;min-height:46px;font-size:13px;font-weight:900;border:0;background:none;color:#556d83;border-radius:12px;padding:7px}.tabs button[aria-pressed=true]{background:#fff;color:#287343;box-shadow:0 3px #d4e1ec}.select-field.status-filter{display:flex;align-items:center;gap:12px;margin:16px 0;font-size:14px}.status-filter .select-control{width:auto;max-width:70%;flex:1}.evidence-grid{display:flex;flex-wrap:wrap;gap:9px;margin:15px 0}.image-thumb{width:calc((100% - 18px) / 3);min-width:70px;max-width:160px;height:120px;background:#eaf3fc;border:2px solid var(--edge);border-radius:15px;padding:0;overflow:hidden}.image-thumb img{width:100%;height:100%;object-fit:cover}.large-image{width:100%;height:auto;border-radius:15px}.file-choice{display:grid;gap:8px;padding:18px;background:#e8f8ed;border:2px dashed #9ad9ab;border-radius:18px;font-size:14px}.file-choice input{padding:0;border:0;border-radius:0;background:transparent;font-size:12px}.file-choice input::file-selector-button{font:inherit;padding:11px;border:0;border-radius:10px;background:#fff;color:#2c6e40;margin-right:8px;cursor:pointer}.upload-row{display:flex;align-items:center;gap:10px;margin:10px 0}.upload-row img{width:65px;height:70px;border-radius:12px;object-fit:cover}.upload-row>div{flex:1;min-width:0;font-size:12px}.upload-row progress{width:100%;accent-color:#35a853}.uploader>.muted{display:block;margin:10px 0}.ledger-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:18px 0}.ledger-summary>div{background:#fff;border:1px solid var(--edge);border-bottom:4px solid var(--shadow);border-radius:16px;padding:13px 7px;min-width:0;text-align:center}.ledger-summary span{display:block;font-size:11px;color:#5b7388}.ledger-summary b{display:block;font-size:15px;margin-top:5px;overflow-wrap:anywhere}.ledger-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1.5px solid var(--edge);border-bottom:4px solid var(--shadow);border-radius:18px;padding:17px;margin:10px 0}.ledger-row>div{min-width:0;flex:1}.ledger-row h2{font-size:15px;line-height:1.45;letter-spacing:0}.ledger-row>strong{font-size:15px;max-width:45%;text-align:right}.public-shell{width:min(100% - 30px,460px);margin:35px auto}.public-shell>h1{font-size:30px;margin-top:40px}.public-shell>.muted{margin:10px 0 25px}.clerk-root,.clerk-card{width:100%!important;max-width:100%!important}.clerk-signup-hidden{display:none}.account-card{display:grid;gap:15px}.account-actions{display:grid;gap:12px}.account-actions .account-action{width:100%;min-height:52px;padding:12px 16px;font-size:15px;font-weight:900;line-height:1.3;text-decoration:none}.goal-description{white-space:pre-wrap;font-size:14px;margin:10px 0}@media(max-width:350px){.brand-wordmark{font-size:25px}.landing .identity{gap:7px}.landing .logo{width:34px;height:34px;border-radius:11px}.login-link{padding-inline:8px;font-size:12px}.task-card{padding:16px}.task-actions{gap:7px}.task-actions>.btn3d{padding-inline:12px}.ledger-summary b{font-size:13px}.page-heading h1{font-size:28px}}@media(min-width:600px){.sheet{inset:50% auto auto 50%;transform:translate(-50%,-50%);border-radius:26px;max-height:85dvh}.app-main{padding-top:35px}.page-heading h1{font-size:38px}.card-list{grid-template-columns:1fr 1fr}.task-card{align-self:start}.public-shell{margin-top:55px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
