*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow:hidden;font-family:Courier New,Courier,monospace;background:#fff}.container{height:100vh;display:flex;flex-direction:column;padding:10px}.calendar-section{flex:1;display:flex;flex-direction:column}.header-container{display:flex;align-items:center;justify-content:center;position:relative;border-bottom:2px solid black;padding:5px 0;z-index:100;overflow:visible}h1{text-align:center;font-family:Playfair Display,Georgia,serif;font-size:clamp(14px,1.8vw,28px);font-weight:900;letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;margin:0 auto}.adventures-counter{display:flex;align-items:center;gap:6px;padding:5px 12px;background:linear-gradient(135deg,#ffb347,#ff6b6b);cursor:pointer;border:2px solid #000;border-radius:3px;font-size:.7vw;white-space:nowrap;box-shadow:2px 2px #0003;transition:transform .2s ease,box-shadow .2s ease}.adventures-counter:hover{transform:scale(1.02);box-shadow:3px 3px #00000040}.adventures-counter.empty{background:linear-gradient(135deg,#e0e0e0,#bdbdbd)}.adventures-counter.milestone{animation:counterPop .5s ease}@keyframes counterPop{0%{transform:scale(1)}50%{transform:scale(1.08)}to{transform:scale(1)}}.counter-number{font-weight:700;font-size:1.2em;min-width:16px;text-align:center}.counter-label{text-transform:uppercase;letter-spacing:.03em;font-weight:500}.help-btn{position:absolute;right:90px;top:50%;transform:translateY(-50%);background:none;border:1px solid black;border-radius:50%;width:24px;height:24px;padding:0;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.9vw;font-weight:700;display:flex;align-items:center;justify-content:center}.help-btn:hover{background:#eee}.help-menu{display:none;position:fixed;bottom:60px;right:20px;background:#fff;border:1px solid black;padding:12px 15px;z-index:1001;font-size:12px;min-width:220px}.help-menu.open{display:block}.help-title{font-weight:700;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #ccc}.help-item{display:flex;justify-content:space-between;margin-bottom:6px;gap:15px}.help-action{font-weight:700;white-space:nowrap}.help-desc{color:#555;text-align:right}.help-note{margin-top:10px;padding-top:8px;border-top:1px solid #ccc;font-size:.7vw;color:#777;font-style:italic}.corner-buttons{position:fixed;bottom:20px;right:20px;display:flex;gap:8px;z-index:1000}.corner-btn{background:#fff;border:1px solid #000;padding:8px 12px;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:12px;font-weight:700;transition:all .2s}.corner-btn:hover{background:#000;color:#fff}.about-section{max-width:400px}.about-content{padding:20px;text-align:center}.about-profile{display:flex;align-items:center;gap:15px;margin-bottom:20px;text-align:left}.about-avatar{width:80px;height:80px;border-radius:50%;border:2px solid #000;object-fit:cover}.about-avatar-placeholder{width:80px;height:80px;border-radius:50%;border:2px solid #000;background:linear-gradient(135deg,#ff6b6b,#ffb347);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;color:#fff}.about-info{flex:1}.about-name{font-size:1.3em;margin-bottom:5px}.about-title{color:#666;font-size:.9em}.about-bio{font-size:.95em;line-height:1.6;color:#333;margin-bottom:15px;text-align:left}.about-quote{font-size:.85em;font-style:italic;color:#666;line-height:1.5;margin-bottom:20px;text-align:left;padding:10px 15px;border-left:3px solid #FFB347;background:#fafafa}.about-cta{font-size:.9em;color:#333;margin-bottom:12px;text-align:center}.about-signoff{font-size:.95em;color:#333;margin-top:20px;text-align:center;line-height:1.6}.about-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.about-link{display:flex;align-items:center;gap:8px;padding:10px 20px;border:1px solid #000;text-decoration:none;color:#000;font-weight:700;transition:all .2s}.about-link:hover{background:#000;color:#fff}.about-link-icon{font-weight:700;font-size:1.1em}.right-toolbar{left:auto!important;right:10px!important}.settings-container{position:relative}.settings-menu{display:none;position:absolute;top:calc(100% + 5px);right:0;background:#fff;border:2px solid black;padding:15px;z-index:1000;font-size:12px;min-width:220px;max-height:70vh;overflow-y:auto;box-shadow:4px 4px #0003}.settings-menu::-webkit-scrollbar{width:6px}.settings-menu::-webkit-scrollbar-track{background:#f5f5f5}.settings-menu::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.settings-menu::-webkit-scrollbar-thumb:hover{background:#999}.settings-menu.open{display:block}.settings-user-section{margin:-15px -15px 15px;padding:0}.settings-user-header{padding:12px 15px;background:#f5f5f5;font-weight:700;font-size:11px}.settings-signin-section{margin:-15px -15px 15px;padding:0}.settings-signin-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:12px 15px;background:#4285f4;color:#fff;border:none;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:12px;font-weight:700}.settings-signin-btn:hover{background:#3367d6}.settings-signin-btn img{background:#fff;padding:2px;border-radius:2px}.settings-calendars-section{max-height:150px;overflow-y:auto}.settings-calendars-list{display:flex;flex-direction:column;gap:4px}.settings-calendar-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:3px;cursor:default;position:relative}.settings-calendar-item.active{background:#e8f5e9;font-weight:700}.settings-calendar-item.view-only{opacity:.7}.settings-calendar-item.view-only:hover{background:#f5f5f5}.settings-calendar-color{width:12px;height:12px;border-radius:2px;flex-shrink:0}.settings-calendar-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.settings-calendar-badge{font-size:9px;padding:2px 5px;border-radius:3px;font-weight:700}.settings-calendar-badge.active-badge{background:#4caf50;color:#fff}.settings-calendar-badge.view-only-badge{background:#e0e0e0;color:#666}.settings-calendar-loading{color:#888;font-style:italic;font-size:11px;padding:5px 0}.settings-calendar-checkbox{width:14px;height:14px;cursor:pointer;flex-shrink:0}.settings-menu label{display:block;margin-bottom:8px;font-weight:700}.settings-section{margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid #ccc}.settings-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.toggle-container{display:flex;align-items:center;gap:10px}.checkbox-container{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.85vw}.checkbox-container input{width:16px;height:16px;cursor:pointer}.country-selector-inline{padding:3px 6px;font-size:.8vw;border:1px solid #999;border-radius:4px;background:#fff;cursor:pointer;margin-left:4px}.toggle-option{padding:5px 10px;border:1px solid black;cursor:pointer;background:#fff}.toggle-option.active{background:#add8e6}.toggle-option:hover{background:#eee}.toggle-option.active:hover{background:#add8e6}.theme-picker-btn{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer;font-family:inherit;font-size:.85vw;text-align:left}.theme-picker-btn:hover{border-color:#999;background:#f9f9f9}.theme-picker-preview{width:30px;height:18px;border-radius:3px;border:1px solid #ddd;display:flex;overflow:hidden}.theme-picker-preview .swatch{flex:1;height:100%}.theme-picker-name{flex:1}.theme-picker-arrow{color:#666}.theme-popup-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:2000;justify-content:center;align-items:center}.theme-popup-overlay.open{display:flex}.theme-popup{background:var(--background-color, #fff);border:2px solid var(--text-color, #000);max-width:400px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:8px 8px #0003}.theme-popup-header{display:flex;justify-content:space-between;align-items:center;padding:15px;border-bottom:1px solid var(--text-color, #ccc)}.theme-popup-header h3{margin:0;font-size:1rem;font-family:var(--font-heading, inherit)}.theme-popup-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-color, #000);line-height:1;padding:0 5px}.theme-popup-close:hover{opacity:.7}.theme-popup-content{padding:15px;overflow-y:auto;flex:1}.theme-popup-content .theme-selector{max-height:none}.country-selector{width:100%;padding:8px 30px 8px 10px;font-size:.85vw;font-family:inherit;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:14px}.country-selector:hover{border-color:#999}.country-selector:focus{outline:none;border-color:#666}.country-auto-detect{margin-top:4px;color:#888}.country-auto-detect small{font-size:.7vw}.calendar-card-personalized{border-width:2px!important;position:relative}.calendar-card-personalized:before{content:"FOR YOU";position:absolute;top:-8px;right:10px;background:var(--text-color, #333);color:var(--background-color, #fff);font-size:.5vw;padding:2px 6px;border-radius:3px;font-weight:700;letter-spacing:.5px}.toolbar{position:absolute;left:10px;top:50%;transform:translateY(-50%);display:flex;gap:5px;overflow:visible}.toolbar-btn{background:none;border:1px solid black;padding:5px 10px;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.7vw;line-height:1;box-sizing:border-box}.toolbar-btn:hover{background:#eee}.toolbar-btn.first-visit-pulse{animation:crazyColors 1.5s ease-in-out infinite;font-weight:700;border-width:2px}@keyframes crazyColors{0%{background:#ff6b6b;color:#fff;transform:scale(1);box-shadow:0 0 #ff6b6bb3}14%{background:#ffb347;color:#000}28%{background:#98d8c8;color:#000;transform:scale(1.05)}42%{background:plum;color:#000}56%{background:#87ceeb;color:#000;transform:scale(1)}70%{background:#f7dc6f;color:#000}84%{background:#bb8fce;color:#fff;transform:scale(1.05)}to{background:#ff6b6b;color:#fff;transform:scale(1);box-shadow:0 0 10px 5px #ff6b6b66}}.google-signin-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;background:none;border:1px solid black;padding:5px 10px;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.7vw;color:#000;position:relative;overflow:hidden;line-height:1;box-sizing:border-box}.google-signin-btn:hover{background:#eee}.google-signin-btn img{flex-shrink:0;width:12px;height:12px;vertical-align:middle}.google-signin-btn:after{content:"";position:absolute;top:0;left:-100%;width:50%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,0) 20%,rgba(255,255,255,.8) 40%,rgba(255,255,255,.8) 50%,rgba(255,255,255,.8) 60%,rgba(255,255,255,0) 80%,transparent 100%);animation:pixelShine 5s ease-in-out infinite;image-rendering:pixelated;filter:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg"><filter id="pixelate"><feFlood x="0" y="0" height="2" width="2"/><feComposite width="4" height="4"/><feTile result="a"/><feComposite in="SourceGraphic" in2="a" operator="in"/><feMorphology operator="dilate" radius="2"/></filter></svg>#pixelate')}@keyframes pixelShine{0%,80%{left:-100%}90%{left:150%}to{left:150%}}.login-btn{background:#4285f4;color:#fff;border:none!important;padding:5px 10px;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.7vw;border-radius:3px}.login-btn:hover{background:#3367d6}.user-menu-container{position:relative;z-index:1000}.user-menu{display:none;position:absolute;top:100%;right:0;background:#fff;border:2px solid black;min-width:250px;z-index:1000;font-size:12px;margin-top:5px;box-shadow:4px 4px #0003}.user-menu.open{display:block}.user-menu-header{padding:12px 15px;background:#f5f5f5;font-weight:700;font-size:11px}.user-menu-divider{height:1px;background:#ddd}.user-menu-section{padding:10px 15px}.user-menu-label{font-size:10px;font-weight:700;color:#666;margin-bottom:8px;letter-spacing:.1em}.user-menu-calendars{max-height:200px;overflow-y:auto}.user-menu-calendar-item{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;border-radius:3px}.user-menu-calendar-item:hover{background:#f0f0f0}.user-menu-calendar-item.active{background:#e3f2fd;font-weight:700}.user-menu-calendar-color{width:12px;height:12px;border-radius:2px;flex-shrink:0}.user-menu-calendar-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-calendar-check{color:#4285f4;font-weight:700}.user-menu-loading{color:#888;font-style:italic;padding:10px 0}.user-menu-logout{width:100%;padding:12px 15px;background:none;border:none;text-align:left;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:12px;color:#d32f2f}.user-menu-logout:hover{background:#ffebee}.site-footer{width:100%;height:20px;line-height:20px;text-align:center;font-size:11px;background:transparent;border-top:none;margin-top:10px}.site-footer a{color:#666;text-decoration:none}.site-footer a:hover{text-decoration:underline}.site-footer span{color:#ccc;margin:0 8px}.calendar-wrapper{flex:1;display:flex;flex-direction:column}.header-row{display:grid;grid-template-columns:50px repeat(37,1fr);border:1px solid black;border-bottom:none}.header-row .label{font-weight:700;font-size:.8vw;display:flex;align-items:center;justify-content:center;border-right:1px solid black;background:#fff}.header-row .week-group{display:grid;grid-template-columns:repeat(7,1fr);border-right:1px solid black}.header-row .week-group:last-child{border-right:none}.header-row .day-header{font-weight:700;font-size:.6vw;display:flex;align-items:center;justify-content:center;border-right:1px solid #ccc;padding:2px 0}.header-row .day-header:last-child{border-right:none}.header-row .day-header.weekend{background:#add8e6}.month-row{display:grid;grid-template-columns:50px repeat(37,1fr);flex:1;border:1px solid black;border-bottom:none;position:relative}.month-row:last-child{border-bottom:1px solid black}.month-name{font-weight:700;font-size:.7vw;display:flex;align-items:center;justify-content:center;border-right:1px solid black;background:#fff}.day{display:flex;align-items:center;justify-content:center;font-size:.55vw;border-right:1px solid #ccc;cursor:pointer}.day.week-end-border{border-right:1px solid black}.day:last-child{border-right:none}.day.weekend{background:#add8e6}.day.empty{background:#fff}.day.holiday{background:#e8d5e8;position:relative}.day.single-day-event{position:relative;flex-direction:column;justify-content:space-between;padding:1px}.day .single-event-label{font-size:.35vw;font-weight:700;text-align:center;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.day .event-label{position:absolute;bottom:0;left:0;right:0;font-size:.35vw;background:#000000b3;color:#fff;padding:1px 2px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.day .day-number{position:absolute;top:1px;left:2px;font-size:.5vw}.day.has-event{position:relative;flex-direction:column;justify-content:flex-start;align-items:stretch}.event-banner{position:absolute;display:flex;align-items:center;justify-content:center;font-weight:700;color:#000;text-transform:uppercase;letter-spacing:.05em;z-index:10;overflow:hidden;text-align:center;line-height:1.05;padding:1px 3px;box-sizing:border-box;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.event-banner{cursor:pointer}.event-banner:hover{outline:2px solid rgba(0,0,0,.2);outline-offset:-2px}.event-banner.user-event{cursor:grab}.event-banner.user-event:active{cursor:grabbing}.event-banner.user-event:hover{outline:2px solid rgba(0,0,0,.4)}.event-banner.user-event.dragging{opacity:.5}.event-banner.external-event{opacity:.85;cursor:default;background:#e8f5e9!important;border:1px dashed #A5D6A7;color:#2e7d32}.event-banner.external-event:hover{opacity:1;background:#c8e6c9!important}.event-banner .resize-handle{position:absolute;top:0;bottom:0;width:10px;cursor:ew-resize;z-index:11;opacity:0;transition:opacity .15s,background .15s}.event-banner .resize-handle-left{left:0;border-radius:3px 0 0 3px}.event-banner .resize-handle-right{right:0;border-radius:0 3px 3px 0}.event-banner.user-event:hover .resize-handle{opacity:1;background:#0003}.event-banner .resize-handle:hover{background:#0006!important}.event-banner.resizing{opacity:.8;z-index:20}.resize-preview{position:absolute;background:#0000001a;border:2px dashed #000;pointer-events:none;z-index:15}.event-banner.trips{background:#ffb347e6}.event-banner.experiences{background:#ff6b6be6}.event-banner.friends{background:#98d8c8e6}.event-banner.sports{background:#f7dc6fe6}.event-banner.work{background:#bb8fcee6}.event-banner.holiday{background:#e8d5e8e6}.event-banner.family{background:#f5a9b8e6}.event-banner.health{background:#7fcdcde6}.event-banner.learning{background:#b4d4a8e6}.event-banner.romance{background:#ffb6c1e6}.event-banner.creativity{background:#dda0dde6}.event-banner.food{background:#ffdab9e6}.event-banner.music{background:#87ceebe6}.day.trips{background:#ffb347}.day.experiences{background:#ff6b6b}.day.friends{background:#98d8c8}.day.sports{background:#f7dc6f}.day.work{background:#bb8fce}.day.family{background:#f5a9b8}.day.health{background:#7fcdcd}.day.learning{background:#b4d4a8}.day.romance{background:#ffb6c1}.day.creativity{background:plum}.day.food{background:#ffdab9}.day.music{background:#87ceeb}.day.weekend.trips{background:#ffb347}.day.weekend.experiences{background:#ff6b6b}.day.weekend.friends{background:#98d8c8}.day.weekend.sports{background:#f7dc6f}.day.weekend.work{background:#bb8fce}.day.weekend.family{background:#f5a9b8}.day.weekend.health{background:#7fcdcd}.day.weekend.learning{background:#b4d4a8}.day.weekend.romance{background:#ffb6c1}.day.weekend.creativity{background:plum}.day.weekend.food{background:#ffdab9}.day.weekend.music{background:#87ceeb}.day.selected{outline:2px solid black;outline-offset:-2px}.day.selecting{opacity:.7}.day.ad-space{cursor:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32'><text y='24' font-size='24'>💰</text></svg>") 16 16,pointer}.day.ad-space:hover{background:repeating-linear-gradient(45deg,transparent,transparent 5px,rgba(255,215,0,.1) 5px,rgba(255,215,0,.1) 10px)}.day.drag-over{outline:3px dashed #000!important;outline-offset:-3px;background:#4caf504d!important}.day.drop-target{cursor:copy}.activity-chip.dragging,.calendar-event-item.dragging{opacity:.5;transform:scale(.95)}.activity-chip[draggable=true],.calendar-event-item[draggable=true]{cursor:grab}.activity-chip[draggable=true]:active,.calendar-event-item[draggable=true]:active{cursor:grabbing}.screenshot-calendar-container{position:fixed;left:-9999px;top:0;width:1200px;height:auto;background:#fff;padding:20px;z-index:-1}.screenshot-calendar-container.visible{left:0;z-index:9999}.screenshot-calendar-header{text-align:center;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #000}.screenshot-calendar-title{font-size:28px;font-weight:700;letter-spacing:.2em;margin:0}.screenshot-calendar-subtitle{font-size:16px;margin-top:8px;color:#333}.screenshot-calendar-grid{width:100%}.screenshot-calendar-grid .header-row{display:grid;grid-template-columns:50px repeat(37,1fr);border:1px solid black;border-bottom:none}.screenshot-calendar-grid .month-row{display:grid;grid-template-columns:50px repeat(37,1fr);border:1px solid black;border-top:none;position:relative;min-height:35px}.screenshot-calendar-grid .month-name{font-weight:700;font-size:10px;display:flex;align-items:center;justify-content:center;border-right:1px solid black;background:#f5f5f5}.screenshot-calendar-grid .day{font-size:9px;display:flex;align-items:flex-start;justify-content:center;padding-top:2px;border-right:1px solid #eee;min-height:30px}.screenshot-calendar-grid .day.empty{background:#fafafa}.screenshot-calendar-grid .day.weekend{background:#e8f4fc}.screenshot-calendar-grid .day-header{font-weight:700;font-size:9px;display:flex;align-items:center;justify-content:center;border-right:1px solid #eee;padding:3px 0}.screenshot-calendar-grid .day-header.weekend{background:#e8f4fc}.screenshot-calendar-grid .label{font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center;border-right:1px solid black;background:#fff}.screenshot-calendar-grid .event-banner{position:absolute;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:700;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px;box-sizing:border-box}.welcome-overlay{display:none;position:fixed;inset:0;background:linear-gradient(135deg,#85b4a2d9,#6b9c8cd9,#5a9080d9);z-index:500;justify-content:center;align-items:center;opacity:0;transition:opacity .5s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.welcome-overlay.active{display:flex}.welcome-overlay.visible{opacity:1}.welcome-popup{background:#fff;border:4px solid black;padding:30px 50px;max-width:850px;width:90vw;max-height:90vh;overflow-y:auto;text-align:center;transform:translateY(20px) scale(.9);opacity:0;transition:all .5s cubic-bezier(.34,1.56,.64,1) .2s;box-shadow:10px 10px #0003}.welcome-overlay.visible .welcome-popup{transform:translateY(0) scale(1);opacity:1}.welcome-emoji{font-size:2.5rem;margin-bottom:5px;animation:wiggle 2s ease-in-out infinite}@keyframes wiggle{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}.welcome-header{font-size:2rem;font-weight:700;letter-spacing:.05em;margin-bottom:5px;line-height:1.1}.welcome-word{display:inline-block;margin:0 5px}.word-1{color:#5a9080;animation:pop .6s ease-out .3s both}.word-2{color:#85b4a2;animation:pop .6s ease-out .5s both}.word-3{color:#3d6b5c;animation:pop .6s ease-out .7s both}@keyframes pop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.welcome-tagline{font-size:1rem;color:#666;margin-bottom:15px}.highlight-epic{display:inline-block;position:relative;background:linear-gradient(135deg,#5a9080,#85b4a2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700;font-size:1.8rem;letter-spacing:.1em;animation:epicPulse 2s ease-in-out infinite}@keyframes epicPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.highlight-epic:before{content:"✦";position:absolute;left:-20px;top:50%;transform:translateY(-50%);font-size:.8rem;-webkit-text-fill-color:#85b4a2;animation:starSpin 3s linear infinite}.highlight-epic:after{content:"✦";position:absolute;right:-20px;top:50%;transform:translateY(-50%);font-size:.8rem;-webkit-text-fill-color:#5a9080;animation:starSpin 3s linear infinite reverse}@keyframes starSpin{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}.welcome-content{text-align:center;font-size:.95rem;line-height:1.5;margin-bottom:15px}.welcome-truth{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}.truth-icon{font-size:1.5rem;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.truth-text{font-size:.9rem;color:#888;font-style:italic}.welcome-quote{font-size:1.2rem;font-weight:700;line-height:1.4;margin-bottom:5px}.highlight-plan{background:#98d8c8;padding:2px 8px;color:#000}.highlight-happen{background:#85b4a2;padding:2px 8px;color:#000}.welcome-subtext{font-size:.75rem;color:#999;font-style:italic;margin-bottom:15px}.welcome-philosophy{display:flex;gap:15px;margin:10px 0}.philosophy-section{flex:1;text-align:center}.philosophy-badge{background:#000;color:#fff;padding:8px 15px;font-weight:700;font-size:1rem;letter-spacing:.1em;margin-bottom:8px}.philosophy-badge-mini{background:#666;color:#fff;padding:8px 15px;font-weight:700;font-size:.8rem;letter-spacing:.05em;margin-bottom:8px}.philosophy-explain{font-size:.7rem;color:#666;font-style:italic;margin-bottom:10px;line-height:1.4;padding:0 5px}.philosophy-card{padding:15px;border:3px solid #000}.philosophy-card.item-epic{background:linear-gradient(135deg,#5a9080,#85b4a2)}.philosophy-card.item-mini{background:linear-gradient(135deg,#98d8c8,#87ceeb)}.card-header{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}.philosophy-number{font-size:2.5rem;font-weight:700;color:#000;line-height:1;text-shadow:2px 2px 0 rgba(255,255,255,.5)}.philosophy-label{font-weight:700;font-size:.75rem;letter-spacing:.05em;text-align:left;line-height:1.2}.philosophy-examples{display:flex;flex-wrap:wrap;gap:5px;justify-content:center}.philosophy-examples .example{background:#ffffffb3;padding:4px 8px;font-size:.65rem;border:1px solid rgba(0,0,0,.2);white-space:nowrap}.welcome-promise{margin-top:10px;padding:12px;background:#000;color:#fff}.promise-text{font-size:.85rem;font-weight:700;letter-spacing:.02em}.welcome-btn{background:linear-gradient(135deg,#5a9080,#85b4a2);color:#000;border:3px solid #000;padding:15px 40px;font-size:1.1rem;font-weight:700;letter-spacing:.1em;cursor:pointer;font-family:inherit;transition:all .3s ease;box-shadow:4px 4px #000}.welcome-btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #000}.welcome-btn:active{transform:translate(2px,2px);box-shadow:2px 2px #000}.welcome-dismiss{margin-top:12px;font-size:.7rem;color:#bbb;cursor:pointer;text-decoration:none;transition:color .2s}.welcome-dismiss:hover{color:#5a9080;text-decoration:line-through}.welcome-legal{position:absolute;bottom:20px;left:0;right:0;text-align:center;font-size:11px}.welcome-legal a{color:#fffc;text-decoration:none}.welcome-legal a:hover{color:#fff;text-decoration:underline}.welcome-legal span{color:#ffffff80;margin:0 8px}.calendar-blurred .calendar-section{transition:filter .5s ease}.popup-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:200;justify-content:center;align-items:center}.popup-overlay.active{display:flex}.popup{background:#fff;border:2px solid black;padding:20px;max-width:90vw;max-height:80vh;overflow-y:auto}.popup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid black}.popup-title{font-weight:700;font-size:1.2vw}.popup-close{background:none;border:1px solid black;padding:5px 15px;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.8vw}.popup-close:hover{background:#eee}.bottom-section{display:none}.legend-section{width:300px}.legend-title{font-weight:700;font-size:1vw;margin-bottom:10px;border-bottom:1px solid black;padding-bottom:5px}.legend-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:5px}.legend-item{display:flex;align-items:center;gap:10px;padding:5px;cursor:pointer;font-size:.85vw}.legend-item:hover{background:#f5f5f5}.legend-item.active{font-weight:700}.legend-color{width:16px;height:16px;border:1px solid black;flex-shrink:0}.legend-color.trips{background:#ffb347}.legend-color.experiences{background:#ff6b6b}.legend-color.friends{background:#98d8c8}.legend-color.sports{background:#f7dc6f}.legend-color.work{background:#bb8fce}.legend-color.family{background:#f5a9b8}.legend-color.health{background:#7fcdcd}.legend-color.learning{background:#b4d4a8}.legend-color.romance{background:#ffb6c1}.legend-color.creativity{background:plum}.legend-color.food{background:#ffdab9}.legend-color.music{background:#87ceeb}.legend-color.weekend{background:#add8e6}.legend-color.holiday{background:#e8d5e8}.activities-drawer{position:fixed;top:0;left:-400px;width:380px;height:100vh;background:#fff;border-right:3px solid #000;z-index:300;display:flex;flex-direction:column;transition:left .3s ease;box-shadow:5px 0 20px #0003}.activities-drawer.open{left:0}.activities-drawer.minimized{left:-320px;transition:left .2s ease}.drawer-overlay{position:fixed;inset:0;background:#0006;z-index:299;opacity:0;pointer-events:none;transition:opacity .3s ease}.drawer-overlay.open{opacity:1;pointer-events:auto}.drawer-overlay.hidden-during-drag{opacity:0;pointer-events:none}.drawer-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:2px solid #000;background:linear-gradient(135deg,#ffb347,#ff6b6b)}.drawer-title{font-weight:700;font-size:1.1rem;letter-spacing:.05em}.drawer-close{width:32px;height:32px;border-radius:50%;background:#000;color:#fff;border:none;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s,background .2s}.drawer-close:hover{background:#333;transform:scale(1.1)}.drawer-subtitle{padding:12px 20px;font-size:.75rem;color:#666;border-bottom:1px solid #eee;font-style:italic}.drawer-content{flex:1;overflow-y:auto;padding:15px}.activity-category-section{margin-bottom:20px}.activity-category-header{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-bottom:10px;font-weight:700;font-size:.85rem;letter-spacing:.03em;border:2px solid #000}.activity-category-header .category-emoji{font-size:1rem}.activity-chips{display:flex;flex-wrap:wrap;gap:8px}.activity-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:2px solid #000;font-size:.75rem;cursor:pointer;transition:transform .15s,box-shadow .15s;font-family:inherit;font-weight:500}.activity-chip:hover{transform:translateY(-2px);box-shadow:2px 2px #0000004d}.activity-chip:active{transform:translateY(0);box-shadow:none}.chip-name{flex:1}.chip-count{background:#00000026;padding:2px 6px;border-radius:10px;font-size:.6rem;font-weight:600;color:#000000b3}.event-tooltip{position:fixed;z-index:1000;pointer-events:none;opacity:0;transform:translateY(5px);transition:opacity .15s ease,transform .15s ease;display:flex;flex-direction:column;gap:6px}.event-tooltip.visible{opacity:1;transform:translateY(0)}.event-tooltip-header{display:none}.event-tooltip-content{display:flex;flex-direction:column;gap:6px}.event-tooltip-item{padding:10px 14px;border:2px solid #000;box-shadow:3px 3px #0003;min-width:180px;max-width:280px}.event-tooltip-name{font-weight:700;font-size:.85rem;margin-bottom:3px}.event-tooltip-date{font-size:.7rem;opacity:.8;display:flex;align-items:center;gap:4px}.event-tooltip-date:before{content:"📅";font-size:.65rem}.event-tooltip-location{font-size:.7rem;opacity:.8;display:flex;align-items:center;gap:4px;margin-top:2px}.event-tooltip-location:before{content:"📍";font-size:.65rem}.event-tooltip-desc{font-size:.7rem;opacity:.7;font-style:italic;line-height:1.3;margin-top:4px}.event-tooltip-item.trips{background:#ffb347;border-color:#ffd494}.event-tooltip-item.experiences{background:#ff6b6b;border-color:#ffa5a5}.event-tooltip-item.friends{background:#98d8c8;border-color:#c5ede3}.event-tooltip-item.sports{background:#f7dc6f;border-color:#fbedb3}.event-tooltip-item.work{background:#bb8fce;border-color:#dbc4e8}.event-tooltip-item.family{background:#f5a9b8;border-color:#fcceda}.event-tooltip-item.health{background:#7fcdcd;border-color:#b5e5e5}.event-tooltip-item.learning{background:#b4d4a8;border-color:#d6ebd0}.event-tooltip-item.romance{background:#ffb6c1;border-color:#ffd9e0}.event-tooltip-item.creativity{background:plum;border-color:#eed0ee}.event-tooltip-item.food{background:#ffdab9;border-color:#fed}.event-tooltip-item.music{background:#87ceeb;border-color:#bfe4f7}.event-tooltip-item.holiday{background:#e8d5e8;border-color:#f5ecf5}.event-tooltip-item.external{background:#e8f5e9!important;border-color:#c8e6c9!important;border-left-width:4px;border-left-style:dashed}.event-tooltip-calendar{font-size:.65rem;opacity:.6;margin-top:4px}.activity-chip.trips{background:#ffb347}.activity-chip.experiences{background:#ff6b6b}.activity-chip.friends{background:#98d8c8}.activity-chip.sports{background:#f7dc6f}.activity-chip.work{background:#bb8fce}.activity-chip.family{background:#f5a9b8}.activity-chip.health{background:#7fcdcd}.activity-chip.learning{background:#b4d4a8}.activity-chip.romance{background:#ffb6c1}.activity-chip.creativity{background:plum}.activity-chip.food{background:#ffdab9}.activity-chip.music{background:#87ceeb}.activity-category-header.trips{background:#ffb347}.activity-category-header.experiences{background:#ff6b6b}.activity-category-header.friends{background:#98d8c8}.activity-category-header.sports{background:#f7dc6f}.activity-category-header.work{background:#bb8fce}.activity-category-header.family{background:#f5a9b8}.activity-category-header.health{background:#7fcdcd}.activity-category-header.learning{background:#b4d4a8}.activity-category-header.romance{background:#ffb6c1}.activity-category-header.creativity{background:plum}.activity-category-header.food{background:#ffdab9}.activity-category-header.music{background:#87ceeb}.calendars-drawer{position:fixed;top:0;left:-450px;width:420px;height:100vh;background:#fff;border-right:3px solid #000;z-index:300;overflow:hidden;transition:left .3s ease;box-shadow:5px 0 20px #0003}.calendars-drawer.open{left:0}.calendars-drawer.minimized{left:-360px;transition:left .2s ease}.calendars-drawer .drawer-header{background:linear-gradient(135deg,gold,orange)}.drawer-page{display:flex;flex-direction:column;height:100%;transition:transform .3s ease,opacity .3s ease}.drawer-page-hidden{position:absolute;inset:0;transform:translate(100%);opacity:0;pointer-events:none}.drawer-page-hidden.active{transform:translate(0);opacity:1;pointer-events:auto}.drawer-page.slide-out{transform:translate(-30%);opacity:0;pointer-events:none}.drawer-back{background:none;border:2px solid #000;padding:6px 12px;font-size:.8rem;font-weight:700;cursor:pointer;font-family:inherit;transition:background .2s,transform .2s}.drawer-back:hover{background:#0000001a;transform:translate(-2px)}.calendar-detail-title-bar{display:flex;align-items:center;gap:10px;padding:15px 20px;background:#f9f9f9;border-bottom:2px solid #000}.calendar-detail-emoji{font-size:1.8rem}.calendar-detail-name{font-weight:700;font-size:1.1rem;letter-spacing:.03em;flex:1}.calendar-detail-share-btn{background:#000;color:#fff;border:none;padding:8px 16px;font-family:inherit;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .2s}.calendar-detail-share-btn:hover{background:#333;transform:scale(1.05)}.calendars-drawer .calendar-detail-description{padding:12px 20px;background:#fff;font-size:.85rem;line-height:1.5;font-style:italic;color:#555;border-bottom:1px solid #eee;margin:0}.calendar-card{background:#fff;border:3px solid #000;margin-bottom:15px;cursor:pointer;transition:transform .2s,box-shadow .2s;overflow:hidden}.calendar-card:hover{transform:translateY(-3px);box-shadow:4px 4px #0003}.calendar-card-header{padding:15px;display:flex;align-items:center;gap:12px}.calendar-card-emoji{font-size:2rem;line-height:1}.calendar-card-info{flex:1}.calendar-card-name{font-weight:700;font-size:1.1rem;margin-bottom:2px}.calendar-card-tagline{font-size:.7rem;color:#666;font-style:italic}.calendar-card-description{padding:0 15px 15px;font-size:.8rem;color:#444;line-height:1.4}.calendar-card-footer{background:#f5f5f5;border-top:2px solid #000;padding:10px 15px;display:flex;justify-content:space-between;align-items:center;font-size:.75rem}.calendar-card-count{font-weight:700}.calendar-card-arrow{font-size:1rem}.calendar-detail-popup{width:600px;max-width:95vw;max-height:80vh;display:flex;flex-direction:column}.calendar-detail-popup .popup-header{background:linear-gradient(135deg,gold,orange);margin:-20px -20px 0;padding:20px;border-bottom:2px solid #000}.calendar-detail-popup .popup-title{font-size:1.1rem}.calendar-detail-content{flex:1;overflow-y:auto;padding-top:15px}.calendar-detail-description{padding:15px 20px;background:#f9f9f9;border:2px solid #000;margin-bottom:20px;font-size:.9rem;line-height:1.5;font-style:italic}.calendar-events-list{display:flex;flex-direction:column;gap:8px}.calendar-event-item{display:flex;align-items:flex-start;gap:12px;padding:12px 15px;border:2px solid #000;cursor:pointer;transition:transform .2s,box-shadow .2s}.calendar-event-item:hover{transform:translate(5px);box-shadow:3px 3px #00000026}.calendar-event-date-block{background:#000;color:#fff;padding:8px 10px;text-align:center;min-width:55px;flex-shrink:0}.calendar-event-month{font-size:.6rem;text-transform:uppercase;letter-spacing:.05em}.calendar-event-day{font-size:1.3rem;font-weight:700;line-height:1;margin-top:2px}.calendar-event-range{font-size:.5rem;opacity:.8;margin-top:3px}.calendar-event-info{flex:1;min-width:0}.calendar-event-name{font-weight:700;font-size:.95rem;margin-bottom:3px}.calendar-event-location{font-size:.75rem;color:#666;display:flex;align-items:center;gap:4px;margin-bottom:5px}.calendar-event-location:before{content:"📍";font-size:.7rem}.calendar-event-vibe{font-size:.7rem;color:#888;font-style:italic;line-height:1.4}.calendar-event-add{background:#000;color:#fff;border:none;padding:8px 12px;font-size:.7rem;font-weight:700;cursor:pointer;flex-shrink:0;align-self:center;transition:background .2s,transform .2s;font-family:inherit}.calendar-event-add:hover{background:#333;transform:scale(1.05)}.calendar-event-add.added{background:#4caf50}.calendar-event-add.added:after{content:" ✓"}.calendar-event-item.trips{background:#ffb347}.calendar-event-item.experiences{background:#ff6b6b}.calendar-event-item.friends{background:#98d8c8}.calendar-event-item.sports{background:#f7dc6f}.calendar-event-item.work{background:#bb8fce}.calendar-event-item.family{background:#f5a9b8}.calendar-event-item.health{background:#7fcdcd}.calendar-event-item.learning{background:#b4d4a8}.calendar-event-item.romance{background:#ffb6c1}.calendar-event-item.creativity{background:plum}.calendar-event-item.food{background:#ffdab9}.calendar-event-item.music{background:#87ceeb}.calendar-add-all-section{padding:15px 0;border-top:2px solid #000;margin-top:15px;text-align:center}.calendar-add-all-btn{background:linear-gradient(135deg,gold,orange);border:3px solid #000;padding:12px 30px;font-size:1rem;font-weight:700;cursor:pointer;font-family:inherit;transition:transform .2s,box-shadow .2s}.calendar-add-all-btn:hover{transform:scale(1.05);box-shadow:3px 3px #0003}.booking-section{width:300px}.booking-title{font-weight:700;font-size:1vw;margin-bottom:10px;border-bottom:1px solid black;padding-bottom:5px}.booking-link{border:1px solid black;padding:10px;text-align:center;margin-bottom:10px;font-size:.8vw;cursor:pointer}.booking-link:hover{background:#f5f5f5}.booking-info{font-size:.75vw;color:#666}.copy-btn{background:#000;color:#fff;border:none;padding:8px 15px;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.8vw;margin-top:10px}.copy-btn:hover{background:#333}.agenda-wrapper{display:none;position:relative}.agenda-wrapper.active,.agenda-section.active{display:block}.agenda-close-btn{position:absolute;top:-15px;right:-15px;width:40px;height:40px;border-radius:50%;background:#000;color:#fff;border:3px solid #fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:transform .2s,background .2s;box-shadow:0 2px 10px #0000004d}.agenda-close-btn:hover{background:#ff6b6b;transform:scale(1.1)}.agenda-boxes{display:flex;gap:20px}.agenda-box{background:#fff;border:3px solid black;padding:25px;box-shadow:6px 6px #00000026}.events-box{width:350px;max-height:400px;display:flex;flex-direction:column}.create-box{width:350px;position:relative}.agenda-box-title{font-weight:700;font-size:1rem;letter-spacing:.05em;padding-bottom:12px;margin-bottom:15px;border-bottom:2px solid #000}.agenda-box-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;margin-bottom:15px;border-bottom:2px solid #000}.agenda-box-header .agenda-box-title{padding-bottom:0;margin-bottom:0;border-bottom:none;white-space:nowrap;font-size:.85rem}.agenda-events-list{flex:1;overflow-y:auto;padding-right:5px}.agenda-event-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:2px solid #000;margin-bottom:6px;font-size:.85rem;transition:transform .2s}.agenda-event-item:hover{transform:translate(3px)}.agenda-event-name{font-weight:700;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-event-date{font-size:.55rem;color:#555;text-transform:uppercase;letter-spacing:-.02em;white-space:nowrap;flex-shrink:0;font-weight:500}.agenda-event-item.trips{background:#ffb347}.agenda-event-item.experiences{background:#ff6b6b}.agenda-event-item.friends{background:#98d8c8}.agenda-event-item.sports{background:#f7dc6f}.agenda-event-item.work{background:#bb8fce}.agenda-event-item.family{background:#f5a9b8}.agenda-event-item.health{background:#7fcdcd}.agenda-event-item.learning{background:#b4d4a8}.agenda-event-item.romance{background:#ffb6c1}.agenda-event-item.creativity{background:plum}.agenda-event-item.food{background:#ffdab9}.agenda-event-item.music{background:#87ceeb}.agenda-event-item.holiday{background:#e8d5e8}.no-events{color:#888;font-style:italic;font-size:.9rem;text-align:center;padding:30px 10px}.agenda-event-edit-hint{font-size:.7rem;opacity:.6;flex-shrink:0}.agenda-event-item:hover .agenda-event-edit-hint{opacity:1}.agenda-event-item.editing{outline:3px solid #000;outline-offset:-3px}.agenda-event-invite-btn{background:none;border:1px solid rgba(0,0,0,.2);border-radius:4px;padding:2px 6px;cursor:pointer;font-size:.85rem;opacity:.6;transition:all .2s;flex-shrink:0}.agenda-event-item:hover .agenda-event-invite-btn{opacity:1}.agenda-event-invite-btn:hover{background:#0000001a;border-color:#0006;transform:scale(1.1)}.agenda-create-new-btn{width:100%;padding:12px;margin-top:10px;background:linear-gradient(135deg,#98d8c8,#87ceeb);border:2px solid #000;font-size:.8rem;font-weight:700;cursor:pointer;font-family:inherit;transition:transform .2s,box-shadow .2s}.agenda-create-new-btn:hover{transform:translateY(-2px);box-shadow:3px 3px #0003}.edit-actions{display:flex;gap:10px;margin-top:10px}.edit-actions .invite-btn{flex:1;padding:10px 15px;background:linear-gradient(135deg,#98d8c8,#87ceeb);color:#000;border:2px solid #000;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:700;transition:transform .2s,box-shadow .2s}.edit-actions .invite-btn:hover{transform:translateY(-2px);box-shadow:3px 3px #0003}.edit-actions .delete-btn{flex:1;margin-top:0}.delete-btn{width:100%;padding:10px 20px;margin-top:8px;background:#ff6b6b;color:#fff;border:2px solid #000;cursor:pointer;font-family:inherit;font-size:.8vw;font-weight:700;transition:background .2s}.delete-btn:hover{background:#ff4757}.create-box.editing-mode{transition:background .3s ease}.create-box.trips,.create-box.editing-mode.trips{background:#ffb347}.create-box.experiences,.create-box.editing-mode.experiences{background:#ff6b6b}.create-box.friends,.create-box.editing-mode.friends{background:#98d8c8}.create-box.sports,.create-box.editing-mode.sports{background:#f7dc6f}.create-box.work,.create-box.editing-mode.work{background:#bb8fce}.create-box.family,.create-box.editing-mode.family{background:#f5a9b8}.create-box.health,.create-box.editing-mode.health{background:#7fcdcd}.create-box.learning,.create-box.editing-mode.learning{background:#b4d4a8}.create-box.romance,.create-box.editing-mode.romance{background:#ffb6c1}.create-box.creativity,.create-box.editing-mode.creativity{background:plum}.create-box.food,.create-box.editing-mode.food{background:#ffdab9}.create-box.music,.create-box.editing-mode.music{background:#87ceeb}.quick-add-toggle{background:linear-gradient(135deg,#ffb347,#ff6b6b);border:2px solid #000;padding:6px 12px;font-size:.75rem;font-weight:700;cursor:pointer;font-family:inherit;transition:transform .2s}.quick-add-toggle:hover{transform:scale(1.05)}.quick-add-panel{display:none;position:absolute;top:60px;right:-200px;width:180px;background:#fff;border:3px solid #000;padding:15px;box-shadow:4px 4px #00000026;z-index:20}.quick-add-panel.active{display:block}.quick-add-header{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:.8rem;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #000}.quick-add-close{background:none;border:none;font-size:1rem;cursor:pointer;padding:0;line-height:1}.quick-add-close:hover{color:#ff6b6b}.create-form{display:flex;flex-direction:column}.create-form .create-btn{margin-top:auto}.form-group{margin-bottom:12px}.form-group label{display:block;font-size:.75vw;margin-bottom:4px;font-weight:700}.form-group input,.form-group select{width:100%;padding:6px 8px;border:1px solid black;font-family:Courier New,Courier,monospace;font-size:.75vw}.form-group select{cursor:pointer}.form-group textarea{width:100%;padding:6px 8px;border:1px solid black;font-family:Courier New,Courier,monospace;font-size:.75vw;resize:vertical;min-height:40px}.event-name-wrapper{position:relative;display:flex;gap:5px}.event-name-wrapper input{flex:1}.random-btn{width:36px;height:36px;border:1px solid black;background:linear-gradient(135deg,#ffb347,#ff6b6b);cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s;flex-shrink:0}.random-btn:hover{transform:scale(1.1) rotate(15deg);box-shadow:2px 2px #0003}.random-btn:active{transform:scale(.95)}.activity-dropdown{display:none;position:absolute;top:100%;left:0;right:40px;max-height:200px;overflow-y:auto;background:#fff;border:1px solid black;border-top:none;z-index:100;box-shadow:0 4px 10px #00000026}.activity-dropdown.open{display:block}.activity-dropdown-item{padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.8rem;border-bottom:1px solid #eee;transition:background .15s}.activity-dropdown-item:last-child{border-bottom:none}.activity-dropdown-item:hover{filter:brightness(.95)}.activity-dropdown-item .activity-emoji{font-size:1rem}.activity-dropdown-item .activity-name{flex:1}.activity-dropdown-item.trips{background:#ffb347}.activity-dropdown-item.experiences{background:#ff6b6b}.activity-dropdown-item.friends{background:#98d8c8}.activity-dropdown-item.sports{background:#f7dc6f}.activity-dropdown-item.work{background:#bb8fce}.activity-dropdown-item.family{background:#f5a9b8}.activity-dropdown-item.health{background:#7fcdcd}.activity-dropdown-item.learning{background:#b4d4a8}.activity-dropdown-item.romance{background:#ffb6c1}.activity-dropdown-item.creativity{background:plum}.activity-dropdown-item.food{background:#ffdab9}.activity-dropdown-item.music{background:#87ceeb}.activity-dropdown-empty{padding:12px;text-align:center;color:#888;font-style:italic;font-size:.8rem}.category-selector{position:relative;width:100%}.category-selected{padding:6px 8px;border:1px solid black;font-family:Courier New,Courier,monospace;font-size:.75vw;cursor:pointer;background:#ffb347}.category-selected:after{content:"▼";float:right;font-size:.6vw}.category-dropdown{display:none;position:absolute;top:100%;left:0;right:0;border:1px solid black;border-top:none;z-index:100;max-height:200px;overflow-y:auto}.category-dropdown.open{display:block}.category-option{padding:6px 8px;font-family:Courier New,Courier,monospace;font-size:.75vw;cursor:pointer}.category-option:hover{filter:brightness(.9)}.category-option.trips{background:#ffb347}.category-option.experiences{background:#ff6b6b}.category-option.friends{background:#98d8c8}.category-option.sports{background:#f7dc6f}.category-option.work{background:#bb8fce}.category-option.family{background:#f5a9b8}.category-option.health{background:#7fcdcd}.category-option.learning{background:#b4d4a8}.category-option.romance{background:#ffb6c1}.category-option.creativity{background:plum}.category-option.food{background:#ffdab9}.category-option.music{background:#87ceeb}.form-row{display:flex;gap:10px}.form-row .form-group{flex:1}.create-btn{background:#000;color:#fff;border:none;padding:10px 20px;cursor:pointer;font-family:Courier New,Courier,monospace;font-size:.8vw;width:100%;margin-top:10px}.create-btn:hover{background:#333}.quick-activities{margin-top:15px;padding-top:15px;border-top:1px solid #ccc}.quick-activities-title{font-size:.75vw;font-weight:700;margin-bottom:8px}.quick-activity-chips{display:flex;flex-wrap:wrap;gap:5px}.quick-chip{padding:4px 8px;border:1px solid black;font-size:.65vw;cursor:pointer;background:#fff}.quick-chip:hover{background:#eee}.quick-chip.trips{background:#ffb347}.quick-chip.experiences{background:#ff6b6b}.quick-chip.friends{background:#98d8c8}.quick-chip.sports{background:#f7dc6f}.misogi-popup{max-width:800px;width:95vw}.misogi-content{padding:0}.misogi-showcase{background:linear-gradient(135deg,#a8c5a8,#8fbc8f,#98d8c8);padding:30px;display:flex;flex-direction:column;align-items:center;gap:12px;min-height:240px}.misogi-tagline-top{color:#fff;font-size:1.1rem;font-weight:900;text-transform:uppercase;letter-spacing:.15em;text-shadow:1px 1px 0 rgba(0,0,0,.2);text-align:center}.misogi-center{text-align:center;color:#fff}.misogi-count{font-size:5rem;font-weight:900;line-height:1;text-shadow:3px 3px 0 rgba(0,0,0,.2)}.misogi-count-label{font-size:1.2rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;opacity:.9}.misogi-tagline-bottom{color:#fff;font-size:.95rem;font-weight:600;font-style:italic;text-shadow:1px 1px 0 rgba(0,0,0,.15);text-align:center}.misogi-showcase-url{color:#0009;font-size:.75rem;font-weight:700;letter-spacing:.05em;padding:4px 12px;background:#fff6;border-radius:20px}.misogi-adventures-list{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;max-width:100%}.misogi-chips-top,.misogi-chips-bottom{max-height:none;overflow:visible}.misogi-adventure-chip{padding:5px 12px;border-radius:20px;font-size:.65rem;font-weight:700;text-transform:uppercase;border:2px solid rgba(0,0,0,.3);box-shadow:2px 2px #00000026}.misogi-adventure-chip.trips{background:#ffb347}.misogi-adventure-chip.experiences{background:#ff6b6b}.misogi-adventure-chip.friends{background:#98d8c8}.misogi-adventure-chip.sports{background:#f7dc6f}.misogi-adventure-chip.work{background:#bb8fce}.misogi-adventure-chip.family{background:#f5a9b8}.misogi-adventure-chip.health{background:#7fcdcd}.misogi-adventure-chip.learning{background:#b4d4a8}.misogi-adventure-chip.romance{background:#ffb6c1}.misogi-adventure-chip.creativity{background:plum}.misogi-adventure-chip.food{background:#ffdab9}.misogi-adventure-chip.music{background:#87ceeb}.misogi-no-adventures{font-size:1rem;color:#fffc;font-style:italic;padding:10px 0}.misogi-about{margin:15px;padding:12px;background:#f9f9f9;border-left:3px solid #FFB347}.about-quote{font-size:.85rem;font-weight:700;margin-bottom:6px;color:#333}.about-message{font-size:.7rem;color:#666;line-height:1.4}.misogi-share-btn{display:block;width:calc(100% - 30px);margin:0 15px 15px;padding:12px;background:linear-gradient(135deg,#00b894,#00cec9);color:#fff;border:2px solid #000;font-size:.9rem;font-weight:700;cursor:pointer;text-transform:uppercase;letter-spacing:.05em;transition:transform .1s,box-shadow .1s;box-shadow:3px 3px #000}.misogi-share-btn:hover{transform:translate(-2px,-2px);box-shadow:5px 5px #000}.misogi-share-btn:active{transform:translate(1px,1px);box-shadow:2px 2px #000}.misogi-footer{padding:10px 15px;border-top:1px solid #eee;font-size:.7rem;color:#999;text-align:center}.ad-popup{max-width:450px;text-align:center}.ad-content{padding:20px}.ad-emoji{font-size:4rem;margin-bottom:10px;animation:bounce 1s ease infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.ad-headline{font-size:1.2rem;font-weight:700;margin-bottom:15px;color:#228b22}.ad-body{font-size:.9rem;margin-bottom:20px;line-height:1.5}.ad-body p{margin-bottom:10px}.ad-features{background:#f5f5f5;padding:15px;margin-bottom:20px;text-align:left}.ad-feature{padding:5px 0;font-size:.85rem}.ad-cta{margin-bottom:20px}.ad-price{font-size:1.5rem;font-weight:700;color:#ff4500;margin-bottom:5px}.ad-disclaimer{font-size:.65rem;color:#888;font-style:italic}.ad-button{background:linear-gradient(135deg,gold,orange);border:2px solid #000;padding:12px 30px;font-size:1rem;font-weight:700;cursor:pointer;font-family:inherit;transition:transform .2s,box-shadow .2s}.ad-button:hover{transform:scale(1.05);box-shadow:0 4px 15px #ffa50066}.create-btn{position:relative;overflow:visible}.create-btn.puffing{animation:pufButton .4s ease-out}@keyframes pufButton{0%{transform:scale(1)}30%{transform:scale(.95)}50%{transform:scale(1.1)}to{transform:scale(1)}}.puf-particle{position:absolute;pointer-events:none;border-radius:50%;animation:pufParticle .6s ease-out forwards}@keyframes pufParticle{0%{opacity:1;transform:translate(-50%,-50%) scale(0)}50%{opacity:.8}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(1)}}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1000;overflow:hidden}.confetti{position:absolute;width:10px;height:10px;animation:confettiFall var(--fall-duration, 3s) ease-in forwards}.confetti.square{border-radius:2px}.confetti.circle{border-radius:50%}.confetti.strip{width:5px;height:15px;border-radius:2px}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}75%{opacity:1}to{transform:translateY(100vh) rotate(var(--rotation, 720deg));opacity:0}}.toast-bar{position:fixed;bottom:-100px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#85b4a2,#6b9c8c);color:#fff;padding:15px 30px;border:3px solid #3d6b5c;border-radius:8px;font-size:1rem;font-weight:700;z-index:1001;transition:bottom .5s cubic-bezier(.34,1.56,.64,1);box-shadow:0 -4px 20px #0000004d;text-align:center;max-width:90vw}.toast-bar.show{bottom:30px}.toast-bar .toast-emoji{font-size:1.3rem;margin-right:10px}.toast-bar .toast-message{display:inline}.toast-bar .toast-count{color:#fff;font-size:1.2rem;text-shadow:0 1px 2px rgba(0,0,0,.3)}.signin-popup{text-align:center;padding:40px;max-width:420px;position:relative}.signin-popup h2{font-size:1.5rem;margin-bottom:15px;line-height:1.3}.signin-popup p{font-size:1rem;margin-bottom:15px;line-height:1.5}.signin-popup .privacy-note{font-size:.85rem;color:#666;background:#f5f5f5;padding:12px 15px;border-radius:8px;margin:20px 0}.signin-popup .privacy-note strong{color:#333}.signin-popup-close{position:absolute;top:15px;right:15px;font-size:1.5rem;cursor:pointer;color:#999;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.signin-popup-close:hover{background:#f0f0f0;color:#333}.signin-popup .google-signin-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:14px 24px;font-size:1rem;font-weight:600;background:#fff;border:2px solid #000;border-radius:8px;cursor:pointer;transition:all .2s;box-shadow:3px 3px #0003}.signin-popup .google-signin-btn:hover{background:#f8f8f8;transform:translate(-1px,-1px);box-shadow:4px 4px #00000040}.signin-popup .google-signin-btn:active{transform:translate(1px,1px);box-shadow:1px 1px #00000026}.signin-popup .google-signin-btn img{flex-shrink:0}.event-item{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.event-info{flex:1;min-width:0}.event-actions{display:flex;gap:5px;align-items:center}.invite-event-btn{background:none;border:1px solid #ddd;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:1rem;transition:all .2s}.invite-event-btn:hover{background:#f0f0f0;border-color:#999;transform:scale(1.1)}.event-attendees{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:.75rem}.attendees-label{color:#666;font-weight:500}.attendees-list{display:flex;align-items:center}.attendee-avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#98d8c8,#87ceeb);color:#000;display:flex;align-items:center;justify-content:center;font-size:.6rem;font-weight:700;margin-left:-6px;border:2px solid #fff;box-shadow:0 1px 3px #00000026}.attendee-avatar:first-child{margin-left:0}.attendee-more{margin-left:4px;font-size:.7rem;color:#888;font-weight:500}.invite-modal{width:500px;max-width:95vw;max-height:90vh;overflow-y:auto}.invite-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:3px solid #000}.invite-modal .modal-header h2{font-size:1.1rem;margin:0}.invite-modal .modal-body{padding:20px}.invite-event-preview{background:#f9f9f9;border:2px solid #000;padding:15px;margin-bottom:20px;text-align:center}.invite-event-name{font-size:1.3rem;font-weight:700;margin-bottom:5px}.invite-event-date{font-size:.9rem;color:#666}.invite-event-desc{font-size:.85rem;color:#888;font-style:italic;margin-top:8px}.invite-attendees-section,.invite-share-section,.invite-add-section,.invite-image-section{margin-bottom:20px}.invite-modal h4{font-size:.85rem;font-weight:700;margin-bottom:10px;text-transform:uppercase;letter-spacing:.05em}.invite-attendees-list{display:flex;flex-direction:column;gap:8px;max-height:150px;overflow-y:auto}.invite-attendee{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#f5f5f5;border:1px solid #ddd;border-radius:4px}.invite-attendee .attendee-avatar{width:32px;height:32px;font-size:.75rem;margin:0}.attendee-info{flex:1;display:flex;flex-direction:column}.attendee-name{font-weight:500;font-size:.85rem}.attendee-status{font-size:.7rem;text-transform:uppercase}.attendee-status.pending{color:#f39c12}.attendee-status.accepted{color:#27ae60}.attendee-status.declined{color:#e74c3c}.invite-link-container{display:flex;gap:8px}.invite-link-container input{flex:1;padding:10px 12px;border:2px solid #000;font-family:monospace;font-size:.8rem;background:#f9f9f9}.invite-link-container .copy-btn{padding:10px 16px;background:#000;color:#fff;border:none;font-weight:700;cursor:pointer;transition:background .2s}.invite-link-container .copy-btn:hover{background:#333}.invite-add-form{display:flex;gap:8px}.invite-add-form input{flex:1;padding:10px 12px;border:2px solid #000;font-size:.85rem}.invite-add-form .add-btn{padding:10px 20px;background:linear-gradient(135deg,#98d8c8,#87ceeb);border:2px solid #000;font-weight:700;cursor:pointer;transition:transform .2s}.invite-add-form .add-btn:hover{transform:scale(1.05)}.invite-image-desc{font-size:.8rem;color:#888;margin-bottom:10px}.invite-image-options{display:flex;gap:8px;margin-bottom:15px}.invite-style-btn{flex:1;padding:10px;border:2px solid #ddd;background:#fff;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.invite-style-btn:hover{border-color:#999}.invite-style-btn.active{background:#000;color:#fff;border-color:#000}.invite-image-preview{border:3px solid #000;margin-bottom:15px;background:#f5f5f5;display:flex;justify-content:center;align-items:center;min-height:200px}.invite-image-preview canvas{max-width:100%;height:auto}.invite-image-actions{display:flex;gap:10px}.invite-image-actions .download-btn,.invite-image-actions .share-btn{flex:1;padding:12px;border:2px solid #000;font-weight:700;cursor:pointer;transition:all .2s;font-family:inherit}.invite-image-actions .download-btn{background:#000;color:#fff}.invite-image-actions .download-btn:hover{background:#333}.invite-image-actions .share-btn{background:linear-gradient(135deg,#00b894,#00cec9);color:#fff}.invite-image-actions .share-btn:hover{transform:scale(1.02)}.invite-popup{width:450px;max-width:95vw;max-height:90vh;overflow-y:auto}.invite-popup .popup-header{background:linear-gradient(135deg,#98d8c8,#87ceeb);margin:-20px -20px 0;padding:15px 20px;border-bottom:2px solid #000}.invite-popup-content{padding:10px 0}.invite-popup .invite-event-preview{background:#f9f9f9;border:2px solid #000;padding:15px;margin-bottom:20px;text-align:center}.invite-popup .invite-event-name{font-size:1.2rem;font-weight:700;margin-bottom:5px}.invite-popup .invite-event-date{font-size:.9rem;color:#666}.invite-section{margin-bottom:20px}.invite-section h4{font-size:.85rem;font-weight:700;margin-bottom:5px;text-transform:uppercase;letter-spacing:.05em}.invite-section-desc{font-size:.75rem;color:#888;margin-bottom:10px}.invite-image-styles{display:flex;gap:8px;margin-bottom:12px}.invite-popup .invite-style-btn{flex:1;padding:8px;border:2px solid #ddd;background:#fff;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.invite-popup .invite-style-btn:hover{border-color:#999}.invite-popup .invite-style-btn.active{background:#000;color:#fff;border-color:#000}.invite-popup .invite-image-preview{border:2px solid #000;margin-bottom:12px;background:#f5f5f5;display:flex;justify-content:center;align-items:center;min-height:200px;overflow:hidden}.invite-popup .invite-image-preview canvas{max-width:100%;height:auto}.missing-calendar-box{margin-top:15px;padding:20px;background:linear-gradient(135deg,#f5f5f5,#ebebeb);border:2px dashed #ccc;border-radius:12px;cursor:pointer;text-align:center;transition:all .2s}.missing-calendar-box:hover{border-color:#999;background:linear-gradient(135deg,#fff,#f5f5f5);transform:translateY(-2px)}.missing-calendar-icon{font-size:2rem;margin-bottom:8px}.missing-calendar-text{font-weight:700;font-size:.95rem;margin-bottom:4px}.missing-calendar-subtext{font-size:.75rem;color:#888}.feedback-popup{width:420px;max-width:95vw}.feedback-popup .popup-header{background:linear-gradient(135deg,#ffd93d,#ff6b6b);margin:-20px -20px 0;padding:15px 20px;border-bottom:2px solid #000}.feedback-popup-content{padding:10px 0}.feedback-intro{font-size:.95rem;margin-bottom:20px;color:#333}.feedback-popup .form-group{margin-bottom:15px}.feedback-popup .form-group label{display:block;font-size:.8rem;font-weight:600;margin-bottom:6px;text-transform:uppercase}.feedback-popup .form-group textarea,.feedback-popup .form-group input{width:100%;padding:12px;border:2px solid #ddd;font-family:inherit;font-size:.9rem;transition:border-color .2s;box-sizing:border-box}.feedback-popup .form-group textarea:focus,.feedback-popup .form-group input:focus{outline:none;border-color:#ffd93d}.feedback-popup .form-group textarea{resize:vertical;min-height:100px}.feedback-submit-btn{width:100%;padding:14px;background:linear-gradient(135deg,#ffd93d,#ff6b6b);border:2px solid #000;font-family:inherit;font-size:1rem;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}.feedback-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:4px 4px #0003}.feedback-submit-btn:disabled{opacity:.7;cursor:not-allowed}.feedback-thanks{text-align:center;font-size:1.1rem;padding:30px 10px;color:#333}@media(max-width:1024px)and (orientation:portrait){html,body{overflow:hidden;height:100vw;width:100vh}.container{transform:rotate(90deg);transform-origin:top left;position:absolute;top:0;left:100%;width:100vh;height:100vw;overflow:auto}.calendar-wrapper{min-height:auto}.header-row,.month-row{grid-template-columns:40px repeat(37,1fr)}.month-name{font-size:8px}.day{font-size:6px}.header-row .day-header{font-size:5px;padding:1px 0}.header-row .label{font-size:7px}.event-banner{font-size:5px!important;padding:0 1px}h1{font-size:14px!important}.toolbar{transform:none;position:static;gap:5px}.toolbar-btn,.login-btn,.settings-btn{font-size:8px!important;padding:4px 8px!important}.adventures-counter{font-size:8px}.counter-number{font-size:12px}}.mobile-email-overlay{display:none;position:fixed;inset:0;background:#000000e6;z-index:99999;justify-content:center;align-items:center}.mobile-email-overlay.active{display:flex}.mobile-email-popup{background:#9cb09c;border:3px solid #000;padding:25px;max-width:90%;width:320px;text-align:center;color:#000;box-shadow:6px 6px #000}.mobile-email-popup .popup-emoji{font-size:50px;margin-bottom:10px}.mobile-email-popup h2{font-size:18px;margin:0 0 10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.mobile-email-popup p{font-size:13px;margin:0 0 20px;line-height:1.5}.mobile-email-popup input[type=email]{width:100%;padding:12px;border:2px solid #000;font-size:16px;margin-bottom:15px;box-sizing:border-box;background:#fff}.mobile-email-popup input[type=email]:focus{outline:none;box-shadow:3px 3px #000}.mobile-email-popup .send-btn{background:#5d7a5d;color:#fff;border:2px solid #3D5A3D;padding:12px 20px;font-size:13px;font-weight:700;cursor:pointer;width:100%;text-transform:uppercase;letter-spacing:1px}.mobile-email-popup .send-btn:hover{background:#4a674a;box-shadow:3px 3px #3d5a3d}.mobile-email-popup .skip-btn{background:transparent;border:none;color:#000;font-size:11px;margin-top:15px;cursor:pointer;opacity:.7}.mobile-email-popup .skip-btn:hover{opacity:1;text-decoration:underline}.mobile-email-popup .success-message{display:none;padding:20px 0}.mobile-email-popup .success-message .check-emoji{font-size:50px;margin-bottom:10px}.mobile-email-popup .success-message h3{margin:0 0 10px;font-size:18px;text-transform:uppercase}.mobile-email-popup .success-message p{margin:0;font-size:13px}@media(orientation:portrait),(max-aspect-ratio:1/1){.calendar-wrapper{overflow-x:auto;overflow-y:hidden}.header-row.portrait-header,.month-row.portrait-row{grid-template-columns:40px repeat(37,minmax(20px,1fr));min-width:800px}.header-row .label{font-size:2.5vw}.header-row .day-header{font-size:2vw;padding:3px 1px}.month-name{font-size:2.5vw}.day{font-size:2vw}h1{font-size:4vw}.toolbar{position:static;transform:none;margin-bottom:5px;justify-content:center}.toolbar-btn,.login-btn{font-size:2.5vw;padding:8px 12px}.settings-btn{font-size:2.5vw;position:static;transform:none;margin-left:10px}.header-container{flex-wrap:wrap;gap:10px}.popup{width:90vw!important;max-height:70vh}.legend-grid{grid-template-columns:repeat(2,1fr)}.legend-item{font-size:3vw}.legend-color{width:20px;height:20px}.activities-grid{grid-template-columns:repeat(2,1fr)}.activity-card{font-size:2.5vw}.agenda-content{flex-direction:column}.agenda-events{width:100%;max-height:150px}.agenda-create{border-left:none;border-top:1px solid black;padding-left:0;padding-top:15px}.form-group input,.form-group select,.category-selected,.category-option{font-size:3vw;padding:10px}.popup-title,.agenda-title{font-size:4vw}.popup-close,.agenda-close{font-size:3vw;padding:8px 15px}.create-btn{font-size:3vw;padding:12px}}@media print{.toolbar,.popup-overlay,.toolbar-btn,.settings-btn{display:none!important}.calendar-section{overflow:visible}.day{border:1px solid #000}}:root{--theme-bg: #ffffff;--theme-surface: #f5f5f5;--theme-text: #000000;--theme-text-secondary: #666666;--theme-border: #000000;--theme-weekend: #add8e6;--theme-holiday: #ffcccc;--theme-header-bg: #ffffff;--theme-font-primary: "Courier New", Courier, monospace;--theme-font-heading: "Courier New", Courier, monospace;--cat-trips: #FFB347;--cat-experiences: #FF6B6B;--cat-friends: #98D8C8;--cat-sports: #F7DC6F;--cat-work: #BB8FCE;--cat-family: #F5A9B8;--cat-health: #7FCDCD;--cat-learning: #B4D4A8;--cat-romance: #FFB6C1;--cat-creativity: #DDA0DD;--cat-food: #FFDAB9;--cat-music: #87CEEB;--theme-glow: none;--theme-text-shadow: none;--theme-soft-shadow: none}body.themed{background:var(--theme-bg);color:var(--theme-text);font-family:var(--theme-font-primary)}body.themed *{font-family:inherit}body.themed .container{background:var(--theme-bg)}body.themed h1{font-family:var(--theme-font-heading);color:var(--theme-text);text-shadow:var(--theme-text-shadow)}body.themed .month-name{font-family:var(--theme-font-heading)}body.themed .event-banner,body.themed .toolbar-btn,body.themed .settings-btn,body.themed .popup-close,body.themed .create-btn{font-family:var(--theme-font-primary)}body.themed .header-container{background:var(--theme-header-bg);border-color:var(--theme-border)}body.themed .toolbar-btn{border-color:var(--theme-border);color:var(--theme-text)}body.themed .toolbar-btn:hover{background:var(--theme-surface)}body.themed .settings-btn{border-color:var(--theme-border);color:var(--theme-text)}body.themed .settings-menu{background:var(--theme-bg);border-color:var(--theme-border);color:var(--theme-text)}body.themed .calendar-wrapper{background:var(--theme-bg)}body.themed .header-row{background:var(--theme-surface);border-color:var(--theme-border)}body.themed .header-row .label,body.themed .header-row .day-header{color:var(--theme-text);border-color:var(--theme-border)}body.themed .month-row{border-color:var(--theme-border)}body.themed .month-name{background:var(--theme-surface);color:var(--theme-text);border-color:var(--theme-border)}body.themed .day{background:var(--theme-bg);color:var(--theme-text);border-color:var(--theme-border)}body.themed .day.weekend{background:var(--theme-weekend)}body.themed .day.selected{background:var(--theme-border);color:var(--theme-bg)}body.themed .day:hover:not(.empty){background:var(--theme-surface)}body.themed .event-banner.trips,body.themed .legend-color.trips,body.themed .category-option.trips,body.themed .activity-card[data-category=trips]{background:var(--cat-trips)!important}body.themed .event-banner.experiences,body.themed .legend-color.experiences,body.themed .category-option.experiences,body.themed .activity-card[data-category=experiences]{background:var(--cat-experiences)!important}body.themed .event-banner.friends,body.themed .legend-color.friends,body.themed .category-option.friends,body.themed .activity-card[data-category=friends]{background:var(--cat-friends)!important}body.themed .event-banner.sports,body.themed .legend-color.sports,body.themed .category-option.sports,body.themed .activity-card[data-category=sports]{background:var(--cat-sports)!important}body.themed .event-banner.work,body.themed .legend-color.work,body.themed .category-option.work,body.themed .activity-card[data-category=work]{background:var(--cat-work)!important}body.themed .event-banner.family,body.themed .legend-color.family,body.themed .category-option.family,body.themed .activity-card[data-category=family]{background:var(--cat-family)!important}body.themed .event-banner.health,body.themed .legend-color.health,body.themed .category-option.health,body.themed .activity-card[data-category=health]{background:var(--cat-health)!important}body.themed .event-banner.learning,body.themed .legend-color.learning,body.themed .category-option.learning,body.themed .activity-card[data-category=learning]{background:var(--cat-learning)!important}body.themed .event-banner.romance,body.themed .legend-color.romance,body.themed .category-option.romance,body.themed .activity-card[data-category=romance]{background:var(--cat-romance)!important}body.themed .event-banner.creativity,body.themed .legend-color.creativity,body.themed .category-option.creativity,body.themed .activity-card[data-category=creativity]{background:var(--cat-creativity)!important}body.themed .event-banner.food,body.themed .legend-color.food,body.themed .category-option.food,body.themed .activity-card[data-category=food]{background:var(--cat-food)!important}body.themed .event-banner.music,body.themed .legend-color.music,body.themed .category-option.music,body.themed .activity-card[data-category=music]{background:var(--cat-music)!important}body.themed .popup-overlay{background:#000000b3}body.themed .popup{background:var(--theme-bg);border-color:var(--theme-border);color:var(--theme-text)}body.themed .popup-header{border-color:var(--theme-border)}body.themed .popup-title,body.themed .agenda-title{color:var(--theme-text);font-family:var(--theme-font-heading)}body.themed .popup-close,body.themed .agenda-close{border-color:var(--theme-border);color:var(--theme-text)}body.themed .popup-close:hover,body.themed .agenda-close:hover{background:var(--theme-surface)}body.themed .form-group label{color:var(--theme-text)}body.themed .form-group input,body.themed .category-selected{background:var(--theme-bg);border-color:var(--theme-border);color:var(--theme-text)}body.themed .create-btn{background:var(--theme-border);color:var(--theme-bg)}body.themed .create-btn:hover{opacity:.9}body.themed .user-menu{background:var(--theme-bg);border-color:var(--theme-border);color:var(--theme-text)}body.themed .user-menu-header{background:var(--theme-surface)}body.themed .user-menu-divider{background:var(--theme-border);opacity:.3}body.themed .user-menu-calendar-item:hover,body.themed .user-menu-calendar-item.active{background:var(--theme-surface)}.theme-selector{display:flex;flex-direction:column;gap:8px;margin-top:8px;max-height:300px;overflow-y:auto;padding-right:5px}.theme-selector::-webkit-scrollbar{width:6px}.theme-selector::-webkit-scrollbar-track{background:var(--theme-surface)}.theme-selector::-webkit-scrollbar-thumb{background:var(--theme-border);border-radius:3px}.theme-option{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--theme-border);cursor:pointer;background:var(--theme-bg);transition:all .2s}.theme-option:hover{background:var(--theme-surface)}.theme-option.active{border-width:2px;font-weight:700}.theme-preview{width:40px;height:24px;border-radius:3px;display:flex;gap:2px;padding:2px;align-items:center;justify-content:center}.theme-preview-swatch{width:8px;height:16px;border-radius:2px}.theme-name{flex:1;font-size:.85em}.theme-check{color:#4285f4;font-weight:700}body.themed[data-theme=strangerThings] h1{animation:flicker 3s infinite}@keyframes flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.8}94%{opacity:1}95%{opacity:.9}96%{opacity:1}}body.themed[data-theme=ascii80s]:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(0,0,0,.1) 0px,rgba(0,0,0,.1) 1px,transparent 1px,transparent 2px);z-index:9999}body.themed[data-theme=ascii80s] *{text-shadow:0 0 5px currentColor}body.themed[data-theme=blog2006] h1:before{content:".:*:. "}body.themed[data-theme=blog2006] h1:after{content:" .:*:."}body.themed[data-theme=blog2006] .event-banner{animation:rainbow 2s linear infinite}@keyframes rainbow{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(360deg)}}body.themed[data-theme=millennialBeige] .day,body.themed[data-theme=millennialBeige] .popup,body.themed[data-theme=millennialBeige] .toolbar-btn,body.themed[data-theme=millennialBeige] .settings-btn,body.themed[data-theme=millennialBeige] .event-banner{border-radius:8px}body.themed[data-theme=millennialBeige] .popup{box-shadow:0 4px 20px #0000001a}body.themed .event-banner.holiday{background:var(--theme-holiday)!important}body.themed[data-theme=brat] h1{font-weight:900;text-transform:lowercase;letter-spacing:-.02em}body.themed[data-theme=brat] .event-banner{font-weight:700}body.themed[data-theme=barbiecore] .day,body.themed[data-theme=barbiecore] .popup,body.themed[data-theme=barbiecore] .toolbar-btn,body.themed[data-theme=barbiecore] .settings-btn,body.themed[data-theme=barbiecore] .event-banner{border-radius:12px}body.themed[data-theme=barbiecore] h1{text-shadow:2px 2px 0 #fff,4px 4px 0 #FF69B4}body.themed[data-theme=barbiecore] .event-banner{box-shadow:0 4px 15px #ff69b466}body.themed[data-theme=windows95] .toolbar-btn,body.themed[data-theme=windows95] .settings-btn,body.themed[data-theme=windows95] .create-btn,body.themed[data-theme=windows95] .popup-close{box-shadow:inset -1px -1px #0a0a0a,inset 1px 1px #fff,inset -2px -2px gray,inset 2px 2px #dfdfdf;border:none;background:silver;color:#000}body.themed[data-theme=windows95] .toolbar-btn:active,body.themed[data-theme=windows95] .settings-btn:active{box-shadow:inset 1px 1px #0a0a0a,inset -1px -1px #fff,inset 2px 2px gray,inset -2px -2px #dfdfdf}body.themed[data-theme=windows95] h1{color:#fff}body.themed[data-theme=windowsXP] .header-container{background:linear-gradient(180deg,#0054e3,#2683ff,#0054e3)}body.themed[data-theme=windowsXP] .toolbar-btn,body.themed[data-theme=windowsXP] .settings-btn{border-radius:3px;background:linear-gradient(180deg,#fff,#ece9d8);border:1px solid #003399}body.themed[data-theme=windowsXP] h1{color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.5)}body.themed[data-theme=vaporwave]{background:linear-gradient(135deg,#1a0033,#4d0099,#1a0033)}body.themed[data-theme=vaporwave] h1{background:linear-gradient(90deg,#ff71ce,#01cdfe,#05ffa1,#fffb96,#b967ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.themed[data-theme=vaporwave] *{text-shadow:0 0 10px currentColor}body.themed[data-theme=lisaFrank]{background:linear-gradient(45deg,#f0f,#0ff,#ff0,#f0f);background-size:400% 400%;animation:lisaFrankBg 5s ease infinite}@keyframes lisaFrankBg{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}body.themed[data-theme=lisaFrank] h1{background:linear-gradient(90deg,red,#ff7f00,#ff0,#0f0,#00f,#8b00ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:rainbow 2s linear infinite}body.themed[data-theme=lisaFrank] .event-banner{animation:rainbow 1s linear infinite}body.themed[data-theme=matrix]:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0px,transparent 2px,rgba(0,255,0,.03) 2px,rgba(0,255,0,.03) 4px);z-index:9998}body.themed[data-theme=matrix] *{text-shadow:0 0 5px #00FF00,0 0 10px #00FF00}body.themed[data-theme=matrix] h1{animation:matrixGlow 2s ease-in-out infinite}@keyframes matrixGlow{0%,to{text-shadow:0 0 5px #00FF00,0 0 10px #00FF00}50%{text-shadow:0 0 20px #00FF00,0 0 30px #00FF00,0 0 40px #00FF00}}body.themed[data-theme=tumblr2014] .event-banner{opacity:.85}body.themed[data-theme=tumblr2014] h1{font-style:italic;letter-spacing:.1em}body.themed[data-theme=darkAcademia]{background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h60v60H0z' fill='none'/%3E%3Cpath d='M30 30m-1 0a1 1 0 1 0 2 0a1 1 0 1 0-2 0' fill='%235c4a36' fill-opacity='0.1'/%3E%3C/svg%3E")}body.themed[data-theme=darkAcademia] h1{font-variant:small-caps;letter-spacing:.15em}body.themed[data-theme=darkAcademia] .event-banner{border:1px solid rgba(212,197,169,.3)}body.themed[data-theme=cottagecore] .day,body.themed[data-theme=cottagecore] .popup,body.themed[data-theme=cottagecore] .toolbar-btn,body.themed[data-theme=cottagecore] .event-banner{border-radius:10px}body.themed[data-theme=cottagecore] h1{font-style:italic}body.themed[data-theme=cottagecore] .event-banner{box-shadow:0 2px 8px #0000001a}body.themed[data-theme=goblincore]{background-image:url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 20c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2z' fill='%235c6b58' fill-opacity='0.15'/%3E%3C/svg%3E")}body.themed[data-theme=goblincore] h1{letter-spacing:.05em}body.themed[data-theme=goblincore] .event-banner{border-radius:4px;border:1px dashed rgba(201,212,197,.3)}body.themed[data-theme=wesAnderson] h1{font-variant:small-caps;letter-spacing:.2em}body.themed[data-theme=wesAnderson] .toolbar-btn,body.themed[data-theme=wesAnderson] .settings-btn,body.themed[data-theme=wesAnderson] .popup{border-radius:0;border-width:2px}body.themed[data-theme=wesAnderson] .event-banner{border-radius:0;font-variant:small-caps}body.themed[data-theme=lotr]{background-image:url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h100v100H0z' fill='none'/%3E%3Cpath d='M50 50m-30 0a30 30 0 1 0 60 0a30 30 0 1 0-60 0' stroke='%235c5040' stroke-opacity='0.05' fill='none'/%3E%3C/svg%3E")}body.themed[data-theme=lotr] h1{letter-spacing:.15em;font-variant:small-caps}body.themed[data-theme=lotr] h1:before{content:"~ "}body.themed[data-theme=lotr] h1:after{content:" ~"}body.themed[data-theme=lotr] .event-banner{border:1px solid rgba(212,201,168,.3);border-radius:2px}body.themed[data-theme=msPaint] h1{color:#fff;text-shadow:2px 2px 0 #000080}body.themed[data-theme=msPaint] .toolbar-btn,body.themed[data-theme=msPaint] .settings-btn{border:2px solid #000000;background:silver}body.themed[data-theme=msPaint] .event-banner{border:2px solid #000000;font-weight:700}body.themed[data-theme=msPaint] .day{border:1px solid #808080}body.themed[data-theme=calmPastel] .day,body.themed[data-theme=calmPastel] .popup,body.themed[data-theme=calmPastel] .toolbar-btn,body.themed[data-theme=calmPastel] .settings-btn,body.themed[data-theme=calmPastel] .event-banner{border-radius:12px}body.themed[data-theme=calmPastel] .event-banner{box-shadow:0 2px 8px #0000000d}body.themed[data-theme=calmPastel] .popup{box-shadow:0 8px 30px #00000014}body.themed[data-theme=ai2025] .header-container{background:linear-gradient(135deg,#7c3aed,#ec4899,#06b6d4)}body.themed[data-theme=ai2025] h1{background:linear-gradient(90deg,#fff,#e0e0e0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}body.themed[data-theme=ai2025] .toolbar-btn,body.themed[data-theme=ai2025] .settings-btn{border-radius:8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff}body.themed[data-theme=ai2025] .toolbar-btn:hover,body.themed[data-theme=ai2025] .settings-btn:hover{background:#fff3}body.themed[data-theme=ai2025] .event-banner{border-radius:6px;box-shadow:0 0 15px #7c3aed4d}body.themed[data-theme=ai2025] .day{border-radius:4px}body.themed[data-theme=apple] .day,body.themed[data-theme=apple] .popup,body.themed[data-theme=apple] .toolbar-btn,body.themed[data-theme=apple] .settings-btn,body.themed[data-theme=apple] .event-banner{border-radius:10px}body.themed[data-theme=apple] .toolbar-btn,body.themed[data-theme=apple] .settings-btn{background:#f5f5f7;border:none;box-shadow:0 1px 3px #0000001a}body.themed[data-theme=apple] .toolbar-btn:hover,body.themed[data-theme=apple] .settings-btn:hover{background:#e8e8ed}body.themed[data-theme=apple] h1{font-weight:600;letter-spacing:-.02em}body.themed[data-theme=apple] .popup{box-shadow:0 10px 40px #00000026;border:none}body.themed[data-theme=apple] .event-banner{box-shadow:0 2px 8px #0000001a}body.themed[data-theme=gryffindor] h1{color:#d3a625;text-shadow:2px 2px 4px rgba(0,0,0,.5);font-variant:small-caps}body.themed[data-theme=gryffindor] .header-container{background:linear-gradient(180deg,#740001,#4a0000);border-bottom-color:#d3a625}body.themed[data-theme=gryffindor] .event-banner{border:1px solid rgba(211,166,37,.4);box-shadow:0 2px 8px #d3a62533}body.themed[data-theme=gryffindor] .toolbar-btn,body.themed[data-theme=gryffindor] .settings-btn{border-color:#d3a625;color:#d3a625}body.themed[data-theme=slytherin] h1{color:#aaa;text-shadow:2px 2px 4px rgba(0,0,0,.5);font-variant:small-caps}body.themed[data-theme=slytherin] .header-container{background:linear-gradient(180deg,#1a472a,#0a1f12);border-bottom-color:#5d5d5d}body.themed[data-theme=slytherin] .event-banner{border:1px solid rgba(93,93,93,.4);box-shadow:0 2px 8px #5d5d5d33}body.themed[data-theme=slytherin] .toolbar-btn,body.themed[data-theme=slytherin] .settings-btn{border-color:#5d5d5d;color:#aaa}body.themed[data-theme=hufflepuff] h1{color:#fff;text-shadow:2px 2px 4px rgba(0,0,0,.5);font-variant:small-caps}body.themed[data-theme=hufflepuff] .header-container{background:#000;border-bottom-color:#ffd800}body.themed[data-theme=hufflepuff] .event-banner{border:1px solid rgba(0,0,0,.4);box-shadow:0 2px 8px #0003}body.themed[data-theme=hufflepuff] .toolbar-btn,body.themed[data-theme=hufflepuff] .settings-btn{background:#000;border-color:#000;color:#ffd800}body.themed[data-theme=hufflepuff] .toolbar-btn:hover,body.themed[data-theme=hufflepuff] .settings-btn:hover{background:#1a1a1a}body.themed[data-theme=ravenclaw] h1{color:silver;text-shadow:2px 2px 4px rgba(0,0,0,.5);font-variant:small-caps}body.themed[data-theme=ravenclaw] .header-container{background:linear-gradient(180deg,#0e1a40,#050d20);border-bottom-color:silver}body.themed[data-theme=ravenclaw] .event-banner{border:1px solid rgba(192,192,192,.4);box-shadow:0 2px 8px #c0c0c033}body.themed[data-theme=ravenclaw] .toolbar-btn,body.themed[data-theme=ravenclaw] .settings-btn{border-color:silver;color:silver}
