:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f8faf4;--ink:#203c38;--muted:#65786c;--teal:#087e83;--pale-teal:#e6f1e9;--line:#dfe6dc}*{box-sizing:border-box}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#e9efee;margin:0;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans KR,sans-serif;font-size:14px;line-height:1.6}body.dialog-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button,a{touch-action:manipulation}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,main:focus-visible{outline-offset:4px;outline:3px solid #e6a34d}button:disabled{cursor:default}svg{vertical-align:middle;flex-shrink:0}h1,h2,h3,p,figure{margin:0}.app-shell{background:var(--paper);max-width:480px;min-height:100dvh;margin:auto;box-shadow:0 0 90px #143a3b0b}.app-header{background:var(--paper);justify-content:space-between;align-items:center;height:80px;padding:0 25px;display:flex}.wordmark{color:var(--teal);align-items:center;gap:8px;display:flex}.wordmark>svg{width:30px;height:30px}.wordmark>span{letter-spacing:-1.8px;font-size:32px;font-weight:850;line-height:1}.brand-dot{color:#ecae72}.preview-label{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:20px;align-items:center;gap:7px;padding:9px 10px;font-size:11px;display:flex}.status-dot{background:var(--teal);border-radius:50%;width:5px;height:5px}main{padding:0 24px 116px}.demo-banner{color:#456d68;text-align:center;letter-spacing:.2px;background:#e9f1eb;border-top:1px solid #e0e9e3;border-bottom:1px solid #e0e9e3;margin:0 -24px;padding:8px 24px;font-size:11px}.welcome{padding:34px 0 30px;position:relative;overflow:hidden}.eyebrow{color:var(--teal);letter-spacing:1.9px;font-size:9px;font-weight:700}.welcome h1{letter-spacing:-2px;margin:12px 0 11px;font-size:37px;font-weight:750;line-height:1.32}.welcome>p:last-of-type{color:var(--muted);font-size:12px}.water-rings{color:#89b7ad;border:1px solid #dce9e4;border-radius:50%;place-content:center;width:128px;height:128px;display:grid;position:absolute;top:47px;right:-13px;transform:rotate(-9deg)}.water-rings:before,.water-rings:after{content:"";border:1px solid #dce9e4;border-radius:50%;position:absolute;inset:12px}.water-rings:after{inset:-12px}.teal{color:var(--teal)}section+section{margin-top:28px}.section-heading{justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;display:flex}.section-heading h2{letter-spacing:-.6px;font-size:16px;font-weight:750}.section-heading button{color:var(--muted);background:0 0;border:none;align-items:center;gap:3px;padding:10px 0 10px 8px;font-size:11px;display:flex}.record-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:20px 20px 0;overflow:hidden}.card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.pill{background:var(--pale-teal);color:#196e68;border-radius:6px;align-items:center;gap:5px;padding:5px 8px;font-size:11px;font-weight:650;display:inline-flex}.muted{color:var(--muted);font-size:10px;font-weight:400}.record-caption{color:var(--muted);margin-top:22px;font-size:11px}.big-time{letter-spacing:-2px;font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;font-size:48px;font-weight:720;line-height:1.3;display:flex}.big-time>span:first-child{color:var(--muted);letter-spacing:0;font-size:13px;font-weight:400}.big-time .pb-badge{color:var(--teal);letter-spacing:.3px;border:1px solid #badacf;border-radius:5px;align-self:center;margin-left:4px;padding:1px 5px;font-size:10px}.improvement{color:var(--teal);align-items:center;gap:4px;margin-top:4px;font-size:11px;display:flex}.trend-chart{margin:15px -4px 0}.trend-chart svg{width:100%;display:block;overflow:visible}.chart-grid{stroke:#edf0eb;stroke-width:1px;stroke-dasharray:3 4}.chart-line{stroke:var(--teal);stroke-width:2px;fill:none;stroke-linejoin:round;stroke-linecap:round}.chart-dot{fill:#fff;stroke:var(--teal);stroke-width:1.7px}.chart-dot.last{fill:var(--teal);stroke:#d0e9e0;stroke-width:4px}.chart-value{fill:var(--teal);font-size:9px;font-weight:700}.chart-label{fill:#78857d;font-size:9px}.record-foot{color:var(--muted);background:#fcfdfa;border-top:1px solid #edf0eb;justify-content:space-between;margin:9px -20px 0;padding:11px 20px;font-size:9px;display:flex}.add-record{width:100%;min-height:46px;color:var(--teal);background:#fff;border:1px solid #c7dcd4;border-radius:11px;justify-content:center;align-items:center;gap:7px;margin-top:12px;padding:12px;font-size:12px;font-weight:650;display:flex}.add-record:hover,.secondary-button:hover{background:var(--pale-teal)}.goal-card{text-align:left;background:#f0f3e7;border:1px solid #dde5cc;border-radius:15px;align-items:center;gap:13px;width:100%;padding:19px 15px;display:flex}.goal-icon{color:#667a3d;background:#e2e9d2;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.goal-card .eyebrow{letter-spacing:1.2px;color:#67794e;margin-bottom:5px;font-size:8px;display:block}.goal-card strong{letter-spacing:-.4px;font-size:13px;font-weight:650;display:block}.subtext{color:#68765c;margin-top:5px;font-size:10px;display:block}.trailing{color:#7f8d6a;margin-left:auto}.message-card{background:#fffaf3;border:1px solid #eadecf;border-radius:15px;padding:20px}.message-meta{align-items:center;gap:7px;font-size:10px;display:flex}.message-meta strong{font-size:11px;font-weight:650}.message-meta>span:not(.heart-icon){color:#867869;font-size:9px}.message-meta time{color:#867869;margin-left:auto;font-size:9px}.heart-icon{color:#ae7845;background:#f4e7d7;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}.message-text{letter-spacing:-.4px;word-break:keep-all;overflow-wrap:anywhere;margin:15px 0;font-size:14px;line-height:1.9}.message-context{color:#897c6b;border-top:1px solid #eee3d4;padding-top:10px;font-size:10px;display:block}.compact .message-text{margin-bottom:12px;font-size:13px}.closing-note{color:#72887d;text-align:center;justify-content:center;align-items:center;gap:7px;margin:32px 0 0;font-size:10px;display:flex}.bottom-nav{z-index:5;width:min(100%,480px);padding:10px 16px max(10px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fafcf8f5;border-top:1px solid #e0e7dd;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav a{color:#6b7a71;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:49px;font-size:10px;display:flex}.bottom-nav a.active{color:var(--teal);font-weight:750}.bottom-nav a.active svg{background:#e1eee7;border-radius:7px;margin-bottom:3px;box-shadow:0 0 0 6px #e1eee7}.page-heading{padding:30px 0 26px}.page-heading h1{letter-spacing:-1.2px;margin:8px 0 9px;font-size:27px;line-height:1.5}.page-heading>p:last-child{color:var(--muted);word-break:keep-all;font-size:12px}.page-actions{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.small-button{min-height:42px;color:var(--teal);background:#fff;border:1px solid #c7dcd4;border-radius:9px;align-items:center;gap:4px;padding:7px 12px;font-size:11px;font-weight:650;display:flex}.card-title{font-size:14px;font-weight:650}.fine-print{color:var(--muted);word-break:keep-all;overflow-wrap:anywhere;font-size:11px;line-height:1.8}.record-card>.fine-print{padding:4px 0 18px;font-size:10px}.list-heading{letter-spacing:-.5px;margin:27px 0 15px;font-size:16px}.record-list{border-top:1px solid var(--line)}.record-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:11px;width:100%;padding:17px 0;display:flex}.record-row:hover{background:#eff4ec}.date-tile{background:#ebf0e9;border-radius:9px;flex-direction:column;flex-shrink:0;align-items:center;width:42px;padding:6px;display:flex}.date-tile span{color:var(--muted);font-size:9px}.date-tile strong{font-size:18px;line-height:1.3}.record-info{flex:1;min-width:0}.record-info>*{display:block}.record-info strong{font-size:13px;font-weight:650}.record-info>span{color:var(--muted);font-size:10px}.record-info>span:last-child{margin-top:2px;font-size:9px}.row-result{text-align:right;flex-direction:column;display:flex}.row-result strong{letter-spacing:-.5px;font-variant-numeric:tabular-nums;font-size:20px}.row-result>span{color:var(--teal);font-size:8px}.privacy-note{color:var(--muted);align-items:flex-start;gap:7px;margin-top:18px;font-size:10px;line-height:1.9;display:flex}.privacy-note svg{margin-top:2px}.soft-panel{color:#577145;background:#eaf1e6;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:25px;padding:20px 17px;display:flex}.soft-panel>svg{margin-top:3px}.soft-panel p{font-size:12px;line-height:1.9}.soft-panel strong{font-weight:600}.goal-list,.message-list{gap:15px;display:grid}.goal-item{border:1px solid var(--line);background:#fff;border-radius:15px;padding:20px}.goal-item h2{letter-spacing:-.4px;word-break:keep-all;overflow-wrap:anywhere;margin:14px 0 8px;font-size:16px}.goal-item p{color:var(--muted);overflow-wrap:anywhere;font-size:12px}.goal-item.completed{background:#f0f3ec}.goal-item.completed .pill{color:#5d724f;background:#e2e8da}.text-button{color:var(--teal);background:0 0;border:none;align-items:center;gap:5px;margin-top:10px;padding:12px 0 4px;font-size:11px;display:inline-flex}.mailbox-note{color:#5a7155;background:#edf2e9;border-radius:9px;align-items:center;gap:9px;margin-bottom:21px;padding:13px 12px;font-size:10px;display:flex}.centered{text-align:center;margin-top:10px}.dialog{border:1px solid var(--line);width:100%;max-width:480px;max-height:calc(100dvh - 32px);padding:12px 24px max(28px, env(safe-area-inset-bottom));color:var(--ink);background:var(--paper);overscroll-behavior:contain;border-bottom:0;border-radius:24px 24px 0 0;margin:0 auto;position:fixed;inset:auto 0 0;box-shadow:0 -8px 60px #092d3433}.dialog[open]{animation:.2s ease-out sheet-enter}.sheet-handle{background:#c2cfc3;border-radius:3px;width:34px;height:4px;margin:0 auto 12px}@keyframes sheet-enter{0%{opacity:.5;transform:translateY(36px)}to{opacity:1;transform:translateY(0)}}.dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#153b4077}.dialog-header{z-index:1;background:var(--paper);justify-content:space-between;align-items:center;gap:10px;margin-bottom:17px;padding-block:5px;display:flex;position:sticky;top:-12px}.dialog-header h2{letter-spacing:-.5px;font-size:19px}.icon-button{background:#edf1ea;border:0;border-radius:50%;place-items:center;min-width:42px;min-height:42px;display:grid}.entry-form{gap:16px;display:grid}.entry-form label{gap:7px;font-size:12px;font-weight:650;display:grid}input,select,textarea{width:100%;min-width:0;color:var(--ink);background:#fff;border:1px solid #cdd7cc;border-radius:9px;padding:12px;font-size:16px;line-height:1.5}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#7b877f;font-size:12px}.form-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-note{color:#5b7365;background:#edf2e9;border-radius:8px;align-items:flex-start;gap:8px;padding:12px;font-size:11px;line-height:1.8;display:flex}.form-note>svg{margin-top:3px}.form-error{color:#ae3e36;font-size:12px}.primary-button{background:var(--teal);color:#fff;border:none;border-radius:10px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:48px;padding:12px;font-size:13px;font-weight:600;display:flex}.primary-button:hover{background:#076c77}.secondary-button{width:100%;color:var(--teal);background:#fff;border:1px solid #bdcfc3;border-radius:9px;justify-content:center;align-items:center;gap:7px;margin-top:18px;padding:12px;display:flex}.about-content h3{margin:12px 0;font-size:23px}.about-content>p{color:var(--muted);font-size:13px;line-height:1.9}.about-content .soft-panel{margin:18px 0;padding:14px}.suggestions{gap:8px;display:grid}.suggestions button{text-align:left;background:#fffaf3;border:1px solid #e6d9c7;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:12px;font-size:12px;line-height:1.8;display:flex}.detail-time{letter-spacing:-1.5px;margin:15px 0;font-size:45px;font-weight:700}.detail-time span{color:var(--muted);margin-left:6px;font-size:14px;font-weight:400}.record-detail dl{margin:16px 0}.record-detail dl>div{border-bottom:1px solid var(--line);justify-content:space-between;gap:15px;padding:10px 0;font-size:12px;display:flex}.record-detail dt{color:var(--muted);flex-shrink:0}.record-detail dd{text-align:right;margin:0}.toast{z-index:30;bottom:calc(90px + env(safe-area-inset-bottom));color:#fff;opacity:0;pointer-events:none;background:#173f3e;border-radius:10px;width:max-content;max-width:min(400px,100% - 30px);padding:13px 19px;font-size:12px;transition:opacity .15s,transform .15s;position:fixed;left:50%;transform:translate(-50%,10px);box-shadow:0 5px 25px #143c3c33}.toast.visible{opacity:1;transform:translate(-50%)}.sr-only,.skip-link{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus{z-index:50;clip:auto;background:#fff;width:auto;height:auto;margin:0;padding:12px}@media (min-width:600px){.app-shell{border-inline:1px solid #dae3da}}@media (max-width:359px){main{padding-inline:17px}.demo-banner{margin-inline:-17px;padding-inline:10px}.welcome h1{font-size:33px}.water-rings{opacity:.6;right:-45px}.record-card{padding-inline:15px}.record-foot{margin-inline:-15px;padding-inline:15px}.record-row{gap:7px}.message-card{padding:15px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
