*,*: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}#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,.25);outline:1px solid rgba(180,220,255,.12);box-shadow:inset 0 0 20px #ffffff26,inset -5px -5px 15px #c8aaff14,0 0 15px #add8e633,0 4px 16px #64a0dc1f;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;align-items:center;justify-content:center;overflow:hidden;transition:transform .2s ease,box-shadow .3s ease;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.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 8px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:85%;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-item{box-shadow:inset 0 0 20px #ffffff2e,inset -5px -5px 15px #c8aaff14,0 0 16px #add8e638,0 4px 16px #64a0dc24}.sky-view--night .bubble-item--nearby .bubble-text{color:#fffaf0fa;text-shadow:0 0 8px rgba(255,198,92,.92),0 0 2px rgba(255,255,255,.7)}.bubble-item:active{transform:scale(.95)}.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(255,220,150,.18) 40%,rgba(255,182,96,.12) 60%,rgba(255,255,255,.12) 80%,transparent 100%);box-shadow:inset 0 0 25px #fff3,inset -5px -5px 15px #ffbe6e1f,0 0 20px #ffb85c52,0 0 0 4px #ffcc783d,0 0 40px #ffaa462e;outline:1px solid rgba(255,220,150,.24);filter:saturate(1.08) brightness(1.04);opacity:1;z-index:10;animation:bubble-float-active var(--float-duration, 3s) ease-in-out infinite var(--float-delay, 0s)}.bubble-item--nearby:before{top:-6%;left:-6%;width:112%;height:112%;background:radial-gradient(ellipse,rgba(255,210,130,.26) 0%,rgba(255,182,96,.14) 45%,transparent 72%);filter:blur(3px)}.bubble-item--nearby:after{bottom:10%;right:10%;background:linear-gradient(135deg,#ffd6943d,#ffba6a38,#fff4d629)}.bubble-item--completed{animation:bubble-dissolve 1.2s ease-out forwards;pointer-events:none}.bubble-item--highlighted{outline:1px solid rgba(120,210,255,.7);filter:saturate(1.15) brightness(1.05);box-shadow: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-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:14px;color:var(--text-primary);font-family:inherit;line-height:1}.bubble-input-field::placeholder{color:var(--text-secondary)}.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: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%);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:24px 20px 20px;display:flex;flex-direction:column;gap:14px}.bubble-detail-handle{width:36px;height:4px;background:#6478a040;border-radius:2px;margin:0 auto -6px}.bubble-detail-text{font-size:18px;font-weight:600;color:var(--text-primary);line-height:1.5;word-break:break-all}.bubble-detail-status{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary);background:#648cc81a;border-radius:12px;padding:4px 10px;width:fit-content}.bubble-detail-memo{width:100%;min-height:60px;background:#ffffff80;border:1px solid rgba(180,200,230,.4);border-radius:12px;padding:10px 12px;font-size:14px;color:var(--text-primary);font-family:inherit;resize:none;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}.bubble-detail-date{font-size:11px;color:var(--text-secondary)}.bubble-detail-actions{display:flex;flex-direction:column;gap:10px}.bubble-detail-btn{width:100%;padding:14px;border-radius:16px;font-size:16px;font-weight:600;cursor:pointer;border:none;transition:opacity .15s,transform .15s;font-family:inherit}.bubble-detail-btn:active{transform:scale(.97);opacity:.85}.bubble-detail-btn--keep{background:#64b5f633;color:#1565c0;border:1px solid rgba(100,181,246,.35)}.bubble-detail-btn--done{background:#66bb6ad9;color:#fff;border:1px solid rgba(76,175,80,.6);flex:1}.bubble-detail-main-row{display:flex;gap:10px;align-items:stretch}.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-footer{display:flex;justify-content:flex-end}.bubble-detail-btn--close{font-size:13px;color:var(--text-secondary);background:#0000000d;border:none;cursor:pointer;padding:6px 14px;border-radius:12px;font-family:inherit}.bubble-detail-delete-area{text-align:center;padding-top:4px}.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:#fff}.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:#fff;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:100px;min-width:100px;max-width:100px}.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-row:not(:last-child) .ym-td{border-bottom:1px solid rgba(100,160,220,.06)}.ym-td{padding:6px 0;vertical-align:middle}.ym-td-name{position:sticky;left:0;background:#fff;z-index:1;padding-right:0;padding-left:14px;width:100px;min-width:100px;max-width:100px;overflow:hidden}.ym-name-cell-inner{display:flex;align-items:center;justify-content:flex-start;width:100%;gap:8px;transform:translate(0);transition:transform .2s ease}.ym-name-cell-inner--swiped{transform:translate(-58px)}.ym-bubble-text-button{flex:1 1 auto;min-width:0;display:block;padding:0;margin:0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.ym-bubble-text{display:block;font-size:13px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:86px;line-height:1.4}.ym-delete-reveal-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:24px;padding:0;background:#ef53501f;color:#d65f5f;border:1px solid rgba(239,83,80,.18);border-radius:999px;font-size:11px;font-weight:600;cursor:pointer;font-family:inherit;box-shadow:0 1px 3px #ef535014}.ym-td-dot{text-align:center;width:32px;min-width:32px}.ym-dot{width:16px;height:16px;border-radius:50%;background:#e8e8e8;margin:0 auto}.ym-dot--active{background:radial-gradient(circle at 40% 35%,#b3e5fc,#4fc3f7);box-shadow:0 0 6px 2px #4fc3f755}.ym-confirm-overlay{position:absolute;inset:0;background:#0a1e3c4d;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10}.ym-confirm-card{background:#fff;border-radius:16px;padding:20px 20px 16px;width:min(300px,88vw);box-shadow:0 8px 32px #00286426;display:flex;flex-direction:column;gap:14px}.ym-confirm-text{font-size:13px;color:#444;line-height:1.6;margin:0}.ym-confirm-btns{display:flex;gap:8px;justify-content:flex-end}.ym-confirm-cancel{font-size:13px;color:#888;background:#0000000d;border:none;cursor:pointer;padding:7px 16px;border-radius:10px;font-family:inherit}.ym-confirm-ok{font-size:13px;color:#fff;background:#ef5350;border:none;cursor:pointer;padding:7px 18px;border-radius:10px;font-family:inherit;font-weight:600}.ym-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--text-secondary);opacity:.65}.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-panel-count,.daily-sky-wrapper.sky-daily--morning .day-panel-count{color:#233754f0;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{color:#2d4464d1;text-shadow:none}.daily-sky-wrapper.sky-daily--dawn .day-bubble-text,.daily-sky-wrapper.sky-daily--morning .day-bubble-text{color:#203252e6;text-shadow:none}.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;gap:6px}.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-count{font-size:20px;font-weight:300;color:#fffffff2;letter-spacing:.04em;text-shadow:0 1px 8px rgba(0,30,80,.2);margin:0}.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-bubble{border-radius:50%;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 30%,#ffffff8c,#c8ebff40 35%,#b4d2fa26 60%,#d2beff33);border:1px solid rgba(255,255,255,.45);box-shadow:0 4px 16px #64a0dc33,0 0 8px 2px #add8e640,inset 0 0 10px #ffffff26;animation:float 3s ease-in-out var(--float-delay, 0s) infinite}.day-bubble:before{content:"";position:absolute;top:18%;left:22%;width:28%;height:18%;border-radius:50%;background:#ffffffb3;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-bubble-check{position:absolute;bottom:14%;right:14%;font-size:9px;color:#ffffffd9;z-index:1;line-height:1}@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:#fffffff5}@media(max-width:375px){.day-panel-header{padding:16px 8px 12px}.day-panel-date{font-size:14px}.day-panel-count{font-size:17px}.daily-sky-footer{padding:10px 16px 24px}}.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:15px;color:#dcf0ffe6;font-family:inherit;outline:none;transition:border-color .15s}.entry-input::placeholder{color:#96c8ff59}.entry-input:focus{border-color:#64c8ff80}.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}.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-privacy-link{background:none;border:none;font:inherit;font-size:13px;color:#3c78c8e6;text-decoration:underline;cursor:pointer;margin-bottom:24px;padding:0}.gconsent-privacy-link: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}.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-title{font-size:18px;font-weight:500;color:var(--text-primary);letter-spacing:.06em}.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:15px;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;-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}}.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-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}.lagoon-container{position:fixed;inset:0;width:100vw;height:100vh;overflow:hidden;touch-action:none}.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}.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-solo-badge{position:fixed;top:20px;right:16px;font-size:11px;color:#c8dcff8c;letter-spacing:.05em;padding:4px 10px;background:#000a1e59;border-radius:20px;border:1px solid rgba(100,150,255,.1);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:10}.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-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}}.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}.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}.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:400;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-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-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}.welcome-screen{position:fixed;inset:0;background:var(--sky-dawn);display:flex;align-items:center;justify-content:center;padding:0 32px}.welcome-content{display:flex;flex-direction:column;align-items:center;max-width:320px;width:100%;text-align:center}.welcome-logo{display:flex;align-items:center;justify-content:center;margin-bottom:10px}.welcome-logo-image{height:80px;width:auto}.welcome-logo-text{font-size:34px;font-weight:300;color:#ffffffe0;letter-spacing:.14em}.welcome-tagline{margin:0 0 36px;font-size:13px;color:#374e6ce6;letter-spacing:.1em;font-style:italic}.welcome-security{display:flex;align-items:flex-start;gap:8px;margin-bottom:28px;padding:0 4px}.welcome-security-icon{width:16px;height:16px;flex:0 0 16px;color:#5078a0cc;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:#5078a0cc;line-height:1.65;text-align:left}.welcome-google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:80%;padding:13px 20px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:12px;box-shadow:0 2px 8px #0000001a,0 1px 3px #0000000f;font-size:15px;font-family:inherit;color:#282828e0;cursor:pointer;margin-bottom:22px;transition:box-shadow .15s,transform .1s;-webkit-tap-highlight-color:transparent}.welcome-google-btn:active:not(:disabled){box-shadow:0 1px 4px #00000014;transform:scale(.98)}.welcome-google-btn:disabled{opacity:.6;cursor:not-allowed}.welcome-guest-area{display:flex;flex-direction:column;align-items:center;gap:10px}.welcome-guest-btn{background:none;border:none;font-size:14px;color:#5078aabf;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:#415c7cd1;line-height:1.7}
