@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--primary-color: #4ca33a;--primary-rgb: 76, 163, 58;--secondary-color: #d6ca61;--secondary-rgb: 214, 202, 97;--background-start: #fffdf6;--background-end: #f5efdf;--text-dark: #17301f;--text-light: #62705e;--white: #fffefa;--danger: #ff4757;--glass-bg: rgba(255, 253, 247, .78);--glass-border: rgba(96, 164, 72, .34);--glass-shadow: 0 10px 30px 0 rgba(49, 93, 42, .1);--border-radius-lg: clamp(20px, 4vw, 24px);--border-radius-md: clamp(14px, 3vw, 18px);--border-radius-sm: clamp(8px, 1.8vw, 10px);--spacing-xs: 4px;--spacing-sm: clamp(8px, 1.8vw, 10px);--spacing-md: clamp(14px, 2.8vw, 18px);--spacing-lg: clamp(18px, 4vw, 24px);--spacing-xl: clamp(24px, 5vw, 32px);--native-safe-area-top: var(--safe-area-inset-top, env(safe-area-inset-top, 0px));--native-safe-area-bottom: var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px));--app-safe-top: calc(22px + var(--native-safe-area-top));--app-safe-bottom: calc(22px + var(--native-safe-area-bottom));--screen-side-padding: clamp(14px, 4vw, 20px);--screen-header-top-padding: calc(52px + var(--native-safe-area-top));--screen-content-bottom-padding: calc(88px + var(--native-safe-area-bottom));--touch-target-sm: clamp(34px, 8vw, 38px);--touch-target-md: clamp(44px, 9vw, 50px);--font-title-xl: clamp(1.9rem, 5.4vw, 2.2rem);--font-title-lg: clamp(1.45rem, 4.4vw, 1.8rem);--font-body-lg: clamp(.98rem, 2.8vw, 1.1rem);--font-body-md: clamp(.92rem, 2.2vw, 1rem);--font-body-sm: clamp(.8rem, 1.9vw, .9rem);--pill-padding-y: clamp(4px, 1vw, 6px);--pill-padding-x: clamp(8px, 2.2vw, 10px)}.dark-theme{--primary-color: #7fd15a;--primary-rgb: 127, 209, 90;--secondary-color: #d8d06a;--secondary-rgb: 216, 208, 106;--background-start: #0f2115;--background-end: #272916;--text-dark: #f0f0f0;--text-light: #b9c3b4;--white: #263224;--glass-bg: rgba(24, 35, 26, .78);--glass-border: rgba(134, 201, 104, .28);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .4)}*{box-sizing:border-box;margin:0;padding:0;font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-user-select:none;user-select:none}input,textarea,select{user-select:text;-webkit-user-select:text}body{background:linear-gradient(155deg,var(--background-start) 0%,#fbf7ec 48%,var(--background-end) 100%);background-attachment:fixed;color:var(--text-dark);font-size:clamp(15px,.94rem + .12vw,16px);min-height:100vh;min-height:-webkit-fill-available;overflow-x:hidden;-webkit-tap-highlight-color:transparent}#root{min-height:100vh;width:100%;position:relative}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--border-radius-lg)}.glass-card{background:var(--white);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--border-radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);transition:transform .2s ease,box-shadow .2s ease,background .3s ease,border-color .3s ease}h1,h2,h3,h4{font-weight:700;color:var(--text-dark)}p{color:var(--text-light);line-height:1.5}.btn-primary{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;border:none;border-radius:var(--border-radius-lg);padding:clamp(12px,2.8vw,14px) clamp(18px,4.8vw,24px);font-size:var(--font-body-md);font-weight:600;cursor:pointer;box-shadow:0 6px 20px rgba(var(--primary-rgb),.28);transition:transform .2s cubic-bezier(.175,.885,.32,1.275),box-shadow .2s ease}.btn-primary:active{transform:scale(.95);box-shadow:0 2px 10px rgba(var(--primary-rgb),.2)}@keyframes pop{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.scroll-container{overflow-y:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}::-webkit-scrollbar{width:0;height:0;background:transparent}.theme-toggle-btn{position:absolute;top:16px;right:16px;width:var(--touch-target-md);height:var(--touch-target-md);border-radius:50%;border:none;background:var(--glass-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 12px #0000001a;font-size:clamp(1.25rem,3.5vw,1.5rem);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1000;transition:transform .2s cubic-bezier(.175,.885,.32,1.275);-webkit-tap-highlight-color:transparent}.theme-toggle-btn:active{transform:scale(.9)}@media(max-height:760px){:root{--spacing-lg: clamp(16px, 3vw, 20px);--spacing-xl: clamp(20px, 4vw, 28px);--screen-header-top-padding: calc(46px + var(--native-safe-area-top));--screen-content-bottom-padding: calc(82px + var(--native-safe-area-bottom))}}.navbar{--nav-icon-box-size: 38px;--nav-icon-svg-size: 31px;--nav-item-width: clamp(72px, 21vw, 86px);--nav-item-height: 64px;position:fixed;bottom:0;left:0;right:0;max-width:480px;margin:0 auto;border-radius:28px 28px 0 0;display:flex;justify-content:space-around;padding:12px 0 calc(18px + var(--native-safe-area-bottom)) 0;z-index:100;box-shadow:0 -4px 20px #0000000d;border-bottom:none}.nav-item{background:none;border:none;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:6px;color:var(--text-light);cursor:pointer;flex:0 0 var(--nav-item-width);width:var(--nav-item-width);min-width:var(--nav-item-width);height:var(--nav-item-height);padding:0;transition:color .2s ease,transform .2s ease}.nav-icon{flex:0 0 var(--nav-icon-box-size);width:var(--nav-icon-box-size);height:var(--nav-icon-box-size);transition:transform .2s ease}.nav-icon-home,.nav-icon-profile,.nav-icon-record,.nav-icon-analysis{display:inline-flex;align-items:center;justify-content:center;color:var(--primary-color)}.nav-home-icon,.nav-profile-icon,.nav-record-icon,.nav-analysis-icon{width:var(--nav-icon-svg-size);height:var(--nav-icon-svg-size);display:block;flex:0 0 var(--nav-icon-svg-size)}.nav-item span{display:block;width:100%;font-size:.8rem;font-weight:500;line-height:1.2;text-align:center}.nav-item.active{color:var(--primary-color)}.nav-item.active .nav-icon{transform:translateY(-4px);filter:drop-shadow(0 2px 4px rgba(var(--primary-rgb),.4))}.auth-screen-overlay{position:fixed;inset:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:24px;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:radial-gradient(circle at 16% 16%,rgba(var(--secondary-rgb),.2),transparent 30%),radial-gradient(circle at 86% 78%,rgba(var(--primary-rgb),.16),transparent 32%),linear-gradient(145deg,#fffdf6f5,#eff6e1f5);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.dark-theme .auth-screen-overlay{background:radial-gradient(circle at 16% 16%,rgba(var(--secondary-rgb),.12),transparent 30%),radial-gradient(circle at 86% 78%,rgba(var(--primary-rgb),.14),transparent 32%),linear-gradient(145deg,#111b14f5,#212619fa)}.auth-screen-panel{position:relative;width:min(100%,420px);max-height:calc(100dvh - 48px);display:flex;flex-direction:column;gap:16px;overflow-y:auto;overscroll-behavior:contain;padding:30px 24px 24px;border:1px solid rgba(var(--primary-rgb),.32);border-radius:26px;background:linear-gradient(180deg,#fffffff5,#faf7edeb);box-shadow:0 24px 64px #2446252e}.dark-theme .auth-screen-panel{background:linear-gradient(180deg,#232c24f5,#1b211bf0)}.auth-screen-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border:1px solid rgba(var(--primary-rgb),.18);border-radius:14px;background:#ffffffc7;color:var(--text-dark);font-size:1.36rem;line-height:1;cursor:pointer}.dark-theme .auth-screen-close{background:#ffffff14}.auth-screen-copy{display:flex;flex-direction:column;gap:11px}.auth-screen-eyebrow{width:fit-content;padding:7px 10px;border:1px solid rgba(var(--primary-rgb),.22);border-radius:999px;background:rgba(var(--primary-rgb),.08);color:var(--primary-color);font-size:.74rem;font-weight:800;letter-spacing:0}.auth-screen-copy h1{color:var(--text-dark);font-size:clamp(1.8rem,5vw,2.25rem);line-height:1.14;letter-spacing:0}.auth-screen-copy p{color:var(--text-light);line-height:1.7;word-break:keep-all}.auth-screen-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:5px;border:1px solid rgba(var(--primary-rgb),.12);border-radius:16px;background:rgba(var(--primary-rgb),.06)}.auth-screen-mode-btn{min-height:42px;border:none;border-radius:12px;background:transparent;color:var(--text-light);padding:9px 14px;font-size:.95rem;font-weight:800;cursor:pointer}.auth-screen-mode-btn.active{background:#fff;color:var(--primary-color);box-shadow:0 8px 18px #2548241a}.dark-theme .auth-screen-mode-btn.active{background:#ffffff1a}.auth-screen-form{display:flex;flex-direction:column;gap:10px}.auth-screen-label{font-size:.9rem;font-weight:700;color:var(--text-dark)}.auth-screen-input{width:100%;min-height:50px;border:1px solid rgba(var(--primary-rgb),.24);border-radius:14px;background:#ffffffeb;color:var(--text-dark);padding:13px 15px;font-size:1rem;font-family:inherit}.dark-theme .auth-screen-input{background:#ffffff14}.auth-screen-input:focus{outline:none;border-color:rgba(var(--primary-rgb),.7);box-shadow:0 0 0 4px rgba(var(--primary-rgb),.12)}.auth-screen-email-field-group{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.auth-screen-email-verify-link,.auth-screen-inline-action,.auth-screen-secondary-link{padding:0;border:none;background:transparent;color:var(--primary-color);font-size:.84rem;font-weight:800;text-align:left;cursor:pointer}.auth-screen-email-verify-link:disabled{opacity:.55;cursor:default}.auth-screen-field-hint{margin:-2px 2px 0;font-size:.8rem;line-height:1.45;color:var(--text-light)}.auth-screen-code-confirm-btn{width:100%;min-height:46px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:14px;background:#ffffffb8;color:var(--primary-color);padding:12px 14px;font-size:.92rem;font-weight:800;cursor:pointer}.auth-screen-code-confirm-btn:disabled{opacity:.6;cursor:default}.dark-theme .auth-screen-code-confirm-btn{background:#ffffff0f}.auth-screen-password-field{position:relative}.auth-screen-input-password{padding-right:62px}.auth-screen-password-toggle{position:absolute;top:50%;right:10px;transform:translateY(-50%);width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:12px;background:rgba(var(--primary-rgb),.08);color:var(--primary-color);cursor:pointer}.auth-screen-password-toggle svg{width:20px;height:20px;display:block}.auth-screen-password-toggle:disabled{opacity:.55;cursor:default}.auth-screen-inline-action{margin-top:-2px;font-size:0}.auth-screen-inline-action:before{content:attr(data-label);font-size:.84rem}.auth-screen-submit{min-height:50px;border-radius:14px;font-weight:800}.auth-screen-submit:disabled{opacity:.7;cursor:wait}.auth-screen-note,.auth-screen-feedback{padding:12px 14px;border-radius:14px;font-size:.88rem;line-height:1.55}.auth-screen-note{background:rgba(var(--primary-rgb),.1);color:#9a5c22}.auth-screen-feedback.success{background:#4fb67d1f;color:#1f7a47}.auth-screen-feedback.error{background:#ff7a8824;color:#b64c45}.auth-screen-divider{display:flex;align-items:center;gap:12px;color:var(--text-light);font-size:.82rem}.auth-screen-divider-form{margin-top:2px}.auth-screen-divider:before,.auth-screen-divider:after{content:"";flex:1;height:1px;background:rgba(var(--primary-rgb),.16)}.auth-screen-socials{display:grid;gap:9px;margin-top:2px}.auth-screen-social-btn{width:100%;min-height:50px;display:flex;align-items:center;justify-content:flex-start;border:1px solid rgba(var(--primary-rgb),.16);border-radius:14px;padding:10px 14px;font-size:.96rem;font-weight:800;cursor:pointer;transition:transform .18s ease,opacity .18s ease,border-color .18s ease}.auth-screen-social-btn:active{transform:scale(.98)}.auth-screen-social-btn:disabled{opacity:.7;cursor:wait}.auth-screen-social-btn.google{background:#fff;color:#1f1f1f}.auth-screen-social-btn.apple{background:#202020;color:#fff;border-color:#202020}.auth-screen-social-icon{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:12px}.auth-screen-social-icon svg{width:18px;height:18px;display:block}.auth-screen-social-icon.google{background:#fff;border:1px solid rgba(0,0,0,.08)}.auth-screen-social-icon.apple{background:transparent}.auth-screen-social-icon.apple svg{width:20px;height:20px}.auth-screen-social-text{text-align:left}@media(min-width:780px){.auth-screen-overlay{padding:48px}.auth-screen-panel{width:min(980px,calc(100vw - 96px));max-height:calc(100dvh - 96px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(380px,1fr);column-gap:52px;row-gap:13px;padding:46px;border-radius:30px}.auth-screen-panel:before{content:"";grid-column:1;grid-row:1 / span 9;align-self:stretch;border:1px solid rgba(var(--primary-rgb),.18);border-radius:24px;background:linear-gradient(180deg,#ffffff9e,#ffffff2e),url(/happiness-sample-journal.svg) center bottom 24px / 72% auto no-repeat,linear-gradient(145deg,rgba(var(--primary-rgb),.08),rgba(var(--secondary-rgb),.12))}.auth-screen-panel>:not(.auth-screen-close):not(.auth-screen-copy){grid-column:2}.auth-screen-copy{grid-column:1;grid-row:1 / span 9;align-self:start;max-width:310px;gap:14px;padding:24px 24px 260px;z-index:1}.auth-screen-copy h1{font-size:clamp(2.2rem,3.2vw,3rem)}.auth-screen-copy p{font-size:1rem}}@media(max-width:640px){.auth-screen-overlay{align-items:center;padding:max(40px,calc(var(--native-safe-area-top) + 28px)) 16px max(14px,calc(var(--native-safe-area-bottom) + 8px))}.auth-screen-panel{width:100%;max-height:calc(100dvh - 54px);padding:34px 22px 20px}}.exit-confirm-overlay{position:fixed;inset:0;z-index:3100;display:flex;align-items:center;justify-content:center;padding:24px 20px;background:#12161b6b;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fadeIn .2s ease}.exit-confirm-modal{width:min(100%,340px);padding:24px;display:flex;flex-direction:column;gap:18px;border-radius:24px;background:linear-gradient(145deg,#ffffffe6,#f9f6e7f0)}.dark-theme .exit-confirm-modal{background:linear-gradient(145deg,#262a3bf5,#181c2af5)}.exit-confirm-copy{display:flex;flex-direction:column;gap:8px}.exit-confirm-eyebrow{font-size:.74rem;font-weight:800;letter-spacing:.14em;color:var(--primary-color)}.exit-confirm-copy h2{font-size:clamp(1.15rem,4vw,1.3rem);line-height:1.35}.exit-confirm-copy p{font-size:var(--font-body-md);line-height:1.6;color:var(--text-light)}.exit-confirm-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.exit-confirm-cancel,.exit-confirm-submit{min-height:46px;border-radius:18px;padding:12px 14px;font-size:var(--font-body-md);font-weight:700;cursor:pointer;border:1px solid transparent}.exit-confirm-cancel{background:#ffffffb8;color:var(--text-dark);border-color:var(--glass-border)}.dark-theme .exit-confirm-cancel{background:#ffffff14}.exit-confirm-submit{background:#ff47571f;color:var(--danger);border-color:#ff475747}.app-update-overlay{position:fixed;inset:0;z-index:3300;display:flex;align-items:center;justify-content:center;padding:24px 20px;background:#12161b75;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);animation:fadeIn .2s ease}.app-update-modal{width:min(100%,360px);padding:24px;display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;border-radius:24px;background:linear-gradient(145deg,#fffffff0,#f9f6e7f5)}.dark-theme .app-update-modal{background:linear-gradient(145deg,#262a3bf5,#181c2af5)}.app-update-icon{width:68px;height:68px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;font-size:2.3rem;font-weight:800;line-height:1;box-shadow:0 12px 28px rgba(var(--primary-rgb),.28)}.app-update-copy{display:flex;flex-direction:column;gap:8px}.app-update-eyebrow{font-size:.74rem;font-weight:800;letter-spacing:.14em;color:var(--primary-color)}.app-update-copy h2{font-size:clamp(1.18rem,4vw,1.36rem);line-height:1.35}.app-update-copy p{font-size:var(--font-body-md);line-height:1.6;color:var(--text-light)}.app-update-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.app-update-actions.forced{grid-template-columns:minmax(0,1fr)}.app-update-later,.app-update-submit{min-height:46px;border-radius:18px;padding:12px 14px;font-size:var(--font-body-md);font-weight:700;cursor:pointer;border:1px solid transparent}.app-update-later{background:#ffffffb8;color:var(--text-dark);border-color:var(--glass-border)}.dark-theme .app-update-later{background:#ffffff14}.app-update-submit{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;box-shadow:0 8px 22px rgba(var(--primary-rgb),.24)}.lazy-boundary-shell{width:100%;display:flex;justify-content:center}.lazy-boundary-shell.inline{padding:12px 0}.lazy-boundary-shell.page{min-height:100vh;padding:48px 20px;align-items:center}.lazy-boundary-shell.overlay{position:fixed;inset:0;z-index:3200;padding:24px 20px;align-items:center;background:#00000052;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.lazy-boundary-card{width:min(100%,360px);padding:22px 20px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.lazy-boundary-spinner{width:28px;height:28px;border:3px solid rgba(var(--primary-rgb),.22);border-top-color:var(--primary-color);border-radius:50%;animation:lazyBoundarySpin .8s linear infinite}.lazy-boundary-title{font-size:1rem;color:var(--text-dark)}.lazy-boundary-message{font-size:.92rem;color:var(--text-light);line-height:1.55}.lazy-boundary-actions{width:100%;display:flex;gap:10px;margin-top:6px}.lazy-boundary-btn{flex:1;min-height:44px;padding:11px 14px;border:1px solid var(--glass-border);border-radius:16px;background:#ffffffb3;color:var(--text-dark);font-size:.92rem;font-weight:700;cursor:pointer}.lazy-boundary-btn.primary{border-color:transparent;background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff}.dark-theme .lazy-boundary-btn{background:#ffffff14}@keyframes lazyBoundarySpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pull-refresh-shell{position:relative;min-height:100vh;overscroll-behavior-y:contain}.pull-refresh-content{min-height:100vh;transition:transform .18s ease}.pull-refresh-shell.dragging .pull-refresh-content,.pull-refresh-shell.refreshing .pull-refresh-content{transform:translateY(var(--pull-refresh-offset, 0px))}.pull-refresh-shell.dragging .pull-refresh-content{transition:none}.pull-refresh-indicator{position:absolute;top:calc(var(--native-safe-area-top) + 10px);left:50%;transform:translate(-50%,calc(-120% + var(--pull-refresh-offset, 0px)));display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--glass-border);border-radius:999px;background:#ffffffd1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 12px 28px #0000001f;color:var(--text-dark);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;white-space:nowrap;z-index:1200}.pull-refresh-indicator.visible{opacity:1}.pull-refresh-icon{width:18px;height:18px;color:var(--primary-color);transition:transform .18s ease;flex-shrink:0}.pull-refresh-shell.ready .pull-refresh-icon{transform:rotate(180deg)}.pull-refresh-shell.refreshing .pull-refresh-icon.spinning{animation:pull-refresh-spin .75s linear infinite}.pull-refresh-label{font-size:.9rem;font-weight:700;color:var(--text-dark)}.dark-theme .pull-refresh-indicator{background:#141927d1}@keyframes pull-refresh-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.image-adjust-overlay{position:fixed;inset:0;z-index:3600;display:flex;align-items:center;justify-content:center;padding:20px;background:#212d2085;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.image-adjust-modal{width:min(92vw,380px);max-height:min(92vh,720px);overflow:auto;border:1px solid rgba(115,150,77,.26);border-radius:18px;background:#fffdf4fa;box-shadow:0 24px 70px #1b30173d;padding:18px;color:#24341f}.dark-theme .image-adjust-modal{border-color:#b6d28b38;background:#20281dfa;color:#f2f4e8}.image-adjust-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:8px}.image-adjust-header span{display:block;margin-bottom:3px;color:#5f803ad1;font-size:.68rem;font-weight:800;letter-spacing:.12em}.image-adjust-header h3{margin:0;font-size:1.08rem;line-height:1.25}.image-adjust-header button{flex:0 0 auto;width:36px;height:36px;border:1px solid rgba(101,127,71,.24);border-radius:10px;background:#ffffffb8;color:inherit;font-size:1.45rem;line-height:1}.image-adjust-copy{margin:0 0 14px;color:#34432bb3;font-size:.86rem;line-height:1.45}.dark-theme .image-adjust-copy{color:#f2f4e8b8}.image-adjust-frame{position:relative;width:min(100%,292px);aspect-ratio:1;margin:0 auto;overflow:hidden;border:2px solid rgba(104,143,53,.52);border-radius:18px;background:linear-gradient(135deg,#e4eecee0,#fff8dbe6);touch-action:none;overscroll-behavior:contain;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.image-adjust-frame:active{cursor:grabbing}.image-adjust-frame img{position:absolute;top:50%;left:50%;max-width:none;object-fit:cover;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;pointer-events:none}.image-adjust-grid{position:absolute;inset:0;border-radius:16px;background-image:linear-gradient(to right,rgba(255,255,255,.45) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.45) 1px,transparent 1px);background-size:33.333% 100%,100% 33.333%;pointer-events:none}.image-adjust-actions{display:grid;grid-template-columns:.9fr .8fr 1.2fr;gap:8px;margin-top:16px}.image-adjust-actions button{min-height:42px;border:1px solid rgba(100,132,66,.24);border-radius:12px;background:#ffffffbd;color:#42572c;font-weight:800}.image-adjust-actions button.primary{border-color:#709d265c;background:linear-gradient(135deg,#8fc944,#6da722);color:#fff;box-shadow:0 10px 22px #62942033}.image-adjust-actions button:disabled{cursor:not-allowed;opacity:.58}@media(max-width:380px){.image-adjust-overlay{padding:14px}.image-adjust-modal{padding:16px}.image-adjust-actions{grid-template-columns:1fr}}.modal-overlay{position:fixed;inset:0;background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}.create-modal-overlay{z-index:2000;align-items:flex-start;justify-content:center;padding:calc(var(--native-safe-area-top) + 18px) var(--screen-side-padding) calc(var(--native-safe-area-bottom) + 18px);background:#13251761;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.create-modal-content{width:min(100%,520px);max-width:none;max-height:calc(100dvh - var(--native-safe-area-top) - var(--native-safe-area-bottom) - 36px);margin-block:auto;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:clamp(18px,4.6vw,22px);position:relative;border-radius:22px;display:flex;flex-direction:column;gap:14px;background:linear-gradient(90deg,rgba(var(--primary-rgb),.08) 1px,transparent 1px) 22px 0 / 28px 100% no-repeat,repeating-linear-gradient(180deg,transparent 0,transparent 35px,rgba(var(--secondary-rgb),.15) 36px),var(--white);border:1px solid rgba(var(--primary-rgb),.22);box-shadow:0 22px 56px #17301f2e}.dark-theme .create-modal-content{background:linear-gradient(90deg,rgba(var(--primary-rgb),.12) 1px,transparent 1px) 22px 0 / 28px 100% no-repeat,repeating-linear-gradient(180deg,transparent 0,transparent 35px,rgba(var(--secondary-rgb),.08) 36px),var(--white)}.create-modal-top-actions{position:sticky;top:0;z-index:30;min-height:38px;margin-bottom:-38px;display:flex;align-items:flex-start;justify-content:flex-end;pointer-events:none}.create-modal-close{background:#ffffffb3;width:38px;height:38px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;line-height:1;color:var(--text-dark);pointer-events:auto}.dark-theme .create-modal-close{background:#ffffff14}.create-modal-header{padding:0 48px 0 0;display:flex;flex-direction:column;gap:8px}.create-modal-badges{display:flex;gap:8px;align-items:center;min-height:23px}.create-modal-badge{display:inline-flex;align-items:center;min-height:23px;padding:4px 8px;border-radius:999px;background:rgba(var(--primary-rgb),.12);color:var(--primary-color);font-size:.68rem;font-weight:800;letter-spacing:.08em}.create-modal-title{margin:0;font-size:clamp(1.18rem,3.8vw,1.42rem);line-height:1.24}.create-modal-desc{margin:0;color:var(--text-light);font-size:var(--font-body-sm);line-height:1.55}.create-modal-form-shell{padding:0;background:transparent;border:0;border-radius:0}.create-modal-form{display:flex;flex-direction:column;gap:14px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:var(--font-body-sm);font-weight:850;color:var(--text-dark)}.form-group input,.form-group textarea{width:100%;padding:15px;border-radius:18px;border:1px solid rgba(var(--primary-rgb),.2);background:#ffffffa8;font-size:var(--font-body-md);line-height:1.65;color:var(--text-dark);transition:all .2s;font-family:inherit;outline:none}.dark-theme .form-group input,.dark-theme .form-group textarea{background:#ffffff14}.form-group input:focus,.form-group textarea:focus{border-color:rgba(var(--primary-rgb),.58);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.12)}.form-group textarea{min-height:138px;resize:none}.create-note-title-input{min-height:48px;font-weight:800}.create-note-description-input{min-height:170px}.create-note-title-input.create-field-prompt,.create-note-description-input.create-field-prompt{border-color:#d65b6885;color:var(--text-dark);box-shadow:0 0 0 3px #d65b681f}.create-note-title-input.create-field-prompt::placeholder,.create-note-description-input.create-field-prompt::placeholder{color:#c84f5c;font-weight:900;opacity:1}.create-field-prompt.pulse-even{animation:createFieldPromptBounceEven .42s ease}.create-field-prompt.pulse-odd{animation:createFieldPromptBounceOdd .42s ease}@keyframes createFieldPromptBounceEven{0%{transform:translateY(0)}38%{transform:translateY(-5px) scale(1.01)}68%{transform:translateY(2px)}to{transform:translateY(0)}}@keyframes createFieldPromptBounceOdd{0%{transform:translateY(0)}38%{transform:translateY(-5px) scale(1.01)}68%{transform:translateY(2px)}to{transform:translateY(0)}}.create-image-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.create-image-actions button{min-height:48px;border:1px solid rgba(var(--primary-rgb),.24);border-radius:16px;background:#ffffffb8;color:var(--text-dark);padding:0 14px;font:inherit;font-size:var(--font-body-md);font-weight:800;cursor:pointer}.create-image-actions button:disabled{opacity:.55;cursor:default}.create-image-fallback-overlay{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f241547;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.create-image-fallback-dialog{width:min(100%,340px);padding:22px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:22px;background:#fffefafa;box-shadow:0 20px 46px #142c1b3d;text-align:center}.dark-theme .create-image-fallback-dialog{background:#232a20fa}.create-image-fallback-dialog img{width:58px;height:58px;object-fit:contain;margin-bottom:12px}.create-image-fallback-dialog h3{margin:0 0 8px;font-size:clamp(1.08rem,3.6vw,1.24rem);color:var(--text-dark)}.create-image-fallback-dialog p{margin:0;color:var(--text-light);font-size:var(--font-body-sm);line-height:1.55}.create-image-fallback-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:18px}.create-image-fallback-actions button{min-height:42px;border:1px solid rgba(var(--primary-rgb),.26);border-radius:14px;background:#ffffffb8;color:var(--text-light);font:inherit;font-size:var(--font-body-sm);font-weight:900}.create-image-fallback-actions button:last-child{border-color:rgba(var(--primary-rgb),.5);background:rgba(var(--primary-rgb),.12);color:var(--primary-color)}.create-image-fallback-actions button:disabled{opacity:.55}.create-image-preview-media{position:relative;width:100%;aspect-ratio:1;border:1px solid rgba(var(--primary-rgb),.2);border-radius:16px;background:#ffffffa8;overflow:hidden}.create-image-preview-open{width:100%;height:100%;display:block;border:none;padding:0;background:transparent;cursor:pointer}.create-image-preview-open:disabled{cursor:default}.create-image-preview-media img,.create-image-preview-media span{width:100%;height:100%;display:block}.create-image-preview-media img{object-fit:cover}.create-image-preview-media span{background:linear-gradient(135deg,rgba(var(--primary-rgb),.12),rgba(var(--secondary-rgb),.14))}.create-image-preview-remove{position:absolute;top:8px;right:8px;width:30px;height:30px;border:none;border-radius:50%;background:#17301fc2;color:#fff;font-size:1.25rem;line-height:1;cursor:pointer}.create-image-feedback{color:var(--danger)}.create-tag-dropdown{width:100%;border:1px solid rgba(var(--primary-rgb),.28);border-radius:18px;background:#ffffffa8;color:var(--text-light);font-family:inherit;font-size:var(--font-body-md);overflow:hidden}.dark-theme .create-image-actions button,.dark-theme .create-image-preview-media,.dark-theme .create-tag-dropdown{background:#ffffff14}.create-image-viewer-overlay{position:fixed;inset:0;z-index:2800;display:flex;align-items:center;justify-content:center;padding:20px;background:#000000c7}.create-image-viewer{position:relative;width:min(100%,420px);max-height:88dvh;display:flex;flex-direction:column;gap:12px}.create-image-viewer img{max-width:100%;max-height:70dvh;border-radius:18px;object-fit:contain;background:#000}.create-image-viewer-close{position:absolute;top:10px;right:10px;width:36px;height:36px;border:none;border-radius:50%;background:#ffffffdb;color:#111;font-size:1.5rem;line-height:1;cursor:pointer}.create-image-viewer-actions{display:flex;flex-direction:column;gap:8px}.create-image-save-btn{width:100%;min-height:46px;border-radius:18px}.create-image-save-btn:disabled{opacity:.55;cursor:default}.create-image-viewer-actions p{margin:0;color:#fff;font-size:var(--font-body-sm);text-align:center}.create-tag-dropdown.has-error{border-color:#d65b6894;box-shadow:0 0 0 3px #d65b681f}.create-tag-dropdown-trigger{width:100%;min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:none;background:transparent;padding:0 14px;cursor:pointer;color:var(--text-dark);font:inherit;font-weight:900;text-align:left;overflow:hidden}.create-tag-dropdown-main{min-width:0;display:inline-flex;align-items:center;gap:7px;color:var(--text-dark);font-size:var(--font-body-md);font-weight:900}.create-tag-dropdown-main svg{width:17px;height:17px;color:var(--primary-color)}.create-tag-dropdown-meta{flex:0 0 auto;display:inline-flex;align-items:center;gap:10px}.create-tag-dropdown-count{margin:0;color:var(--text-light);font-size:var(--font-body-sm);font-weight:800}.create-tag-dropdown.has-error .create-tag-dropdown-count{color:#c84f5c}.create-tag-dropdown-trigger:focus{outline:none;box-shadow:inset 0 0 0 3px rgba(var(--primary-rgb),.12)}.create-tag-dropdown.is-open .create-tag-dropdown-trigger{border-bottom:1px solid rgba(var(--primary-rgb),.14)}.create-tag-dropdown-arrow{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;color:var(--text-light);transform:translateY(-2px) rotate(45deg);transition:transform .18s ease}.create-tag-dropdown.is-open .create-tag-dropdown-arrow{transform:translateY(2px) rotate(225deg)}.create-tag-dropdown-panel{display:flex;flex-direction:column;gap:12px;padding:13px 14px 14px;overflow:visible;min-width:0}.create-tag-dropdown.has-tags{color:var(--text-dark)}.create-selected-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.create-selected-tag{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:999px;background:rgba(var(--primary-rgb),.08);color:var(--primary-color);font-size:var(--font-body-sm);font-weight:800;line-height:1}.create-tag-error{margin-top:0}.category-pills{display:flex;gap:8px;margin-top:4px}.category-pill{flex:1;min-height:38px;padding:0 12px;border:1px solid rgba(var(--primary-rgb),.28);background:#ffffffb8;border-radius:999px;font-size:var(--font-body-sm);font-weight:850;color:var(--text-light);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}.dark-theme .category-pill{background:#ffffff0f}.category-pill:hover{background:#fffc}.category-pill.active{border-color:rgba(var(--primary-rgb),.54);background:rgba(var(--primary-rgb),.12);color:var(--primary-color);font-weight:900}.form-helper{margin:2px 2px 0;font-size:.82rem;line-height:1.5;color:var(--text-light)}.form-error{margin:-2px 2px 0;font-size:.85rem;line-height:1.5;color:var(--danger);font-weight:600}.submit-btn{width:100%;min-height:46px;margin-top:10px;border-radius:16px}.create-tag-picker-groups{display:flex;flex-direction:column;gap:14px}.create-tag-picker-group h4{margin:0 0 8px;color:var(--text-dark);font-size:var(--font-body-md);font-weight:850}.create-tag-option-grid{display:flex;flex-wrap:wrap;gap:8px}.create-tag-option{display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 12px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:999px;background:#ffffffb8;color:var(--text-dark);font-size:var(--font-body-sm);font-weight:850;cursor:pointer}.create-tag-option input{width:14px;height:14px;accent-color:var(--primary-color)}.create-tag-option.is-selected{border-color:rgba(var(--primary-rgb),.54);background:rgba(var(--primary-rgb),.12);color:var(--primary-color)}.create-tag-option.is-disabled{opacity:.45;cursor:default}.happiness-card{--card-status-reserve: 0px;position:relative;display:flex;flex-direction:column;gap:clamp(10px,3vw,12px);animation:slideUp .28s ease both;will-change:transform,opacity}.happiness-card.has-status-icons{--card-status-reserve: 30px}.happiness-card.has-two-status-icons{--card-status-reserve: 60px}.happiness-card-main{display:flex;align-items:flex-start;gap:clamp(12px,3.2vw,16px)}.happiness-card-copy{min-width:0;flex:1 1 auto;display:flex;flex-direction:column;gap:clamp(6px,2vw,8px)}.happiness-card-preview{flex:0 0 clamp(82px,25vw,108px);aspect-ratio:1;align-self:flex-start;overflow:hidden;border-radius:15px;border:1px solid rgba(var(--primary-rgb),.3);background:#ffffffad;box-shadow:0 10px 20px #1e382314}.happiness-card-preview img{width:100%;height:100%;object-fit:cover;display:block;box-sizing:border-box}.happiness-card.has-fallback-preview .happiness-card-preview{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 32% 24%,rgba(var(--secondary-rgb),.25),transparent 38%),linear-gradient(135deg,rgba(var(--primary-rgb),.1),#ffffffc7)}.happiness-card.has-fallback-preview .happiness-card-preview img{padding:18%;object-fit:contain;opacity:.86}.happiness-card-preview-placeholder{width:100%;height:100%;display:block;background:linear-gradient(135deg,rgba(var(--primary-rgb),.12),rgba(var(--secondary-rgb),.14))}.card-top-row{display:flex;align-items:flex-start;justify-content:space-between;gap:clamp(10px,3vw,12px)}.card-header{display:flex;gap:clamp(6px,2vw,8px);align-items:center;flex-wrap:wrap;min-width:0}.card-status-icons{position:absolute;right:clamp(14px,3.8vw,16px);bottom:clamp(12px,3.4vw,14px);display:inline-flex;align-items:center;justify-content:flex-end;gap:7px;margin-left:auto;flex:0 0 auto;z-index:2}.card-note-indicator,.card-empathy-indicator{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 24px;line-height:1}.card-note-indicator{color:var(--primary-color);opacity:.92}.card-empathy-indicator{color:#5f5125}.card-note-indicator svg{width:24px;height:24px;flex:0 0 auto}.card-empathy-indicator svg{width:24px;height:24px;display:block}.card-empathy-eye{fill:currentColor}.card-empathy-mouth{stroke:currentColor}.card-empathy-blush{fill:#bb6f5857}.custom-badge{background:var(--secondary-color);color:#fff;padding:var(--pill-padding-y) var(--pill-padding-x);border-radius:clamp(16px,4vw,20px);font-size:var(--font-body-sm);font-weight:600}.card-title{font-size:clamp(1.2rem,3.8vw,1.4rem);line-height:1.25;margin:2px 0 0;padding-right:var(--card-status-reserve);box-sizing:border-box;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.card-desc{font-size:var(--font-body-md);margin-bottom:8px;flex-grow:1}.card-desc-short{font-size:var(--font-body-md);color:var(--text-light);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;padding-right:var(--card-status-reserve);box-sizing:border-box;line-height:1.45}.card-tag-list{display:flex;align-items:center;gap:5px;flex-wrap:nowrap;flex:0 1 auto;min-width:0;margin-top:0;max-width:100%;padding-right:var(--card-status-reserve);box-sizing:border-box;overflow:hidden;white-space:nowrap}.card-tag-list span{display:inline-flex;align-items:center;color:var(--text-light);opacity:.76;padding:0;font-size:clamp(.72rem,2.6vw,.8rem);font-weight:700;line-height:1.25;flex:0 0 auto}.card-tag-list span:not(:last-child):after{content:"·";margin-left:5px;opacity:.58}.happiness-card.compact{cursor:pointer;padding:clamp(14px,3.8vw,16px);gap:clamp(6px,2vw,8px)}.happiness-card.compact:active{transform:scale(.98)}@media(max-width:360px){.happiness-card-preview{flex-basis:78px;border-radius:14px}}.records-view{padding-bottom:var(--screen-content-bottom-padding)}.records-header{padding:calc(var(--native-safe-area-top) + clamp(14px,3.4vw,18px)) var(--screen-side-padding) clamp(14px,3.6vw,18px)}.records-brand{font-size:var(--font-title-xl);font-weight:700;line-height:1.08;color:var(--primary-color);margin-bottom:clamp(14px,3.8vw,18px)}.records-header-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-content:space-between;column-gap:14px}.records-header-copy{display:contents}.records-heading-tabs{grid-column:1;grid-row:1;display:flex;align-items:baseline;gap:clamp(12px,3vw,16px);min-width:0}.records-heading-tab{border:none;background:transparent;color:#1111116b;padding:0;font:inherit;font-size:clamp(1.8rem,6vw,2.24rem);font-weight:800;line-height:1.12;letter-spacing:0;cursor:pointer;transition:color .18s ease,opacity .18s ease}.records-heading-tab.active{color:var(--text-dark);opacity:1}.dark-theme .records-heading-tab{color:#f0f0f07a}.dark-theme .records-heading-tab.active{color:var(--text-dark)}.records-heading-description{grid-column:1;grid-row:2;max-width:26ch;margin-top:6px;color:var(--text-light);font-size:var(--font-body-sm);font-weight:600;line-height:1.45}.records-header-actions{grid-column:2;grid-row:1;justify-self:end;flex:0 0 auto;display:flex;align-items:center;gap:6px}.records-view-mode-tabs{flex:0 0 auto;display:grid;grid-template-columns:38px 38px 54px;gap:4px;padding:4px;border:1px solid rgba(var(--primary-rgb),.26);border-radius:18px;background:#ffffff9e;box-shadow:0 10px 20px #1a331f0f}.dark-theme .records-view-mode-tabs{background:#ffffff14}.records-view-mode-tab{min-height:40px;border:none;border-radius:14px;background:transparent;color:var(--text-light);padding:0;font:inherit;font-size:var(--font-body-md);font-weight:900;line-height:1;white-space:nowrap;cursor:pointer}.records-view-mode-tab.active{background:linear-gradient(135deg,#5fbc44f2,#a9d94fe6);color:#fff;box-shadow:0 8px 16px #5fbc4429}.records-floating-write-btn{position:fixed;right:max(var(--screen-side-padding),calc((100vw - 480px) / 2 + var(--screen-side-padding)));bottom:calc(var(--native-safe-area-bottom) + 104px);z-index:1100;width:56px;height:56px;border:1px solid rgba(104,191,67,.42);border-radius:50%;background:linear-gradient(135deg,#5fbc44,#a9d94f);color:#fff;padding:0;font:inherit;box-shadow:0 16px 30px #5fbc4447;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.records-floating-write-btn svg{width:24px;height:24px;flex:0 0 24px}.records-sections{padding:0 var(--screen-side-padding) clamp(12px,3vw,14px)}.records-overview-section{display:flex;flex-direction:column;gap:14px}.records-month-section{padding-top:clamp(18px,4.8vw,22px)}.records-month-nav{display:flex;align-items:center;justify-content:center;gap:12px}.records-month-nav-standalone{padding-block:2px}.records-month-shift-btn{width:38px;height:38px;border:1px solid rgba(var(--primary-rgb),.34);border-radius:50%;background:#ffffffb8;color:var(--primary-color);font:inherit;font-size:1.18rem;font-weight:900;line-height:1;cursor:pointer}.records-month-shift-btn:disabled{opacity:.38;cursor:default}.dark-theme .records-month-shift-btn{background:#ffffff14}.records-month-display{min-width:142px;min-height:38px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:999px;background:#ffffffa8;color:var(--text-dark);padding:0 16px;display:inline-flex;align-items:center;justify-content:center}.records-month-display-button{font:inherit;cursor:pointer}.dark-theme .records-month-display{background:#ffffff14}.records-month-display strong{display:block;text-align:center;font-size:clamp(1.18rem,4vw,1.42rem);line-height:1.2}.records-calendar-open-btn{width:38px;height:38px;border:1px solid rgba(var(--primary-rgb),.3);border-radius:50%;background:#ffffffb3;color:var(--primary-color);display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.dark-theme .records-calendar-open-btn{background:#ffffff14}.records-calendar-open-btn svg{width:21px;height:21px}.record-week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;padding:4px 0 2px}.record-week-day{position:relative;min-width:0;min-height:58px;border:1px solid rgba(var(--primary-rgb),.26);border-radius:16px;background:#ffffffa3;color:var(--text-dark);display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:6px 2px;font:inherit;cursor:pointer}.dark-theme .record-week-day{background:#ffffff14}.record-week-day:disabled{opacity:.34;cursor:default}.record-week-day span{color:var(--text-light);font-size:.72rem;font-weight:800;line-height:1}.record-week-day strong{color:inherit;font-size:clamp(.96rem,3vw,1.08rem);line-height:1}.record-week-day.sunday strong{color:#d65b68}.record-week-day.saturday strong{color:#2f78d4}.record-week-day.today:not(.selected){border-color:rgba(var(--primary-rgb),.82);box-shadow:0 8px 16px rgba(var(--primary-rgb),.08)}.record-week-day.selected{border-color:rgba(var(--primary-rgb),.56);background:linear-gradient(135deg,#5fbc44e6,#a9d94fe0);color:#fff;box-shadow:0 10px 22px #5fbc442e}.record-week-day.selected span{color:#ffffffdb}.record-week-day.selected strong{color:#fff}.record-week-day i{width:6px;height:6px;border-radius:50%;background:#f7c437}.records-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.records-section-head span,.record-note-header span,.record-month-picker-header>div>span{display:inline-flex;align-items:center;min-height:23px;padding:4px 8px;border-radius:999px;background:rgba(var(--primary-rgb),.12);color:var(--primary-color);font-size:.68rem;font-weight:800;letter-spacing:.08em}.records-section-head h3{margin-top:8px;font-size:clamp(1.12rem,3.7vw,1.32rem);line-height:1.24}.records-section-head strong{min-width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(var(--primary-rgb),.12);color:var(--primary-color);font-size:1rem}.record-preview-list{display:flex;flex-direction:column;gap:12px}.record-preview-row{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid rgba(var(--primary-rgb),.26);border-radius:18px;background:#ffffffb8;box-shadow:0 10px 24px #1a331f0f;color:inherit;font:inherit;text-align:left}.dark-theme .record-preview-row{background:#ffffff14}.record-preview-open{flex:1 1 auto;min-width:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;padding:0;cursor:pointer;display:flex;align-items:stretch;gap:12px;width:100%}.record-preview-content{min-width:0;flex:1 1 auto;display:flex;flex-direction:column;gap:4px}.record-preview-thumb{flex:0 0 min(33%,112px);width:min(33%,112px);aspect-ratio:1 / 1;align-self:center;border:1px solid rgba(var(--primary-rgb),.24);border-radius:14px;background:rgba(var(--primary-rgb),.08);overflow:hidden}.record-preview-thumb img,.record-preview-thumb span{width:100%;height:100%;display:block}.record-preview-thumb img{object-fit:cover}.record-preview-thumb span{background:linear-gradient(135deg,rgba(var(--primary-rgb),.12),rgba(var(--secondary-rgb),.14))}.record-preview-content time{color:var(--text-light);font-size:var(--font-body-sm);font-weight:700}.record-preview-content h3{color:var(--text-dark);font-size:clamp(1rem,3.2vw,1.14rem);line-height:1.28;margin:0;word-break:keep-all;overflow-wrap:break-word}.record-preview-content p{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text-dark);font-size:clamp(.92rem,2.9vw,1rem);line-height:1.5;white-space:pre-wrap;word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}.record-preview-actions{flex:0 0 auto;display:flex;align-items:center;gap:6px}.record-preview-actions button,.record-view-all-btn,.records-photo-actions button{min-height:34px;border:1px solid rgba(var(--primary-rgb),.24);border-radius:13px;background:#ffffffb8;color:var(--text-dark);padding:0 11px;font:inherit;font-size:var(--font-body-sm);font-weight:800;cursor:pointer}.dark-theme .record-preview-actions button,.dark-theme .record-view-all-btn,.dark-theme .records-photo-actions button{background:#ffffff14}.record-preview-actions button.danger{border-color:#ff5f7342;color:#d65b68}.record-section-empty{width:100%;margin:4px 0 0;color:var(--text-light);font-size:var(--font-body-md);text-align:center}.record-view-all-btn{width:100%;min-height:42px;margin-top:2px;color:var(--primary-color)}.record-detail-overlay{position:fixed;inset:0;z-index:2570;display:flex;align-items:center;justify-content:center;padding:calc(var(--native-safe-area-top) + 18px) var(--screen-side-padding) calc(var(--native-safe-area-bottom) + 18px);background:#13251757;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.record-detail-modal{width:min(100%,520px);max-height:min(84vh,680px);display:flex;flex-direction:column;gap:14px;padding:clamp(18px,4.6vw,22px);border:1px solid rgba(var(--primary-rgb),.22);border-radius:22px;background:var(--white);box-shadow:0 22px 56px #17301f2e;overflow-y:auto}.record-detail-header{position:sticky;top:0;z-index:20;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:8px;background:var(--white)}.record-detail-header time{color:var(--text-light);font-size:var(--font-body-sm);font-weight:800}.record-detail-header h3{margin-top:5px;color:var(--text-dark);font-size:clamp(1.18rem,3.8vw,1.42rem);line-height:1.28}.record-detail-actions{flex:0 0 auto;display:flex;align-items:center;gap:7px}.record-detail-actions button{width:36px;height:36px;border:1px solid rgba(var(--primary-rgb),.2);border-radius:50%;background:#ffffffb8;color:var(--primary-color);display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer}.record-detail-actions button.danger{border-color:#d65b682e;background:#ffffffc7;color:#c95b63}.record-detail-actions button:disabled{opacity:.5;cursor:default}.record-detail-actions svg{width:18px;height:18px}.record-detail-close{color:var(--text-dark)!important;font:inherit;font-size:1.42rem;line-height:1}.record-detail-content{color:var(--text-dark);font-size:clamp(1rem,3.1vw,1.08rem);line-height:1.65;white-space:pre-wrap;word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}.record-detail-share-feedback{padding:11px 13px;border-radius:16px;font-size:var(--font-body-sm);font-weight:700;line-height:1.45}.record-detail-share-feedback.success{background:#2bc06a1f;color:#248f53;border:1px solid rgba(43,192,106,.18)}.record-detail-share-feedback.error{background:#ff47571a;color:var(--danger);border:1px solid rgba(255,71,87,.18)}.record-delete-confirm-overlay{position:fixed;inset:0;z-index:4700;display:flex;align-items:center;justify-content:center;padding:max(18px,var(--native-safe-area-top)) 18px max(18px,var(--native-safe-area-bottom));background:#0000006b;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.record-delete-confirm-modal{width:min(100%,330px);padding:22px;border-radius:24px;background:linear-gradient(145deg,var(--background-start) 0%,var(--background-end) 100%);box-shadow:0 18px 36px #1a331f2e}.record-delete-confirm-modal h3{margin-bottom:8px;color:var(--text-dark);font-size:var(--font-body-lg);line-height:1.35}.record-delete-confirm-modal p{color:var(--text-light);font-size:var(--font-body-sm);line-height:1.55}.record-delete-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.record-delete-confirm-cancel,.record-delete-confirm-submit{min-height:42px;border-radius:15px;font:inherit;font-size:var(--font-body-sm);font-weight:800;cursor:pointer}.record-delete-confirm-cancel{border:1px solid var(--glass-border);background:#ffffffb3;color:var(--text-dark)}.record-delete-confirm-submit{border:1px solid rgba(255,71,87,.24);background:#ff47571f;color:var(--danger)}.dark-theme .record-detail-modal,.dark-theme .record-detail-actions button{background:#ffffff14}.record-month-picker-overlay{position:fixed;inset:0;z-index:2580;display:flex;align-items:center;justify-content:center;padding:calc(var(--native-safe-area-top) + 18px) var(--screen-side-padding) calc(var(--native-safe-area-bottom) + 18px);background:#13251757;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.record-calendar-overlay{position:fixed;inset:0;z-index:2550;display:flex;align-items:center;justify-content:center;padding:calc(var(--native-safe-area-top) + 18px) var(--screen-side-padding) calc(var(--native-safe-area-bottom) + 18px);background:#13251757;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.detail-modal-overlay.record-memo-detail-overlay{z-index:3400}.record-month-picker-modal{width:min(100%,420px);display:flex;flex-direction:column;gap:16px;padding:clamp(18px,4.6vw,22px);border:1px solid rgba(var(--primary-rgb),.22);border-radius:22px;background:var(--white);box-shadow:0 22px 56px #17301f2e}.record-calendar-modal{width:min(100%,440px);max-height:min(86vh,680px);display:flex;flex-direction:column;gap:16px;padding:clamp(18px,4.6vw,22px);border:1px solid rgba(var(--primary-rgb),.22);border-radius:22px;background:var(--white);box-shadow:0 22px 56px #17301f2e;overflow-y:auto}.record-month-picker-header{position:sticky;top:0;z-index:20;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:8px;background:var(--white)}.record-calendar-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:8px;background:var(--white)}.record-month-picker-header h3{margin-top:8px;font-size:clamp(1.16rem,3.7vw,1.34rem);line-height:1.24}.record-month-picker-close{flex:0 0 auto;width:38px;height:38px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:50%;background:#ffffffbd;color:var(--text-dark);font-size:1.45rem;line-height:1;cursor:pointer}.record-calendar-month-btn{min-width:148px;min-height:38px;border:none;background:transparent;color:var(--text-dark);padding:0 8px;font:inherit;font-size:clamp(1.16rem,3.7vw,1.34rem);font-weight:800;line-height:1.24;cursor:pointer}.record-calendar-month-nav{flex:1 1 auto;min-width:0;display:flex;align-items:center;justify-content:center;gap:10px}.record-calendar-shift-btn{flex:0 0 auto;width:36px;height:36px;border:1px solid rgba(var(--primary-rgb),.2);border-radius:50%;background:#ffffffb8;color:var(--primary-color);font:inherit;font-size:1.12rem;font-weight:900;line-height:1;cursor:pointer}.record-calendar-shift-btn:disabled{opacity:.34;cursor:default}.record-calendar-close{flex:0 0 auto;width:38px;height:38px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:50%;background:#ffffffbd;color:var(--text-dark);font-size:1.45rem;line-height:1;cursor:pointer}.dark-theme .record-month-picker-close,.dark-theme .record-calendar-close,.dark-theme .record-calendar-shift-btn{background:#ffffff14}.record-month-picker-wheel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.record-month-picker-wheel label{min-width:0;display:flex;flex-direction:column;gap:8px}.record-month-picker-wheel label>span{color:var(--text-light);font-size:var(--font-body-sm);font-weight:800;text-align:center}.record-month-picker-wheel select{width:100%;min-height:184px;border:1px solid rgba(var(--primary-rgb),.2);border-radius:18px;background:#ffffffad;color:var(--text-dark);padding:8px;font:inherit;font-size:var(--font-body-md);font-weight:800;line-height:1.6;outline:none;overflow-y:auto;text-align:center;scroll-snap-type:y mandatory}.record-month-picker-wheel select:focus{border-color:rgba(var(--primary-rgb),.56);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.record-month-picker-wheel option{min-height:36px;padding:8px 10px;border-radius:12px;scroll-snap-align:center}.dark-theme .record-month-picker-wheel select{background:#ffffff14}.record-calendar-weekdays,.record-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.record-calendar-weekdays span{color:var(--text-light);font-size:var(--font-body-sm);font-weight:800;text-align:center}.record-calendar-weekdays span.sunday{color:#d65b68}.record-calendar-weekdays span.saturday{color:#2f78d4}.record-calendar-blank{min-height:44px}.record-calendar-day{position:relative;min-height:48px;border:1px solid rgba(var(--primary-rgb),.26);border-radius:16px;background:#ffffffad;color:var(--text-dark);font:inherit;font-size:var(--font-body-md);font-weight:800;cursor:pointer}.dark-theme .record-calendar-day{background:#ffffff14}.record-calendar-day:disabled{opacity:.34;cursor:default}.record-calendar-day.sunday{color:#d65b68}.record-calendar-day.saturday{color:#2f78d4}.record-calendar-day.has-records:before{content:"";position:absolute;top:7px;left:50%;width:6px;height:6px;border-radius:50%;background:#f7c437;transform:translate(-50%);box-shadow:0 0 0 2px #f7c43724}.record-calendar-day.has-records span{position:relative;top:5px}.record-calendar-day.today{border-color:rgba(var(--primary-rgb),.82);box-shadow:0 8px 16px rgba(var(--primary-rgb),.08)}.record-calendar-day.selected{border-color:rgba(var(--primary-rgb),.56);background:linear-gradient(135deg,#5fbc44eb,#a9d94fe0);color:#fff}.record-calendar-preview{display:flex;flex-direction:column;gap:12px;padding-top:2px}.record-calendar-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.record-calendar-preview-head div{min-width:0;display:flex;flex-direction:column;gap:3px}.record-calendar-preview-head strong{color:var(--text-dark);font-size:var(--font-body-md);line-height:1.28}.record-calendar-preview-head span{color:var(--text-light);font-size:var(--font-body-sm);font-weight:800}.record-calendar-preview-head button{flex:0 0 auto;min-height:34px;border:1px solid rgba(var(--primary-rgb),.24);border-radius:999px;background:rgba(var(--primary-rgb),.1);color:var(--primary-color);padding:0 12px;font:inherit;font-size:var(--font-body-sm);font-weight:900;cursor:pointer}.record-calendar-preview-list{max-height:220px;display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding-right:2px}.record-calendar-preview-row{width:100%;border:1px solid rgba(var(--primary-rgb),.24);border-radius:16px;background:#ffffffa8;color:inherit;padding:11px 12px;display:flex;align-items:stretch;gap:10px;font:inherit;text-align:left;cursor:pointer}.record-calendar-preview-content{min-width:0;flex:1 1 auto;display:flex;flex-direction:column;gap:3px}.record-calendar-preview-row .record-preview-thumb{flex-basis:min(33%,86px);width:min(33%,86px);align-self:center;border-radius:12px}.dark-theme .record-calendar-preview-row,.dark-theme .record-calendar-preview-head button{background:#ffffff14}.record-calendar-preview-row time{color:var(--text-light);font-size:var(--font-body-sm);font-weight:800}.record-calendar-preview-row strong{color:var(--text-dark);font-size:var(--font-body-md);line-height:1.28;word-break:keep-all;overflow-wrap:break-word}.record-calendar-preview-row p{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--text-light);font-size:clamp(.9rem,2.8vw,.98rem);line-height:1.48;word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}.record-calendar-preview-empty{width:100%;min-height:56px;border:1px dashed rgba(var(--primary-rgb),.2);border-radius:16px;color:var(--text-light);display:flex;align-items:center;justify-content:center;font-size:var(--font-body-md);text-align:center}.record-composer-overlay{position:fixed;inset:0;z-index:2600;display:flex;align-items:flex-start;justify-content:center;padding:calc(var(--native-safe-area-top) + 18px) var(--screen-side-padding) calc(var(--native-safe-area-bottom) + 18px);background:#13251761;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow-y:auto;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y}.record-note-modal{width:min(100%,520px);max-height:none;margin-block:auto;display:flex;flex-direction:column;gap:14px;padding:clamp(18px,4.6vw,22px);border:1px solid rgba(var(--primary-rgb),.22);border-radius:22px;background:linear-gradient(90deg,rgba(var(--primary-rgb),.08) 1px,transparent 1px) 22px 0 / 28px 100% no-repeat,repeating-linear-gradient(180deg,transparent 0,transparent 35px,rgba(var(--secondary-rgb),.15) 36px),var(--white);box-shadow:0 22px 56px #17301f2e;overflow:visible}.dark-theme .record-note-modal{background:linear-gradient(90deg,rgba(var(--primary-rgb),.12) 1px,transparent 1px) 22px 0 / 28px 100% no-repeat,repeating-linear-gradient(180deg,transparent 0,transparent 35px,rgba(var(--secondary-rgb),.08) 36px),var(--white)}.record-note-header{position:sticky;top:0;z-index:20;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:8px;background:transparent}.record-note-header h3{margin-top:8px;font-size:clamp(1.18rem,3.8vw,1.42rem);line-height:1.24}.record-note-close{flex:0 0 auto;width:38px;height:38px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:50%;background:#ffffffbd;color:var(--text-dark);font-size:1.45rem;line-height:1;cursor:pointer}.dark-theme .record-note-close{background:#ffffff14}.record-note-title-input,.record-note-modal textarea{width:100%;border:1px solid rgba(var(--primary-rgb),.2);border-radius:18px;background:#ffffffa8;color:var(--text-dark);padding:15px;font:inherit;font-size:var(--font-body-md);line-height:1.65;outline:none}.record-note-title-input{min-height:48px;font-weight:800}.record-note-modal textarea{min-height:220px;resize:none}.dark-theme .record-note-title-input,.dark-theme .record-note-modal textarea{background:#ffffff14}.record-note-title-input:focus,.record-note-modal textarea:focus{border-color:rgba(var(--primary-rgb),.58);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.12)}.record-note-title-input.record-field-prompt,.record-note-modal textarea.record-field-prompt{border-color:#d65b6885;color:var(--text-dark);box-shadow:0 0 0 3px #d65b681f}.record-note-title-input.record-field-prompt::placeholder,.record-note-modal textarea.record-field-prompt::placeholder{color:#c84f5c;font-weight:900;opacity:1}.record-field-prompt.pulse-even{animation:recordFieldPromptBounceEven .42s ease}.record-field-prompt.pulse-odd{animation:recordFieldPromptBounceOdd .42s ease}@keyframes recordFieldPromptBounceEven{0%{transform:translateY(0)}38%{transform:translateY(-5px) scale(1.01)}68%{transform:translateY(2px)}to{transform:translateY(0)}}@keyframes recordFieldPromptBounceOdd{0%{transform:translateY(0)}38%{transform:translateY(-5px) scale(1.01)}68%{transform:translateY(2px)}to{transform:translateY(0)}}.records-image-feedback{margin:0;color:var(--text-light);font-size:var(--font-body-sm)}.record-note-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.records-photo-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.records-photo-actions button:disabled,.record-note-save:disabled,.record-image-save-btn:disabled{opacity:.55;cursor:default}.record-note-save{flex:1 1 auto;min-height:46px;border-radius:16px}.record-image-strip{display:flex;gap:8px;overflow-x:auto;padding:10px 0 8px;overscroll-behavior-x:contain}.record-image-thumb{position:relative;flex:0 0 74px;width:74px;height:74px;border-radius:16px;overflow:hidden;border:1px solid var(--glass-border);background:#ffffff9e}.record-image-thumb.is-reorderable{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.record-image-thumb.is-reorderable:active:not(.is-press-dragging){cursor:grabbing;transform:scale(.98)}.record-image-thumb.is-reorderable.is-press-dragging{z-index:4;border-color:rgba(var(--primary-rgb),.5);box-shadow:0 14px 30px #2d4a213d;transform:translate3d(var(--press-reorder-x, 0px),calc(var(--press-reorder-y, 0px) - 8px),0) scale(1.07);transition:box-shadow .14s ease,border-color .14s ease}.record-image-open{width:100%;height:100%;border:none;padding:0;background:transparent;display:block}.record-image-thumb.is-reorderable .record-image-open,.record-image-thumb.is-reorderable .record-image-open img{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.record-image-open img{width:100%;height:100%;display:block;object-fit:cover}.record-image-open span{display:block;width:100%;height:100%;background:rgba(var(--primary-rgb),.08)}.record-image-remove{position:absolute;top:5px;right:5px;width:22px;height:22px;border:none;border-radius:50%;background:#17301fb8;color:#fff;font-size:1rem;line-height:1;cursor:pointer}.record-image-viewer-overlay{position:fixed;inset:0;z-index:2700;display:flex;align-items:center;justify-content:center;padding:20px;background:#000000c7}.record-image-viewer{position:relative;width:min(100%,420px);max-height:88vh;display:flex;flex-direction:column;gap:12px}.record-image-viewer img{max-width:100%;max-height:70vh;border-radius:18px;object-fit:contain;background:#000}.record-image-viewer-close{position:absolute;top:10px;right:10px;width:36px;height:36px;border:none;border-radius:50%;background:#ffffffd1;color:#111;font-size:1.5rem;line-height:1;cursor:pointer}.record-image-viewer-actions{display:flex;flex-direction:column;align-items:stretch;gap:8px}.record-image-save-btn{width:100%}.record-image-viewer-actions p{margin:0;color:#fff;font-size:var(--font-body-sm);text-align:center}.record-image-viewer-actions p{margin:0;color:#fff;text-align:center;font-size:var(--font-body-sm)}@media(max-width:430px){.records-header-row{column-gap:10px}.records-header-actions{gap:5px}.records-view-mode-tabs{grid-template-columns:36px 36px 50px}.records-view-mode-tab{min-height:38px;font-size:var(--font-body-sm)}.records-floating-write-btn{width:52px;height:52px;bottom:calc(var(--native-safe-area-bottom) + 100px)}.records-floating-write-btn svg{width:22px;height:22px;flex-basis:22px}.record-preview-row{gap:10px;padding:11px 12px}.record-preview-actions{width:100%;justify-content:flex-end}.record-note-footer{align-items:stretch;flex-direction:column}.records-photo-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}.home-view{padding-bottom:var(--screen-content-bottom-padding)}.home-header{padding:calc(var(--native-safe-area-top) + clamp(14px,3.4vw,18px)) var(--screen-side-padding) clamp(16px,4vw,20px)}.home-header h1{font-size:var(--font-title-xl);letter-spacing:-.5px;color:var(--primary-color);line-height:1.08;margin-bottom:8px}.home-header p{max-width:24ch;font-size:var(--font-body-lg);font-weight:500;line-height:1.65}.home-today-card{margin:0 var(--screen-side-padding) clamp(14px,3.7vw,18px);padding:clamp(12px,3.2vw,14px);border:1px solid rgba(var(--primary-rgb),.28);border-radius:20px;background:#fffefae0;box-shadow:0 12px 28px #315d2a14}.dark-theme .home-today-card{background:#ffffff12}.home-today-card.is-empty{background:linear-gradient(135deg,rgba(var(--primary-rgb),.06),#ffffffd1)}.home-today-open{width:100%;border:0;padding:0;background:transparent;color:inherit;font:inherit;display:flex;align-items:center;gap:clamp(12px,3.4vw,15px);text-align:left;cursor:pointer}.home-today-image{width:clamp(58px,17vw,72px);aspect-ratio:1;flex:0 0 clamp(58px,17vw,72px);display:inline-flex;align-items:center;justify-content:center;border-radius:15px;border:1px solid rgba(var(--primary-rgb),.28);background:radial-gradient(circle at 32% 24%,rgba(var(--secondary-rgb),.22),transparent 40%),#ffffffbd}.home-today-image img{width:66%;height:66%;object-fit:contain;display:block;opacity:.9}.home-today-card.has-record .home-today-image img{width:100%;height:100%;object-fit:cover;opacity:1}.home-today-card.has-record .home-today-image img.is-fallback{width:66%;height:66%;object-fit:contain;opacity:.9}.home-today-image-blank{width:64%;height:64%;position:relative}.home-today-image-blank:before,.home-today-image-blank:after{content:"";position:absolute;inset:50% auto auto 50%;width:36%;height:2px;border-radius:999px;background:rgba(var(--primary-rgb),.58);transform:translate(-50%,-50%)}.home-today-image-blank:after{transform:translate(-50%,-50%) rotate(90deg)}.home-today-copy{min-width:0;flex:1 1 auto;display:flex;flex-direction:column;gap:3px}.home-today-label{color:var(--primary-color);font-size:clamp(.74rem,2.6vw,.82rem);font-weight:900}.home-today-copy strong{color:var(--text-dark);font-size:clamp(1.02rem,3.4vw,1.16rem);line-height:1.28}.home-today-copy span:last-child{color:var(--text-light);font-size:var(--font-body-sm);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-today-empty-title{color:var(--text-dark)}.home-today-empty-copy{color:rgba(var(--primary-rgb),.86)!important;font-weight:800}.home-today-copy .is-placeholder{width:min(100%,210px);min-height:1.1em;border-radius:999px;background:rgba(var(--primary-rgb),.1);color:transparent}.home-today-copy span.is-placeholder{width:min(78%,180px);min-height:.86em;margin-top:3px}.home-today-composer{margin-top:12px;padding-top:12px;border-top:1px solid rgba(var(--primary-rgb),.16);display:flex;flex-direction:column;gap:10px}.home-today-composer textarea{width:100%;min-height:96px;resize:none;border:1px solid rgba(var(--primary-rgb),.26);border-radius:16px;padding:13px 14px;background:#ffffffc2;color:var(--text-dark);font:inherit;font-size:var(--font-body-md);line-height:1.55;outline:none}.home-today-composer textarea:focus{border-color:rgba(var(--primary-rgb),.56);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.11)}.home-today-error{margin:-2px 0 0;color:#c84f5c;font-size:var(--font-body-sm);font-weight:850}.home-today-actions{display:flex;justify-content:flex-end;gap:8px}.home-today-actions button{min-height:38px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:12px;padding:0 14px;background:#ffffffb8;color:var(--text-light);font:inherit;font-size:var(--font-body-sm);font-weight:900}.home-today-actions button:last-child{border-color:rgba(var(--primary-rgb),.48);background:rgba(var(--primary-rgb),.12);color:var(--primary-color)}.home-today-modal-overlay{position:fixed;inset:0;z-index:2200;display:flex;align-items:center;justify-content:center;padding:calc(var(--native-safe-area-top) + 18px) var(--screen-side-padding) calc(var(--native-safe-area-bottom) + 18px);background:#0f241557;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.home-today-modal{position:relative;width:min(100%,430px);max-height:min(88vh,680px);overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:clamp(18px,4.6vw,22px);border:1px solid rgba(var(--primary-rgb),.28);border-radius:22px;background:var(--white);box-shadow:0 22px 56px #17301f33}.dark-theme .home-today-modal{background:var(--card-bg)}.home-today-modal-close{position:sticky;top:0;align-self:flex-end;z-index:2;width:38px;height:38px;margin-bottom:-38px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:50%;background:#ffffffc2;color:var(--text-dark);font-size:1.45rem;line-height:1;cursor:pointer}.home-today-modal-head{padding-right:44px}.home-today-modal-head span{display:inline-flex;margin-bottom:7px;color:var(--primary-color);font-size:.74rem;font-weight:900}.home-today-modal-head h2{margin:0;color:var(--text-dark);font-size:clamp(1.2rem,4vw,1.44rem);line-height:1.28}.home-today-modal-image{width:100%;aspect-ratio:16 / 9;border:1px dashed rgba(var(--primary-rgb),.26);border-radius:18px;background:radial-gradient(circle at 28% 20%,rgba(var(--secondary-rgb),.18),transparent 38%),#ffffff9e;display:flex;align-items:center;justify-content:center;overflow:hidden}.home-today-modal-image img{width:100%;height:100%;object-fit:cover;display:block}.home-today-modal-image .home-today-image-blank{width:74px;height:74px}.home-today-modal input,.home-today-modal textarea{width:100%;border:1px solid rgba(var(--primary-rgb),.22);border-radius:16px;background:#ffffffad;color:var(--text-dark);padding:14px;font:inherit;font-size:var(--font-body-md);line-height:1.55;outline:none}.home-today-modal textarea{resize:none;min-height:132px}.home-today-modal input:focus,.home-today-modal textarea:focus{border-color:rgba(var(--primary-rgb),.56);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.11)}.home-today-modal input.has-error,.home-today-modal textarea.has-error{border-color:#d65b6885;box-shadow:0 0 0 3px #d65b681f}.home-today-modal input.has-error::placeholder,.home-today-modal textarea.has-error::placeholder{color:#c84f5c;font-weight:900;opacity:1}.home-today-modal-actions{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:8px}.home-today-modal-actions button{min-height:44px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:14px;background:#ffffffb8;color:var(--text-light);font:inherit;font-size:var(--font-body-sm);font-weight:900;cursor:pointer}.home-today-modal-actions button:last-child{border-color:rgba(var(--primary-rgb),.48);background:rgba(var(--primary-rgb),.12);color:var(--primary-color)}.home-tools{margin:0 var(--screen-side-padding) clamp(14px,3.6vw,18px);padding:clamp(8px,2.4vw,10px);display:grid;grid-template-columns:minmax(0,1fr) 48px 48px;gap:8px;align-items:center;border:1px solid rgba(var(--primary-rgb),.24);border-radius:22px;background:#fffefadb;box-shadow:0 10px 26px #315d2a12;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.dark-theme .home-tools{background:#ffffff12}.home-tool-search,.home-tool-tag,.home-tool-add{min-height:48px;border:1px solid rgba(var(--primary-rgb),.34);border-radius:16px;background:#ffffffc7;color:var(--text-dark);display:flex;align-items:center;justify-content:center;font-family:inherit;font-weight:800}.dark-theme .home-tool-search,.dark-theme .home-tool-tag{background:#ffffff14}.home-tool-search{justify-content:flex-start;gap:10px;padding:0 clamp(14px,3.4vw,16px);color:var(--text-light)}.home-tool-search:focus-within{border-color:rgba(var(--primary-rgb),.52);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.12)}.home-tool-search svg{width:20px;height:20px;flex:0 0 auto;color:var(--primary-color)}.home-tool-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--text-light);font-size:var(--font-body-md);font-weight:700;font-family:inherit}.home-tool-search input::placeholder{color:var(--text-light);opacity:.95}.home-search-clear{width:28px;height:28px;border:0;border-radius:50%;background:rgba(var(--primary-rgb),.1);color:var(--primary-color);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.home-search-clear svg{width:15px;height:15px}.home-tool-tag{padding:0;color:var(--primary-color);cursor:pointer;transition:background .18s ease,border-color .18s ease,transform .18s ease}.home-tool-tag.active{border-color:rgba(var(--primary-rgb),.56);background:rgba(var(--primary-rgb),.12)}.home-tool-tag:active{transform:scale(.96)}.home-tool-tag svg{width:20px;height:20px;flex:0 0 auto}.home-tool-add{border:1px solid rgba(var(--primary-rgb),.48);background:#ffffffd1;color:var(--primary-color);box-shadow:0 10px 20px rgba(var(--primary-rgb),.12);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.home-tool-add svg{width:23px;height:23px;flex:0 0 auto}.home-tool-add:active{transform:scale(.96);box-shadow:0 6px 14px rgba(var(--primary-rgb),.16)}.home-active-filters{margin:calc(clamp(14px,3.6vw,18px)*-.55) var(--screen-side-padding) clamp(14px,3.6vw,18px);display:flex;align-items:center;gap:8px;overflow-x:auto;padding:2px 0 4px;scrollbar-width:none}.home-active-filters::-webkit-scrollbar{display:none}.home-filter-chip,.home-filter-reset{min-height:30px;border-radius:999px;border:1px solid rgba(var(--primary-rgb),.28);background:#ffffffb8;color:var(--primary-color);font-family:inherit;font-size:var(--font-body-sm);font-weight:800;white-space:nowrap}.home-filter-chip{display:inline-flex;align-items:center;gap:5px;padding:0 10px}.home-filter-chip span{font-size:1rem;line-height:1}.home-filter-reset{padding:0 11px;color:var(--text-light)}.feed-container{padding:0 var(--screen-side-padding) clamp(12px,3vw,14px);display:flex;flex-direction:column}.empty-state{text-align:center;padding:clamp(40px,10vw,56px) clamp(20px,5vw,24px) clamp(24px,5vw,28px);color:var(--text-light);line-height:1.6}.empty-icon{font-size:clamp(2.4rem,8vw,3rem);margin-bottom:16px;opacity:.8}.home-tag-picker-overlay{position:fixed;inset:0;z-index:2000;display:flex;align-items:flex-end;justify-content:center;padding:18px;background:#0f241547;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.home-tag-picker-modal{width:min(100%,430px);max-height:78vh;overflow-y:auto;padding:18px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:24px;background:linear-gradient(180deg,#fffffffa,#fbf8eefa);box-shadow:0 18px 40px #15351c33}.dark-theme .home-tag-picker-modal{background:linear-gradient(180deg,#242a21fa,#1a1f19fa)}.home-tag-picker-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.home-tag-picker-header h2{margin:0;color:var(--text-dark);font-size:1.2rem}.home-tag-picker-header p{margin:5px 0 0;color:var(--text-light);font-size:var(--font-body-sm);line-height:1.45}.home-tag-picker-header button,.home-tag-clear-all{border:1px solid rgba(var(--primary-rgb),.34);border-radius:999px;background:#ffffffd6;color:var(--primary-dark);font-family:inherit;font-weight:800}.home-tag-picker-header button{min-width:68px;padding:8px 12px}.home-tag-picker-groups{display:flex;flex-direction:column;gap:14px}.home-tag-picker-group{display:flex;flex-direction:column;gap:8px}.home-tag-picker-group strong{color:var(--text-dark);font-size:.88rem}.home-tag-options{display:flex;flex-wrap:wrap;gap:8px}.home-tag-option{min-height:34px;padding:0 12px;border:1px solid rgba(var(--primary-rgb),.3);border-radius:999px;background:#ffffffb3;color:var(--text-dark);font-family:inherit;font-size:.88rem;font-weight:800}.home-tag-option.selected{border-color:rgba(var(--primary-rgb),.58);background:rgba(var(--primary-rgb),.14);color:var(--primary-dark)}.home-tag-clear-all{width:100%;min-height:42px;margin-top:18px}.landing-page{--landing-radius-lg: 28px;--landing-radius-md: 18px;--landing-radius-pill: 999px;--landing-line: rgba(var(--primary-rgb), .34);--landing-line-soft: rgba(var(--primary-rgb), .2);--landing-surface: rgba(255, 255, 255, .88);--landing-surface-strong: rgba(255, 255, 255, .96);--landing-green-deep: #244a2b;--landing-shadow: 0 18px 42px rgba(51, 92, 43, .14);min-height:100vh;color:var(--text-dark);background:linear-gradient(180deg,#ffffff8f,#fff0),radial-gradient(circle at 14% 12%,rgba(var(--secondary-rgb),.2),transparent 30%),radial-gradient(circle at 88% 16%,rgba(var(--primary-rgb),.16),transparent 28%),linear-gradient(145deg,#fffdf6,#f7f2e3 52%,#eef6df)}.landing-page,.landing-page *{-webkit-user-select:text;user-select:text;word-break:keep-all;overflow-wrap:break-word;line-break:strict}.landing-page-shell{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:22px 0 42px}.landing-nav,.landing-hero-copy,.landing-app-summary,.landing-section,.landing-footer{border:1px solid var(--landing-line);background:var(--landing-surface);box-shadow:var(--landing-shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.landing-nav{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:70px;padding:12px 18px;border-radius:var(--landing-radius-pill)}.landing-brand{display:inline-flex;align-items:center;gap:9px;min-width:0;color:var(--primary-color);font-size:clamp(1.35rem,2vw,1.76rem);font-weight:800;text-decoration:none;letter-spacing:0;white-space:nowrap}.landing-brand-icon{flex:0 0 auto;width:clamp(28px,3vw,34px);height:clamp(28px,3vw,34px);border-radius:10px;object-fit:cover;box-shadow:0 8px 18px rgba(var(--primary-rgb),.16)}.landing-nav-links,.landing-footer-links{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}.landing-nav-link-btn,.landing-footer-link-btn,.landing-footer-links a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 14px;border:1px solid var(--landing-line-soft);border-radius:var(--landing-radius-pill);background:#ffffffc2;color:var(--text-dark);font-size:.92rem;font-weight:700;text-decoration:none;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background-color .18s ease}.landing-nav-link-btn:hover,.landing-footer-link-btn:hover,.landing-footer-links a:hover{transform:translateY(-1px);border-color:rgba(var(--primary-rgb),.48);background:#fff}.landing-nav-link-btn.is-authenticated{color:var(--primary-color);border-color:rgba(var(--primary-rgb),.44)}.landing-nav-logout-btn{color:var(--text-light)}.landing-nav-link-btn:disabled{opacity:.62;cursor:wait;transform:none}.landing-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.84fr);gap:18px;align-items:stretch;padding-top:26px}.landing-hero-copy{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:560px;padding:clamp(28px,4.2vw,48px);border-radius:var(--landing-radius-lg);overflow:hidden}.landing-hero-copy:after{content:"";position:absolute;right:-90px;bottom:-110px;width:270px;height:270px;border-radius:50%;background:radial-gradient(circle,rgba(var(--primary-rgb),.14),transparent 68%);pointer-events:none}.landing-hero-mark{position:relative;z-index:1;display:inline-flex;align-items:center;width:fit-content;gap:9px;margin-bottom:18px;padding:8px 12px;border:1px solid rgba(var(--primary-rgb),.28);border-radius:var(--landing-radius-pill);background:#ffffffb8;color:var(--primary-color);font-size:.92rem;font-weight:800}.landing-hero-mark img{width:25px;height:25px;object-fit:contain}.landing-hero-copy h1{position:relative;z-index:1;max-width:13em;color:var(--landing-green-deep);font-size:clamp(1.42rem,2.1vw,2rem);line-height:1.26;letter-spacing:0;text-wrap:balance;word-break:keep-all;overflow-wrap:normal}.landing-lead{position:relative;z-index:1;max-width:38em;margin-top:18px;color:#3d513d;font-size:clamp(.98rem,1.18vw,1.06rem);line-height:1.74;word-break:keep-all}.landing-hero-actions{position:relative;z-index:1;display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:24px}.landing-primary-cta,.landing-secondary-cta{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 21px;border-radius:15px;font-size:.95rem;font-weight:800;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.landing-primary-cta{border:none;color:#fff;background:linear-gradient(135deg,var(--primary-color),#92bd37);box-shadow:0 14px 26px rgba(var(--primary-rgb),.26)}.landing-secondary-cta{border:1px solid var(--landing-line-soft);color:var(--text-dark);background:#ffffffdb}.landing-primary-cta:hover,.landing-secondary-cta:hover{transform:translateY(-2px)}.landing-hero-metrics{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.landing-hero-metrics span{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:var(--landing-radius-pill);background:rgba(var(--primary-rgb),.1);color:#36513a;font-size:.8rem;font-weight:800}.landing-app-summary{display:flex;flex-direction:column;justify-content:center;gap:18px;min-height:560px;padding:clamp(24px,3vw,32px);border-radius:var(--landing-radius-lg);background:linear-gradient(180deg,#ffffffe6,#f6faeebd),radial-gradient(circle at top right,rgba(var(--secondary-rgb),.18),transparent 38%)}.landing-summary-image{width:min(150px,38vw);aspect-ratio:1;border:1px solid rgba(var(--primary-rgb),.22);border-radius:24px;overflow:hidden;background:#ffffffb8;box-shadow:0 12px 28px #30522a1a}.landing-summary-image img{width:100%;height:100%;object-fit:cover}.landing-summary-copy{display:grid;gap:12px}.landing-summary-copy span{color:var(--primary-color);font-size:.76rem;font-weight:900}.landing-summary-copy h2{max-width:13em;color:var(--text-dark);font-size:clamp(1.42rem,2.1vw,2rem);line-height:1.26;letter-spacing:0}.landing-summary-copy p{color:var(--text-light);font-size:.94rem;line-height:1.72;word-break:keep-all}.landing-analysis-preview{display:flex;flex-direction:column;gap:16px}.landing-analysis-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid rgba(var(--primary-rgb),.2);border-radius:22px;background:#ffffffb8;box-shadow:0 12px 26px rgba(var(--primary-rgb),.1)}.landing-analysis-summary span{color:#111111b3;font-size:.9rem;font-weight:800}.landing-analysis-summary strong{color:var(--primary-color);font-size:clamp(2.1rem,5vw,3rem);font-weight:900;line-height:1}.landing-analysis-chart{position:relative;min-height:150px;padding:18px 12px 10px;border:1px solid rgba(var(--primary-rgb),.16);border-radius:24px;background:#ffffff9e;overflow:hidden}.landing-analysis-grid{position:absolute;inset:18px 16px 16px;background:linear-gradient(rgba(var(--primary-rgb),.08) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--primary-rgb),.06) 1px,transparent 1px);background-size:100% 36px,42px 100%}.landing-analysis-chart svg{position:relative;z-index:1;width:100%;height:120px;overflow:visible}.landing-analysis-area{fill:rgba(var(--primary-rgb),.16)}.landing-analysis-line{fill:none;stroke:var(--primary-color);stroke-width:7;stroke-linecap:round;stroke-linejoin:round}.landing-analysis-chart circle{fill:#fff;stroke:var(--primary-color);stroke-width:5}.landing-analysis-bars{display:grid;gap:10px}.landing-analysis-bars div{display:grid;grid-template-columns:46px minmax(0,1fr) 42px;align-items:center;gap:10px;color:#111;font-size:.9rem;font-weight:800}.landing-analysis-bars i{height:10px;border-radius:var(--landing-radius-pill);background:rgba(var(--primary-rgb),.12);overflow:hidden}.landing-analysis-bars b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color))}.landing-analysis-bars em{color:var(--primary-color);font-style:normal;text-align:right}.landing-summary-list{display:grid;gap:10px}.landing-summary-item{padding:14px 15px;border:1px solid rgba(var(--primary-rgb),.2);border-radius:16px;background:#ffffffb8}.landing-summary-item strong{display:block;color:var(--text-dark);font-size:.98rem;line-height:1.34}.landing-summary-item p{margin-top:5px;color:var(--text-light);font-size:.86rem;line-height:1.58;word-break:keep-all}.landing-section{margin-top:20px;padding:26px;border-radius:var(--landing-radius-lg)}.landing-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.landing-section-head span,.landing-fact-label{color:var(--primary-color);font-size:.78rem;font-weight:900}.landing-section-head h2{color:var(--text-dark);font-size:clamp(1.35rem,2.4vw,2rem);letter-spacing:0}.landing-feature-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.landing-feature-item{display:grid;gap:12px;min-height:190px;padding:18px;border:1px solid var(--landing-line-soft);border-radius:20px;background:#ffffffb8}.landing-feature-item strong{display:block;margin-bottom:8px;color:var(--text-dark);font-size:1.06rem;line-height:1.35}.landing-feature-item p{color:var(--text-light);font-size:.9rem;line-height:1.68;word-break:keep-all}.landing-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding:20px 24px;border-radius:var(--landing-radius-lg)}.landing-footer-copy strong{display:block;color:var(--primary-color);font-size:1.12rem;font-weight:800}.landing-footer-copy p{margin-top:5px;color:var(--text-light);font-size:.9rem}@media(max-width:1040px){.landing-hero{grid-template-columns:1fr}.landing-hero-copy,.landing-app-summary{min-height:auto}.landing-feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.landing-page-shell{width:min(100% - 24px,1120px);padding-top:16px;padding-bottom:32px}.landing-nav,.landing-footer{align-items:stretch;flex-direction:column;border-radius:24px}.landing-nav-links,.landing-footer-links{justify-content:flex-start}.landing-nav-link-btn,.landing-footer-link-btn,.landing-footer-links a{flex:1 1 auto}.landing-hero{padding-top:18px}.landing-hero-copy,.landing-app-summary,.landing-section{padding:20px;border-radius:24px}.landing-hero-copy h1{font-size:clamp(1.42rem,2.1vw,2rem)}.landing-primary-cta,.landing-secondary-cta{width:100%}.landing-summary-copy h2{max-width:none}.landing-feature-list{grid-template-columns:1fr}.landing-feature-item{min-height:auto}.landing-section-head{align-items:flex-start;flex-direction:column}}.app-shell{display:flex;justify-content:center;min-height:100vh}.opening-video{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:#fffefa;opacity:1;pointer-events:all;transition:opacity .32s ease}.opening-video--leaving{opacity:0;pointer-events:none}.opening-video__loader{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:radial-gradient(circle at 50% 42%,rgba(139,195,74,.13),transparent 34%),#fffefa;color:#2f5f1f}.opening-video__spinner{width:42px;height:42px;border:4px solid rgba(95,143,34,.18);border-top-color:#65a51f;border-radius:999px;animation:opening-spinner .82s linear infinite}.opening-video__brand{font-size:1.05rem;font-weight:800;letter-spacing:0}.opening-video__media{width:100%;height:100%;object-fit:cover;background:#fffefa}@keyframes opening-spinner{to{transform:rotate(360deg)}}.app-container{position:relative;min-height:100vh;width:100%;max-width:480px;background:var(--glass-bg);box-shadow:0 0 40px #00000026;overflow-x:hidden;transition:background .3s ease,color .3s ease}.app-top-actions{position:absolute;top:calc(var(--app-safe-top) - clamp(12px,3vw,14px));right:clamp(14px,4vw,18px);display:flex;align-items:center;gap:clamp(8px,2.4vw,10px);z-index:1000}.settings-trigger-btn,.support-trigger-btn{width:var(--touch-target-md);height:var(--touch-target-md);border-radius:50%;border:none;background:var(--glass-bg);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 12px #0000001a;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s cubic-bezier(.175,.885,.32,1.275);-webkit-tap-highlight-color:transparent}.settings-trigger-icon{width:clamp(24px,5vw,28px);height:clamp(24px,5vw,28px);color:var(--text-dark)}.support-trigger-label{color:var(--text-dark);font-size:clamp(1.05rem,4vw,1.2rem);font-weight:800;line-height:1}.settings-trigger-btn:active{transform:scale(.9) rotate(12deg)}.support-trigger-btn:active{transform:scale(.9)}
