:root{--text-main:#1a1a1a;--text-muted:#737373;--border-light:#e5e5e5;--bg-app:#fff;--bg-hover:#fafafa;--bg-special:#fcfcfc;--shimmer-color:#00000002}@media (prefers-color-scheme:dark){:root{--text-main:#fff;--text-muted:#525252;--border-light:#171717;--bg-app:#050505;--bg-hover:#0a0a0a;--bg-special:#080808;--shimmer-color:#ffffff04}}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-app);color:var(--text-main);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}#root{flex-direction:column;align-items:center;width:100%;min-height:100vh;display:flex}.calendar-container{border:1px solid var(--border-light);--mouse-x:50%;--mouse-y:50%;border-radius:8px;width:90%;max-width:380px;margin:auto;padding:2rem;transition:opacity .3s,transform .3s;position:relative;overflow:hidden}.ty-backdrop{-webkit-backdrop-filter:blur(3px);z-index:149;cursor:pointer;background:#00000061;transition:opacity .65s,-webkit-backdrop-filter .65s,backdrop-filter .65s;animation:.5s both overlayFadeIn;position:fixed;inset:0}.ty-backdrop.ty-out{opacity:0;pointer-events:none;-webkit-backdrop-filter:blur()}.ty-popup{z-index:200;box-sizing:border-box;background:var(--bg-app);border:1px solid var(--border-light);cursor:pointer;transition:height .75s var(--smooth-easing), transform .75s var(--smooth-easing), max-width .75s var(--smooth-easing), padding .7s var(--smooth-easing), border-radius .7s var(--smooth-easing), box-shadow .5s ease;position:fixed;top:50%;left:50%;overflow:hidden}.ty-popup.ty-card{width:88vw;max-width:360px;animation:tyPopIn .72s var(--spring-easing) both;border-radius:16px;padding:2.25rem 2rem 1.75rem;transform:translate(-50%,-50%);box-shadow:0 24px 80px #0000004d,0 0 0 .5px #ffffff0a}.ty-popup.ty-pill{border-radius:100px;width:88vw;max-width:280px;padding:0 1.2rem;transform:translate(-50%,calc(50vh - 5.5rem));box-shadow:0 6px 24px #00000024}.ty-card-body{text-align:center;flex-direction:column;align-items:center;gap:1.05rem;display:flex}.ty-card .ty-card-body{opacity:1;pointer-events:auto;transition:opacity .35s .3s}.ty-pill .ty-card-body{opacity:0;pointer-events:none;transition:opacity .18s}.ty-pill-body{white-space:nowrap;pointer-events:none;justify-content:center;align-items:center;gap:.45rem;display:flex;position:absolute;inset:0}.ty-card .ty-pill-body{opacity:0;transition:opacity .15s}.ty-pill .ty-pill-body{opacity:1;pointer-events:auto;transition:opacity .28s .52s}.ty-pill-text{color:var(--text-muted);text-transform:lowercase;letter-spacing:.01em;font-size:.67rem}.ty-pill-dot{color:var(--text-muted);opacity:.28;font-size:.45rem}.ty-pill-time{font-variant-numeric:tabular-nums;letter-spacing:.025em;color:var(--text-muted);opacity:.55;gap:.6em;font-size:.67rem;display:inline-flex}.ty-pill-unit{animation:pillTick .35s var(--smooth-easing) both;display:inline-block}@keyframes pillTick{0%{opacity:.2;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.ty-heading{letter-spacing:-.02em;text-transform:lowercase;background:linear-gradient(to right, var(--text-main) 20%, var(--text-muted) 45%, var(--text-muted) 55%, var(--text-main) 80%);-webkit-text-fill-color:transparent;animation:tyFadeUp .9s var(--smooth-easing) .15s both, shineTitle 6s linear 1.5s infinite;background-size:200%;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1rem;font-weight:500}.ty-sub{color:var(--text-muted);text-transform:lowercase;letter-spacing:.03em;animation:tyFadeUp .85s var(--smooth-easing) .3s both;margin:0;font-size:.72rem}.ty-divider{background:linear-gradient(to right, transparent, var(--border-light), transparent);width:28px;height:1px;animation:.7s .42s both tyFadeIn}.ty-countdown{animation:tyFadeUp .85s var(--smooth-easing) .52s both;align-items:flex-start;gap:1.5rem;display:flex}.countdown-unit{flex-direction:column;align-items:center;gap:.4rem;display:flex}.countdown-num{letter-spacing:-.05em;font-variant-numeric:tabular-nums;animation:countUp .45s var(--smooth-easing) both;font-size:1.9rem;font-weight:200;line-height:1;display:block}.countdown-label{color:var(--text-muted);text-transform:lowercase;letter-spacing:.08em;opacity:.4;font-size:.57rem}.ty-until{color:var(--text-muted);text-transform:lowercase;letter-spacing:.06em;animation:tyFadeUp .85s var(--smooth-easing) .65s both;margin:0;font-size:.6rem}.ty-hint{color:var(--text-muted);opacity:.3;text-transform:lowercase;letter-spacing:.06em;animation:tyFadeUp .85s var(--smooth-easing) .78s both;margin:0;font-size:.55rem}@keyframes tyPopIn{0%{opacity:0;filter:blur(5px);transform:translate(-50%,calc(18px - 50%))scale(.95)}to{opacity:1;filter:blur();transform:translate(-50%,-50%)scale(1)}}@keyframes tyFadeUp{0%{opacity:0;filter:blur(2px);transform:translateY(10px)}to{opacity:1;filter:blur();transform:translateY(0)}}@keyframes tyFadeIn{0%{opacity:0}to{opacity:1}}@keyframes countUp{0%{opacity:.2;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.calendar-container.dimmed{opacity:.2;pointer-events:none;transform:scale(.98)}.calendar-container.loading{opacity:.5;pointer-events:none}.calendar-container:after{content:"";background:radial-gradient(800px circle at var(--mouse-x) var(--mouse-y), var(--shimmer-color), transparent 100%);pointer-events:none;z-index:2;position:absolute;inset:0}.calendar-header{z-index:2;justify-content:space-between;align-items:baseline;margin-bottom:1.5rem;display:flex;position:relative}.calendar-header h1{text-transform:lowercase;letter-spacing:-.01em;font-size:1.25rem;font-weight:500}.calendar-header .year{color:var(--text-muted);opacity:.5;font-size:.875rem}.year-nav{align-items:center;gap:.15rem;display:flex}.year-arrow{color:var(--text-muted);cursor:pointer;opacity:.35;background:0 0;border:none;align-items:center;padding:.25rem;transition:opacity .2s,transform .2s;display:flex}.year-arrow:hover:not(:disabled){opacity:.85}.year-arrow:first-child:hover:not(:disabled){transform:translate(-1px)}.year-arrow:nth-child(3):hover:not(:disabled){transform:translate(1px)}.year-arrow:disabled{opacity:.1;cursor:default}.calendar-grid{border:1px solid rgba(var(--text-muted-rgb,115, 115, 115), .1);z-index:2;box-sizing:border-box;width:100%;animation:gridReveal .8s var(--smooth-easing) both;border-radius:4px;grid-template-columns:repeat(7,1fr);gap:0;display:grid;position:relative;overflow:hidden}@keyframes gridReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.calendar-grid.year-forward{animation:yearSlideForward .45s var(--smooth-easing) both}.calendar-grid.year-backward{animation:yearSlideBack .45s var(--smooth-easing) both}@keyframes yearSlideForward{0%{opacity:0;filter:blur(3px);transform:translate(14px)}to{opacity:1;filter:blur();transform:translate(0)}}@keyframes yearSlideBack{0%{opacity:0;filter:blur(3px);transform:translate(-14px)}to{opacity:1;filter:blur();transform:translate(0)}}.day-name,.day{background-color:var(--bg-app);aspect-ratio:1;border-right:1px solid rgba(var(--text-muted-rgb,115, 115, 115), .1);border-bottom:1px solid rgba(var(--text-muted-rgb,115, 115, 115), .1);min-width:0;animation:dayEntrance .6s var(--spring-easing) both;animation-delay:var(--delay,0s);justify-content:center;align-items:center;font-size:.75rem;display:flex}@keyframes dayEntrance{0%{opacity:0;transform:scale(.8)translateY(5px)}to{opacity:1;transform:scale(1)translateY(0)}}.day-name:nth-child(7n),.day:nth-child(7n){border-right:none}.day-content{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.day-num-top{opacity:.25;pointer-events:none;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.45rem;transition:opacity .2s;position:absolute;top:4px;left:6px}.day-emoji{pointer-events:none;justify-content:center;align-items:center;font-size:.95rem;transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1);display:flex}.emoji-img,.rendered-svg svg{object-fit:contain;width:21px;height:21px}.rendered-svg{color:inherit;justify-content:center;align-items:center;display:flex}.day-content.status-loaded .day-num-text{opacity:0;position:absolute;transform:scale(.8)}.day-content.status-loading .day-num-text,.day-content.status-error .day-num-text{opacity:.7;position:relative;transform:scale(1)}.day-content.status-loading .day-num-top{display:none}@media (hover:hover){.day:hover .day-num-top{opacity:0}.day:hover:not(.has-project) .day-num-text{transform:scale(1.4)}.day:hover .day-content.status-loaded .day-num-text{opacity:1;transform:scale(1.4)}.day:hover .day-content.status-loaded .day-emoji{opacity:0;transform:scale(.6)}}.shimmer-grid{opacity:.5;pointer-events:none;position:relative;overflow:hidden}.shimmer-grid:after{content:"";z-index:10;background:linear-gradient(90deg,#0000,#ffffff08 30%,#ffffff1f 50%,#ffffff08 70%,#0000);width:200%;height:100%;animation:2.2s ease-in-out infinite globalShimmer;position:absolute;top:0;left:-200%;transform:skew(-25deg)}@keyframes globalShimmer{to{left:200%}}.shimmer-day{border-bottom:1px solid #ffffff08;border-right:1px solid #ffffff08}.day-emoji{justify-content:center;align-items:center;transition:all .3s;display:flex}.emoji-img{object-fit:contain;width:1.25rem;height:1.25rem;transition:opacity .8s var(--spring-easing), transform .8s var(--spring-easing);will-change:opacity, transform}.day-emoji.status-loading .emoji-img{opacity:0;transform:scale(.8)translateY(4px)}.day-emoji.status-loaded .emoji-img{opacity:1;transform:scale(1)translateY(0)}.day-emoji.status-error{display:none}.day-name{color:var(--text-muted);text-transform:lowercase;opacity:.5;font-size:.75rem;font-weight:400}.day{color:var(--text-main);cursor:pointer;transition:background-color .2s,opacity .2s}.day-num-text{transition:transform .4s var(--spring-easing), color .2s ease, opacity .2s ease;z-index:2;opacity:.7;display:inline-block;position:relative}@media (hover:hover){.day:hover .day-num-text{color:var(--text-main);opacity:1;text-shadow:0 0 12px #ffffff1a;transform:scale(1.35)translateY(-1px)}}.day.empty{background-color:var(--bg-app);opacity:.1}.day.mayday{background-color:var(--bg-special);font-weight:600}.day.special-day{background:#ffffff08;border:1px solid #ffffff26;position:relative;box-shadow:inset 0 0 15px #ffffff05}.day.special-day .day-num-text{color:var(--text-main);text-shadow:0 0 12px #fff3;font-weight:700}.special-tag{text-transform:uppercase;letter-spacing:.1em;color:var(--text-main);font-weight:600}.hype-title{background:linear-gradient(to right, var(--text-main) 20%, var(--text-muted) 40%, var(--text-muted) 60%, var(--text-main) 80%);-webkit-text-fill-color:transparent;background-size:200%;-webkit-background-clip:text;background-clip:text;animation:3s linear infinite shineTitle}@keyframes shineTitle{to{background-position:200%}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background-color:#0003;justify-content:center;align-items:center;padding:1rem;animation:.4s ease-out forwards overlayFadeIn;display:flex;position:fixed;inset:0}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}:root{--spring-easing:cubic-bezier(.34, 1.56, .64, 1);--smooth-easing:cubic-bezier(.16, 1, .3, 1)}.modal-content{background:var(--bg-app);background:linear-gradient(145deg, var(--bg-app), color-mix(in srgb, var(--modal-accent,var(--bg-special)), var(--bg-app) 88%));border:1px solid var(--modal-accent,var(--border-light));width:100%;max-width:500px;animation:modalPop .6s var(--spring-easing) both;transition:all .5s var(--spring-easing), border-color .3s ease, background .5s ease;view-transition-name:modal-frame;border-radius:12px;padding:2.5rem;position:relative;overflow:hidden;box-shadow:0 30px 90px #0003}.modal-content h2{color:var(--modal-accent,var(--text-main))}.modal-body-animator{flex-direction:column;width:100%;display:flex}.modal-body-animator.slide-forward{animation:.4s cubic-bezier(.16,1,.3,1) both modalSlideForward}.modal-body-animator.slide-backward{animation:.4s cubic-bezier(.16,1,.3,1) both modalSlideBackward}@keyframes modalSlideForward{0%{opacity:0;filter:blur(4px);transform:translate(20px)}to{opacity:1;filter:blur();transform:translate(0)}}@keyframes modalSlideBackward{0%{opacity:0;filter:blur(4px);transform:translate(-20px)}to{opacity:1;filter:blur();transform:translate(0)}}@keyframes modalPop{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-overlay.closing{animation:.3s ease-in forwards overlayFadeOut}.modal-overlay.closing .modal-content{animation:.3s cubic-bezier(.16,1,.3,1) forwards modalPopOut}@keyframes overlayFadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalPopOut{0%{opacity:1;transform:scale(1)translateY(0)}to{opacity:0;transform:scale(.98)translateY(5px)}}.project-info>*,.video-container,.video-placeholder{animation:.6s cubic-bezier(.16,1,.3,1) both modalContentFade}.project-info>:first-child{animation-delay:.1s}.project-info>:nth-child(2){animation-delay:.15s}.project-info>:nth-child(3){animation-delay:.2s}.project-info>:nth-child(4){animation-delay:.25s}.project-info>:nth-child(5){animation-delay:.3s}.video-container,.video-placeholder{animation-delay:.4s}@keyframes modalContentFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.close-button{color:var(--text-muted);cursor:pointer;opacity:.5;background:0 0;border:none;font-size:1rem;transition:opacity .2s;position:absolute;top:1.5rem;right:1.5rem}.close-button:hover{opacity:1}.project-date{color:var(--text-muted);margin-bottom:.5rem;font-size:.7rem;display:block}.project-info h2{text-transform:lowercase;margin-bottom:1rem;font-size:1.5rem;font-weight:500}.project-info p{color:var(--text-muted);margin-bottom:1.5rem;font-size:.9rem;line-height:1.6}.modal-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin-bottom:2.5rem;display:flex}.action-btn,.project-link{cursor:pointer;height:34px;transition:all .4s var(--spring-easing);border:1px solid var(--border-light);background-color:var(--bg-app);color:var(--text-muted);white-space:nowrap;border-radius:100px;justify-content:center;align-items:center;padding:0 1.25rem;font-family:inherit;font-size:.72rem;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.project-link{background-color:var(--text-main);color:var(--bg-app);border-color:var(--text-main)}.action-btn:hover,.project-link:hover{transform:translateY(-2px)scale(1.02);box-shadow:0 6px 16px #0000001a}.share-btn.is-copied,.share-btn.is-copied:hover{background-color:var(--text-main);color:var(--bg-app);border-color:var(--text-main);animation:successPop .4s var(--spring-easing);opacity:1}@keyframes successPop{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.action-btn:hover{color:var(--text-main);border-color:var(--text-muted)}.more-btn:hover{color:#ff1f5a;background:#ff1f5a08;border-color:#ff1f5a33}.utility-btn{color:var(--text-muted);cursor:pointer;opacity:.4;background:0 0;border:none;justify-content:center;align-items:center;padding:.25rem;transition:opacity .2s,transform .2s;display:flex}.utility-btn:hover{opacity:1}.project-link:hover{opacity:.7}.video-container{aspect-ratio:16/9;background:var(--bg-hover);border:1px solid var(--border-light);border-radius:8px;width:100%;overflow:hidden}.video-container iframe{width:100%;height:100%}.video-placeholder{aspect-ratio:16/9;background:var(--bg-hover);width:100%;color:var(--text-muted);border-radius:8px;justify-content:center;align-items:center;font-size:.75rem;display:flex}.footer-left{pointer-events:auto;align-items:center;gap:.5rem;display:flex}.about-trigger{color:var(--text-muted);opacity:.3;cursor:pointer;text-transform:lowercase;letter-spacing:.05em;background:0 0;border:none;align-items:center;gap:.35rem;margin-left:.25rem;padding:4px 8px;font-family:inherit;font-size:.65rem;transition:opacity .2s,transform .2s;display:flex}.about-trigger:hover{opacity:.8;transform:translateY(-1px)}.about-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background-color:#0006;justify-content:center;align-items:center;animation:.3s ease-out forwards overlayFadeIn;display:flex;position:fixed;inset:0}.about-modal{background-color:var(--bg-app);border:1px solid var(--border-light);border-radius:12px;width:90%;max-width:400px;padding:2rem;animation:.4s cubic-bezier(.16,1,.3,1) both modalPop;position:relative;box-shadow:0 30px 90px #0006}.about-modal h3{text-transform:lowercase;color:var(--text-main);margin-bottom:1rem;font-size:1.1rem;font-weight:500}.about-modal p{color:var(--text-muted);margin-bottom:1rem;font-size:.85rem;line-height:1.6}.about-details{border-top:1px solid var(--border-light);opacity:.8;margin-top:1rem;padding-top:1rem}.about-close{color:var(--text-muted);cursor:pointer;opacity:.4;background:0 0;border:none;font-size:.8rem;position:absolute;top:1.25rem;right:1.25rem}.about-close:hover{opacity:1}.footer{pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:fixed;bottom:2rem;left:2rem;right:2rem}.footer a{color:var(--text-muted);letter-spacing:.05em;opacity:.4;pointer-events:auto;font-size:.7rem;text-decoration:none;transition:opacity .2s}.footer a:hover{opacity:1}.footer-left a:hover{background:linear-gradient(135deg,#a78bfa,#f472b6);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;transform:translateY(-1px);opacity:1!important}.app-wrapper{background-color:var(--bg-app);flex-direction:column;width:100%;min-height:100vh;display:flex;position:relative;overflow-x:hidden}.ambient-glow{pointer-events:none;height:60vh;opacity:calc(var(--bg-intensity,0) * .6);filter:blur(100px);z-index:0;will-change:transform, opacity;background:radial-gradient(circle at 20% 0,#ff008026,#0000 45%),radial-gradient(circle at 60% 0,#00ffc81f,#0000 45%),radial-gradient(circle at 90% 10%,#5078ff24,#0000 45%);transition:opacity 1s;animation:14s ease-in-out infinite glowShift;position:absolute;top:0;left:0;right:0}@keyframes glowShift{0%,to{transform:translate(-3%)scale(1)}50%{transform:translate(3%,2%)scale(1.05)}}.footer-links{pointer-events:auto;align-items:center;gap:2rem;display:flex}.phushsia-link{color:var(--text-muted)!important;opacity:.4!important}.phushsia-link:hover{text-shadow:0 0 12px #ff1f5a66;color:#ff1f5a!important;opacity:1!important}.update-link{color:var(--text-muted);letter-spacing:.05em;opacity:.4;cursor:pointer;text-transform:lowercase;align-items:center;gap:.35rem;font-size:.65rem;text-decoration:none;transition:opacity .2s,transform .2s;display:flex}.update-link:hover{opacity:1;transform:translateY(-1px)}.update-link svg{opacity:.8}.modal-nav{justify-content:center;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.nav-arrow{color:var(--text-muted);cursor:pointer;opacity:.3;background:0 0;border:none;margin-top:-4px;padding:.5rem;font-size:1.2rem;transition:opacity .2s,transform .2s}.nav-arrow:hover:not(:disabled){opacity:1;transform:translate(-2px)}.nav-arrow:nth-child(3):hover:not(:disabled){transform:translate(2px)}.nav-arrow:disabled{opacity:.1;cursor:not-allowed}.admin-login{justify-content:center;align-items:center;height:100vh;display:flex}.admin-login form{flex-direction:column;gap:1rem;display:flex}.admin-login input{background:var(--bg-app);border:1px solid var(--border-light);color:var(--text-main);border-radius:4px;outline:none;padding:.75rem 1rem;font-size:.8rem}.admin-login button{background:var(--text-main);color:var(--bg-app);cursor:pointer;text-transform:lowercase;border:none;border-radius:4px;padding:.75rem;font-size:.8rem}.admin-container{width:90%;max-width:600px;margin:4rem auto;animation:.5s modalFadeIn}.admin-header{justify-content:space-between;align-items:center;margin-bottom:3rem;display:flex}.admin-nav-links{align-items:center;gap:1.5rem;display:flex}.live-site-link{color:var(--text-muted);opacity:.6;font-size:.7rem;text-decoration:none;transition:opacity .2s}.live-site-link:hover{opacity:1}.admin-header h1{color:var(--text-muted);font-size:1rem;font-weight:500}.logout{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:.7rem;text-decoration:underline}.admin-form{background:var(--bg-special);border:1px solid var(--border-light);border-radius:8px;margin-bottom:3rem;padding:2rem}.admin-form h3{opacity:.8;margin-bottom:1.5rem;font-size:.9rem;font-weight:500}.form-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-grid input{grid-column:span 1}.color-picker-group{background:var(--bg-app);border:1px solid var(--border-light);border-radius:6px;grid-column:span 1;align-items:center;gap:.75rem;padding:.5rem .75rem;display:flex}.color-picker-group input[type=color]{cursor:pointer;background:0 0;border:none;width:24px;height:24px;padding:0}.color-picker-group input[type=color]::-webkit-color-swatch-wrapper{padding:0}.color-picker-group input[type=color]::-webkit-color-swatch{border:1px solid var(--border-light);border-radius:4px}.color-picker-group label{color:var(--text-muted);text-transform:lowercase;font-size:.75rem}.clear-color{color:#ef4444;cursor:pointer;opacity:.6;background:0 0;border:none;margin-left:auto;font-size:.65rem;text-decoration:underline}.clear-color:hover{opacity:1}.emoji-input-group{flex-direction:column;gap:.65rem;display:flex}.emoji-helper-links{justify-content:space-between;padding:0 .25rem;display:flex}.emoji-lib-link{color:var(--text-muted);opacity:.4;letter-spacing:.02em;font-size:.65rem;text-decoration:none;transition:all .2s}.emoji-lib-link:hover{opacity:1;text-decoration:underline}.toggle-wrapper{grid-column:span 1;align-items:center;padding-left:.5rem;display:flex}.toggle-wrapper label{cursor:pointer;align-items:center;gap:.5rem;display:flex}.toggle-wrapper input{cursor:pointer;width:auto}.toggle-wrapper span{color:var(--text-muted);text-transform:lowercase;font-size:.8rem}.form-grid input,.form-grid textarea{background:var(--bg-app);border:1px solid var(--border-light);color:var(--text-main);border-radius:6px;outline:none;padding:.75rem 1rem;font-family:inherit;font-size:.8rem;transition:border-color .2s,box-shadow .2s}.form-grid textarea{grid-column:span 2}.form-grid input:focus,.form-grid textarea:focus{border-color:var(--text-muted);box-shadow:0 0 0 2px #ffffff0d}.project-tags{flex-wrap:wrap;gap:.5rem;margin:-.25rem 0 1.5rem;display:flex}.tag{background:var(--bg-app);color:var(--text-muted);border:1px solid var(--border-light);opacity:.8;border-radius:4px;padding:.2rem .4rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.55rem}.video-placeholder{aspect-ratio:16/9;background:var(--bg-special);color:var(--text-muted);text-transform:lowercase;border:1px dashed var(--border-light);border-radius:4px;justify-content:center;align-items:center;font-size:.8rem;display:flex}.date-picker-wrapper{grid-column:span 2;position:relative}.picker-toggle{background:var(--bg-app);border:1px solid var(--border-light);width:100%;color:var(--text-main);text-align:left;cursor:pointer;text-transform:lowercase;border-radius:4px;padding:.75rem;font-size:.8rem}.mini-calendar{background:var(--bg-app);border:1px solid var(--border-light);z-index:10;border-radius:8px;grid-template-columns:repeat(7,1fr);gap:4px;width:200px;padding:.75rem;display:grid;position:absolute;top:calc(100% + 10px);left:0;box-shadow:0 10px 30px #0000001a}.mini-day{aspect-ratio:1;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;font-size:.7rem;display:flex}.mini-day:hover{background:var(--bg-hover);color:var(--text-main)}.mini-day.active{background:var(--text-main);color:var(--bg-app)}.form-grid textarea{resize:none;grid-column:span 2;height:100px}.form-actions{align-items:center;gap:1.5rem;margin-top:1.5rem;display:flex}.status-msg{opacity:0;align-items:center;gap:.4rem;font-size:.75rem;transition:opacity .3s;display:flex}.status-msg.active{opacity:1}.status-msg.success{opacity:1;color:var(--text-muted)}.status-msg.error{opacity:1;color:#ef4444}.connection-error{color:#ef4444;opacity:.6;vertical-align:middle;align-items:center;margin-left:.5rem;display:inline-flex}.form-actions button{cursor:pointer;text-transform:lowercase;border-radius:4px;padding:.6rem 1.2rem;font-size:.75rem}.form-actions button[type=submit]{background:var(--text-main);color:var(--bg-app);border:none}.form-actions button[type=button].delete-btn{color:#ef4444;background:0 0;border:1px solid #ef444433}.form-actions button[type=button].delete-btn:hover{background:#ef44440d;border-color:#ef4444}.confirm-overlay{z-index:1000;background:#000c;justify-content:center;align-items:center;animation:.3s modalFadeIn;display:flex;position:fixed;inset:0}.confirm-box{background:var(--bg-app);border:1px solid var(--border-light);text-align:center;border-radius:8px;padding:1.5rem 2rem}.confirm-box p{margin-bottom:1.5rem;font-size:.9rem}.confirm-actions{justify-content:center;gap:1rem;display:flex}.confirm-actions button{cursor:pointer;border:1px solid var(--border-light);color:var(--text-muted);background:0 0;border-radius:4px;padding:.5rem 1rem;font-size:.75rem}.confirm-actions .confirm-delete{color:#ef4444;border-color:#ef4444}.confirm-actions .confirm-delete:hover{background:#ef44440d}.projects-list{flex-direction:column;gap:.5rem;display:flex}.project-item{border:1px solid var(--border-light);cursor:pointer;border-radius:4px;justify-content:space-between;padding:1rem;transition:background .2s;display:flex}.project-item:hover{background:var(--bg-hover)}.p-day{color:var(--text-muted);font-size:.7rem}.p-title{font-size:.8rem}.mind-entry-section{background:var(--bg-special);border:1px dashed var(--border-light);border-radius:6px;margin-bottom:1.5rem;padding:1rem}.mind-loading{color:var(--text-muted);margin:0;font-size:.8rem;font-style:italic}.mind-content{flex-direction:column;gap:.5rem;display:flex}.mind-title{color:var(--text-main);margin:0;font-size:.95rem;font-weight:500}.mind-excerpt{color:var(--text-muted)!important;margin-bottom:.5rem!important;font-size:.85rem!important;line-height:1.5!important}.mind-link{color:var(--text-muted);align-self:flex-start;font-size:.75rem;text-decoration:underline;transition:color .2s}.mind-link:hover{color:var(--text-main)}@media (width<=500px){.calendar-container{width:calc(100% - 2rem);margin:1rem auto;padding:1rem;overflow:hidden}.calendar-header{margin-bottom:.75rem}.calendar-header h1{font-size:1.1rem}.countdown{margin-bottom:.5rem;font-size:.6rem}.day-name,.day{font-size:.7rem}.day-num-top{font-size:.38rem;top:2px;left:3px}.day-emoji{font-size:.8rem}.emoji-img,.rendered-svg svg{width:17px;height:17px}.footer{pointer-events:auto;flex-direction:column;gap:1rem;width:100%;margin-top:.75rem;padding:1rem 0 2rem;position:relative;inset:auto}.footer-links{gap:1.5rem}.modal-content{max-height:90dvh;padding:1.5rem;overflow-y:auto}.project-info h2{margin-bottom:.75rem;font-size:1.2rem}.project-info p{font-size:.8rem;line-height:1.5}.modal-nav{gap:1.5rem;margin-bottom:.5rem}.nav-arrow{padding:1rem;font-size:1.5rem}.close-button{padding:1rem;font-size:1.25rem;top:1rem;right:1rem}.project-date{font-size:.6rem}.video-container{margin-top:1rem}.about-modal{max-width:85%;padding:1.5rem}.admin-login input,.form-grid input,.form-grid textarea{font-size:16px}}.app-wrapper{flex-direction:column;align-items:center;width:100%;min-height:100vh;display:flex}.app-wrapper.is-home{-webkit-overflow-scrolling:touch;justify-content:center;height:100dvh;overflow-y:auto}.app-wrapper.is-admin{justify-content:flex-start}
