@font-face{font-family:LCD;src:url(/fonts/LoveLCD-Regular.woff2)format("woff2");font-display:swap}:root{--lcd:#9bb477;--ink:#20351b;--muted:#617749;--background:var(--lcd);--foreground:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--lcd);font-family:LCD,monospace}*{box-sizing:border-box}body{margin:0}button,a{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;background:0 0;border:0}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:3px dashed var(--ink);outline-offset:6px}button:hover:not(:disabled){transform:translateY(-2px)}button:active:not(:disabled){transform:translateY(1px)}button{transition:transform .12s}h1,h2,p{margin:0}svg{display:block}.lcd{isolation:isolate;background:var(--lcd);height:100dvh;min-height:540px;position:relative;overflow:hidden}.lcd:after{content:"";z-index:20;pointer-events:none;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4'%3E%3Cpath d='M0 3h4M3 0v4' stroke='%2320351b' stroke-width='.4'/%3E%3C/svg%3E");position:absolute;inset:0}.world{width:100%;height:100%;image-rendering:pixelated;z-index:-1;position:absolute;inset:0}.status-bar{top:max(28px, env(safe-area-inset-top));z-index:4;justify-content:space-between;align-items:center;display:flex;position:absolute;left:4%;right:4%}.signal{align-items:flex-end;gap:5px;height:39px;display:flex}.signal i{background:var(--ink);width:9px;height:12px;display:block}.signal i:nth-child(2){height:21px}.signal i:nth-child(3){height:30px}.signal i:nth-child(4){height:39px}.signal i.empty{opacity:.3}.signal span{letter-spacing:2px;margin:0 0 0 14px;font-size:17px}.status-right{align-items:center;gap:13px;display:flex}.battery-label{font-size:25px}.battery{border:4px solid var(--ink);gap:4px;width:65px;height:30px;padding:3px;display:flex;position:relative}.battery:after{content:"";background:var(--ink);width:4px;height:14px;position:absolute;top:4px;right:-8px}.battery i{background:var(--ink);flex:1}.battery i.empty{opacity:.3}.sound-toggle{opacity:.75;width:44px;height:44px;margin-right:9px;padding:9px}.sound-toggle svg{width:26px}.heart{width:30px;height:28px}.status-right>.heart{width:19px;height:18px;margin-left:4px}.scene{text-align:center;z-index:2;width:min(680px,90%);position:absolute;top:17%;left:50%;transform:translate(-50%)}.eyebrow{letter-spacing:3px;margin-bottom:20px;font-size:18px}.scene h1{letter-spacing:1px;font-size:clamp(68px,7.5vw,112px);font-weight:400;line-height:.87}.invitation-heart{width:33px;height:30px;margin:24px auto 0;animation:5s steps(2,end) infinite pulse}.softkeys{bottom:max(20px, env(safe-area-inset-bottom));z-index:5;justify-content:space-between;align-items:center;gap:20px;display:flex;position:absolute;left:4%;right:4%}.softkeys button{min-height:50px;padding:0 8px;font-size:clamp(34px,4vw,55px)}.softkeys button span{vertical-align:5%;font-size:.65em}.footer-note{letter-spacing:2px;opacity:.72;padding-top:18px;font-size:14px}.softkeys.single{justify-content:center}.softkeys.single button{font-size:30px}.subcopy{margin-top:18px;font-size:26px;line-height:1.12}.scene h2{font-size:clamp(42px,5vw,68px);font-weight:400;line-height:.95}.scene .small-title{font-size:clamp(46px,5.5vw,76px)}.heart-row{justify-content:center;gap:16px;margin:18px 0;display:flex}.heart-row .heart{width:34px;height:31px}.achievement{margin-top:16px;font-size:27px}.achievement strong{font-size:43px;font-weight:400;display:block}.menu-actions{justify-content:center;gap:34px;margin-top:26px;display:flex}.pixel-button{border:3px solid var(--ink);min-height:48px;box-shadow:3px 3px 0 var(--ink);padding:10px 24px;font-size:27px}.text-button{min-height:44px;padding:8px;font-size:23px}.transition-in{animation:.4s ease-out scene-in}.boot{background:var(--lcd);z-index:10;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:24px;display:flex;position:absolute;inset:0}.boot h1{font-size:44px;font-weight:400}.boot p{letter-spacing:2px;font-size:18px}.boot-bars{gap:5px;display:flex}.boot-bars i{border:2px solid var(--ink);width:16px;height:24px;animation:1.8s step-end both load;animation-delay:calc(var(--i)*.14s)}.boot .text-button{opacity:.7;font-size:18px;position:absolute;bottom:12%}.processing{top:28%}.processing h1{font-size:clamp(42px,5vw,65px)}.processing p{margin-top:24px;font-size:24px}.notice{min-height:28px;margin:16px 0 0;font-size:23px}.date-scene{top:15%}.date-grid{text-align:left;grid-template-columns:auto 1fr;gap:7px 28px;width:fit-content;max-width:100%;margin:21px auto;font-size:27px;display:grid}.date-grid dt{letter-spacing:2px;align-self:center;font-size:18px}.date-grid dd{margin:0}.date-message{font-size:25px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes pulse{0%,90%,to{transform:scale(1)}95%{transform:scale(1.12)}}@keyframes scene-in{0%{opacity:0;filter:brightness(.85)}to{opacity:1;filter:brightness()}}@keyframes load{to{background:var(--ink)}}@media (orientation:portrait){.lcd{min-height:600px}.status-bar{top:max(23px, env(safe-area-inset-top));left:7%;right:7%}.signal{gap:4px;height:34px}.signal i{width:7px}.signal i:nth-child(4){height:34px}.signal span{display:none}.status-right{gap:9px}.battery-label{font-size:22px}.battery{border-width:3px;gap:3px;width:54px;height:27px}.battery:after{height:12px;top:4px;right:-7px}.sound-toggle{margin-right:1px;padding:10px}.scene{width:94%;top:28%}.eyebrow{letter-spacing:2px;margin-bottom:22px;font-size:15px}.scene h1{font-size:clamp(58px,14vw,94px);line-height:.95}.invitation-heart{width:29px;height:26px;margin-top:23px}.softkeys{left:6%;right:6%;bottom:max(17px, env(safe-area-inset-bottom))}.softkeys button{font-size:39px}.footer-note{display:none}.scene h2{font-size:53px}.scene .small-title{font-size:55px}.celebration,.bonus,.date-scene{top:23%}.subcopy,.achievement{font-size:23px}.achievement strong{font-size:35px}.heart-row{margin:15px 0}.heart-row .heart{width:27px;height:25px}.date-grid{gap:10px 18px;margin:22px auto;font-size:25px}.date-grid dt{font-size:16px}.date-message{font-size:23px}.processing{top:35%}.processing h1{font-size:44px}.menu-actions{gap:15px;margin-top:22px}.pixel-button{padding:8px 18px;font-size:25px}}@media (height<=650px) and (orientation:landscape){.lcd{min-height:360px}.status-bar{top:12px}.signal{transform-origin:0;transform:scale(.8)}.scene{top:18%}.eyebrow{margin-bottom:9px;font-size:14px}.scene h1{font-size:64px}.invitation-heart{width:22px;height:20px;margin-top:12px}.softkeys{bottom:10px}.softkeys button{font-size:34px}.scene h2{font-size:42px}.heart-row{margin:8px 0}.heart-row .heart{width:22px;height:20px}.achievement,.subcopy{margin-top:8px;font-size:20px}.achievement strong{font-size:29px}.date-grid{gap:2px 24px;margin:9px auto;font-size:21px}.date-message{font-size:20px}.menu-actions{margin-top:12px}.pixel-button{min-height:42px;padding:6px 16px;font-size:22px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.scene:focus{outline:none}.save-feedback{margin-top:13px;font-size:18px}.date-softkeys button{font-size:30px}.date-softkeys .replay,.date-signoff{font-size:20px}.ending-canvas{width:300px;height:130px;image-rendering:pixelated;margin:10px auto;display:block}.game-scene{z-index:3;flex-direction:column;align-items:stretch;width:min(420px,88vw);margin:auto;display:flex;position:absolute;inset:100px 0 20px}.game-heading{justify-content:space-between;align-items:center;display:flex}.game-heading h1{font-size:46px;font-weight:400;line-height:.9}.game-heading .eyebrow{letter-spacing:2px;margin-bottom:7px;font-size:14px}.game-heading>.heart{width:25px;height:23px}.love-meter{align-items:center;gap:12px;margin:15px 0 12px;font-size:20px;display:flex}.pixel-progress{flex:1;min-width:50px}.pixel-progress [data-slot=progress-track]{border:2px solid var(--ink);background:0 0;border-radius:0;width:100%;height:14px;position:relative;overflow:hidden}.pixel-progress [data-slot=progress-indicator]{background:var(--ink);height:100%}.game-area{aspect-ratio:1;border:3px solid var(--ink);background:var(--lcd);touch-action:none;align-self:center;width:auto;max-width:100%;height:420px;max-height:calc(100dvh - 355px);position:relative;box-shadow:5px 5px #20351b40}.game-area:focus-visible{outline:3px dashed var(--ink);outline-offset:5px}.game-area canvas{width:100%;height:100%;image-rendering:pixelated;display:block}.game-overlay{background:var(--lcd);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:15px;display:flex;position:absolute;inset:0}.game-overlay h2{font-size:30px;font-weight:400;line-height:1}.game-overlay p{font-size:20px;line-height:1}.game-overlay .pixel-button{font-size:24px}.game-overlay>.heart{width:27px;height:25px}.game-feedback{text-align:center;min-height:24px;margin:9px 0;font-size:20px}.game-controls{justify-content:space-between;align-items:center;gap:8px;display:flex}.control-hint{letter-spacing:.5px;font-size:14px;line-height:1.25}.dpad{grid-template-rows:38px 38px;grid-template-columns:44px 44px 44px;gap:3px;display:grid}.dpad button{border:2px solid var(--ink);background:var(--lcd);min-height:38px;padding:0;font-size:18px}.dpad .up{grid-column:2}.dpad .left{grid-area:2/1}.dpad .down{grid-area:2/2}.dpad .right{grid-area:2/3}.game-controls>.text-button{min-width:58px;font-size:18px}.game-skip{margin:8px auto 0;padding:4px;font-size:19px}.state-love_snake .world{opacity:.3}.state-love_snake .game-scene{background:var(--lcd)}@media (orientation:portrait){.date-softkeys{flex-wrap:wrap;justify-content:center;gap:4px 20px}.date-softkeys button{font-size:25px}.date-softkeys .replay{font-size:18px}.date-signoff{display:none}.game-scene{width:min(400px,88vw);top:90px;bottom:8px}.game-heading h1{font-size:40px}.game-area{width:100%;height:auto;max-height:calc(100dvh - 350px)}.love-meter{margin-top:12px;font-size:19px}.game-overlay{gap:12px}.game-overlay h2{font-size:27px}.game-overlay p{font-size:18px}.game-controls{gap:4px}.control-hint{font-size:13px}.dpad{grid-template-rows:44px 44px;grid-template-columns:44px 44px 44px}.dpad button{min-height:44px}.game-feedback{font-size:18px}.game-skip{margin-top:6px}.save-feedback{font-size:17px}.ending-canvas{width:270px;height:117px}.notice{font-size:20px}}@media (height<=720px) and (orientation:portrait){.scene{top:25%}.scene h1{font-size:58px}.scene .small-title{font-size:47px}.eyebrow{margin-bottom:15px}.scene.date-scene{top:21%}.date-grid{gap:6px 15px;margin:14px auto;font-size:23px}.date-message{font-size:21px}.game-scene{top:78px}.game-area{max-height:calc(100dvh - 335px)}.game-heading h1{font-size:34px}.game-heading .eyebrow{font-size:13px}.game-overlay{gap:8px}.game-overlay>.heart{width:20px;height:18px}.game-overlay h2{font-size:23px}.game-overlay .pixel-button{padding:5px 12px;font-size:20px}.game-feedback{margin:6px 0}.game-overlay p{font-size:16px}}@media (height<=650px) and (orientation:landscape){.game-scene{grid-template-rows:50px 33px 25px 90px 40px;grid-template-columns:1fr 1fr;align-content:center;column-gap:30px;width:min(700px,88vw);display:grid;inset:75px 0 12px}.game-heading{grid-area:1/2}.game-heading h1{font-size:35px}.love-meter{grid-area:2/2;margin:0;font-size:17px}.game-area{grid-area:1/1/6;align-self:center;width:100%;height:auto;max-height:calc(100dvh - 110px)}.game-feedback{grid-area:3/2;margin:5px 0;font-size:17px}.game-controls{grid-area:4/2}.game-skip{grid-area:5/2}.control-hint{display:none}.date-scene{top:18%}.date-scene .small-title{font-size:45px}.save-feedback{margin-top:5px;font-size:16px}.ending-canvas{width:210px;height:91px;margin:3px auto}.date-softkeys button{font-size:25px}}@media (width<=360px){.scene h1{font-size:54px}.scene .small-title{font-size:42px}.date-grid{font-size:21px}.game-controls>.text-button{min-width:45px;font-size:16px}.control-hint{font-size:12px}.game-heading h1{font-size:33px}}.lcd{min-height:100dvh}@media (orientation:portrait){.game-area{flex-shrink:0;width:min(100%,100dvh - 350px);height:auto;max-height:none}}@media (height<=720px) and (orientation:portrait){.game-area{width:min(100%,100dvh - 355px);max-height:none}}@media (height<=650px) and (orientation:portrait){.scene.date-scene{top:15%}.date-scene>.eyebrow{display:none}.date-grid{gap:4px 14px;margin:10px auto;font-size:20px;line-height:1}.date-grid dt{font-size:15px}.date-message{font-size:18px;line-height:1}.save-feedback{margin-top:7px;font-size:15px;line-height:1}}.boot-title{font-size:44px;font-weight:400}.boot-tagline{letter-spacing:2px;font-size:18px}.boot:hover:not(:disabled),.boot:active:not(:disabled){transform:none}.save-feedback,.notice{display:block}.picker-scene,.sms-scene{z-index:3;background:var(--lcd);text-align:left;scrollbar-color:var(--ink) var(--lcd);scrollbar-width:thin;width:min(470px,90%);max-height:70%;padding:18px 20px 14px;position:absolute;top:14%;left:50%;overflow-y:auto;transform:translate(-50%)}.picker-header{letter-spacing:2px;border-bottom:2px solid var(--ink);justify-content:space-between;margin-bottom:18px;padding-bottom:9px;font-size:17px;display:flex}.picker-scene h1{outline:none;font-size:37px;font-weight:400;line-height:1}.picker-subtitle{margin:12px 0 22px;font-size:20px;line-height:1.1}.nokia-menu{flex-direction:column;gap:5px;display:flex}.nokia-menu-row{cursor:pointer;border:2px solid #0000;align-items:center;gap:13px;min-height:48px;padding:10px 12px;font-size:25px;line-height:1;display:flex;position:relative}.nokia-menu-row.chosen{background:var(--ink);color:var(--lcd)}.nokia-menu-row:focus-within{outline:2px dashed var(--ink);outline-offset:3px}.nokia-menu-row [data-slot=radio-group-item]{opacity:0;cursor:pointer;border-radius:0;width:100%;height:100%;position:absolute;inset:0}.nokia-menu-row [data-slot=radio-group-item]:hover{transform:none}.menu-index{opacity:.65;font-size:17px}.selection-arrow{visibility:hidden;margin-left:auto;font-size:17px}.chosen .selection-arrow{visibility:visible}.picker-progress{letter-spacing:1px;justify-content:center;gap:11px;margin-top:12px;font-size:14px;display:flex}.picker-progress>span:not(.done){opacity:.4}.picker-error{min-height:20px;margin-top:12px;font-size:18px;line-height:1.1;display:block}.picker-soft-note{letter-spacing:2px;font-size:17px}.custom-place{margin-top:17px;position:relative}.custom-place label{letter-spacing:1px;margin-bottom:6px;font-size:16px;display:block}.custom-place input{width:100%;min-height:44px;color:var(--ink);border:2px solid var(--ink);background:0 0;border-radius:0;padding:8px;font:22px LCD,monospace}.custom-place>span{text-align:right;margin-top:3px;font-size:14px;display:block}.custom-place input:focus-visible,.time-row input:focus-visible{outline:2px dashed var(--ink);outline-offset:3px}.lcd-calendar{--cell-size:42px;width:100%;margin:0 auto;padding:0;position:relative}.lcd-calendar .rdp-months,.lcd-calendar .rdp-month{width:100%;display:block;position:relative}.lcd-calendar .rdp-nav{pointer-events:none;justify-content:space-between;width:100%;height:42px;display:flex;position:absolute;top:0;left:0}.lcd-calendar .rdp-nav button{pointer-events:auto;justify-content:center;align-items:center;width:44px;height:42px;padding:0;font-size:20px;display:flex}.lcd-calendar .rdp-month_caption{text-align:center;justify-content:center;align-items:center;height:42px;margin-bottom:6px;display:flex}.lcd-calendar .rdp-caption_label{font-size:25px;font-weight:400}.lcd-calendar .rdp-month_grid{border-collapse:collapse;table-layout:fixed;width:100%}.lcd-calendar .rdp-weekday{opacity:.65;text-align:center;height:26px;font-size:16px;font-weight:400}.lcd-calendar .rdp-day{text-align:center;height:42px;padding:0;position:relative}.lcd-calendar .rdp-day button{background:0 0;border:2px solid #0000;border-radius:0;justify-content:center;align-items:center;width:100%;height:42px;padding:0;font:24px LCD,monospace;display:flex}.lcd-calendar .rdp-day button span{display:block}.lcd-calendar .rdp-selected button{background:var(--ink);color:var(--lcd)}.lcd-calendar .rdp-today:not(.rdp-selected) button{border-bottom:2px solid var(--ink)}.lcd-calendar .rdp-outside{opacity:.4}.lcd-calendar .rdp-disabled{opacity:.25}.lcd-calendar button:disabled{cursor:default}.lcd-calendar .rdp-hidden{visibility:hidden}.time-row{border-top:2px solid var(--ink);flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;padding-top:13px;display:flex}.time-row label{letter-spacing:1px;font-size:17px}.time-row input{border:2px solid var(--ink);color:var(--ink);background:0 0;border-radius:0;min-height:42px;padding:5px 7px;font:22px LCD,monospace}.time-hint{opacity:.7;font-size:13px}.picker-2{max-height:76%;top:11%}.picker-2 .picker-subtitle{margin-bottom:12px}.message-notification{z-index:3;text-align:center;width:min(450px,90%);position:absolute;top:24%;left:50%;transform:translate(-50%)}.message-alert{flex-direction:column;align-items:center;gap:24px;width:100%;padding:12px;display:flex}.pixel-envelope{width:74px;height:60px}.message-count{font-size:62px;line-height:.9}.message-from{letter-spacing:2px;font-size:18px}.message-alert .pixel-envelope{animation:.7s steps(2,end) 3 message-arrival}.message-alert:hover:not(:disabled){transform:none}.sms-scene{width:min(500px,90%);max-height:74%;padding:20px 22px;top:13%}.sms-scene:focus{outline:none}.sms-header{border-bottom:3px solid var(--ink);align-items:center;gap:13px;padding-bottom:10px;display:flex}.sms-header .pixel-envelope{width:30px;height:24px}.sms-header h1{margin:0;font-size:30px;font-weight:400}.sms-header>span{margin-left:auto;font-size:23px}.sms-sender{flex-wrap:wrap;align-items:baseline;gap:8px;margin:15px 0;font-size:23px;display:flex}.sms-sender strong{font-weight:400}.sms-label{opacity:.65;margin-left:auto;font-size:14px}.sms-body p{white-space:pre-wrap;overflow-wrap:anywhere}.sms-cursor{animation:1s step-end infinite pulse}.sms-bottom{border-top:2px solid var(--ink);letter-spacing:1px;justify-content:space-between;align-items:center;margin-top:18px;padding-top:10px;font-size:14px;display:flex}.sms-bottom button{min-height:36px;font-size:17px}.game-goal{text-align:center;margin-top:15px;font-size:17px}.state-date_details .date-grid dd{overflow-wrap:anywhere;max-width:320px}.state-date_details .scene{scrollbar-width:thin;scrollbar-color:var(--ink) var(--lcd);max-height:69%;overflow-y:auto}@keyframes message-arrival{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@media (orientation:portrait){.picker-scene{width:88%;max-height:70%;padding:12px 10px;top:16%}.picker-scene h1{font-size:31px}.picker-header{letter-spacing:1px;margin-bottom:15px;font-size:14px}.picker-subtitle{margin-bottom:20px;font-size:18px}.nokia-menu-row{gap:9px;min-height:48px;padding:10px 8px;font-size:23px}.picker-progress{gap:9px;font-size:13px}.picker-softkeys{left:5%;right:5%}.picker-softkeys button{font-size:29px}.picker-soft-note{letter-spacing:1px;font-size:14px}.picker-2{width:92%;max-height:76%;top:12%}.lcd-calendar .rdp-day,.lcd-calendar .rdp-day button{height:40px}.time-row{gap:9px}.time-row label{font-size:16px}.time-row input{font-size:21px}.time-hint{font-size:12px}.message-notification{top:28%}.message-count{font-size:58px}.message-from{font-size:16px}.sms-scene{width:90%;max-height:70%;padding:14px 16px;top:15%}.sms-body{min-height:315px;font-size:25px}.sms-sender{font-size:21px}.sms-label{font-size:12px}.sms-bottom{letter-spacing:0;font-size:12px}.state-date_details .date-grid{gap:6px 15px;font-size:23px}.state-date_details .date-grid dd{max-width:240px}.game-goal{font-size:15px}}@media (height<=720px) and (orientation:portrait){.picker-scene{max-height:70%;top:15%}.picker-2{max-height:73%;top:13%}.picker-header{margin-bottom:10px;padding-bottom:6px}.picker-subtitle{margin:8px 0 12px;font-size:17px}.picker-scene h1{font-size:28px}.nokia-menu-row{min-height:44px;padding:8px;font-size:22px}.picker-error{margin-top:8px;font-size:16px}.picker-progress{margin-top:6px}.picker-softkeys button{font-size:26px}.picker-soft-note{font-size:13px}.lcd-calendar .rdp-day,.lcd-calendar .rdp-day button{height:32px}.lcd-calendar .rdp-day button{font-size:22px}.lcd-calendar .rdp-weekday{height:22px}.lcd-calendar .rdp-month_caption,.lcd-calendar .rdp-nav,.lcd-calendar .rdp-nav button{height:34px}.lcd-calendar .rdp-caption_label{font-size:23px}.time-row{margin-top:8px;padding-top:8px}.time-hint{display:none}.custom-place{margin-top:12px}.sms-scene{max-height:70%;top:15%}.sms-body{min-height:270px;font-size:23px}.sms-sender{margin:10px 0}.sms-header{padding-bottom:7px}.sms-bottom{margin-top:10px}.state-date_details .date-grid{gap:4px 12px;font-size:20px;line-height:1}.state-date_details .date-grid dd{max-width:210px}}@media (height<=650px) and (orientation:landscape){.picker-scene{width:min(570px,72%);max-height:67%;padding:9px 18px;top:17%}.picker-header{margin-bottom:8px;padding-bottom:5px;font-size:14px}.picker-scene h1{font-size:29px}.picker-subtitle{margin:6px 0 12px;font-size:17px}.nokia-menu{grid-template-columns:1fr 1fr;gap:4px 10px;display:grid}.nokia-menu-row{gap:8px;min-height:42px;padding:7px;font-size:20px}.picker-2{width:min(650px,82%);max-height:68%;top:16%}.date-picker-content{grid-template-columns:1.3fr 1fr;gap:25px;display:grid}.lcd-calendar .rdp-day,.lcd-calendar .rdp-day button{height:26px}.lcd-calendar .rdp-day button{font-size:20px}.lcd-calendar .rdp-weekday{height:20px;font-size:14px}.lcd-calendar .rdp-month_caption,.lcd-calendar .rdp-nav,.lcd-calendar .rdp-nav button{height:28px}.lcd-calendar .rdp-caption_label{font-size:21px}.time-row{border:0;flex-direction:column;justify-content:center;align-items:flex-start;margin:0;padding:0;display:flex}.picker-error{margin-top:7px;font-size:16px}.picker-progress{margin-top:4px}.picker-softkeys button{font-size:29px}.sms-scene{width:65%;max-height:68%;padding:10px 20px;top:16%}.sms-header{padding-bottom:7px}.sms-body{min-height:0;font-size:23px}.sms-sender{margin:8px 0}.message-notification{top:23%}.message-count{font-size:44px}.message-alert{gap:12px}.message-alert .pixel-envelope{width:48px;height:39px}.message-from{font-size:15px}.game-goal{grid-area:5/2;margin:8px 0;font-size:15px}}@media (prefers-reduced-motion:reduce){.message-alert .pixel-envelope,.sms-cursor{animation:none}}.picker-scene{max-height:56%}.picker-2{max-height:59%}.sms-scene{max-height:57%}@media (orientation:portrait){.picker-scene{max-height:54%}.picker-2{max-height:58%}.sms-scene{max-height:56%}}@media (height<=650px) and (orientation:landscape){.picker-scene,.picker-2,.sms-scene{max-height:62%}}.lcd-calendar .rdp-week{display:table-row}.lcd-calendar td.rdp-day{width:14.2857%;display:table-cell}.lcd-calendar button.rdp-day{display:flex}.state-date_details .scene{background:var(--lcd);max-height:55%;padding:12px 10px}@media (orientation:portrait){.state-date_details .scene{max-height:52%;top:18%}}@media (height<=650px) and (orientation:landscape){.state-date_details .scene{max-height:64%}}.lcd{--header-height:100px;--text-shield:-2px -2px 0 var(--lcd), -1px -2px 0 var(--lcd), 0 -2px 0 var(--lcd), 1px -2px 0 var(--lcd), 2px -2px 0 var(--lcd), -2px -1px 0 var(--lcd), -1px -1px 0 var(--lcd), 0 -1px 0 var(--lcd), 1px -1px 0 var(--lcd), 2px -1px 0 var(--lcd), -2px 0 0 var(--lcd), -1px 0 0 var(--lcd), 1px 0 0 var(--lcd), 2px 0 0 var(--lcd), -2px 1px 0 var(--lcd), -1px 1px 0 var(--lcd), 0 1px 0 var(--lcd), 1px 1px 0 var(--lcd), 2px 1px 0 var(--lcd), -2px 2px 0 var(--lcd), -1px 2px 0 var(--lcd), 0 2px 0 var(--lcd), 1px 2px 0 var(--lcd), 2px 2px 0 var(--lcd);text-shadow:var(--text-shield)}.status-bar{top:max(16px, env(safe-area-inset-top));grid-template-columns:1fr minmax(130px,300px) 1fr;gap:clamp(6px,2vw,20px);height:65px;display:grid;left:4%;right:4%}.status-right{justify-self:end;gap:8px}.signal span{letter-spacing:1px;font-size:14px}.brand-logo{width:100%;height:58px;display:block;overflow:hidden}.scene,.picker-scene,.sms-scene,.message-alert{z-index:2;background:0 0;border:0;padding:18px 22px}.scene{top:max(var(--header-height), 17%);width:min(620px,90%);max-height:calc(72% - var(--header-height));overflow-y:auto}.scene h1{letter-spacing:0;font-size:clamp(42px,5.5vw,78px);line-height:1.15}.scene h1.small-title{font-size:clamp(32px,3.5vw,48px)}.scene .eyebrow{letter-spacing:2px;margin-bottom:16px;font-size:17px}.scene .notice{margin-top:12px;font-size:25px;line-height:1.2}.scene .invitation-heart{width:32px;height:30px;margin-top:18px}.scene .subcopy,.scene .achievement{font-size:25px;line-height:1.25}.scene .achievement strong{font-size:35px}.state-date_details .scene{top:max(var(--header-height), 16%);max-height:calc(75% - var(--header-height));padding:18px 22px}.picker-scene,.picker-2,.sms-scene{top:var(--header-height);max-height:calc(77% - var(--header-height));width:min(500px,92%)}.picker-header{letter-spacing:1px;gap:12px;font-size:15px}.picker-scene h1{font-size:32px}.picker-subtitle{font-size:21px;line-height:1.2}.nokia-menu-row{min-height:46px;font-size:24px;line-height:1.15}.confirm-hint{margin-top:14px;font-size:17px;line-height:1.2}.softkeys{gap:14px}.softkeys button{min-height:48px;line-height:1.1}.softkeys .confirm-button{background:var(--ink);color:var(--lcd);border:1px solid var(--ink);padding:12px 20px;font-size:29px;box-shadow:4px 4px #20351b55}.softkeys .confirm-button:disabled{opacity:.45}.picker-softkeys button{font-size:26px}.month-navigation{text-align:center;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;margin-bottom:6px;font-size:24px;display:grid}.month-navigation button{border:1px solid var(--ink);min-height:44px;font-size:21px}.month-navigation button:disabled{opacity:.25}.lcd-calendar .rdp-month_caption{display:none}.lcd-calendar .rdp-day,.lcd-calendar .rdp-day button{height:38px}.lcd-calendar .rdp-day button{font-size:24px}.time-row [data-slot=native-select-wrapper]{position:relative}.time-row select{appearance:none;border:1px solid var(--ink);font:inherit;color:var(--ink);background:var(--lcd);border-radius:0;width:100%;min-height:44px;padding:8px 30px 8px 12px;font-size:25px}.time-row [data-slot=native-select-icon]{pointer-events:none;width:16px;height:16px;position:absolute;top:calc(50% - 8px);right:8px}.time-row label{font-size:19px}.time-hint{font-size:13px}.message-notification{top:max(var(--header-height), 24%);width:min(450px,90%)}.message-alert{width:100%}.message-count{font-size:48px}.message-from{font-size:18px}.sms-body{min-height:0;font-size:26px;line-height:1.25}.sms-bottom{letter-spacing:0;font-size:15px}.sms-sender{font-size:23px}.state-love_snake .game-scene{top:var(--header-height);background:0 0;border:0;width:min(520px,92vw);padding:14px;bottom:12px;overflow:hidden}.nokia-menu-row.chosen,.lcd-calendar .rdp-selected button,.softkeys .confirm-button{text-shadow:none}.game-heading h1{font-size:36px;line-height:1.1}.game-heading .eyebrow{font-size:14px}.love-meter{margin:10px 0;font-size:19px}.game-area{flex-shrink:0;width:min(100%,500px,100dvh - 465px);height:auto;max-height:none}.game-controls{grid-template-columns:1fr auto 1fr;gap:12px;display:grid}.dpad{grid-template-rows:repeat(2,64px);grid-template-columns:repeat(3,64px);gap:6px}.dpad button{border-width:1px;min-width:64px;min-height:64px;font-size:30px}.game-controls>.text-button{overflow-wrap:anywhere;min-height:48px;font-size:19px}.game-feedback{font-size:19px;line-height:1.15}.game-goal{font-size:15px;line-height:1.2}.game-overlay{gap:10px}.game-overlay h2{font-size:27px}.game-overlay p{font-size:19px}@media (width<=1000px){.signal span{display:none}.status-bar{grid-template-columns:1fr minmax(150px,260px) 1fr;gap:14px}}@media (orientation:portrait){.lcd{--header-height:82px}.status-bar{height:58px;top:max(12px, env(safe-area-inset-top));grid-template-rows:58px;grid-template-columns:40px minmax(105px,1fr) auto;gap:5px;left:3%;right:3%}.brand-logo{grid-area:1/2;width:100%;height:52px}.status-right{grid-area:1/3;gap:3px}.status-right>.heart{display:none}.signal{transform-origin:50%;grid-area:1/1;height:39px;transform:scale(.72)}.sound-toggle{margin-right:0}.battery-label{display:none}.scene{top:max(var(--header-height), 23%);max-height:calc(76% - max(var(--header-height), 23%));width:88%;padding:16px}.scene h1{font-size:clamp(42px,12vw,66px);line-height:1.12}.scene h1.small-title{font-size:32px}.scene .eyebrow{letter-spacing:1px;margin-bottom:12px;font-size:15px}.scene .subcopy,.scene .achievement,.scene .notice{font-size:22px}.picker-scene,.picker-2,.sms-scene{max-height:calc(79% - var(--header-height));padding:14px}.picker-scene h1{font-size:29px}.picker-header{font-size:13px}.picker-subtitle{margin:10px 0;font-size:19px}.nokia-menu-row{padding:10px 8px;font-size:23px}.picker-softkeys{left:5%;right:5%}.picker-soft-note{max-width:110px;font-size:13px}.softkeys .confirm-button{padding:12px;font-size:25px}.picker-softkeys button{font-size:23px}.month-navigation{font-size:21px}.sms-body{font-size:24px}.sms-sender{flex-wrap:wrap;gap:7px;font-size:22px}.sms-label{font-size:13px}.message-count{font-size:44px}.state-date_details .date-grid{font-size:23px;line-height:1.15}.date-softkeys button{font-size:23px}.date-softkeys .replay{font-size:18px}.state-love_snake .game-scene{padding:10px}.game-area{width:min(100%,100dvh - 420px)}.game-controls{grid-template-columns:auto 1fr;gap:12px}.control-hint{display:none}.dpad{grid-template-rows:repeat(2,64px);grid-template-columns:repeat(3,64px)}.game-heading h1{font-size:32px}.game-feedback{font-size:17px}.game-goal{margin:6px 0 0;font-size:13px}}@media (height<=650px) and (orientation:portrait){.lcd{--header-height:74px}.status-bar{height:54px}.brand-logo{height:48px}.scene{top:var(--header-height);max-height:calc(77% - var(--header-height))}.scene h1{font-size:42px}.scene .invitation-heart{width:24px;height:22px;margin-top:10px}.scene .notice{font-size:20px}.game-area{width:min(100%,100dvh - 376px);min-width:180px}.game-overlay h2{font-size:22px}.game-overlay p{font-size:16px}.game-overlay>.heart,.game-heading .eyebrow{display:none}.game-heading h1{font-size:29px}.game-feedback{margin:6px 0}.game-goal{display:none}}@media (height<=650px) and (orientation:landscape){.lcd{--header-height:78px}.status-bar{grid-template-columns:1fr 230px 1fr;height:48px;top:10px}.scene{top:var(--header-height);max-height:calc(80% - var(--header-height));width:min(520px,70%);padding:12px 18px}.scene h1{font-size:35px}.scene h1.small-title{font-size:29px}.scene .eyebrow{margin-bottom:7px;font-size:13px}.scene .invitation-heart{width:20px;height:18px;margin-top:8px}.scene .notice,.scene .subcopy,.scene .achievement{font-size:20px}.picker-scene,.picker-2,.sms-scene{width:min(660px,83%);top:var(--header-height);max-height:calc(81% - var(--header-height))}.date-picker-content{grid-template-columns:1.5fr 1fr}.month-navigation{font-size:20px}.month-navigation button{min-height:40px}.lcd-calendar .rdp-day,.lcd-calendar .rdp-day button{height:32px}.state-love_snake .game-scene{grid-template-rows:auto auto 1fr;grid-template-columns:1fr 1.15fr;gap:6px 24px;width:min(740px,94%);display:grid}.game-area{grid-area:1/1/5;place-self:center;width:min(100%,100dvh - 115px);min-width:0}.game-heading{grid-area:1/2}.love-meter{grid-area:2/2;margin:3px 0}.game-controls{grid-area:3/2;grid-template-columns:auto 1fr}.control-hint,.game-feedback,.game-goal{display:none}.dpad{grid-template-rows:repeat(2,64px);grid-template-columns:repeat(3,64px)}.softkeys{bottom:10px}.softkeys button,.softkeys .confirm-button{min-height:42px;font-size:23px}}@media (orientation:portrait){.game-area{width:min(100%,100dvh - 455px)}.game-controls>.text-button{overflow-wrap:normal;min-width:0;padding:4px;font-size:16px}}@media (width<=460px){.sound-toggle{width:34px;height:40px;padding:7px}.battery{border-width:3px;gap:3px;width:52px;height:26px}.status-right>.heart{display:none}}@media (height<=650px) and (orientation:portrait){.game-area{width:min(100%,100dvh - 405px);min-width:180px}.love-meter{margin:6px 0}.game-feedback{min-height:20px;margin:5px 0}}.scene,.picker-scene,.sms-scene,.state-date_details .scene{scrollbar-width:none;overflow:hidden}.picker-scene,.picker-2,.sms-scene{top:var(--header-height);max-height:none;bottom:86px}.game-controls{grid-template-columns:1fr auto 1fr;width:100%}.game-controls .dpad{grid-column:2;justify-self:center}.game-controls>.text-button{grid-column:3;justify-self:end}@media (orientation:portrait){.picker-scene,.picker-2,.sms-scene{bottom:82px}.picker-2{flex-direction:column;min-height:0;display:flex}.date-picker-content,.calendar-section{min-height:0}.date-picker-content{flex-direction:column;flex:auto;display:flex}.lcd-calendar .rdp-day,.lcd-calendar .rdp-day button{height:clamp(30px,4.3dvh,38px)}.game-controls{grid-template-columns:1fr auto 1fr}}@media (height<=650px) and (orientation:portrait){.picker-scene,.picker-2,.sms-scene{padding-block:8px;bottom:72px}.picker-header{margin-bottom:6px}.picker-subtitle{margin:5px 0 7px}.nokia-menu-row{min-height:38px;padding-block:5px}.lcd-calendar .rdp-day,.lcd-calendar .rdp-day button{height:clamp(22px,4.3dvh,26px)}.lcd-calendar .rdp-weekday{height:18px}.month-navigation,.month-navigation button{min-height:30px}.time-row{margin-top:5px;padding-top:5px}.confirm-hint,.time-hint{display:none}.picker-error{min-height:16px;margin-top:3px}.picker-progress{margin-top:2px}}@media (height<=650px) and (orientation:landscape){.picker-scene,.picker-2,.sms-scene{top:var(--header-height);max-height:none;bottom:62px}.game-controls{grid-template-columns:1fr auto 1fr}}
