*{box-sizing:border-box;margin:0;padding:0}button,input,select,textarea{font-variation-settings:"wght" 400;font-family:inherit}html,body{width:100%;min-height:100%}body{color:#fff;background:linear-gradient(135deg,#0f0f0f 0%,#0a0a0a 50%,#0f0f0f 100%);font-family:Bitcount,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;line-height:1.6}#app{flex-direction:column;align-items:center;gap:32px;max-width:1250px;margin:0 auto;padding:48px 24px;display:flex}.topbar{text-align:center}.topbar-title{font-variation-settings:"wght" 700;font-size:2.4rem}.topbar-sub{opacity:.6;font-size:1.1rem}#calendar{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff08;border:1px solid #ffffff26;border-radius:16px;align-items:center;gap:16px;padding:12px 20px;display:flex}.calendar-label{opacity:.7;font-size:1rem}.calendar-input{color:#fff;background:0 0;border:none;border-bottom:1px solid #ffffff4d;outline:none;padding:4px 8px;font-size:1.1rem;transition:border-color .3s}.calendar-input:hover,.calendar-input:focus{border-bottom-color:#fffc}.calendar-input::-webkit-calendar-picker-indicator{filter:invert();opacity:.6;cursor:pointer}.calendar-input::-webkit-calendar-picker-indicator:hover{opacity:1}.calendar-today{color:#111;cursor:pointer;background:#fff;border:0;border-radius:10px;padding:6px 16px;font-size:.95rem;transition:box-shadow .3s}.calendar-today:hover{box-shadow:0 0 14px #ffffffb3}#picture{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.stage{justify-content:center;align-items:center;max-width:100%;display:flex}.picture-frame{z-index:2;background:#161616;border:1px solid #ffffff26;border-radius:24px;flex-direction:column;align-items:center;gap:12px;min-width:0;padding:20px;transition:transform .6s,box-shadow .3s;display:flex}.stage.open .picture-frame{transform:translate(-14px)}.picture-frame:hover{box-shadow:0 0 24px #ffffff26}.picture-img{border-radius:12px;max-width:100%;max-height:65vh;display:block}.picture-video{aspect-ratio:16/9;border:none;border-radius:12px;width:100%;min-width:480px}.picture-title{font-variation-settings:"wght" 600;text-align:center;font-size:1.4rem}.picture-date{opacity:.5;font-size:.95rem}.picture-state{opacity:.7;font-size:1.3rem}.picture-error{opacity:.5;font-size:1rem}@media (width<=800px){.stage{flex-direction:column}.stage.open .picture-frame{transform:translateY(-4px)}.picture-video{min-width:0}}.description-panel{z-index:1;opacity:0;background:#ffffff08;border:1px solid #fff0;border-radius:20px;align-self:center;min-width:0;max-width:0;transition:max-width .6s,opacity .6s,transform .6s,margin-left .6s,border-color .6s;overflow:hidden;transform:translate(-48px)}.stage.open .description-panel{opacity:1;border-color:#ffffff26;flex-shrink:0;max-width:480px;margin-left:20px;transform:translate(0)}.description-inner{width:430px;max-width:100%;max-height:65vh;padding:20px;overflow:hidden auto}.description-label{opacity:.5;margin-bottom:10px;font-size:.95rem}.description-text{opacity:.8;font-size:.95rem;line-height:1.7}.description-inner::-webkit-scrollbar{width:6px}.description-inner::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:3px}.description-inner::-webkit-scrollbar-thumb:hover{background:#ffffff80}@media (width<=800px){.description-panel{align-self:stretch;max-width:none;max-height:0;transition:max-height .6s,opacity .6s,transform .6s,margin-top .6s,border-color .6s;transform:translateY(-32px)}.stage.open .description-panel{max-height:70vh;margin-top:16px;margin-left:0;transform:translateY(0)}.description-inner{width:auto;max-height:60vh}}#footer{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff08;border:1px solid #ffffff26;border-radius:18px;justify-content:center;align-items:center;gap:14px;padding:14px 24px;display:flex}.footer-btn{color:#fff;cursor:pointer;opacity:.85;background:0 0;border:1px solid #ffffff40;border-radius:12px;padding:8px 18px;font-size:1rem;transition:box-shadow .3s,border-color .3s,opacity .3s}.footer-btn:hover{opacity:1;border-color:#fffc;box-shadow:0 0 14px #fff6}.download-wrap{position:relative}.download-menu{opacity:0;pointer-events:none;background:#161616;border:1px solid #fff3;border-radius:14px;flex-direction:column;min-width:150px;padding:6px;transition:opacity .25s,transform .25s;display:flex;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)translateY(6px)}.download-menu.open{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.download-option{color:#fff;text-align:left;cursor:pointer;opacity:.7;background:0 0;border:none;border-radius:10px;padding:8px 12px;font-size:.95rem;transition:opacity .2s,background .2s}.download-option:hover{opacity:1;background:#ffffff14}.likes-overlay{z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.likes-panel{background:#121212;border:1px solid #ffffff26;border-radius:24px;width:min(900px,100%);max-height:85vh;padding:24px;overflow-y:auto}.likes-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.likes-title{font-variation-settings:"wght" 600;font-size:1.4rem}.likes-close{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff4d;border-radius:10px;padding:6px 14px;transition:box-shadow .3s,border-color .3s}.likes-close:hover{border-color:#fffc;box-shadow:0 0 12px #fff6}.likes-empty{opacity:.5;text-align:center;padding:40px 0}.likes-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;display:grid}.likes-card{cursor:pointer;border:1px solid #ffffff1f;border-radius:16px;padding:12px;transition:box-shadow .3s,border-color .3s;position:relative}.likes-card:hover{border-color:#fff6;box-shadow:0 0 16px #ffffff26}.likes-thumb{aspect-ratio:16/10;object-fit:cover;border-radius:10px;width:100%;display:block}.likes-thumb-video{opacity:.5;border:1px dashed #ffffff4d;justify-content:center;align-items:center;display:flex}.likes-card-title{white-space:nowrap;text-overflow:ellipsis;margin-top:10px;font-size:.95rem;overflow:hidden}.likes-card-date{opacity:.5;font-size:.85rem}.likes-remove{color:#fff;cursor:pointer;opacity:0;background:#000000b3;border:1px solid #ffffff4d;border-radius:8px;width:26px;height:26px;transition:opacity .2s;position:absolute;top:18px;right:18px}.likes-card:hover .likes-remove{opacity:1}
