*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.5;overflow:hidden}input,textarea{font-size:16px}#root{width:100%;height:100dvh;overflow:hidden}button{font-family:inherit;cursor:pointer;border:none;background:none}:root{--sky-dawn: linear-gradient(180deg, #E3F2FD 0%, #BBDEFB 100%);--sky-morning: linear-gradient(180deg, #90CAF9 0%, #64B5F6 100%);--sky-afternoon: linear-gradient(180deg, #64B5F6 0%, #FFB74D 30%, #90CAF9 100%);--sky-sunset: linear-gradient(180deg, #FF8A65 0%, #FFB74D 40%, #CE93D8 100%);--sky-night: linear-gradient(180deg, #1A237E 0%, #283593 50%, #3949AB 100%);--bubble-base: rgba(255, 255, 255, .15);--bubble-border: rgba(255, 255, 255, .3);--bubble-glow: rgba(173, 216, 230, .4);--bubble-nearby: rgba(255, 255, 255, .25);--bubble-touched: rgba(173, 216, 230, .5);--text-primary: #1B2A4A;--text-secondary: #6B7280;--text-on-dark: #E3F2FD;--animation-duration: 3s;--transition-speed: .3s}@media(prefers-reduced-motion:reduce){:root{--animation-duration: 0s;--transition-speed: 0s}}.glass-panel{background:#ffffff2e;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);border-radius:16px;box-shadow:0 4px 24px #00000014,inset 0 1px #fff6}.bubble-text-glass{color:#1e325acc;text-shadow:0 1px 2px rgba(255,255,255,.6)}.bubble-text-dark{color:#dcebffeb;text-shadow:0 0 8px rgba(100,180,255,.4)}@keyframes float{0%,to{transform:translateY(0) translate(0)}33%{transform:translateY(-14px) translate(3px)}66%{transform:translateY(-6px) translate(-3px)}}@keyframes sway{0%,to{margin-left:0}50%{margin-left:5px}}@keyframes appear{0%{transform:scale(0);opacity:0}60%{transform:scale(1.08);opacity:.9}to{transform:scale(1);opacity:1}}@keyframes dissolve{0%{transform:scale(1);opacity:1}to{transform:scale(1.6);opacity:0}}@keyframes drift{0%{transform:translate(0) translateY(0) scale(1);opacity:.7}to{transform:translate(80px) translateY(-100px) scale(.5);opacity:0}}@keyframes twinkle{0%,to{opacity:.3}50%{opacity:1}}@keyframes float-small{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes glow-pulse{0%,to{box-shadow:0 0 12px 4px #add8e666,inset 0 0 8px #fff3}50%{box-shadow:0 0 20px 8px #add8e6b3,inset 0 0 12px #ffffff59}}@keyframes bubble-float{0%,to{transform:translateY(0) translate(0) rotate(0)}25%{transform:translateY(-12px) translate(5px) rotate(1deg)}50%{transform:translateY(-5px) translate(-3px) rotate(-.5deg)}75%{transform:translateY(-15px) translate(2px) rotate(.5deg)}}@keyframes bubble-float-active{0%,to{transform:translateY(0) translate(0) scale(1)}33%{transform:translateY(-10px) translate(6px) scale(1.02)}66%{transform:translateY(-18px) translate(-4px) scale(.98)}}@keyframes bubble-dissolve{0%{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.6;box-shadow:0 0 30px #fff6,0 0 60px #add8e64d}to{transform:scale(1.8);opacity:0;box-shadow:0 0 50px #fff3,0 0 100px #add8e61a}}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.bubble-item{position:absolute;border-radius:50%;cursor:pointer;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.5) 0%,rgba(255,255,255,.15) 20%,rgba(173,216,230,.1) 40%,rgba(200,170,255,.05) 60%,rgba(255,255,255,.08) 80%,transparent 100%);border:1px solid rgba(255,255,255,.24);outline:1px solid rgba(255,255,255,.12);outline-offset:0;box-shadow:inset 0 0 20px #ffffff26,inset -5px -5px 15px #c8aaff14,0 0 14px #ffffff24,0 4px 16px #7891b414;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);animation:bubble-float var(--float-duration, 4s) ease-in-out infinite var(--float-delay, 0s);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;overflow:hidden;transition:transform .2s ease,box-shadow .3s ease;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.bubble-repeat-infinity{position:relative;z-index:2;font-size:clamp(22px,22%,25px);line-height:1;color:#3c5082a6;text-shadow:0 0 8px rgba(255,255,255,.8),0 0 4px rgba(255,255,255,.5);letter-spacing:-.02em;pointer-events:none;flex-shrink:0;font-weight:500;font-family:serif}.bubble-item:before{content:"";position:absolute;top:12%;left:18%;width:25%;height:20%;background:radial-gradient(ellipse,rgba(255,255,255,.7) 0%,rgba(255,255,255,.2) 50%,transparent 70%);border-radius:50%;pointer-events:none}.bubble-item:after{content:"";position:absolute;bottom:15%;right:15%;width:30%;height:15%;background:linear-gradient(135deg,#ffb4c826,#b4c8ff26,#b4ffc81a);border-radius:50%;filter:blur(2px);pointer-events:none}.bubble-text{line-height:1.3;color:#323250bf;text-align:center;padding:0 5px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:88%;word-break:break-all;font-weight:500;text-shadow:0 0 8px rgba(255,255,255,.5);position:relative;z-index:1}.sky-view--night .bubble-text{color:#f0f6fff5;text-shadow:0 0 6px rgba(80,150,255,.65),0 0 2px rgba(255,255,255,.5)}.sky-view--night .bubble-repeat-infinity{color:#c8dcff80;text-shadow:0 0 8px rgba(150,180,255,.5)}.sky-view--night .bubble-item{box-shadow:inset 0 0 20px #ffffff2e,inset -5px -5px 15px #c8aaff14,0 0 16px #ffffff29,0 4px 16px #7891b41a}.sky-view--night .bubble-item--nearby .bubble-text{color:#fffaf0fa;text-shadow:0 0 8px rgba(110,196,255,.92),0 0 2px rgba(255,255,255,.7)}.bubble-item:active{transform:scale(.95)}.bubble-item--dragging{animation:none!important;cursor:grabbing!important;transform:scale(1.08)!important;box-shadow:inset 0 0 24px #ffffff38,0 0 0 2px #ffffff4d,0 8px 28px #64a0ff47,0 2px 8px #0000000f!important;z-index:50!important;transition:box-shadow .15s ease}.bubble-item:not(.bubble-item--dragging){cursor:grab}.bubble-item--floating{opacity:.88}.bubble-item--nearby{background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.6) 0%,rgba(255,255,255,.22) 20%,rgba(166,226,255,.18) 40%,rgba(96,182,255,.12) 60%,rgba(255,255,255,.12) 80%,transparent 100%);box-shadow:inset 0 0 25px #fff3,inset -5px -5px 15px #6eb0ff1f,0 0 0 3px #6ac4ff3d,0 0 20px #6ac4ff52,0 0 0 4px #8ed6ff3d,0 0 40px #58aaff2e;outline:1px solid rgba(166,226,255,.24);filter:saturate(1.08) brightness(1.04);opacity:1;z-index:18;animation:bubble-float-active var(--float-duration, 3s) ease-in-out infinite var(--float-delay, 0s)}.bubble-item--colored{outline:1.5px solid var(--bubble-color-border, rgba(180, 220, 255, .24));box-shadow:inset 0 0 20px #ffffff26,inset -5px -5px 15px #c8aaff14,0 0 0 1px #ffffff14,0 0 12px var(--bubble-color-glow, rgba(173, 216, 230, .16)),0 4px 16px var(--bubble-color-shadow, rgba(100, 160, 220, .1))}.bubble-item--repeat{outline-style:dashed;outline-width:1px}.bubble-item--nearby.bubble-item--colored{box-shadow:inset 0 0 25px #fff3,inset -5px -5px 15px #6eb0ff1f,0 0 0 2px #ffffff14,0 0 14px var(--bubble-color-glow, rgba(106, 196, 255, .18)),0 0 28px var(--bubble-color-shadow, rgba(88, 170, 255, .12));outline-color:var(--bubble-color-border, rgba(166, 226, 255, .24))}.bubble-item--nearby:before{top:-6%;left:-6%;width:112%;height:112%;background:radial-gradient(ellipse,rgba(176,232,255,.26) 0%,rgba(96,182,255,.14) 45%,transparent 72%);filter:blur(3px)}.bubble-item--nearby:after{bottom:10%;right:10%;background:linear-gradient(135deg,#b0e8ff3d,#7cc6ff38,#eaf7ff29)}.bubble-item--completed{animation:bubble-dissolve 1.2s ease-out forwards;pointer-events:none}.bubble-item--highlighted{outline:2px solid rgba(120,210,255,.45);filter:saturate(1.15) brightness(1.05);box-shadow:0 0 0 2px var(--bubble-color-border, rgba(120, 210, 255, .45)),0 0 0 3px #64b5f6b3,0 0 36px 14px #64b5f685,inset 0 0 12px #ffffff52;animation:bubble-float var(--float-duration, 4s) ease-in-out infinite var(--float-delay, 0s),highlight-pulse 4.5s ease-out forwards}.bubble-item--highlighted:before{top:-7%;left:-7%;width:114%;height:114%;background:radial-gradient(ellipse,rgba(105,190,255,.45) 0%,rgba(105,190,255,.2) 42%,transparent 74%);filter:blur(4px);opacity:1}.bubble-item--highlighted:after{bottom:8%;right:8%;background:linear-gradient(135deg,#ffffff4d,#b4dcff57,#78d2ff42)}@keyframes highlight-pulse{0%{box-shadow:0 0 0 4px #64b5f6e6,0 0 40px 14px #64b5f6b3}55%{box-shadow:0 0 0 4px #64b5f6d1,0 0 42px 16px #64b5f69e,inset 0 0 18px #ffffff38}to{box-shadow:0 0 0 3px #64b5f66b,0 0 22px 8px #64b5f647,inset 0 0 16px #ffffff2e,inset -5px -5px 15px #c8aaff14}}.bubble-item--focused{z-index:30;outline:2px solid rgba(255,255,255,.38);box-shadow:0 0 0 4px #ffffff38,0 0 0 2px #ffffff2e,0 0 42px 14px #64b5f642,inset 0 0 18px #ffffff38,inset -5px -5px 15px #c8aaff14;filter:saturate(1.08) brightness(1.06)}.bubble-input-wrap{flex:1;display:flex;align-items:center;gap:8px;height:48px;background:#ffffff59;border-radius:24px;border:1px solid rgba(255,255,255,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:0 6px 0 18px;margin-right:12px;transition:background .2s,border-color .2s}.bubble-input-wrap:focus-within{background:#ffffff80;border-color:#ffffffbf}.bubble-input-field{flex:1;background:none;border:none;outline:none;font-size:16px;color:var(--text-primary);font-family:inherit;line-height:1}.bubble-input-field::placeholder{color:var(--text-secondary)}@media(max-width:768px){.bubble-input-field{font-size:16px}}.bubble-input-submit{width:36px;height:36px;border-radius:50%;background:#ffffff8c;border:1px solid rgba(255,255,255,.7);display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;flex-shrink:0;transition:background .15s,transform .15s;color:var(--text-primary);line-height:1}.bubble-input-submit[data-has-label=true]{width:auto;min-width:74px;padding:0 14px;border-radius:999px;font-size:13px;font-weight:700}.bubble-input-submit:hover{background:#ffffffbf}.bubble-input-submit:active{transform:scale(.92)}.bubble-input-submit:disabled{opacity:.4;cursor:not-allowed}.sky-view--night .bubble-input-wrap{background:#ffffff70;border-color:#ffffffb8}.sky-view--night .bubble-input-wrap:focus-within{background:#ffffff8f;border-color:#ffffffe0}.sky-view--night .bubble-input-field{color:#1a264ee6}.sky-view--night .bubble-input-field::placeholder{color:#3f527bc7}.sky-view--night .bubble-input-submit{background:#ffffffb8;border-color:#ffffffe0;color:#24365ff2}.sky-view--night .bubble-input-submit:hover{background:#ffffffe0}.bubble-limit-msg{flex:1;font-size:13px;color:var(--text-secondary);text-align:center;padding:0 12px;line-height:1.4}.bubble-detail-overlay{position:fixed;inset:0;background:#6482b440;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:flex-end;justify-content:center;z-index:100;padding-bottom:16px}.bubble-detail-card{width:min(420px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;background:#ffffffb3;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:24px 24px 20px 20px;border:1px solid rgba(255,255,255,.8);box-shadow:0 -4px 32px #648cc833;padding:28px 20px;display:flex;flex-direction:column;gap:18px;position:relative}.bubble-detail-close-top{position:absolute;top:14px;right:14px;width:30px;height:30px;border:none;border-radius:50%;background:#0000000d;color:#5a697deb;font:inherit;font-size:16px;cursor:pointer}.bubble-detail-handle{width:36px;height:4px;background:#6478a040;border-radius:2px;margin:0 auto -6px}.bubble-detail-text-input{width:100%;padding-right:40px;margin-top:4px;border:none;background:transparent;font:inherit;font-size:18px;font-weight:600;color:var(--text-primary);line-height:1.5;outline:none;box-sizing:border-box}.bubble-detail-memo{width:100%;min-height:60px;background:#ffffff80;border:1px solid rgba(180,200,230,.4);border-radius:12px;padding:12px;font-size:16px;color:var(--text-primary);font-family:inherit;resize:none;max-height:200px;outline:none;line-height:1.5;transition:border-color .2s;box-sizing:border-box}.bubble-detail-memo::placeholder{color:var(--text-secondary)}.bubble-detail-memo:focus{border-color:#64b5f699}@media(max-width:768px){.bubble-detail-memo{font-size:16px}}.bubble-detail-color-section{display:flex;flex-direction:column;gap:10px;margin-top:2px}.bubble-detail-section-label{margin:0;font-size:12px;color:var(--text-secondary)}.bubble-detail-colors{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.bubble-detail-color{height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.72);padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 1px 2px #fff6;transition:transform .15s,box-shadow .15s,border-color .15s}.bubble-detail-color:active{transform:scale(.96)}.bubble-detail-color--active{border-color:#fffffff2;box-shadow:0 0 0 2px #ffffffa8,0 0 14px #64b5f61f}.bubble-detail-color-dot{width:10px;height:10px;border-radius:50%;background:#ffffffe6;box-shadow:0 0 8px #ffffff73}.bubble-detail-color--none{background:#ffffff73;color:var(--text-primary);font-size:11px;letter-spacing:.04em}.bubble-detail-color--none .bubble-detail-color-dot{display:none}.bubble-detail-color-name{margin:0;font-size:12px;color:var(--text-secondary)}.bubble-detail-date{font-size:11px;color:var(--text-secondary)}.bubble-detail-actions{display:flex;flex-direction:column;gap:14px}.bubble-detail-chip-row{display:flex;flex-wrap:wrap;gap:10px}.bubble-detail-toggle{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:1px solid rgba(150,170,200,.28);background:#ffffff73;color:#46556eeb;font:inherit;font-size:13px;cursor:pointer;transition:background .15s,border-color .15s,transform .15s}.bubble-detail-toggle:active{transform:scale(.97)}.bubble-detail-toggle--active{background:#64b5f62e;border-color:#64b5f659;color:#24568cf5}.bubble-detail-toggle--today.bubble-detail-toggle--active{background:#84cbff33;border-color:#6ac4ff70;color:#1e609bf5}.bubble-detail-toggle-icon{font-size:14px;line-height:1}.bubble-detail-repeat-note{margin:-2px 0 0;font-size:12px;color:#5a697dc7}.bubble-detail-btn{width:100%;padding:14px;border-radius:16px;font-weight:600;cursor:pointer;border:none;transition:opacity .15s,transform .15s;font-family:inherit;font-size:16px;display:flex;align-items:center;justify-content:center;gap:10px}.bubble-detail-btn:active{transform:scale(.97);opacity:.85}.bubble-detail-btn--lagoon{background:#233a762e;color:#1f447efa;border:1px solid rgba(106,196,255,.34);justify-content:flex-start;text-align:left}.bubble-detail-btn-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#ffffff75}.bubble-detail-btn-copy{display:flex;flex-direction:column;gap:2px}.bubble-detail-btn-title{font-size:15px;font-weight:700;line-height:1.3}.bubble-detail-btn-subtitle{font-size:12px;font-weight:500;line-height:1.4;color:#2e528ac2}.bubble-detail-btn--done{background:#66bb6ad9;color:#fff;border:1px solid rgba(76,175,80,.6)}.bubble-detail-btn--today{flex:1;padding:14px 10px;border-radius:16px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;background:#ffffff80;color:var(--text-secondary);border:1px solid rgba(180,200,220,.5);transition:opacity .15s,transform .15s}.bubble-detail-btn--today:active{transform:scale(.97);opacity:.8}.bubble-detail-btn--today-done{background:#c8dcc84d;color:#508c50b3;border:1px solid rgba(150,200,150,.3);cursor:default;opacity:.85}.bubble-detail-delete-area{text-align:center;padding-top:8px}.bubble-detail-delete-link{font-size:12px;color:#bbb;background:none;border:none;cursor:pointer;font-family:inherit;padding:4px 8px;text-decoration:underline;text-underline-offset:2px}.bubble-detail-delete-confirm{background:#fff0f0cc;border:1px solid rgba(239,83,80,.2);border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.bubble-detail-delete-confirm-text{font-size:12px;color:#666;line-height:1.5;margin:0}.bubble-detail-delete-confirm-btns{display:flex;gap:8px;justify-content:flex-end}.bubble-detail-delete-cancel{font-size:13px;color:var(--text-secondary);background:#0000000d;border:none;cursor:pointer;padding:6px 14px;border-radius:10px;font-family:inherit}.bubble-detail-delete-ok{font-size:13px;color:#fff;background:#ef5350;border:none;cursor:pointer;padding:6px 16px;border-radius:10px;font-family:inherit;font-weight:600}.bubble-search-overlay{position:fixed;inset:0;background:#506ea033;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:150}.bubble-search-panel{position:fixed;bottom:0;left:0;right:0;z-index:151;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:24px 24px 0 0;border-top:1px solid rgba(200,220,240,.6);box-shadow:0 -8px 40px #5078b426;padding:12px 0 32px;max-height:70vh;display:flex;flex-direction:column}.bubble-search-handle{width:36px;height:4px;background:#6478a040;border-radius:2px;margin:0 auto 14px}.bubble-search-title{font-size:13px;font-weight:500;color:var(--text-secondary);letter-spacing:.06em;padding:0 20px 10px;border-bottom:1px solid rgba(180,200,220,.2)}.bubble-search-list{flex:1;overflow-y:auto;padding:8px 0;-webkit-overflow-scrolling:touch}.bubble-search-empty{padding:24px 20px;font-size:14px;color:var(--text-secondary);text-align:center}.bubble-search-item{width:100%;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border:none;background:none;text-align:left;cursor:pointer;font-family:inherit;border-bottom:1px solid rgba(180,200,220,.12);transition:background .12s;gap:12px}.bubble-search-item:last-child{border-bottom:none}.bubble-search-item:active{background:#64b5f614}.bubble-search-item-text{font-size:15px;color:var(--text-primary);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bubble-search-item-meta{font-size:11px;color:var(--text-secondary);white-space:nowrap;display:flex;align-items:center;gap:4px;flex-shrink:0}.bubble-search-keep-mark{font-size:11px;color:#64a0dcb3}.ym-wrap{position:relative;width:100%;height:100%;display:flex;flex-direction:column;overflow:hidden;background:#f6faff61;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.ym-hint-overlay{position:absolute;left:50%;bottom:18px;transform:translate(-50%);pointer-events:none;z-index:6}.ym-hint-text{font-size:13px;color:#ffffffbf;opacity:0;letter-spacing:.04em;text-align:center;text-shadow:0 1px 8px rgba(0,0,0,.18);animation:ym-hint-fade 3.5s ease-in-out forwards}.ym-year-label{flex-shrink:0;font-size:12px;font-weight:400;color:var(--text-secondary);letter-spacing:.08em;opacity:.65;padding:12px 16px 8px;text-align:center}.ym-scroll{flex:1;overflow:auto;-webkit-overflow-scrolling:touch}.ym-table{border-collapse:collapse;width:max-content;min-width:100%}.ym-th{position:sticky;top:0;background:#f6faff61;z-index:2;padding:0 0 8px;border-bottom:1px solid rgba(100,160,220,.12)}.ym-th-name{position:sticky;left:0;z-index:3;width:180px;min-width:180px;max-width:180px}.ym-th-month{font-size:11px;font-weight:400;color:var(--text-secondary);opacity:.65;text-align:center;width:32px;min-width:32px;letter-spacing:0;white-space:nowrap}.ym-th-month--current{opacity:1;font-weight:700;color:#4fc3f7;position:relative}.ym-month-btn{background:transparent;border:none;font-family:inherit;font-size:inherit;font-weight:inherit;color:inherit;cursor:pointer;padding:4px 6px;border-radius:8px;transition:background .15s,transform .1s;display:inline-block;line-height:1}.ym-month-btn:active{background:#64a0dc26;transform:scale(.95)}.ym-row:not(:last-child) .ym-td{border-bottom:1px solid rgba(100,160,220,.06)}.ym-row:hover .ym-td-name,.ym-row:hover .ym-td{background-color:#64b4f012;transition:background-color .15s ease}.ym-td{padding:6px 0;vertical-align:middle}.ym-td-name{position:sticky;left:0;background:#f6faff61;z-index:1;padding-right:0;padding-left:14px;width:180px;min-width:180px;max-width:180px;overflow:hidden}.ym-bubble-text-button{width:100%;display:block;padding:0;margin:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.ym-bubble-text-button--hint{animation:ym-bubble-hint-pulse 1.2s ease-in-out 2 .5s;transform-origin:left center}.ym-bubble-text{display:block;font-size:13px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px;line-height:1.4}.ym-td-dot{text-align:center;width:32px;min-width:32px}.ym-td-dot--current-col{background:#4fc3f712}.ym-dot{width:16px;height:16px;border-radius:50%;background:#64a0dc33;margin:0 auto;transition:transform .15s ease}.ym-dot--future{background:transparent;border:1.5px dashed rgba(100,160,220,.2);width:14px;height:14px}.ym-dot--active{background:radial-gradient(circle at 40% 35%,#b3e5fc,#4fc3f7);box-shadow:0 0 6px 2px #4fc3f755;animation:ym-dot-pulse 2.4s ease-in-out infinite;width:20px;height:20px}.ym-detail-overlay{position:absolute;inset:0;background:#0a142852;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10;padding:20px}.ym-detail-card{background:#dceeff8c;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.55);border-radius:20px;padding:20px 20px 16px;width:min(360px,92vw);box-shadow:0 8px 32px #00286426;display:flex;flex-direction:column;gap:14px}.ym-detail-text{margin:0;font-size:15px;line-height:1.7;color:var(--text-primary);word-break:break-word}.ym-detail-actions{display:flex;justify-content:flex-end}.ym-detail-confirm{display:flex;flex-direction:column;gap:10px}.ym-detail-confirm-label{font-size:13px;font-weight:600;color:var(--text-primary);text-align:center;opacity:.8}.ym-detail-confirm-actions{display:flex;gap:8px;justify-content:flex-end}.ym-detail-cancel{font-size:13px;color:#3c78b4d9;background:#64a0dc1f;border:1px solid rgba(100,160,220,.25);cursor:pointer;padding:7px 14px;border-radius:10px;font-family:inherit;font-weight:500;transition:background .15s ease}.ym-detail-cancel:hover{background:#64a0dc38}.ym-detail-delete{align-self:flex-end;font-size:13px;color:#fff;background:#ef5350;border:none;cursor:pointer;padding:7px 18px;border-radius:10px;font-family:inherit;font-weight:600;transition:background .15s ease,transform .1s ease}.ym-detail-delete:hover{background:#e53935;transform:scale(1.03)}.ym-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--text-secondary);opacity:.65}@keyframes ym-hint-fade{0%{opacity:0}14%{opacity:.75}71%{opacity:.75}to{opacity:0}}@keyframes ym-bubble-hint-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.3)}}@keyframes ym-dot-pulse{0%,to{box-shadow:0 0 6px 2px #4fc3f755;transform:scale(1)}50%{box-shadow:0 0 10px 4px #4fc3f788;transform:scale(1.12)}}.monthly-view-wrapper{position:absolute;inset:0;display:flex;flex-direction:column;padding:16px;overflow-y:auto;-webkit-overflow-scrolling:touch}.monthly-header{display:flex;justify-content:space-between;align-items:center;padding:16px 8px 24px}.monthly-title{font-size:18px;font-weight:500;color:#1e2d46e6;letter-spacing:.05em}.monthly-nav-btn{background:#ffffff80;border:1px solid rgba(130,160,200,.3);color:#2d4464cc;width:40px;height:40px;border-radius:50%;font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,transform .1s}.monthly-nav-btn:active{background:#fffc;transform:scale(.95)}.monthly-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:8px}.monthly-weekday{text-align:center;font-size:11px;color:#506482b3;font-weight:500;padding:8px 0}.monthly-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.monthly-cell{aspect-ratio:1 / 1;border-radius:8px;border:1px solid rgba(255,255,255,.15);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0;background:transparent;cursor:pointer;position:relative;overflow:hidden;transition:transform .1s}.monthly-cell:active{transform:scale(.92)}.monthly-cell--empty{border:none;background:transparent;cursor:default}.monthly-cell--unclickable{cursor:default;opacity:.8}.monthly-cell--unclickable:active{transform:none}.monthly-cell--future{opacity:.45}.monthly-cell-date{position:absolute;top:4px;right:5px;font-size:11px;font-weight:500;color:#fffffff2;text-shadow:0 1px 3px rgba(0,30,60,.5);z-index:2}.monthly-cell-dot{width:5px;height:5px;background:#fffffff2;border-radius:50%;position:absolute;bottom:8px;box-shadow:0 0 3px #0000004d;z-index:2}.sky-cell--default-dawn{background:var(--sky-dawn);border-color:#fff3}.sky-cell--dawn{background:var(--sky-dawn)}.sky-cell--morning{background:var(--sky-morning)}.sky-cell--afternoon{background:var(--sky-afternoon)}.sky-cell--sunset{background:var(--sky-sunset)}.sky-cell--night{background:var(--sky-night)}.daily-sky-wrapper{position:fixed;inset:0;z-index:200;display:flex;flex-direction:column;overflow:hidden;transition:background .6s ease}.sky-daily--dawn{background:var(--sky-dawn)}.sky-daily--morning{background:var(--sky-morning)}.sky-daily--afternoon{background:var(--sky-afternoon)}.sky-daily--sunset{background:var(--sky-sunset)}.sky-daily--night{background:var(--sky-night)}.daily-sky-wrapper.sky-daily--dawn .daily-sky-top-bar,.daily-sky-wrapper.sky-daily--morning .daily-sky-top-bar{background:#ffffff47;border-bottom-color:#5a82aa1f}.daily-sky-wrapper.sky-daily--dawn .daily-sky-close-x-top,.daily-sky-wrapper.sky-daily--morning .daily-sky-close-x-top{background:#fff9;color:#2d4464eb}.daily-sky-wrapper.sky-daily--dawn .daily-sky-tabs .daily-sky-tab,.daily-sky-wrapper.sky-daily--morning .daily-sky-tabs .daily-sky-tab{color:#2d4464b3}.daily-sky-wrapper.sky-daily--dawn .daily-sky-tabs .daily-sky-tab--active,.daily-sky-wrapper.sky-daily--morning .daily-sky-tabs .daily-sky-tab--active{color:#233754f5;border-bottom-color:#2337548c}.daily-sky-wrapper.sky-daily--dawn .day-panel-date,.daily-sky-wrapper.sky-daily--morning .day-panel-date{color:#233754e0;text-shadow:none}.daily-sky-wrapper.sky-daily--dawn .day-nav,.daily-sky-wrapper.sky-daily--morning .day-nav{background:#ffffff8c;border-color:#5a82aa38;color:#2d4464e6}.daily-sky-wrapper.sky-daily--dawn .day-panel-empty p,.daily-sky-wrapper.sky-daily--morning .day-panel-empty p,.daily-sky-wrapper.sky-daily--dawn .day-cylinder-empty p,.daily-sky-wrapper.sky-daily--morning .day-cylinder-empty p{color:#2d4464d1;text-shadow:none}.daily-sky-wrapper.sky-daily--dawn .day-bubble-text,.daily-sky-wrapper.sky-daily--morning .day-bubble-text{color:#203252e0;text-shadow:0 1px 3px rgba(255,255,255,.4)}.daily-sky-wrapper.sky-daily--dawn .day-popup,.daily-sky-wrapper.sky-daily--morning .day-popup{background:#ffffffeb;border-color:#5a82aa33}.daily-sky-wrapper.sky-daily--dawn .day-popup-text,.daily-sky-wrapper.sky-daily--morning .day-popup-text{color:#233754f2}.daily-sky-wrapper.sky-daily--dawn .day-popup-memo,.daily-sky-wrapper.sky-daily--morning .day-popup-memo{color:#324664c7;background:#0000000a;border-color:#0000000f}.daily-sky-wrapper.sky-daily--dawn .day-popup-date,.daily-sky-wrapper.sky-daily--morning .day-popup-date{color:#3c506e99}.daily-sky-wrapper.sky-daily--dawn .day-popup-close,.daily-sky-wrapper.sky-daily--morning .day-popup-close{background:#0000000f;border-color:#0000001a;color:#233754e0}.daily-sky-wrapper.sky-daily--dawn .day-bubble-check,.daily-sky-wrapper.sky-daily--morning .day-bubble-check{color:#2d4464d1}.daily-sky-wrapper.sky-daily--dawn .daily-sky-footer,.daily-sky-wrapper.sky-daily--morning .daily-sky-footer{background:#ffffff3d;border-top-color:#5a82aa1f}.daily-sky-wrapper.sky-daily--dawn .daily-sky-close-btn,.daily-sky-wrapper.sky-daily--morning .daily-sky-close-btn{background:#ffffffb3;border-color:#5a82aa33;color:#233754f0}.daily-sky-wrapper.sky-daily--dawn .daily-sky-close-btn:active,.daily-sky-wrapper.sky-daily--morning .daily-sky-close-btn:active{background:#ffffffe0}.daily-sky-top-bar{flex-shrink:0;display:flex;flex-direction:column;align-items:stretch;background:#00000014;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.12)}.daily-sky-close-x-top{align-self:flex-end;margin:10px 14px 2px;width:32px;height:32px;border-radius:50%;background:#fff3;border:none;display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1;cursor:pointer;color:#ffffffe6}.daily-sky-close-x-top:active{background:#ffffff59}.daily-sky-tabs{display:flex;justify-content:center;gap:0;padding:0 20px}.daily-sky-tab{flex:1;max-width:160px;padding:8px 12px;border:none;background:none;font-size:13px;color:#fff9;cursor:pointer;font-family:inherit;letter-spacing:.03em;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}.daily-sky-tab--active{color:#fff;border-bottom-color:#ffffffb3}.daily-sky-content-area{flex:1;overflow:hidden;position:relative}.daily-sky-today-area{width:100%;height:100%;position:relative;overflow:hidden}.daily-sky-panel{width:100%;height:100%;display:flex;flex-direction:column;background:transparent}.day-panel-header{flex-shrink:0;display:flex;align-items:center;padding:20px 12px 16px;gap:8px}.day-panel-header-center{flex:1;text-align:center;display:flex;flex-direction:column;align-items:center;gap:3px}.day-panel-date{font-size:16px;font-weight:400;color:#ffffffe6;letter-spacing:.06em;text-shadow:0 1px 6px rgba(0,30,80,.25);margin:0}.day-panel-note{margin:0;font-size:11px;line-height:1.4;color:#ffffffad;letter-spacing:.03em;text-shadow:0 1px 4px rgba(0,30,80,.18)}.day-nav{width:36px;height:36px;border-radius:50%;background:#ffffff2e;border:1px solid rgba(255,255,255,.3);color:#ffffffe6;font-size:20px;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);flex-shrink:0;transition:background .15s}.day-nav:disabled{opacity:.2;cursor:default}.day-nav:not(:disabled):active{background:#ffffff59}.day-panel-scroll-wrapper{position:relative;flex:1;overflow:hidden}.day-panel-scroll{position:absolute;inset:0;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.day-panel-scroll::-webkit-scrollbar{display:none}.day-panel-inner{position:relative;min-height:100%}.day-cylinder-stage{position:relative;width:100%;min-height:100%;display:flex;justify-content:center;align-items:flex-end;padding:0;box-sizing:border-box}.day-jar{position:relative;width:min(72vw,320px);min-height:320px;border-radius:12px 12px 48px 48px;overflow:hidden;border:2px solid rgba(255,255,255,.48);border-top:2px solid rgba(255,255,255,.55);background:#ffffff1a;box-shadow:inset 0 0 0 1px #ffffff2e,inset 0 20px 40px #ffffff1f,inset 0 -20px 40px #2846781f,0 16px 48px #14284633,0 4px 12px #1428461a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.day-jar:before{content:"";position:absolute;top:0;left:-2px;right:-2px;height:14px;border-radius:12px 12px 0 0;background:linear-gradient(180deg,#ffffff85,#ffffff38);border-bottom:1px solid rgba(255,255,255,.3);box-shadow:0 2px 8px #ffffff1a;z-index:20}.day-jar:after{content:"";position:absolute;bottom:0;left:10%;right:10%;height:40px;border-radius:0 0 40px 40px;background:radial-gradient(ellipse at 50% 100%,rgba(255,255,255,.18),transparent 70%);pointer-events:none;z-index:20}.day-jar-bubbles{position:absolute;inset:14px 0 0;z-index:12}.day-jar-bubble-pos{position:absolute;transform:translate(-50%)}.day-jar-glass{position:absolute;inset:14px 0 0;background:linear-gradient(90deg,rgba(255,255,255,.28) 0%,rgba(255,255,255,.04) 18%,transparent 30%,transparent 70%,rgba(255,255,255,.04) 82%,rgba(255,255,255,.14) 100%);pointer-events:none;z-index:10}.day-jar-glass:before{content:"";position:absolute;top:0;bottom:0;left:14%;width:8%;border-radius:999px;background:linear-gradient(180deg,#ffffff61,#ffffff0f 80%);filter:blur(2px)}.day-jar-glass:after{content:"";position:absolute;top:0;bottom:0;right:16%;width:5%;background:linear-gradient(180deg,rgba(255,255,255,.14),transparent 60%)}.day-jar-liquid{position:absolute;left:4%;right:4%;bottom:0;height:16%;max-height:60px;border-radius:50% 50% 44px 44px/14px 14px 44px 44px;background:linear-gradient(180deg,#50bed238,#3282aa29 50%,#1e508233),radial-gradient(circle at 50% 0%,rgba(255,255,255,.28),transparent 65%);box-shadow:inset 0 8px 14px #ffffff1f,inset 0 -10px 18px #0a2d5f24;pointer-events:none;z-index:2}.day-cylinder-stage--empty{align-items:center;min-height:100%}.day-cylinder-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:28px 20px 44px;z-index:5}.day-cylinder-empty p{margin:0;font-size:13px;color:#e1e8ffd6;text-align:center;letter-spacing:.04em;text-shadow:0 1px 8px rgba(0,15,45,.34)}.day-sky-stage{position:relative;width:100%;min-height:100%;overflow:hidden;background:transparent}.day-sky-stage--empty{min-height:100%}.day-sky-background-stars{position:absolute;inset:0;min-height:100%;pointer-events:none;z-index:0}.day-sky-background-star{position:absolute;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,255,255,.92) 0%,rgba(255,255,255,.74) 35%,rgba(210,224,255,.28) 70%,transparent 100%);box-shadow:0 0 4px #ffffff2e,0 0 8px #d2e0ff14}.day-sky-stars{position:relative;width:100%;min-height:100%;z-index:2}.day-sky-star-pos{position:absolute;transform:translate(-50%,-50%)}.day-star{position:relative;width:100%;height:100%;padding:0;border:none;border-radius:50%;opacity:var(--star-opacity, .8);background:#fffffffa;box-shadow:0 0 4px 2px var(--star-glow-strong, rgba(255, 206, 89, .8)),0 0 12px 6px var(--star-glow-soft, rgba(255, 206, 89, .3));cursor:pointer;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease;-webkit-tap-highlight-color:transparent;animation:day-star-twinkle var(--twinkle-duration, 3s) ease-in-out infinite var(--twinkle-delay, 0s);will-change:opacity,transform}.day-star:active{transform:scale(.94)}@keyframes day-star-twinkle{0%,to{opacity:var(--star-opacity, .8);transform:scale(1)}50%{opacity:var(--star-peak-opacity, 1);transform:scale(1.08)}}.day-bubble{border-radius:50%;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit;-webkit-tap-highlight-color:transparent;padding:0;background:radial-gradient(circle at 35% 28%,#ffffffb8,#ffffff38 16%,#ffffff0f 40%,#ffffff1a);border:2.5px solid var(--bubble-color-border, rgba(255, 255, 255, .55));box-shadow:0 4px 14px var(--bubble-color-shadow, rgba(100, 160, 220, .22)),0 0 18px var(--bubble-color-glow, rgba(173, 216, 230, .25)),inset 0 0 20px #ffffff1a;animation:none;transition:transform .12s ease}.day-bubble:active{transform:scale(.92)}.day-bubble:before{content:"";position:absolute;top:16%;left:20%;width:30%;height:20%;border-radius:50%;background:#ffffffbf;filter:blur(2px);pointer-events:none}.day-bubble-text{color:#ffffffeb;text-align:center;padding:0 10%;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-all;font-weight:500;position:relative;z-index:1;line-height:1.35;text-shadow:0 1px 4px rgba(0,40,100,.35);max-width:85%}.day-popup-overlay{position:fixed;inset:0;z-index:250;background:#00000040;display:flex;align-items:center;justify-content:center}.day-popup{position:relative;z-index:260;width:min(300px,82vw);background:#fffaf4e0;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.42);border-radius:20px;padding:24px 22px 20px;display:flex;flex-direction:column;gap:10px;box-shadow:0 18px 40px #8b684924}.day-popup-text{margin:0;font-size:17px;font-weight:600;color:#394560f5;line-height:1.5;word-break:break-all}.day-popup-memo{margin:0;font-size:13px;color:#505c76d1;line-height:1.7;white-space:pre-wrap;word-break:break-all;padding:10px 12px;background:#ffffff70;border-radius:12px;border:1px solid rgba(214,223,238,.72)}.day-popup-close{margin-top:4px;padding:10px;border-radius:14px;background:#5a68901f;border:1px solid rgba(120,136,177,.2);font-size:14px;color:#394560e6;cursor:pointer;font-family:inherit;transition:background .15s;-webkit-tap-highlight-color:transparent}.day-popup-close:active{background:#5a689033}@keyframes day-orb-float{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(0,-4px,0) scale(1.02)}}@media(prefers-reduced-motion:reduce){.day-bubble{animation:none}}.daily-sky-footer{flex-shrink:0;padding:12px 20px 28px;background:#00000014;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.1)}.daily-sky-close-btn{width:100%;padding:13px;border-radius:20px;background:#ffffff2e;border:1px solid rgba(255,255,255,.35);font-size:15px;color:#ffffffe6;cursor:pointer;font-family:inherit;letter-spacing:.04em;transition:background .15s}.daily-sky-close-btn:active{background:#ffffff4d}.daily-sky-content-area>*:not(.daily-sky-today-area){background:#eef6ff94;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}@media(max-width:375px){.day-panel-header{padding:16px 8px 12px}.day-panel-date{font-size:14px}.day-panel-note{font-size:10px}.daily-sky-footer{padding:10px 16px 24px}.day-jar{width:min(80vw,300px)}}.entry-overlay{position:fixed;inset:0;z-index:400;background:#050a1e8c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:entry-overlay-in .2s ease}@keyframes entry-overlay-in{0%{opacity:0}to{opacity:1}}.entry-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:410;width:min(340px,90vw);background:#0a143cd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(100,180,255,.2);border-radius:20px;padding:32px 28px 28px;display:flex;flex-direction:column;gap:12px;animation:entry-modal-in .25s cubic-bezier(.34,1.56,.64,1)}@keyframes entry-modal-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.92)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.entry-close{position:absolute;top:14px;right:14px;width:28px;height:28px;border-radius:50%;background:#64b4ff1a;border:none;color:#c8e6ff99;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.entry-close:active{background:#64b4ff33}.entry-title{font-size:17px;font-weight:500;color:#dcf0fff2;letter-spacing:.04em;margin:0}.entry-sub{font-size:12px;color:#96c8ff8c;letter-spacing:.05em;margin:-4px 0 4px}.entry-input{background:#ffffff12;border:1px solid rgba(100,180,255,.2);border-radius:10px;padding:12px 14px;font-size:16px;color:#dcf0ffe6;font-family:inherit;outline:none;transition:border-color .15s}.entry-input::placeholder{color:#96c8ff59}.entry-input:focus{border-color:#64c8ff80}@media(max-width:768px){.entry-input{font-size:16px}}.entry-go{margin-top:4px;padding:13px;border-radius:12px;background:linear-gradient(135deg,#3296ffb3,#00c8c880);border:1px solid rgba(100,220,255,.35);color:#dcf5fff2;font-size:16px;font-weight:500;font-family:inherit;letter-spacing:.08em;cursor:pointer;transition:opacity .15s}.entry-go:active{opacity:.75}.sky-header{position:absolute;top:0;left:0;right:0;height:60px;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:0 16px}.sky-header-title{font-size:15px;font-weight:500;color:#ffffffd9;letter-spacing:.08em;text-shadow:0 1px 4px rgba(0,60,120,.3);display:flex;align-items:center}.header-logo-image{height:70px;width:auto;display:block}.header-logo-image+.header-logo-text{display:none}.header-logo-text{display:block}.sky-header-menu-btn{width:36px;height:36px;border-radius:50%;background:#ffffff40;border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);cursor:pointer;font-size:15px;color:#ffffffe6;display:flex;align-items:center;justify-content:center;transition:background .15s}.sky-header-menu-btn:active{background:#ffffff73}.sky-menu-overlay{position:fixed;inset:0;z-index:290;background:#0a1e3c4d;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);animation:overlay-fade-in .2s ease}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}.sky-side-menu{position:fixed;top:0;right:0;bottom:0;width:min(280px,82vw);z-index:300;background:#fffffff0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-left:1px solid rgba(100,160,220,.12);display:flex;flex-direction:column;animation:slide-in-right .25s cubic-bezier(.25,.46,.45,.94)}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}.sky-side-menu-header{display:flex;align-items:center;justify-content:space-between;padding:52px 20px 20px;border-bottom:1px solid rgba(100,160,220,.1)}.sky-side-menu-logo-btn{background:none;border:none;cursor:pointer;padding:0;border-radius:12px;-webkit-tap-highlight-color:transparent;transition:transform .18s ease,opacity .18s ease;transform-origin:left center}.sky-side-menu-logo-btn:hover,.sky-side-menu-logo-btn:focus-visible{transform:scale(1.06)}.sky-side-menu-logo-btn:active{transform:scale(1.03);opacity:.88}.sky-side-menu-logo{display:block;width:auto;height:80px;max-width:230px;object-fit:contain}.sky-side-menu-close{width:30px;height:30px;border-radius:50%;background:#64a0dc1a;border:none;font-size:16px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.sky-side-menu-list{list-style:none;padding:12px 0;flex:1}.sky-side-menu-item{width:100%;text-align:left;background:none;border:none;padding:14px 20px;font-size:15px;color:var(--text-primary);cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:12px;transition:background .1s}.sky-side-menu-item:active{background:#64a0dc14}.sky-side-menu-icon{width:24px;height:24px;color:var(--text-secondary);text-align:center;display:inline-flex;align-items:center;justify-content:center;flex:0 0 24px}.sky-side-menu-icon svg{display:block}.sky-side-menu-divider{height:1px;background:#64a0dc1a;margin:6px 20px}.sky-side-menu-info{display:flex;align-items:flex-start;gap:10px;padding:12px 20px}.sky-side-menu-info--button{width:100%;border:1px solid rgba(100,160,220,.14);background:linear-gradient(180deg,#fffffff5,#f0f8ffeb);border-radius:16px;cursor:pointer;text-align:left;font:inherit;align-items:center;box-shadow:0 6px 16px #5a8cbe0f;margin:2px 10px 4px;width:calc(100% - 20px)}.sky-side-menu-info--button:active{background:linear-gradient(180deg,#f8fcfffa,#e8f4fff2);transform:translateY(1px);box-shadow:0 3px 10px #5a8cbe0d}.sky-side-menu-info-body{flex:1;min-width:0}.sky-side-menu-chevron{font-size:18px;color:var(--text-secondary);flex-shrink:0;margin-left:auto;line-height:1;opacity:.8}.sky-side-menu-item--sub{padding-left:52px;font-size:14px;color:var(--text-secondary)}.sky-side-menu-item--danger{color:#b43c3ccc}.sky-side-menu-info-icon{width:18px;height:18px;flex:0 0 18px;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;margin-top:1px}.sky-side-menu-info-icon svg{display:block}.sky-side-menu-info-label{font-size:13px;font-weight:500;color:var(--text-primary);line-height:1.4}.sky-side-menu-info-sub{font-size:11px;color:var(--text-secondary);margin-top:2px;line-height:1.4}.sky-side-menu-info-sub--hint{color:#4678b4d9;font-weight:500}.sky-side-menu-item--google{gap:10px;color:#1e50b4d9;font-weight:500}.sky-side-menu-item--google:disabled{opacity:.5;cursor:not-allowed}.sky-side-menu-item--google-new{color:var(--text-secondary);font-weight:400;font-size:13px}.sky-side-menu-error{padding:6px 20px 2px;font-size:12px;color:#b43c3cd9}.sky-side-menu-item--logout{color:#b43c3cbf;padding-left:20px}.sky-side-menu-logout-confirm{padding:12px 20px}.sky-side-menu-logout-text{margin:0 0 12px;font-size:13px;color:var(--text-secondary);line-height:1.6}.sky-side-menu-logout-btns{display:flex;gap:8px}.sky-side-menu-logout-ok{flex:1;padding:9px 0;border:none;border-radius:8px;background:#b43c3c1a;color:#b43c3ce6;font:inherit;font-size:13px;font-weight:500;cursor:pointer}.sky-side-menu-logout-cancel{flex:1;padding:9px 0;border:1px solid rgba(100,160,220,.15);border-radius:8px;background:none;color:var(--text-secondary);font:inherit;font-size:13px;cursor:pointer}.sky-modal-overlay{position:fixed;inset:0;z-index:400;background:#0a1e3c66;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px}.sky-modal{background:#fffffff7;border-radius:16px;padding:28px 24px 24px;width:100%;max-width:320px;box-shadow:0 8px 32px #0a1e502e}.sky-modal-title{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 16px}.sky-modal-body{font-size:13px;color:var(--text-secondary);line-height:1.7;margin:0 0 20px}.sky-modal-input{width:100%;padding:10px 12px;border:1px solid rgba(100,160,220,.3);border-radius:8px;font:inherit;font-size:16px;color:var(--text-primary);background:#64a0dc0d;box-sizing:border-box;margin-bottom:8px;outline:none}.sky-modal-input:focus{border-color:#64a0dc99;background:#fff}.sky-modal-error{font-size:12px;color:#b43c3cd9;margin:0 0 12px}.sky-modal-btns{display:flex;gap:8px;margin-top:16px}.sky-modal-btn-primary{flex:1;padding:10px 0;border:none;border-radius:8px;background:#3c78dc1f;color:#1e50b4e6;font:inherit;font-size:14px;font-weight:500;cursor:pointer}.sky-modal-btn-primary:disabled{opacity:.45;cursor:not-allowed}.sky-modal-btn-danger{flex:1;padding:10px 0;border:none;border-radius:8px;background:#b43c3c1a;color:#b43c3ce6;font:inherit;font-size:14px;font-weight:500;cursor:pointer}.sky-modal-btn-danger:disabled{opacity:.45;cursor:not-allowed}.sky-modal-btn-cancel{flex:1;padding:10px 0;border:1px solid rgba(100,160,220,.15);border-radius:8px;background:none;color:var(--text-secondary);font:inherit;font-size:14px;cursor:pointer}.app-footer{position:fixed;bottom:0;left:0;right:0;height:calc(56px + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);display:flex;align-items:flex-start;justify-content:space-around;background:#ffffffd9;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(0,0,0,.05);z-index:10;padding-top:6px}.app-footer-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;background:none;border:none;cursor:pointer;padding:2px 0 0;font-family:inherit;transition:opacity .15s}.app-footer-btn:active:not(.app-footer-btn--disabled){opacity:.65}.app-footer-btn--disabled{cursor:not-allowed}.app-footer-label{font-size:10px;letter-spacing:.03em;line-height:1}.sky-view{position:fixed;inset:0;overflow:hidden;background:var(--sky-dawn);transition:background 1.5s ease-in-out}@media(prefers-reduced-motion:reduce){.sky-view{transition:none}}.sky-view--dawn{background:var(--sky-dawn)}.sky-view--morning{background:var(--sky-morning)}.sky-view--afternoon{background:var(--sky-afternoon)}.sky-view--sunset{background:var(--sky-sunset)}.sky-view--night{background:var(--sky-night)}.sky-view--dawn .sky-header-title,.sky-view--morning .sky-header-title{color:#263e5ceb;text-shadow:none}.sky-view--dawn .sky-header-menu-btn,.sky-view--morning .sky-header-menu-btn{background:#ffffffb3;border-color:#78a0c838;color:#263e5ce6}.sky-view--dawn .sky-header-menu-btn:active,.sky-view--morning .sky-header-menu-btn:active{background:#ffffffe0}.sky-view--dawn .bubble-input-wrap,.sky-view--morning .bubble-input-wrap{background:#ffffff8f;border-color:#78a0c82e}.sky-view--dawn .bubble-input-wrap:focus-within,.sky-view--morning .bubble-input-wrap:focus-within{background:#ffffffb3;border-color:#78a0c847}.sky-view--dawn .bubble-input-field,.sky-view--morning .bubble-input-field{color:#233856eb}.sky-view--dawn .bubble-input-field::placeholder,.sky-view--morning .bubble-input-field::placeholder{color:#465c7db8}.sky-view--dawn .bubble-input-submit,.sky-view--morning .bubble-input-submit{background:#fffc;border-color:#78a0c838;color:#233856eb}.sky-view--dawn .bubble-input-submit:hover,.sky-view--morning .bubble-input-submit:hover{background:#ffffffeb}.sky-view--dawn .app-footer-label,.sky-view--morning .app-footer-label{text-shadow:none}.sky-stars{position:absolute;inset:44px 0 128px;z-index:0;pointer-events:none}.star{position:absolute;border-radius:50%;background:#ffffffd9;animation:twinkle var(--twinkle-duration, 2s) ease-in-out infinite var(--twinkle-delay, 0s)}.sky-scroll-container{position:absolute;inset:44px 0 128px;overflow-x:auto;overflow-y:hidden;z-index:1;scrollbar-width:none}.sky-scroll-container::-webkit-scrollbar{display:none}.sky-canvas{position:relative;height:100%;min-width:100%}.sky-particles{position:absolute;inset:44px 0 128px;z-index:0;pointer-events:none}.sky-particle{position:absolute;width:3px;height:3px;background:#fff6;border-radius:50%;box-shadow:0 0 6px #ffffff4d;pointer-events:none;animation:particle-glow var(--particle-duration, 4s) ease-in-out infinite;animation-delay:var(--particle-delay, 0s)}@keyframes particle-glow{0%,to{opacity:.1;transform:scale(.8)}50%{opacity:.5;transform:scale(1.2)}}.bubble-sparkle{position:absolute;width:4px;height:4px;background:#fff;border-radius:50%;box-shadow:0 0 6px #fffc;animation:sparkle-burst .85s ease-out forwards;pointer-events:none;transform:translate(-50%,-50%);z-index:5}@keyframes sparkle-burst{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(calc(-50% + var(--sparkle-x, 0px)),calc(-50% + var(--sparkle-y, 0px))) scale(0);opacity:0}}@media(prefers-reduced-motion:reduce){.sky-cloud{animation:none;opacity:.06}.sky-particle{animation:none;opacity:.15}.bubble-sparkle{display:none}}.sky-input-bar{position:fixed;bottom:calc(64px + env(safe-area-inset-bottom,0px));left:0;right:0;padding:0 16px;z-index:10}.lagoon-bubble{appearance:none;-webkit-appearance:none;position:absolute;display:block;padding:0;border:none;background:transparent;cursor:pointer;pointer-events:auto;transform-origin:center center;will-change:transform,opacity}.lagoon-bubble:focus-visible{outline:2px solid rgba(160,230,255,.8);outline-offset:3px}.lagoon-bubble-surface{position:relative;width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;padding:6px;overflow:hidden;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.45) 0%,rgba(255,255,255,.12) 20%,rgba(100,200,255,.08) 40%,rgba(160,100,255,.05) 60%,rgba(255,255,255,.06) 80%,transparent 100%);border:1px solid rgba(255,255,255,.3);box-shadow:inset 0 0 20px #ffffff1f,inset -4px -4px 12px #a064ff0f,0 0 20px #64c8ff26,0 4px 16px #50a0dc1a;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);animation:bubble-float 8s ease-in-out infinite;will-change:transform}.lagoon-bubble-surface:before{content:"";position:absolute;top:10%;left:16%;width:28%;height:22%;background:radial-gradient(ellipse,rgba(255,255,255,.75) 0%,rgba(255,255,255,.25) 50%,transparent 70%);border-radius:50%;pointer-events:none;z-index:1}.lagoon-bubble-surface:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(ellipse at 60% 70%,rgba(80,200,255,.18) 0%,rgba(160,80,255,.12) 40%,rgba(80,255,200,.08) 70%,transparent 100%);mix-blend-mode:screen;animation:aurora-shift 6s ease-in-out infinite alternate;pointer-events:none;z-index:0}@keyframes aurora-shift{0%{opacity:.6;transform:rotate(0) scale(1)}50%{opacity:1;transform:rotate(8deg) scale(1.05)}to{opacity:.5;transform:rotate(-4deg) scale(.95)}}.lagoon-bubble-surface--mine{background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.55) 0%,rgba(255,255,255,.18) 20%,rgba(100,220,255,.12) 40%,rgba(180,120,255,.08) 60%,rgba(255,255,255,.1) 80%,transparent 100%);border-color:#ffffff8c;box-shadow:inset 0 0 28px #ffffff2e,inset -4px -4px 12px #b478ff1a,0 0 30px #64d2ff4d,0 0 60px #64d2ff1a}.lagoon-bubble-surface--other{opacity:.65}.lagoon-bubble-surface--compact{padding:5px}.lagoon-bubble-text{font-size:10px;color:#ffffffeb;text-align:center;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;word-break:break-all;max-width:100%;padding:0 4px;text-shadow:0 0 8px rgba(100,200,255,.5);position:relative;z-index:2}.lagoon-bubble-surface--compact .lagoon-bubble-text{font-size:9px;line-height:1.25}@media(prefers-reduced-motion:reduce){.lagoon-bubble-surface{animation:none}.lagoon-bubble-surface:after{animation:none;opacity:.6}}.lagoon-bubble-surface--focus:after{background:radial-gradient(ellipse at 55% 65%,rgba(0,255,180,calc(.25 * var(--focus-glow-opacity, 0))) 0%,rgba(80,160,255,calc(.2 * var(--focus-glow-opacity, 0))) 35%,rgba(160,80,255,calc(.15 * var(--focus-glow-opacity, 0))) 65%,transparent 100%);animation:aurora-shift 4s ease-in-out infinite alternate}.lagoon-bubble-surface--focus{border-color:rgba(100,220,255,calc(.3 + .45 * var(--focus-glow-opacity, 0)));box-shadow:inset 0 0 28px #ffffff2e,inset -4px -4px 12px #b478ff1a,0 0 calc(30px + 40px * var(--focus-glow-opacity, 0)) rgba(0,220,180,calc(.18 * var(--focus-glow-opacity, 0))),0 0 calc(20px + 60px * var(--focus-glow-opacity, 0)) rgba(80,160,255,calc(.22 * var(--focus-glow-opacity, 0))),0 0 calc(10px + 80px * var(--focus-glow-opacity, 0)) rgba(160,80,255,calc(.1 * var(--focus-glow-opacity, 0)));transition:border-color 2s ease,box-shadow 2s ease}.picker-overlay{position:fixed;inset:0;z-index:310}.picker-panel{position:fixed;bottom:0;left:0;right:0;z-index:320;background:#0a1432eb;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(100,200,255,.15);border-radius:20px 20px 0 0;padding:20px 24px 40px;animation:picker-slide-up .25s ease}.picker-header{display:flex;align-items:center;justify-content:space-between;gap:12px}@keyframes picker-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.picker-title{font-size:13px;color:#c8e6ffb3;letter-spacing:.08em;margin:0;display:inline-flex;align-items:center;gap:6px}.picker-title-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;color:#c8e6ffcc;flex:0 0 16px}.picker-title-icon svg{display:block}.picker-divider{height:1px;background:#64c8ff1f;margin:14px 0}.picker-list{list-style:none;display:flex;flex-direction:column;gap:2px}.picker-option{width:100%;text-align:left;background:none;border:none;padding:10px 4px;font-size:15px;color:#dcf0ffcc;cursor:pointer;font-family:inherit;display:flex;align-items:center;gap:12px;border-radius:8px;transition:background .1s}.picker-option:active{background:#64c8ff1a}.picker-option--active{color:#96dcff}.picker-radio{font-size:12px;width:16px;text-align:center;color:#64c8ffcc}.picker-volume{margin-top:18px;padding-top:14px;border-top:1px solid rgba(100,200,255,.12)}.picker-volume-header{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#c8e6ffb8;margin-bottom:10px}.picker-volume-value{color:#96dcfff2;font-variant-numeric:tabular-nums}.picker-volume-slider{width:100%;appearance:none;-webkit-appearance:none;height:4px;border-radius:999px;background:#64c8ff2e;outline:none}.picker-volume-slider::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:linear-gradient(180deg,#dcf5fffa,#96dcffe6);border:1px solid rgba(100,200,255,.35);box-shadow:0 2px 8px #0003;cursor:pointer}.picker-volume-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:linear-gradient(180deg,#dcf5fffa,#96dcffe6);border:1px solid rgba(100,200,255,.35);box-shadow:0 2px 8px #0003;cursor:pointer}.picker-volume-note{margin:8px 0 0;font-size:11px;line-height:1.5;color:#c8e6ff8c}.picker-close{width:30px;height:30px;border-radius:50%;border:none;background:#64c8ff1a;color:#c8e6ffe6;display:flex;align-items:center;justify-content:center;cursor:pointer;flex:0 0 30px}.picker-close svg{display:block}.picker-wakelock{margin-top:18px;padding-top:14px;border-top:1px solid rgba(100,200,255,.12);display:flex;align-items:center;justify-content:space-between}.picker-wakelock-label span{font-size:13px;color:#c8e6ffe6}.picker-wakelock-note{margin:4px 0 0;font-size:11px;color:#c8e6ff8c;line-height:1.4}.picker-wakelock-warning{color:#ffb4b4e6}.picker-toggle{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.picker-toggle-input{opacity:0;width:0;height:0}.picker-toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#64c8ff26;transition:.2s;border-radius:24px}.picker-toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#c8e6ffb3;transition:.2s;border-radius:50%}.picker-toggle-input:checked+.picker-toggle-slider{background-color:#64c8ff99}.picker-toggle-input:checked+.picker-toggle-slider:before{transform:translate(20px);background-color:#fff}.ltimer-overlay{position:fixed;inset:0;z-index:310}.ltimer-panel{position:fixed;bottom:0;left:0;right:0;z-index:320;background:#08102af2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(100,200,255,.15);border-radius:24px 24px 0 0;padding:22px 24px calc(44px + env(safe-area-inset-bottom,0px));animation:ltimer-slide-up .28s cubic-bezier(.22,1,.36,1)}@keyframes ltimer-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.ltimer-header{display:flex;align-items:center;justify-content:space-between}.ltimer-title{margin:0;font-size:13px;color:#c8e6ffb3;letter-spacing:.08em;display:inline-flex;align-items:center;gap:6px}.ltimer-title-icon{width:18px;height:18px;display:inline-flex;align-items:center;color:#96dcffd9}.ltimer-title-icon svg{display:block}.ltimer-close-btn{width:30px;height:30px;border-radius:50%;border:none;background:#64c8ff1a;color:#c8e6ffe6;display:flex;align-items:center;justify-content:center;cursor:pointer}.ltimer-divider{height:1px;background:#64c8ff1f;margin:16px 0 18px}.ltimer-section-label{margin:0 0 12px;font-size:11px;color:#96c8ff99;letter-spacing:.1em}.ltimer-presets{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.ltimer-preset-btn{display:inline-flex;align-items:baseline;gap:2px;padding:7px 14px;border-radius:999px;border:1px solid rgba(100,180,255,.2);background:#0f1e4699;color:#c8e6ffbf;font-size:16px;font-family:inherit;font-variant-numeric:tabular-nums;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.ltimer-preset-unit{font-size:11px;color:inherit;opacity:.7}.ltimer-preset-btn--active{border-color:#50c8ff99;background:#2878dc38;color:#8cdcff;box-shadow:0 0 10px #50b4ff33}.ltimer-preset-btn:active{background:#2864c859}.ltimer-custom-row{display:flex;align-items:center;gap:8px;margin-bottom:20px}.ltimer-custom-input{width:90px;padding:8px 12px;border-radius:12px;border:1px solid rgba(100,180,255,.2);background:#0f1e4680;color:#dcf0ffe6;font-size:15px;font-family:inherit;font-variant-numeric:tabular-nums;outline:none;transition:border-color .15s;-moz-appearance:textfield;appearance:textfield}.ltimer-custom-input::-webkit-outer-spin-button,.ltimer-custom-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ltimer-custom-input:focus{border-color:#50b4ff80;box-shadow:0 0 0 2px #50b4ff1f}.ltimer-custom-input::placeholder{color:#96beff59}.ltimer-custom-label{font-size:13px;color:#96c8ff99}.ltimer-preview{text-align:center;margin-bottom:20px}.ltimer-preview-time{font-size:42px;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:#c8f0ffe6;font-weight:300;text-shadow:0 0 18px rgba(100,200,255,.4)}.ltimer-start-btn{position:relative;width:100%;padding:14px;border-radius:16px;border:1px solid rgba(80,200,255,.25);background:linear-gradient(135deg,#143278cc,#3c1464cc);color:#d2f0fff2;font-size:16px;font-family:inherit;letter-spacing:.06em;cursor:pointer;overflow:hidden;transition:opacity .2s}.ltimer-start-btn:disabled{opacity:.4;cursor:default}.ltimer-start-btn-aurora{position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(0,255,180,.08) 30%,rgba(80,160,255,.12) 50%,rgba(160,80,255,.08) 70%,transparent 100%);animation:ltimer-aurora-sweep 4s ease-in-out infinite;pointer-events:none}@keyframes ltimer-aurora-sweep{0%,to{opacity:.5;transform:translate(-20%)}50%{opacity:1;transform:translate(20%)}}.ltimer-display{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:50;display:flex;flex-direction:column;align-items:center;gap:16px;pointer-events:none}.ltimer-ring-wrap{position:relative;width:200px;height:200px;pointer-events:none}.ltimer-ring{width:200px;height:200px;filter:drop-shadow(0 0 18px rgba(80,180,255,.25))}.ltimer-ring-progress{transition:stroke-dashoffset 1s linear,stroke 1.5s ease}.ltimer-center-text{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.ltimer-time-display{font-size:36px;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:#dcf5fff7;font-weight:300;text-shadow:0 0 24px rgba(100,200,255,.55);transition:opacity .3s}.ltimer-time-display--paused{opacity:.55;animation:ltimer-blink 1.5s ease-in-out infinite}@keyframes ltimer-blink{0%,to{opacity:.55}50%{opacity:.25}}.ltimer-pause-label{font-size:10px;color:#96d2ff99;letter-spacing:.1em}.ltimer-controls{display:flex;gap:10px;pointer-events:auto}.ltimer-ctrl-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 18px;border-radius:14px;border:1px solid rgba(100,180,255,.18);background:#08102db3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:#bee6ffe0;font-size:20px;font-family:inherit;cursor:pointer;min-width:72px;transition:background .15s}.ltimer-ctrl-btn span{font-size:11px;color:#a0d2ffb3;letter-spacing:.03em}.ltimer-ctrl-btn:active{background:#14285ae6}.ltimer-ctrl-btn--reset span,.ltimer-ctrl-btn--reset{color:#96b4ffb3!important}.ltimer-ctrl-btn--again{border-color:#ffc85033;color:#ffe678e6!important}.ltimer-ctrl-btn--again span{color:#ffd264b3!important}.ltimer-ctrl-btn--exit{border-color:#64b4ff26}.ltimer-shooting-stars{position:fixed;inset:0;pointer-events:none;z-index:49;overflow:hidden}.ltimer-shooting-star{position:absolute;top:50%;left:50%;width:2px;height:60px;background:linear-gradient(to bottom,rgba(255,230,120,.9),transparent);border-radius:1px;transform-origin:top center;transform:rotate(var(--angle)) translateY(0);animation:ltimer-shoot var(--delay, .3s) ease-out .1s forwards,ltimer-shoot-out .8s ease-out calc(var(--delay, .3s) + .1s) forwards;opacity:0}@keyframes ltimer-shoot{0%{opacity:0;transform:rotate(var(--angle)) translateY(0) scaleY(.3)}to{opacity:.9;transform:rotate(var(--angle)) translateY(60px) scaleY(1)}}@keyframes ltimer-shoot-out{0%{opacity:.9;transform:rotate(var(--angle)) translateY(60px) scaleY(1)}to{opacity:0;transform:rotate(var(--angle)) translateY(160px) scaleY(.5)}}.ltimer-display--done .ltimer-ring{animation:ltimer-ring-pulse 2.2s ease-in-out infinite}@keyframes ltimer-ring-pulse{0%,to{filter:drop-shadow(0 0 20px rgba(180,230,255,.4)) drop-shadow(0 0 50px rgba(120,200,255,.2))}50%{filter:drop-shadow(0 0 40px rgba(210,245,255,.8)) drop-shadow(0 0 90px rgba(150,215,255,.5))}}.ltimer-ripple-rings{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.ltimer-ripple-ring{position:absolute;width:200px;height:200px;border-radius:50%;border:1.5px solid rgba(180,230,255,.65);animation:ltimer-ripple 2.4s ease-out infinite;animation-delay:var(--ripple-delay, 0s);opacity:0}@keyframes ltimer-ripple{0%{transform:scale(.85);opacity:.8}70%{opacity:.15}to{transform:scale(1.7);opacity:0}}.ltimer-glow-star{position:relative;width:56px;height:56px;display:flex;align-items:center;justify-content:center;animation:ltimer-glow-star-appear .7s cubic-bezier(.22,1,.36,1) both}@keyframes ltimer-glow-star-appear{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.ltimer-glow-halo{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(200,235,255,.55) 0%,transparent 70%);animation:ltimer-halo-breathe 2s ease-in-out infinite}.ltimer-glow-halo--outer{width:110px;height:110px;opacity:.45}.ltimer-glow-halo--mid{width:66px;height:66px;background:radial-gradient(circle,rgba(220,245,255,.72) 0%,transparent 65%);animation-delay:.3s}@keyframes ltimer-halo-breathe{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.18);opacity:1}}.ltimer-glow-spike{position:absolute;background:linear-gradient(to right,transparent,rgba(210,240,255,.82),transparent);border-radius:999px;animation:ltimer-spike-breathe 2s ease-in-out infinite}.ltimer-glow-spike--h{width:84px;height:2px;animation-delay:.1s}.ltimer-glow-spike--v{width:2px;height:84px;background:linear-gradient(to bottom,transparent,rgba(210,240,255,.82),transparent);animation-delay:.25s}@keyframes ltimer-spike-breathe{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.ltimer-glow-core{position:absolute;width:10px;height:10px;border-radius:50%;background:#f0fafffa;box-shadow:0 0 6px 3px #c8ebffe6,0 0 18px 8px #a0d7ffa6,0 0 36px 18px #78c3ff59;animation:ltimer-core-pulse 1.8s ease-in-out infinite}@keyframes ltimer-core-pulse{0%,to{transform:scale(1);box-shadow:0 0 6px 3px #c8ebffe6,0 0 18px 8px #a0d7ffa6,0 0 36px 18px #78c3ff59}50%{transform:scale(1.35);box-shadow:0 0 10px 5px #dcf5ff,0 0 26px 13px #afdcffd9,0 0 55px 26px #87c8ff8c}}@media(prefers-reduced-motion:reduce){.ltimer-panel,.ltimer-start-btn-aurora{animation:none}.ltimer-time-display--paused{animation:none;opacity:.55}.ltimer-ring-progress{transition:none}.ltimer-ripple-ring,.ltimer-glow-star{animation:none}.ltimer-glow-halo{animation:none;opacity:.6}.ltimer-glow-spike{animation:none;opacity:.7}.ltimer-glow-core,.ltimer-display--done .ltimer-ring{animation:none}}.lagoon-container{position:fixed;inset:0;width:100vw;height:100vh;overflow:hidden;touch-action:auto}.lagoon-container:before,.lagoon-container:after{content:"";position:fixed;inset:-10%;pointer-events:none;z-index:0}.lagoon-container:before{background:radial-gradient(circle at 12% 18%,rgba(255,255,255,.95) 0 1px,transparent 1.8px),radial-gradient(circle at 28% 34%,rgba(255,255,255,.55) 0 1px,transparent 1.6px),radial-gradient(circle at 46% 12%,rgba(255,255,255,.85) 0 1.2px,transparent 2px),radial-gradient(circle at 63% 22%,rgba(180,240,255,.9) 0 1px,transparent 1.8px),radial-gradient(circle at 78% 16%,rgba(255,255,255,.8) 0 1px,transparent 1.8px),radial-gradient(circle at 86% 32%,rgba(180,240,255,.65) 0 1px,transparent 1.8px),radial-gradient(circle at 8% 52%,rgba(255,255,255,.7) 0 1px,transparent 1.8px),radial-gradient(circle at 34% 58%,rgba(255,255,255,.5) 0 1px,transparent 1.8px),radial-gradient(circle at 58% 46%,rgba(255,255,255,.8) 0 1px,transparent 1.8px),radial-gradient(circle at 74% 56%,rgba(220,245,255,.65) 0 1px,transparent 1.8px),radial-gradient(circle at 92% 50%,rgba(255,255,255,.75) 0 1px,transparent 1.8px);opacity:.55;animation:star-drift 50s linear infinite}.lagoon-container:after{background:radial-gradient(ellipse 42% 26% at 18% 18%,rgba(110,255,214,.3),transparent 60%),radial-gradient(ellipse 34% 20% at 52% 12%,rgba(118,196,255,.24),transparent 60%),radial-gradient(ellipse 46% 28% at 82% 20%,rgba(180,98,255,.24),transparent 62%),radial-gradient(ellipse 58% 34% at 50% 55%,rgba(86,188,255,.16),transparent 70%);filter:blur(30px) saturate(1.35);opacity:1;mix-blend-mode:screen;animation:aurora-drift 14s ease-in-out infinite}.theme-aurora{background:linear-gradient(180deg,#050f1e,#0a1a3a,#0d2b50,#0a2010,#041208)}.theme-rain{background:linear-gradient(180deg,#2d3561,#4a3d7a,#6b5b95 50%,#8b7bb5 70%,#a89cc5)}.theme-ocean{background:linear-gradient(180deg,#1a6bb5,#2980d4,#4fc3f7 60%,#81d4fa,#c5e8f8)}.theme-bonfire{background:linear-gradient(180deg,#0d0d0d,#1a1a1a,#3d1a00 60%,#7a3200,#c05621)}@keyframes star-drift{0%,to{transform:translateZ(0) scale(1);opacity:.5}50%{transform:translate3d(2px,-6px,0) scale(1.02);opacity:.72}}@keyframes aurora-drift{0%,to{transform:translateZ(0) scale(1)}33%{transform:translate3d(18px,-10px,0) scale(1.05)}66%{transform:translate3d(-12px,8px,0) scale(.98)}}.lagoon-aurora-glow{position:fixed;top:0;left:0;right:0;height:60%;background:radial-gradient(ellipse 90% 58% at 38% 28%,rgba(0,255,150,.24),transparent);animation:aurora-breathe-1 10s ease-in-out infinite;z-index:1;pointer-events:none;mix-blend-mode:screen}.lagoon-aurora-glow-2{position:fixed;top:0;left:0;right:0;height:60%;background:radial-gradient(ellipse 72% 46% at 66% 24%,rgba(150,50,255,.2),transparent);animation:aurora-breathe-2 13s ease-in-out infinite;z-index:1;pointer-events:none;mix-blend-mode:screen}.lagoon-aurora-glow-3{position:fixed;inset:0;background:radial-gradient(ellipse 62% 38% at 50% 34%,rgba(90,200,255,.22),transparent 65%);animation:aurora-breathe-3 11s ease-in-out infinite;z-index:1;pointer-events:none;mix-blend-mode:screen}@keyframes aurora-breathe-1{0%,to{opacity:.45;transform:translate(0) scale(1)}33%{opacity:.95;transform:translate(28px) scale(1.08)}66%{opacity:.6;transform:translate(-20px) scale(1.02)}}@keyframes aurora-breathe-2{0%,to{opacity:.35;transform:translate(0) scale(1)}50%{opacity:.85;transform:translate(-30px) scale(1.1)}}@keyframes aurora-breathe-3{0%,to{opacity:.28;transform:translateY(0) scale(1)}50%{opacity:.75;transform:translateY(-12px) scale(1.08)}}.lagoon-water-shimmer{position:fixed;bottom:0;left:-5%;right:-5%;height:45%;background:linear-gradient(180deg,transparent 0%,rgba(0,200,150,.08) 30%,rgba(0,150,200,.1) 60%,rgba(0,100,150,.05) 100%);animation:water-ripple 6s ease-in-out infinite;z-index:1;pointer-events:none;mix-blend-mode:screen}@keyframes water-ripple{0%,to{transform:scaleX(1) translateY(0);opacity:.5}50%{transform:scaleX(1.02) translateY(-3px);opacity:.8}}.lagoon-scroll-wrapper{position:absolute;inset:0;overflow-x:auto;overflow-y:hidden;z-index:2;scrollbar-width:none;touch-action:pan-x;-webkit-overflow-scrolling:touch}.lagoon-scroll-wrapper::-webkit-scrollbar{display:none}.lagoon-scroll-canvas{position:relative;height:100%;min-width:100vw}.lagoon-star{position:absolute;background:#fff;border-radius:50%;box-shadow:0 0 4px 1px #fff9;animation:star-twinkle var(--twinkle-duration, 3s) ease-in-out infinite;animation-delay:var(--twinkle-delay, 0s);z-index:1;pointer-events:none}@keyframes star-twinkle{0%,to{opacity:.2;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.lagoon-scroll-hint{position:fixed;top:0;right:0;bottom:0;width:72px;background:linear-gradient(to right,transparent,rgba(5,15,40,.45));pointer-events:none;z-index:5}.lagoon-participants{position:fixed;top:20px;left:16px;display:flex;align-items:center;gap:6px;font-size:12px;color:#c8f0ffbf;letter-spacing:.04em;padding:5px 10px;background:#000a1e66;border-radius:20px;border:1px solid rgba(100,200,255,.15);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:10}.lagoon-participants-dot{width:6px;height:6px;border-radius:50%;background:#64e6c8d9;animation:dot-pulse 2s ease-in-out infinite}@keyframes dot-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.lagoon-controls{position:fixed;bottom:0;left:0;right:0;padding:14px 20px calc(36px + env(safe-area-inset-bottom,0px));display:flex;justify-content:center;gap:16px;background:linear-gradient(to top,rgba(0,8,25,.65) 0%,transparent 100%);z-index:10}.lagoon-ctrl-btn{display:flex;flex-direction:column;align-items:center;gap:4px;background:#050f3280;border:1px solid rgba(100,180,255,.2);border-radius:14px;padding:10px 18px;cursor:pointer;font-family:inherit;font-size:18px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background .15s;min-width:68px}.lagoon-ctrl-btn svg{display:block}.lagoon-ctrl-btn span{font-size:11px;color:#b4dcffb3;letter-spacing:.03em}.lagoon-ctrl-btn:active{background:#050f32bf}.lagoon-ctrl-btn--exit{font-size:16px;color:#b4c8ffcc}.lagoon-ctrl-btn--exit span{color:#b4c8ff99}.lagoon-ctrl-btn--timer-active{border-color:#64dcff59;background:#143c828c;box-shadow:0 0 12px #50c8ff2e}.lagoon-ctrl-btn--timer-active span{color:#78e6ffe6}.lagoon-comment-overlay{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:20px;background:#030a1957;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.lagoon-comment-card{width:min(340px,90vw);border-radius:20px;padding:18px 18px 14px;background:linear-gradient(180deg,#0a162df2,#142848eb);border:1px solid rgba(160,220,255,.18);box-shadow:0 18px 40px #000a1947}.lagoon-comment-label{margin:0 0 8px;font-size:11px;letter-spacing:.08em;color:#bee1ffa6}.lagoon-comment-text{margin:0;font-size:14px;line-height:1.7;color:#f5fafff2;white-space:pre-wrap;word-break:break-word}.lagoon-comment-close{display:inline-flex;align-items:center;justify-content:center;margin-top:14px;padding:8px 14px;border:none;border-radius:999px;background:#8cd2ff24;color:#e1f5ffeb;font:inherit;font-size:12px;cursor:pointer}@media(prefers-reduced-motion:reduce){.lagoon-aurora-glow,.lagoon-aurora-glow-2,.lagoon-water-shimmer{animation:none;opacity:.3}.lagoon-star{animation:none;opacity:.6}.lagoon-participants-dot{animation:none}}@media(max-width:768px){.lagoon-controls{gap:10px;padding-inline:14px}.lagoon-ctrl-btn{min-width:0;flex:1 1 0;padding-inline:12px}}.about-overlay{position:fixed;inset:0;z-index:400;background:#0a1e3c59;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;animation:about-fade-in .2s ease}@keyframes about-fade-in{0%{opacity:0}to{opacity:1}}.about-panel{width:100%;max-width:480px;max-height:88vh;background:#fffffff7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px 20px 0 0;border-top:1px solid rgba(100,160,220,.12);display:flex;flex-direction:column;overflow:hidden;animation:about-slide-up .3s cubic-bezier(.25,.46,.45,.94)}@keyframes about-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.about-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid rgba(100,160,220,.1);flex-shrink:0}.about-title{font-size:17px;font-weight:600;color:var(--text-primary);letter-spacing:.04em;margin:0}.about-close{width:30px;height:30px;border-radius:50%;background:#64a0dc1a;border:none;font-size:18px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.about-body{flex:1;overflow-y:auto;padding:24px 20px 40px;display:flex;flex-direction:column;align-items:center;gap:0}.about-icon{width:64px;height:64px;margin-bottom:16px;color:var(--text-primary);display:flex;align-items:center;justify-content:center}.about-icon svg{display:block}.about-icon img{width:56px;height:56px;display:block;object-fit:contain}.about-tagline{font-size:18px;font-weight:600;color:var(--text-primary);text-align:center;letter-spacing:.04em;margin:0 0 20px}.about-description{font-size:14px;line-height:1.8;color:var(--text-secondary);text-align:left;width:100%;margin:0 0 14px}.about-divider{width:100%;height:1px;background:#64a0dc1f;margin:16px 0}.about-features{list-style:none;padding:0;margin:0;width:100%;display:flex;flex-direction:column;gap:12px}.about-features li{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--text-primary)}.about-feature-icon{width:28px;flex-shrink:0;height:28px;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center}.about-feature-icon svg{display:block}.about-footer-note{font-size:12px;color:#6482a099;text-align:center;margin:0;letter-spacing:.04em}.about-more-link{margin-top:18px;padding:12px 18px;border:1px solid rgba(95,140,190,.18);border-radius:999px;background:linear-gradient(180deg,#fffffff5,#f2f8fff0);color:#2c4c70f5;font:inherit;font-size:14px;font-weight:600;letter-spacing:.04em;cursor:pointer;box-shadow:0 8px 18px #6081a314;transition:transform .18s ease,box-shadow .18s ease,background .18s ease;-webkit-tap-highlight-color:transparent}.about-more-link:hover,.about-more-link:focus-visible{transform:translateY(-1px) scale(1.03);box-shadow:0 12px 22px #6081a31f}.about-more-link:active{transform:translateY(0) scale(.99);box-shadow:0 6px 14px #6081a314}.guest-overlay{position:fixed;inset:0;z-index:400;background:#0a1e3c59;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;animation:guest-fade-in .2s ease}@keyframes guest-fade-in{0%{opacity:0}to{opacity:1}}.guest-panel{width:100%;max-width:480px;max-height:88vh;background:#fffffff7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px 20px 0 0;border-top:1px solid rgba(100,160,220,.12);display:flex;flex-direction:column;overflow:hidden;animation:guest-slide-up .3s cubic-bezier(.25,.46,.45,.94)}@keyframes guest-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.guest-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid rgba(100,160,220,.1);flex-shrink:0}.guest-title{font-size:17px;font-weight:600;color:var(--text-primary);letter-spacing:.04em;margin:0}.guest-close{width:30px;height:30px;border-radius:50%;background:#64a0dc1a;border:none;font-size:18px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.guest-body{flex:1;overflow-y:auto;padding:24px 20px 40px;display:flex;flex-direction:column;align-items:center;gap:0}.guest-icon{width:64px;height:64px;margin-bottom:16px;color:var(--text-primary);display:flex;align-items:center;justify-content:center}.guest-icon svg{display:block}.guest-tagline{font-size:18px;font-weight:600;color:var(--text-primary);text-align:center;letter-spacing:.04em;margin:0 0 18px}.guest-description{font-size:14px;line-height:1.8;color:var(--text-secondary);text-align:left;width:100%;margin:0 0 14px}.guest-points{width:100%;margin:0 0 16px;padding:14px 16px 14px 34px;border-radius:16px;background:#64a0dc14;color:var(--text-primary);display:flex;flex-direction:column;gap:10px;line-height:1.6;font-size:13px}.guest-points--warning{background:#fff5f5eb;border:1px solid rgba(180,60,60,.12);padding:14px 16px}.guest-points-heading{margin:0 0 10px;font-size:13px;font-weight:600;color:#782d2df5;line-height:1.6}.guest-points-list{list-style:none;padding:0 0 0 16px;margin:0;display:flex;flex-direction:column;gap:10px}.guest-points-list li{position:relative;font-size:13px;line-height:1.6;color:var(--text-primary)}.guest-points-list li:before{content:"・";position:absolute;left:-16px;color:#b43c3cd9}.guest-actions{width:100%;margin-top:8px;padding:16px;border-radius:18px;background:#fafcfff5;border:1px solid rgba(100,160,220,.12)}.guest-actions-lead{margin:0 0 12px;font-size:13px;line-height:1.7;color:var(--text-secondary)}.guest-action-btn,.guest-action-confirm{width:100%}.guest-action-btn{min-height:44px;border:none;border-radius:12px;font:inherit;font-size:13px;font-weight:500;cursor:pointer}.guest-action-btn+.guest-action-btn,.guest-action-confirm+.guest-action-btn{margin-top:10px}.guest-action-btn--primary{background:#3c78dc1f;color:#1e50b4f2}.guest-action-btn--danger{margin-top:10px;background:#b43c3c1a;color:#b43c3cf0}.guest-action-btn--danger:disabled,.guest-action-btn--primary:disabled{opacity:.45;cursor:not-allowed}.guest-action-btn--cancel{border:1px solid rgba(100,160,220,.15);background:#fffffff2;color:var(--text-secondary)}.guest-action-confirm{margin-top:10px;padding:14px;border-radius:14px;background:#fffffff2}.guest-action-confirm--primary{border:1px solid rgba(60,120,220,.14)}.guest-action-confirm--danger{border:1px solid rgba(180,60,60,.14);background:#fff6f6f2}.guest-action-confirm-text,.guest-action-confirm-note{margin:0 0 10px;font-size:13px;line-height:1.7;color:var(--text-secondary)}.guest-action-confirm-note{color:#5a6e8ce6}.guest-action-error{margin:0 0 10px;font-size:12px;color:#b43c3ce6}.guest-action-btns{display:flex;gap:8px}.guest-action-btns .guest-action-btn{flex:1;margin-top:0}.pwa-overlay{position:fixed;inset:0;z-index:400;background:#0a1e3c59;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;animation:pwa-fade-in .2s ease}@keyframes pwa-fade-in{0%{opacity:0}to{opacity:1}}.pwa-panel{width:100%;max-width:480px;max-height:88vh;background:#fffffff7;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:20px 20px 0 0;border-top:1px solid rgba(100,160,220,.12);display:flex;flex-direction:column;overflow:hidden;animation:pwa-slide-up .3s cubic-bezier(.25,.46,.45,.94)}@keyframes pwa-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.pwa-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 0;flex-shrink:0}.pwa-title{font-size:17px;font-weight:600;color:var(--text-primary);letter-spacing:.04em;margin:0}.pwa-close{width:30px;height:30px;border-radius:50%;background:#64a0dc1a;border:none;font-size:18px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}.pwa-subtitle{font-size:13px;color:var(--text-secondary);padding:8px 20px 0;margin:0;flex-shrink:0}.pwa-tabs{display:flex;padding:12px 20px 0;gap:8px;flex-shrink:0}.pwa-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:8px 4px;border-radius:10px;border:1.5px solid rgba(100,160,220,.2);background:transparent;font-size:12px;font-family:inherit;color:var(--text-secondary);cursor:pointer;transition:all .15s}.pwa-tab--active{background:#64a0dc1f;border-color:#64a0dc80;color:var(--text-primary);font-weight:600}.pwa-tab-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 18px;color:currentColor}.pwa-tab-icon svg{display:block}.pwa-steps{flex:1;overflow-y:auto;padding:16px 20px 40px;display:flex;flex-direction:column;gap:16px}.pwa-step{display:flex;align-items:flex-start;gap:14px}.pwa-step-num{width:26px;height:26px;border-radius:50%;background:#64a0dc2e;color:#3c78c8e6;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}.pwa-step-body{flex:1}.pwa-step-title{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.pwa-step-desc{font-size:13px;line-height:1.65;color:var(--text-secondary);margin:0}.privacy-overlay{position:fixed;inset:0;z-index:600;background:#0a1e3c59;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;animation:privacy-fade-in .2s ease}@keyframes privacy-fade-in{0%{opacity:0}to{opacity:1}}.privacy-panel{width:100%;max-width:480px;height:92vh;background:#fff;border-radius:20px 20px 0 0;border-top:1px solid rgba(100,160,220,.12);display:flex;flex-direction:column;overflow:hidden;animation:privacy-slide-up .3s cubic-bezier(.25,.46,.45,.94)}@keyframes privacy-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.privacy-header{flex-shrink:0;padding:16px 20px 0}.privacy-header--modal{display:flex;justify-content:flex-end;padding:12px 16px 0}.privacy-back{display:inline-flex;align-items:center;gap:4px;border:none;background:none;font:inherit;font-size:14px;color:#3c78c8d9;cursor:pointer;padding:6px 0}.privacy-back:active{opacity:.6}.privacy-close{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:none;font-size:24px;color:#999;cursor:pointer}.privacy-close:active{opacity:.6}.privacy-body{flex:1;overflow-y:auto;padding:12px 20px 40px;-webkit-overflow-scrolling:touch}.privacy-title{font-size:18px;font-weight:700;color:#222;text-align:center;margin:0 0 8px}.privacy-date{font-size:12px;color:#999;text-align:center;margin:0 0 28px}.privacy-section{margin-bottom:28px}.privacy-heading{font-size:16px;font-weight:700;color:#333;margin:0 0 10px}.privacy-sub-heading{font-size:14px;font-weight:700;color:#444;margin:12px 0 6px}.privacy-text{font-size:14px;color:#555;line-height:1.8;margin:0 0 8px}.privacy-note{font-size:13px;color:#888;line-height:1.7}.privacy-form-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid rgba(60,120,200,.18);background:#ebf4ffe6;color:#2d5aa0f2;font-size:14px;font-weight:600;text-decoration:none;transition:transform .15s ease,background .15s ease,border-color .15s ease}.privacy-form-link:active{transform:scale(.98);background:#e1eeff;border-color:#3c78c847}.privacy-list{list-style:none;padding:0;margin:0 0 8px}.privacy-list li{font-size:14px;color:#555;line-height:1.8;padding-left:16px;position:relative}.privacy-list li:before{content:"・";position:absolute;left:0;color:#888}.gconsent-overlay{position:fixed;inset:0;z-index:500;background:#0a1e3c73;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:24px 20px;animation:gconsent-fade-in .2s ease}@keyframes gconsent-fade-in{0%{opacity:0}to{opacity:1}}.gconsent-modal{background:#fffffff7;border-radius:16px;padding:32px 24px 28px;width:100%;max-width:340px;box-shadow:0 12px 40px #0a1e502e;display:flex;flex-direction:column;align-items:center;gap:0;animation:gconsent-pop-in .25s cubic-bezier(.34,1.56,.64,1)}@keyframes gconsent-pop-in{0%{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}.gconsent-title{font-size:18px;font-weight:700;color:#222;text-align:center;margin:0 0 20px;line-height:1.4}.gconsent-lead{font-size:14px;color:#555;line-height:1.8;text-align:center;margin:0 0 10px}.gconsent-list{list-style:none;margin:0 0 16px;align-self:stretch;padding:0 0 0 8px}.gconsent-list li{font-size:14px;color:#555;line-height:1.8;padding-left:16px;position:relative}.gconsent-list li:before{content:"・";position:absolute;left:0;color:#888}.gconsent-note{font-size:13px;color:#777;line-height:1.7;text-align:center;margin:0 0 12px}.gconsent-terms-notice{font-size:11.5px;color:#777;text-align:center;line-height:1.6;margin-bottom:20px}.gconsent-link-text{background:none;border:none;font:inherit;font-size:11.5px;color:#3c78c8e6;text-decoration:underline;cursor:pointer;padding:0 4px}.gconsent-link-text:active{opacity:.6}.gconsent-actions{display:flex;flex-direction:column;align-items:center;gap:12px;width:80%}.gconsent-google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:11px 16px;border:1.5px solid #dadce0;border-radius:8px;background:#fff;font:inherit;font-size:15px;font-weight:500;color:#3c4043;cursor:pointer;box-shadow:0 1px 3px #00000014;transition:box-shadow .15s ease}.gconsent-google-btn:hover{box-shadow:0 2px 6px #0000001f}.gconsent-google-btn:active{background:#f8f9fa}.gconsent-google-btn:disabled{opacity:.5;cursor:not-allowed}.gconsent-cancel{background:none;border:none;font:inherit;font-size:14px;color:#999;cursor:pointer;padding:4px 0}.gconsent-cancel:active{opacity:.6}.welcome-screen{position:fixed;inset:0;z-index:200;background:radial-gradient(circle at 18% 14%,rgba(255,255,255,.16) 0 10px,transparent 11px),radial-gradient(circle at 74% 22%,rgba(255,255,255,.14) 0 14px,transparent 15px),linear-gradient(180deg,#d9ecf8,#eef6fb 48%,#d3e7f7);display:flex;align-items:flex-start;justify-content:center;padding:clamp(44px,6vh,72px) 24px 64px;overflow:hidden;overflow-y:auto}.welcome-screen:before,.welcome-screen:after{content:"";position:absolute;border-radius:999px;background:radial-gradient(circle at 35% 35%,#ffffff6b,#ffffff14 58%,#fff0 72%);filter:blur(.5px);pointer-events:none;animation:welcome-bubble-drift 12s ease-in-out infinite}.welcome-screen:before{width:130px;height:130px;top:8vh;left:10vw;opacity:.55}.welcome-screen:after{width:88px;height:88px;top:18vh;right:12vw;opacity:.38;animation-duration:15s;animation-direction:reverse}.welcome-close-btn{position:fixed;top:14px;right:16px;z-index:10;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffffb8;border:1px solid rgba(200,220,240,.5);border-radius:50%;font-size:18px;line-height:1;color:#3c506cb8;cursor:pointer;font-family:inherit;box-shadow:0 4px 12px #6081a31f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .15s,transform .1s;-webkit-tap-highlight-color:transparent}.welcome-close-btn:active{transform:scale(.92);background:#ffffffe6}@keyframes welcome-bubble-drift{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(0,-12px,0) scale(1.04)}}.welcome-content{display:flex;flex-direction:column;align-items:center;max-width:min(1140px,calc(100vw - 48px));width:100%;text-align:center;position:relative;z-index:1;gap:28px}.welcome-logo{display:flex;align-items:center;justify-content:center;margin-bottom:14px}.welcome-logo-image{height:100px;width:auto}.welcome-logo-text{font-size:34px;font-weight:300;color:#3a4e69d1;letter-spacing:.14em}.welcome-tagline{margin:0 0 14px;font-size:13px;color:#3d5068d1;letter-spacing:.1em;font-style:italic}.welcome-hero,.welcome-story{width:100%}.welcome-hero{display:grid;gap:20px;align-items:center}.welcome-hero-copy{display:flex;flex-direction:column;align-items:center}.welcome-title{margin:0 0 14px;font-size:clamp(28px,3.2vw,46px);line-height:1.18;letter-spacing:.02em;color:#233148f5;max-width:12em}.welcome-lead{margin:0 0 16px;font-size:15px;line-height:1.9;color:#43556dd6;max-width:34rem}.welcome-hero-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:18px}.welcome-hero-stats span{padding:8px 12px;border-radius:999px;font-size:12px;color:#364e67db;background:#ffffff94;border:1px solid rgba(255,255,255,.62);box-shadow:0 8px 18px #6081a314}.welcome-hero-visual{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%}.welcome-slide-wrapper{display:flex;align-items:center;gap:10px;width:min(322px,100%)}.welcome-slide-arrow{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#ffffffb8;border:1px solid rgba(200,220,240,.5);border-radius:50%;color:#3c506cb8;cursor:pointer;transition:background .15s,transform .1s,opacity .15s;box-shadow:0 4px 12px #6081a31f;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);-webkit-tap-highlight-color:transparent}.welcome-slide-arrow svg{width:18px;height:18px;display:block}.welcome-slide-arrow:hover:not(:disabled){background:#ffffffeb;transform:scale(1.08)}.welcome-slide-arrow:active:not(:disabled){transform:scale(.94)}.welcome-slide-arrow:disabled{opacity:.25;cursor:default}.welcome-slide-viewer{position:relative;flex:1;min-width:0;aspect-ratio:9 / 19;overflow:hidden;border-radius:30px;border:1px solid rgba(255,255,255,.65);box-shadow:0 24px 56px #6081a333,0 8px 22px #6081a31f,inset 0 1px #fff9;cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.welcome-slide-viewer:active{cursor:grabbing}.welcome-slide-track{display:flex;height:100%;transition:transform .38s cubic-bezier(.4,0,.2,1);will-change:transform}.welcome-slide-item{position:relative;flex:0 0 100%;height:100%;overflow:hidden}.welcome-slide-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.welcome-slide-placeholder-label{font-size:12px;font-weight:700;letter-spacing:.18em}.welcome-slide-placeholder-sub{font-size:11px;letter-spacing:.08em}.welcome-slide-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:opacity .2s}.welcome-slide-caption{display:flex;justify-content:center;margin-top:2px}.welcome-slide-caption-label{padding:7px 12px;border-radius:999px;background:#ffffff9e;color:#2e4668f5;font-family:inherit;font-size:11px;font-weight:700;letter-spacing:.04em;line-height:1;box-shadow:0 6px 14px #6081a314}.welcome-showcase{width:100%;margin-bottom:18px}.welcome-showcase-grid{display:grid;gap:12px;margin-bottom:16px}.welcome-preview{position:relative;overflow:hidden;border-radius:22px;padding:14px 14px 12px;border:1px solid rgba(255,255,255,.65);box-shadow:0 12px 28px #6081a31f,0 3px 10px #6081a314;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.welcome-preview-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.welcome-preview-kicker{font-size:11px;font-weight:700;letter-spacing:.16em;color:#3e516ba8}.welcome-preview-tag{font-size:11px;color:#3e516b94}.welcome-preview-copy{margin:12px 0 0;font-size:12px;line-height:1.7;color:#44556ec2;text-align:left}.welcome-preview--home{background:linear-gradient(180deg,#def0fceb,#cde5f7eb)}.welcome-preview-bubbles{position:relative;min-height:134px}.welcome-preview-bubble{position:absolute;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;color:#35445cc2;background:radial-gradient(circle at 30% 30%,#ffffff7a,#ffffff24 64%,#ffffff0d);border:1px solid rgba(255,255,255,.42);box-shadow:inset 0 0 30px #fff3;animation:welcome-preview-float 7s ease-in-out infinite}.welcome-preview-bubble--lg{width:104px;height:104px;top:10px;left:56px;font-size:14px}.welcome-preview-bubble--md{width:92px;height:92px;top:52px;left:12px;font-size:13px;animation-delay:-1.6s}.welcome-preview-bubble--sm{width:72px;height:72px;bottom:6px;left:6px;font-size:12px;animation-delay:-3s}.welcome-preview--detail{background:linear-gradient(180deg,#f6f9fff2,#e8f1fbf0)}.welcome-preview-sheet{background:#ffffffb8;border:1px solid rgba(145,190,240,.42);border-radius:16px;padding:12px 12px 10px;text-align:left}.welcome-preview-title{margin:0 0 10px;font-size:13px;font-weight:700;color:#2e3f59eb}.welcome-preview-note{display:grid;gap:4px;margin-bottom:10px;font-size:12px;color:#495a73c7}.welcome-preview-statuses{display:flex;flex-wrap:wrap;gap:6px;font-size:11px;color:#2d60afeb}.welcome-preview-statuses span{padding:4px 8px;border-radius:999px;background:#64aaf01f;border:1px solid rgba(100,170,240,.16)}.welcome-preview--lagoon{background:linear-gradient(180deg,#13224cf5,#18336eeb);color:#e6f5ffe0}.welcome-preview--lagoon .welcome-preview-kicker,.welcome-preview--lagoon .welcome-preview-tag,.welcome-preview--lagoon .welcome-preview-copy{color:#d8ecffb8}.welcome-preview-lagoon{position:relative;min-height:124px;border-radius:18px;background:radial-gradient(circle at 24% 22%,rgba(255,255,255,.18) 0 2px,transparent 3px),radial-gradient(circle at 68% 30%,rgba(255,255,255,.18) 0 2px,transparent 3px),radial-gradient(circle at 84% 58%,rgba(255,255,255,.16) 0 2px,transparent 3px),linear-gradient(180deg,#163e7780,#16224633);overflow:hidden}.welcome-preview-lagoon-bubble{position:absolute;left:50%;top:50%;transform:translate(-50%,-12%);width:86px;height:86px;border-radius:999px;border:1px solid rgba(255,255,255,.42);background:radial-gradient(circle at 34% 30%,#ffffff42,#ffffff14 60%,#ffffff0a);color:#e9f4ffeb;display:flex;align-items:center;justify-content:center;font-size:13px;box-shadow:inset 0 0 28px #ffffff14;animation:welcome-preview-float 8.4s ease-in-out infinite}.welcome-preview-star{position:absolute;width:4px;height:4px;border-radius:50%;background:#ffffffeb;box-shadow:0 0 10px #ffffff6b;top:18px;left:20px}.welcome-preview-star--dim{width:3px;height:3px;top:42px;right:26px;left:auto;opacity:.72;animation-delay:-1.5s}.welcome-feature-list{display:grid;gap:14px}.welcome-feature-list-item{display:contents}.welcome-feature-card{display:flex;flex-direction:column;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.65);box-shadow:0 10px 24px #6081a31a,0 3px 8px #6081a30f;text-align:left;cursor:zoom-in;-webkit-tap-highlight-color:transparent;transition:transform .18s ease,box-shadow .18s ease;width:100%;padding:0;font-family:inherit;font:inherit;background:#ffffff94}.welcome-feature-card:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 18px 36px #6081a329,0 6px 14px #6081a31a}.welcome-feature-card:active{transform:scale(.98);box-shadow:0 6px 16px #6081a314}.welcome-feature-card-img-wrap{position:relative;width:100%;aspect-ratio:16 / 10;overflow:hidden;background:#dcebf899}.welcome-feature-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .28s ease,opacity .2s}.welcome-feature-card:hover .welcome-feature-img{transform:scale(1.04)}.welcome-feature-card-body{display:flex;flex-direction:column;gap:4px;padding:12px 14px 14px}.welcome-feature-card-header{display:flex;align-items:center;gap:10px}.welcome-feature-body{min-width:0}.welcome-feature-title{margin:0;font-size:13px;font-weight:700;color:#31425ceb}.welcome-feature-text{margin:2px 0 0;font-size:12px;line-height:1.65;color:#46576fcc}@keyframes welcome-preview-float{0%,to{transform:translateZ(0) translate(-50%,-12%)}50%{transform:translate3d(0,-7px,0) translate(-50%,-12%)}}.welcome-security{display:flex;align-items:flex-start;gap:8px;margin-bottom:0;padding:0 4px}.welcome-security-icon{width:16px;height:16px;flex:0 0 16px;color:#58708cc7;display:inline-flex;align-items:center;justify-content:center;margin-top:2px}.welcome-security-icon svg{display:block}.welcome-security-text{margin:0;font-size:13px;color:#52647cd1;line-height:1.65;text-align:left}.welcome-google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:13px 20px;background:#fffffff2;border:1px solid rgba(120,150,180,.18);border-radius:12px;box-shadow:0 10px 24px #6081a31f,0 3px 8px #6081a314;font-size:15px;font-family:inherit;color:#36455ce6;cursor:pointer;transition:box-shadow .15s,transform .1s;-webkit-tap-highlight-color:transparent}.welcome-google-btn:active:not(:disabled){box-shadow:0 6px 16px #6081a314;transform:translateY(1px) scale(.99)}.welcome-google-btn:disabled{opacity:.6;cursor:not-allowed}.welcome-guest-area{display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}.welcome-guest-btn{background:none;border:none;font-size:14px;color:#4f6783d1;text-decoration:underline;text-underline-offset:3px;cursor:pointer;font-family:inherit;padding:4px 8px;-webkit-tap-highlight-color:transparent}.welcome-guest-btn:active:not(:disabled){opacity:.6}.welcome-guest-btn:disabled{opacity:.4;cursor:not-allowed}.welcome-guest-note{margin:0;font-size:12px;color:#596a81d1;line-height:1.7}.welcome-actions{display:flex;flex-direction:column;gap:12px;width:min(100%,420px)}.welcome-actions--hero{margin-top:6px}.welcome-actions--footer{width:min(100%,420px)}.welcome-story{display:flex;flex-direction:column;gap:18px;padding:24px 0 0;border-top:1px solid rgba(255,255,255,.55)}.welcome-story-head{text-align:left}.welcome-story-kicker{display:inline-flex;margin-bottom:6px;font-size:11px;letter-spacing:.18em;font-weight:700;color:#445a769e}.welcome-story-title{margin:0;font-size:clamp(20px,2vw,28px);line-height:1.35;color:#233148f0}.welcome-story-bottom{display:flex;flex-direction:column;gap:18px;padding-top:6px}.welcome-background{margin-top:8px;padding:22px 18px 20px;border-radius:20px;background:#ffffff80;border:1px solid rgba(255,255,255,.64);box-shadow:0 12px 28px #6081a314}.welcome-background-head{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.welcome-background-title{margin:0;font-size:clamp(18px,1.8vw,24px);line-height:1.45;color:#233148f0;text-align:left}.welcome-background-body{display:flex;flex-direction:column;gap:14px}.welcome-background-body p{margin:0;font-size:14px;line-height:1.9;color:#43556de0;text-align:left}.welcome-background-author{display:inline-flex;align-items:center;gap:10px;margin-top:4px;font-weight:600;color:#36455ceb}.welcome-background-author-icon{width:28px;height:28px;flex:0 0 28px;border-radius:50%;object-fit:cover;box-shadow:0 4px 10px #6081a31f}.welcome-background-author-text{margin:0}.welcome-privacy-link{align-self:center;margin-top:6px;padding:10px 14px;border:none;background:transparent;color:#466696e0;font:inherit;font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer;-webkit-tap-highlight-color:transparent}.welcome-privacy-link+.welcome-privacy-link{margin-top:0}.welcome-privacy-link:active{opacity:.65}.welcome-privacy-link:focus-visible{outline:2px solid rgba(100,140,190,.35);outline-offset:3px;border-radius:10px}.welcome-image-modal{position:fixed;inset:0;z-index:260;padding:20px;background:#061022ad;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center}.welcome-image-modal-card{position:relative;width:min(92vw,640px);max-height:min(88vh,920px);padding:16px 16px 14px;border-radius:24px;background:#f7fbfffa;border:1px solid rgba(255,255,255,.7);box-shadow:0 24px 60px #000a1947;display:flex;flex-direction:column;gap:12px}.welcome-image-modal-close{position:absolute;top:10px;right:10px;width:34px;height:34px;border:none;border-radius:50%;background:#5f82aa1a;color:#2a4260e0;cursor:pointer;font-size:18px;line-height:1}.welcome-image-modal-img{width:100%;max-height:calc(88vh - 94px);object-fit:contain;display:block;border-radius:18px;background:#ebf2f8b3}.welcome-image-modal-caption{margin:0;font-size:13px;color:#3d5068c7;text-align:center;letter-spacing:.04em}@media(min-width:640px){.welcome-hero{grid-template-columns:minmax(280px,.95fr) minmax(0,1.05fr);align-items:start;gap:28px}.welcome-hero-copy{align-items:flex-start;text-align:left;padding-top:18px}.welcome-hero-stats{justify-content:flex-start}.welcome-showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.welcome-preview-bubbles,.welcome-preview--detail .welcome-preview-sheet{min-height:118px}.welcome-feature-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.welcome-story-bottom{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:24px}.welcome-security{flex:1 1 0;max-width:420px}.welcome-background{padding:26px 24px 24px}}@media(max-width:639px){.welcome-screen{padding:54px 18px 72px}.welcome-content{max-width:100%}.welcome-logo-image{height:68px}.welcome-preview-bubble--lg{left:50%;transform:translate(-50%)}.welcome-preview-bubble--md{left:14%}.welcome-preview-bubble--sm{left:auto;right:14%}.welcome-title{max-width:none;font-size:26px}.welcome-lead{font-size:14px}.welcome-actions,.welcome-actions--footer{width:100%}.welcome-background{padding:20px 16px 18px}}
