@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Roboto+Slab:wght@500;600;700&display=swap";*{box-sizing:border-box}body{color:#0f172a;background:linear-gradient(#eef2ff 0%,#fff 35%);margin:0;font-family:Inter,system-ui,-apple-system,sans-serif}body.theme-dark{color:#e2e8f0;background:linear-gradient(#0b1020 0%,#090d18 45%)}#root{min-height:100vh}button,input,textarea,select{font:inherit}button{color:#111827;cursor:pointer;background:#e5e7eb;border:1px solid #cbd5e1;border-radius:10px;padding:10px 14px}.icon-close-btn,.event-modal-close,.auth-modal-close,.event-detail-swipe-btn,.icon-edit-btn,.fab{justify-content:center;align-items:center;display:inline-flex}button:disabled{opacity:.6;cursor:not-allowed}.page{max-width:100%;margin:0;padding:0 0 90px}.topbar{justify-content:space-between;align-items:center;gap:14px;display:flex}.page-full{min-height:100vh}.modern-topbar{z-index:12;-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;background:0 0;border-bottom:none;padding:0;position:fixed;top:0;left:0;right:0;overflow:visible}.top-tag-drawer{z-index:20;pointer-events:auto;grid-template-rows:0fr auto;justify-items:center;transition:grid-template-rows .22s;display:grid;position:absolute;top:0;left:50%;overflow:visible;transform:translate(-50%)}.top-tag-drawer.open{grid-template-rows:1fr auto}.top-tag-panel-shell{width:100vw;min-height:0;margin-left:-50vw;margin-right:-50vw;position:relative;left:50%;right:50%;overflow:hidden}.top-tag-panel-inner{box-sizing:border-box;width:100%;box-shadow:none;background:#fff;border:none;border-bottom:1px solid #e2e8f0;border-radius:0;justify-content:center;padding:8px 16px;display:flex}.top-tag-panel-track{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;width:fit-content;max-width:100%;margin:0 auto;display:flex}.top-tag-select-all{color:#64748b;cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:5px 4px;font-size:12px;font-weight:500;text-decoration:underline}.top-tag-select-all:hover{color:#334155}.brand-logo{letter-spacing:-.01em;text-align:center;color:#312e81;text-transform:none;margin:0;font-family:Roboto Slab,Georgia,Times New Roman,serif;font-size:22px;font-weight:600}.brand-sticker{background:linear-gradient(#fff,#f8fafc);border:1px solid #d8deea;border-top:none;border-radius:0 0 18px 18px;flex-shrink:0;min-width:200px;padding:10px 22px;box-shadow:0 8px 24px #0f172a24}.profile-menu-wrap{z-index:10;pointer-events:auto;flex-shrink:0;justify-content:flex-end;align-items:center;width:auto;display:flex;position:absolute;top:12px;right:16px}.profile-menu-wrap .profile-menu{z-index:30}.profile-avatar{color:#fff;background:#9ca3af;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;min-height:40px;padding:0;display:inline-flex;overflow:visible;box-shadow:0 2px 8px #0f172a1f}.profile-avatar-icon{flex-shrink:0;width:20px;height:20px;display:block}.profile-menu-settings{border-top:1px solid #e2e8f0;gap:10px;padding:10px 0 4px;display:grid}.profile-menu-setting-row{justify-content:space-between;align-items:center;gap:12px;min-height:36px;display:flex}.profile-menu-setting-label{letter-spacing:.04em;text-transform:uppercase;color:#64748b;font-size:11px;font-weight:600}.profile-menu-segmented{gap:6px;display:flex}.profile-menu-segment{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex:1;padding:8px 6px;font-size:12px;font-weight:500;line-height:1.2}.profile-menu-segment:hover:not(:disabled){background:#f1f5f9}.profile-menu-segment.active{color:#fff;background:#6366f1;border-color:#6366f1}.profile-menu{background:#fff;border:1px solid #dbe4f0;border-radius:12px;gap:8px;width:280px;padding:12px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 12px 30px #0f172a26}.top-tag-empty{color:#64748b;padding:4px 2px;font-size:13px}.profile-menu p{margin:0;font-size:13px}.profile-menu-name{font-size:14px}.profile-menu-link{text-align:center;color:#0f172a;background:#f1f5f9;border-radius:8px;padding:8px 10px;font-size:14px;font-weight:500;text-decoration:none;display:block}.profile-menu-link:hover{background:#e2e8f0}.plan-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.plan-row button{padding:6px 10px;font-size:12px}.tag-chip-list{flex-wrap:wrap;gap:6px;display:flex}.tag-chip{background:var(--tag-color,#6366f1);color:#fff;opacity:.72;border:1px solid #0000;border-radius:999px;padding:5px 10px;font-size:12px}.tag-chip.active{background:var(--tag-color,#6366f1);color:#fff;opacity:1}.event-tag-cloud{flex-wrap:wrap;gap:8px;display:flex}.event-tag-chip{font-size:13px}.tag-add-btn{border-radius:999px;place-items:center;width:30px;height:30px;padding:0;display:grid}.warning-banner{color:#92400e;background:#fef3c7;border-radius:10px;margin-top:12px;padding:10px 12px}.controls{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:10px;margin-top:14px;display:flex}.controls label{color:#475569;margin-bottom:4px;font-size:13px;display:block}.controls select{background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:8px 10px}.share-link{margin-top:8px;font-size:14px}.share-link a{color:#4338ca}.timeline-wrap{box-shadow:none;background:0 0;border:none;border-radius:0;margin-top:0;overflow:hidden}.timeline-wrap.full-bleed{min-height:100vh}.app-build-footer{z-index:6;pointer-events:none;text-align:center;padding:0 16px;position:fixed;bottom:6px;left:0;right:0}.build-label{color:#94a3b8;font-family:ui-monospace,monospace;font-size:10px;line-height:1.2}.vertical-timeline{-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain;padding:12px 20px 140px;overflow:auto}.vertical-timeline.viewport-fill{box-sizing:border-box;height:100vh;padding-top:54px}.timeline-canvas{--timeline-axis:156px;min-height:1200px;position:relative}.timeline-canvas:before{content:"";top:0;bottom:0;left:var(--timeline-axis);z-index:1;background:#b8c4d4;width:2px;position:absolute;transform:translate(-50%)}.tick-row{pointer-events:none;border-top:1px dashed #e2e8f0;height:1px;position:absolute;left:0;right:0}.tick-label{width:calc(var(--timeline-axis) - 28px);color:#64748b;text-align:right;white-space:nowrap;background:#fff;padding-right:8px;font-size:12px;position:absolute;top:-10px;left:8px}.timeline-item{min-height:48px;padding:0 0 8px;position:relative}.timeline-item.absolute{content-visibility:auto;contain-intrinsic-size:48px;position:absolute;left:0;right:0}.timeline-item.is-raised{z-index:40}.timeline-event-date{width:calc(var(--timeline-axis) - 22px);text-align:right;color:var(--event-tag-color,#64748b);opacity:0;pointer-events:none;white-space:nowrap;font-size:11px;font-weight:600;transition:opacity .14s;position:absolute;top:20px;left:4px;transform:translateY(-50%)}.timeline-item:hover .timeline-event-date,.timeline-item.is-raised .timeline-event-date{opacity:1}.timeline-dot-stack{left:var(--timeline-axis);z-index:2;align-items:center;display:flex;position:absolute;top:20px;transform:translateY(-50%)}.timeline-dot{border-radius:999px;flex-shrink:0;width:10px;height:10px;position:relative}.timeline-dot-stack .timeline-dot+.timeline-dot,.timeline-dot-stack .timeline-dot:first-child{margin-left:-5px}.timeline-connector{top:20px;left:calc(var(--timeline-axis) + 6px);background:#cfd8e6;width:14px;height:1px;position:absolute;transform:translateY(-50%)}.timeline-card{margin-left:calc(var(--timeline-axis) + 22px);width:auto;max-width:calc(100% - var(--timeline-axis) - 122px);cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;justify-content:center;min-height:40px;margin-right:92px;padding:8px 12px;transition:transform .12s,box-shadow .16s;display:flex;position:relative;box-shadow:0 4px 16px #0f172a0d}.timeline-item:hover .timeline-card,.timeline-item.is-raised .timeline-card{transform:translateY(-1px);box-shadow:0 10px 28px #0f172a24}.timeline-card-title{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:14px;font-weight:600;line-height:1.3;overflow:hidden}.timeline-card-desc{color:#64748b;word-break:break-word;margin:6px 0 0;font-size:12px;line-height:1.45;display:none}.timeline-item:hover .timeline-card-title,.timeline-item.is-raised .timeline-card-title{white-space:normal;overflow:visible}.timeline-item:hover .timeline-card-desc,.timeline-item.is-raised .timeline-card-desc{display:block}.event-tag-badges{flex-wrap:wrap;flex:none;place-content:flex-start flex-end;gap:5px;max-width:46%;display:flex}.event-tag-badge{background:var(--tag-color,#6366f1);color:#fff;white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:11px;line-height:1}.fab{z-index:250;color:#0f172a;pointer-events:auto;background:#e5e7eb;border:none;border-radius:50%;width:58px;min-width:58px;height:58px;min-height:58px;padding:0;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 16px #94a3b859}.fab-icon{font-size:34px;font-weight:300;line-height:1}.modal-backdrop{z-index:300;background:#0f172a73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;gap:10px;width:min(560px,100%);padding:16px;display:grid}.modal h2{margin:0 0 4px}.modal input,.modal textarea,.modal select{background:#fff;border:1px solid #cbd5e1;border-radius:10px;width:100%;padding:10px}.tag-create-row{grid-template-columns:1fr auto;gap:8px;display:grid}.modal-actions{justify-content:end;gap:8px;display:flex}.modal-actions button:first-child{color:#0f172a;background:#e2e8f0}.event-modal{flex-direction:column;gap:12px;width:min(520px,100%);max-height:min(92vh,760px);padding:18px;display:flex}.event-modal-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.event-modal-header h2{margin:0;font-size:20px}.event-modal-close{background:#f1f5f9;border-radius:999px;width:34px;height:34px;padding:0;font-size:22px;line-height:1}.event-modal-steps{justify-content:center;gap:6px;display:flex}.event-modal-step-dot{background:#e2e8f0;border-radius:999px;width:28px;height:4px}.event-modal-step-dot.active{background:#6366f1}.event-modal-body{min-height:180px}.event-modal-step{gap:10px;display:grid}.event-field-label{color:#64748b;margin:0;font-size:13px}.event-field-label .optional{color:#94a3b8}.event-fixed-title{color:#0f172a;margin:0;font-size:18px;font-weight:600}.event-selected-date{color:#475569;margin:0;font-size:13px}.event-date-calendar{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px}.event-date-calendar-nav{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.event-date-calendar-month{text-transform:capitalize;margin:0;font-size:14px;font-weight:600}.event-date-nav-btn{background:#e2e8f0;border-radius:8px;width:32px;height:32px;padding:0}.event-date-weekdays,.event-date-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.event-date-weekdays span{text-align:center;color:#94a3b8;font-size:11px}.event-date-day{aspect-ratio:1;background:#fff;border-radius:8px;padding:0;font-size:13px}.event-date-day.muted{opacity:.35}.event-date-day.selected{color:#fff;background:#6366f1;border-color:#6366f1}.event-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;gap:10px;padding:12px;display:grid}.event-summary p{gap:2px;margin:0;display:grid}.event-summary span{color:#64748b;font-size:12px}.event-summary strong{color:#0f172a;font-size:14px;font-weight:600}.event-modal-tag-dock{border-top:1px solid #e2e8f0;padding-top:10px;transition:box-shadow .2s,background .2s}.event-modal-tag-dock.highlight{background:#fff7ed;border-radius:12px;margin:0 -4px;padding:10px;box-shadow:inset 0 0 0 2px #fb923c}.event-modal-tag-label{color:#64748b;margin:0 0 8px;font-size:12px}.event-modal-tag-hint{color:#c2410c;margin:8px 0 0;font-size:12px}.event-modal-actions{flex-direction:column;align-items:stretch}.event-modal-actions-main{flex-wrap:wrap;justify-content:end;gap:8px;display:flex}.secondary-btn,.danger-btn{color:#0f172a;background:#e2e8f0}.danger-btn{color:#b91c1c;background:#fee2e2;align-self:start}body.theme-dark .modal{background:#111827;border:1px solid #1f2937}body.theme-dark .event-modal-header h2,body.theme-dark .event-fixed-title,body.theme-dark .event-summary strong{color:#e2e8f0}body.theme-dark .modal input,body.theme-dark .modal textarea{color:#e2e8f0;background:#0f172a;border-color:#334155}body.theme-dark .event-date-calendar,body.theme-dark .event-summary{background:#0f172a;border-color:#334155}body.theme-dark .event-date-day{color:#e2e8f0;background:#1e293b}body.theme-dark .event-modal-tag-dock{border-color:#334155}body.theme-dark .event-modal-tag-dock.highlight{background:#1c1917}.message-warning{color:#9a3412;background:#fff7ed;border-color:#fdba74;max-width:min(520px,100vw - 32px)}.message{color:#1e293b;background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-top:0;padding:8px 10px;font-size:14px;position:fixed;bottom:16px;left:16px;box-shadow:0 6px 18px #0f172a14}.limit-footnote{color:#94a3b8;letter-spacing:.2px;margin:0;font-size:11px;position:fixed;bottom:8px;right:14px}body.theme-dark .modern-topbar{background:0 0;border-bottom:none}body.theme-dark .top-tag-panel-inner{background:#101a2d;border-bottom-color:#263246}body.theme-dark .brand-logo{color:#e2e8f0}body.theme-dark .profile-menu{background:#101a2d;border-color:#2a3a54}body.theme-dark .profile-menu p{color:#d8e2f0}body.theme-dark .profile-menu-link{color:#e2e8f0;background:#1e293b}body.theme-dark .profile-menu-link:hover{background:#334155}body.theme-dark .profile-menu-settings{border-top-color:#334155}body.theme-dark .profile-menu-setting-label{color:#94a3b8}body.theme-dark .profile-menu-segment{color:#e2e8f0;background:#0f172a;border-color:#334155}body.theme-dark .profile-menu-segment.active{color:#fff;background:#6366f1;border-color:#6366f1}body.theme-dark .account-page{color:#e2e8f0}body.theme-dark .account-card{background:#0f172a;border-color:#334155}body.theme-dark .account-field input{color:#e2e8f0;background:#111827;border-color:#334155}body.theme-dark .account-message{background:#111827;border-color:#334155}body.theme-dark .timeline-wrap{background:0 0}body.theme-dark .tick-row{border-top-color:#283449}body.theme-dark .tick-label{color:#9db0ce;background:#0b1020}body.theme-dark .timeline-card{background:#0f172a;border-color:#334155;box-shadow:0 8px 24px #02081480}body.theme-dark .timeline-canvas:before,body.theme-dark .timeline-connector{background:#334155}body.theme-dark .timeline-card p{color:#8fa2c0}body.theme-dark .timeline-dot{box-shadow:none}body.theme-dark .page.detail-open .event-detail-backdrop:before{background:#02061738}body.theme-dark .message{color:#e2e8f0;background:#0f172a;border-color:#334155}.auth-modal-backdrop{z-index:30}.onboarding-backdrop{z-index:25;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#020617b8}.onboarding-modal{color:#e2e8f0;text-align:center;background:#0f172a;border:1px solid #2a3a54;border-radius:20px;width:min(440px,100%);padding:28px 22px 22px;position:relative;box-shadow:0 24px 60px #0208148c}.onboarding-skip{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:6px 8px;font-size:13px;position:absolute;top:14px;right:14px}.onboarding-skip:hover{color:#cbd5e1}.onboarding-icon{margin:8px 0 14px;font-size:42px;line-height:1}.onboarding-title{color:#f8fafc;margin:0 0 10px;font-size:22px;line-height:1.3}.onboarding-text{color:#94a3b8;min-height:72px;margin:0;font-size:15px;line-height:1.55}.onboarding-progress{justify-content:center;gap:6px;margin:20px 0 18px;display:flex}.onboarding-dot{background:#334155;border-radius:999px;width:24px;height:4px}.onboarding-dot.active{background:#6366f1}.onboarding-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.onboarding-actions button{min-width:120px}.auth-modal{background:#111827;border:1px solid #2a3448;border-radius:20px;width:min(420px,100%);padding:28px 24px 22px;position:relative;box-shadow:0 24px 60px #00000073}.auth-modal-close{color:#cbd5e1;background:#1f2937;border-radius:999px;width:32px;height:32px;padding:0;font-size:22px;line-height:1;position:absolute;top:12px;right:12px}.auth-modal-kicker{letter-spacing:3px;color:#94a3b8;text-transform:uppercase;margin:0;font-size:11px}.auth-modal-title{color:#f8fafc;margin:8px 0 6px;font-size:24px;font-weight:600}.auth-modal-subtitle{color:#94a3b8;margin:0 0 18px;font-size:14px;line-height:1.45}.auth-provider-list{gap:10px;display:grid}.auth-provider-btn{color:#f8fafc;background:#1f2937;border:1px solid #334155;border-radius:12px;align-items:center;gap:12px;width:100%;padding:12px 14px;font-size:14px;display:flex}.auth-provider-btn:hover:not(:disabled){background:#273449}.auth-provider-icon{background:#334155;border-radius:8px;place-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:grid}.auth-provider-google .auth-provider-icon{color:#111827;background:#fff}.auth-provider-apple .auth-provider-icon{color:#fff;background:#000;font-size:16px}.auth-provider-github .auth-provider-icon{color:#fff;background:#24292f}.auth-modal-message{color:#fca5a5;margin:12px 0 0;font-size:13px}.guest-profile-trigger{color:#fff;background:#9ca3af}.profile-menu-hint{color:#94a3b8;font-size:13px;line-height:1.4}.account-page{max-width:640px;margin:0 auto;padding:88px 20px 40px}.account-topbar{gap:8px;margin-bottom:20px;display:grid}.account-topbar h1{margin:0;font-size:28px}.account-back{color:#6366f1;font-size:14px;text-decoration:none}.account-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;gap:10px;margin-bottom:14px;padding:16px;display:grid}.account-card h2{margin:0;font-size:18px}.account-muted{color:#64748b;margin:0;font-size:13px}.account-field{color:#475569;gap:6px;font-size:13px;display:grid}.account-field input{border:1px solid #cbd5e1;border-radius:10px;padding:10px}.account-actions{flex-wrap:wrap;gap:8px;display:flex}.account-message{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin:0;padding:10px 12px;font-size:14px}.event-detail-backdrop{box-sizing:border-box;align-items:center;padding:16px}.page.detail-open{--timeline-peek-axis:24px;--timeline-peek-width:56px;--detail-timeline-gap:20px}.page.detail-open .event-detail-backdrop{box-sizing:border-box;pointer-events:none;background:0 0;justify-content:center;align-items:center;padding:20px;display:flex;overflow:hidden}.page.detail-open .event-detail-backdrop:before{content:"";z-index:0;pointer-events:none;background:#0f172a33;position:absolute;inset:0}.page.detail-open .event-detail-modal{z-index:301;pointer-events:auto;width:min(480px, calc(100vw - var(--timeline-peek-width) - var(--detail-timeline-gap) * 2 - 24px));max-width:calc(100vw - var(--timeline-peek-width) - var(--detail-timeline-gap) * 2 - 24px);height:min(720px,100dvh - 32px);max-height:calc(100dvh - 32px);transform:translate(-50%, -50%) translateX(calc((var(--timeline-peek-width) + var(--detail-timeline-gap)) / 2));margin:0;animation:.14s ease-out both detailModalIn;position:fixed;top:50%;left:50%}@keyframes detailModalIn{0%{opacity:0;transform:translate(-50%, -48%) translateX(calc((var(--timeline-peek-width) + var(--detail-timeline-gap)) / 2))}to{opacity:1;transform:translate(-50%, -50%) translateX(calc((var(--timeline-peek-width) + var(--detail-timeline-gap)) / 2))}}.page.detail-open .vertical-timeline{pointer-events:auto}.page.detail-open .timeline-canvas{transform:translateX(calc(var(--timeline-peek-axis) - var(--timeline-axis)));transition:transform .15s ease-out}.page.detail-open .tick-row,.page.detail-open .tick-label{opacity:.38;pointer-events:none}.page.detail-open .timeline-item:not(.is-detail-active){opacity:.45;pointer-events:none}.page.detail-open .timeline-item.is-detail-active{opacity:0;pointer-events:none}@media (prefers-reduced-motion:reduce){.page.detail-open .timeline-canvas{transition:none}.page.detail-open .event-detail-modal{animation:none}}.event-detail-modal{flex-direction:column;width:min(560px,100vw - 32px);height:min(720px,100dvh - 32px);max-height:calc(100dvh - 32px);display:flex;overflow:hidden}.event-detail-header{justify-content:flex-start;align-items:flex-start;padding-top:22px;padding-right:76px;position:relative}.event-detail-header-main{flex:1;gap:4px;min-width:0;display:grid}.event-detail-header-date{color:var(--text,#222);margin:0;font-size:15px;font-weight:400;line-height:1.5}.event-detail-header-date-input{width:100%;padding:6px 10px;font-size:15px;line-height:1.5}.event-detail-header-relative{color:var(--text-secondary,#717171);margin:0;font-size:15px;line-height:1.5}.event-detail-header-main h2{margin:4px 0 0}.event-inline-text-group h2{display:inline}.event-inline-text-group .event-detail-value,.event-inline-text-group .event-detail-multiline{vertical-align:top;width:fit-content;max-width:calc(100% - 1.5em);display:inline-block}.event-inline-text-group textarea,.event-inline-text-group .event-detail-title-input{flex:0 auto;width:auto;min-width:min(220px,100%);max-width:calc(100% - 1.5em)}.event-inline-text-group{align-items:flex-start;gap:.35em;max-width:100%;display:inline-flex}.event-inline-text-group>:first-child{flex:0 auto;min-width:0}.event-inline-icon-btn{opacity:0;box-shadow:none;background:0 0;border:none;border-radius:0;flex:none;align-self:flex-start;margin-top:2px;padding:0;font-size:16px;line-height:1;transition:opacity .12s}.event-pencil-icon-btn{transform:scaleX(-1)rotate(12deg)}.event-calendar-icon-btn{margin-top:0;transform:none}body.theme-app .event-inline-icon-btn{box-shadow:none;background:0 0;border:none;border-radius:0;width:auto;min-width:0;height:auto;padding:0}body.theme-app .event-inline-icon-btn:hover:not(:disabled){box-shadow:none;background:0 0;border:none}.event-inline-text-group:hover .event-inline-icon-btn,.event-inline-text-group:focus-within .event-inline-icon-btn{opacity:1}.event-inline-date-row{align-items:center}.event-inline-date-hidden{clip-path:inset(100%);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.event-detail-header-actions{flex-direction:row-reverse;align-items:flex-start;gap:8px;display:flex;position:absolute;top:16px;right:16px}.event-detail-header-delete-wrap{align-items:flex-start;display:flex;position:relative}.event-detail-header-delete-wrap .event-delete-confirm{z-index:4;background:var(--surface,#fff);border:1px solid var(--border,#e2e8f0);min-width:220px;box-shadow:var(--shadow-md,0 10px 28px #0f172a1f);border-radius:12px;padding:10px 12px;position:absolute;top:calc(100% + 6px);right:0}.event-detail-title-input{width:100%;padding:8px 10px;font-size:22px;font-weight:600}.icon-edit-btn{background:0 0;border:none;width:32px;height:32px;padding:0;font-size:24px;line-height:1;transform:scaleX(-1)rotate(12deg)}.icon-edit-btn:hover:not(:disabled){box-shadow:none;background:0 0}.event-detail-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;will-change:transform, opacity;flex:1;align-content:start;gap:16px;min-height:0;transition:transform .18s ease-out;display:grid;overflow-y:auto}.event-detail-body.is-swipe-up{animation:.24s detailSwipeUp}.event-detail-body.is-swipe-down{animation:.24s detailSwipeDown}.event-detail-body.is-dragging{transition:none}.event-detail-swipe-zone{touch-action:none;flex-shrink:0}.event-detail-swipe-nav{border-top:1px solid var(--hairline,#ebebeb);color:var(--text-secondary,#717171);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:16px;padding:10px 16px 14px;font-size:12px;display:flex}.event-detail-swipe-btn{border:1px solid var(--border,#ddd);background:var(--surface,#fff);width:40px;height:40px;color:var(--text,#222);cursor:pointer;text-align:center;border-radius:999px;padding:0;font-size:20px;line-height:1}.event-detail-swipe-btn:disabled{opacity:.35;cursor:default}.event-detail-section{gap:8px;display:grid}.event-detail-value{margin:0;font-size:15px;line-height:1.5}.event-detail-multiline{white-space:pre-wrap}.event-detail-muted{color:#717171;margin:0;font-size:13px}.event-detail-guest-hint{background:var(--accent-soft,#fff0f3);color:var(--text,#222);border-radius:10px;margin:0;padding:10px 12px;font-size:13px}.event-detail-gallery{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;display:grid}.event-detail-image-wrap{border:1px solid var(--border,#ddd);border-radius:10px;margin:0;position:relative;overflow:hidden}.event-detail-image-wrap img{object-fit:cover;width:100%;height:100px;display:block}.event-detail-image-remove{border-radius:999px;width:24px;height:24px;padding:0;font-size:16px;line-height:1;position:absolute;top:4px;right:4px}.event-detail-file-input{display:none}.event-detail-media-section{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.event-photo-icon-btn{flex-shrink:0;font-size:20px;line-height:1}.event-create-backdrop{justify-content:center;align-items:center}.event-create-modal{height:auto;max-height:min(720px,100dvh - 32px)}.event-create-badge{background:var(--accent-soft,#fff0f3);color:var(--accent,#ff385c);border:1px solid var(--accent,#ff385c);letter-spacing:.05em;text-transform:uppercase;border-radius:999px;justify-self:start;margin-bottom:8px;padding:4px 12px;font-size:11px;font-weight:700;display:inline-block}.event-detail-header-date.is-placeholder{color:var(--text-tertiary,#94a3b8);font-style:italic}.event-create-footer{justify-content:stretch;padding:14px 24px 20px;display:flex}.event-create-submit{width:100%}.event-detail-links-list{margin:2px 0 0;padding-left:18px}.event-detail-links-list a{color:#ff385c;font-weight:600}.event-detail-links-edit{gap:8px;display:grid}.event-detail-tags-section{padding:0 24px}.event-inline-tags-group{align-items:center}.event-inline-tags-group .event-tag-cloud{justify-content:flex-start}.event-modal-tag-dock.borderless{background:0 0;border:none;flex-direction:column;align-items:flex-start;gap:0;max-width:calc(100% - 1.5em);margin:0;padding:0;display:inline-flex}.event-modal-tag-dock.borderless .event-tag-cloud{margin:0}.event-modal-tag-dock.borderless .tag-add-btn{justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-size:20px;line-height:1;display:inline-flex}.event-modal-tag-dock.borderless .tag-create-row{width:100%;min-width:min(100%,320px);margin-top:12px}.event-detail-link-row{grid-template-columns:1fr 1.4fr auto;align-items:center;gap:8px;display:grid}.event-detail-footer{flex-direction:column;gap:10px;display:flex}.event-delete-icon-btn{color:#d93939;background:0 0;border:none;padding:0 2px 0 0;font-size:22px;line-height:1}.event-delete-confirm{background:var(--surface-muted,#fff5f5);border:1px solid var(--border,#ffd7d7);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.event-delete-confirm p{margin:0;font-size:14px}.event-delete-confirm-actions{align-items:center;gap:8px;display:flex}@media (width<=768px){.event-detail-backdrop{padding:10px}.page.detail-open{--timeline-peek-axis:20px;--timeline-peek-width:48px;--detail-timeline-gap:16px}.page.detail-open .event-detail-backdrop{padding:12px}.page.detail-open .event-detail-modal{width:min(440px, calc(100vw - var(--timeline-peek-width) - var(--detail-timeline-gap) * 2 - 16px));max-width:calc(100vw - var(--timeline-peek-width) - var(--detail-timeline-gap) * 2 - 16px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}.event-detail-modal{width:min(560px,100vw - 20px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}.event-detail-link-row{grid-template-columns:1fr}}@keyframes detailSwipeUp{0%{opacity:.35;transform:translateY(22px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes detailSwipeDown{0%{opacity:.35;transform:translateY(-22px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes cardFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.brand-sticker{min-width:168px;padding:6px 16px 8px}.brand-logo{font-size:18px}.top-tag-panel-inner{padding-left:10px;padding-right:10px}.profile-menu-wrap{right:10px}.timeline-canvas{--timeline-axis:72px}.vertical-timeline{touch-action:pan-y;padding:8px 6px 120px}.tick-label{width:calc(var(--timeline-axis) - 16px);padding-right:4px;font-size:10px;left:2px}.timeline-event-date{width:calc(var(--timeline-axis) - 16px);font-size:10px;top:18px;left:2px}.timeline-dot{width:9px;height:9px}.timeline-connector{width:10px;top:18px;left:calc(var(--timeline-axis) + 5px)}.timeline-card{margin-left:calc(var(--timeline-axis) + 14px);max-width:calc(100% - var(--timeline-axis) - 70px);min-height:36px;margin-right:56px;padding:7px 10px}.timeline-card-title{font-size:13px}.timeline-item{min-height:40px;padding-bottom:6px}.fab{width:52px;min-width:52px;height:52px;min-height:52px;bottom:14px;right:14px}.fab-icon{font-size:30px}.app-build-footer{bottom:4px}}:root{--accent:#ff385c;--accent-hover:#e31c5f;--accent-soft:#fff0f3;--text:#222;--text-secondary:#717171;--text-tertiary:#b0b0b0;--border:#ddd;--border-strong:#c4c4c4;--border-hover:#222;--hairline:#ebebeb;--surface:#fff;--surface-muted:#f7f7f7;--surface-elevated:#fff;--input-bg:#fff;--page-bg:linear-gradient(180deg, #eef2ff 0%, #fff 35%);--scrim:#2222228c;--shadow-sm:0 1px 2px #0000000f, 0 4px 12px #0000000a;--shadow-md:0 6px 16px #0000001f;--shadow-lg:0 8px 28px #00000029;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-pill:999px;--transition:.18s ease}body.theme-dark{--accent:#ff5a75;--accent-hover:#ff7286;--accent-soft:#2c1922;--text:#e8eef8;--text-secondary:#9db0ce;--text-tertiary:#6d7d95;--border:#2c3a52;--border-strong:#3a4b66;--border-hover:#6a82a6;--hairline:#25324a;--surface:#131c2e;--surface-muted:#1b2740;--surface-elevated:#1a2438;--input-bg:#0f1828;--page-bg:linear-gradient(180deg, #0b1020 0%, #090d18 45%);--scrim:#0206179e;--shadow-sm:0 1px 2px #00000080, 0 4px 12px #00000059;--shadow-md:0 6px 18px #0000008c;--shadow-lg:0 10px 30px #000000a6}body.theme-app{background:var(--page-bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body.theme-app button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);transition:background var(--transition), border-color var(--transition), transform var(--transition), box-shadow var(--transition);padding:12px 18px;font-size:14px;font-weight:600;line-height:1.2}body.theme-app button:hover:not(:disabled){border-color:var(--border-hover);box-shadow:var(--shadow-sm)}body.theme-app button:active:not(:disabled){transform:scale(.98)}body.theme-app button:disabled{opacity:.45}body.theme-app .btn-primary{background:linear-gradient(180deg, #ff5a75 0%, var(--accent) 100%);border-color:var(--accent);color:#fff;box-shadow:0 2px 8px #ff385c59}body.theme-app .btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}body.theme-app .btn-secondary{background:var(--surface);border-color:var(--text);color:var(--text)}body.theme-app .btn-ghost{color:var(--text);text-underline-offset:3px;box-shadow:none;background:0 0;border-color:#0000;padding:8px 12px;text-decoration:underline}body.theme-app .btn-ghost:hover:not(:disabled){background:var(--surface-muted);box-shadow:none}body.theme-app .btn-danger{background:var(--surface);color:#d93939;border-color:#d93939}body.theme-app input,body.theme-app textarea,body.theme-app select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);transition:border-color var(--transition), box-shadow var(--transition)}body.theme-app input:hover,body.theme-app textarea:hover{border-color:var(--border-strong)}body.theme-app input:focus,body.theme-app textarea:focus{border-color:var(--text);outline:none;box-shadow:0 0 0 2px #22222214}body.theme-app .modern-topbar{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:none;padding:0}body.theme-app .profile-menu-wrap{right:24px}body.theme-app .brand-logo{color:var(--accent);letter-spacing:-.01em;text-transform:none;font-family:Roboto Slab,Georgia,Times New Roman,serif;font-size:clamp(18px,4.5vw,22px);font-weight:600}body.theme-app .brand-sticker{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:none}body.theme-app .brand-sticker:hover:not(:disabled),body.theme-app .brand-sticker:active:not(:disabled){border-color:var(--border);box-shadow:var(--shadow-sm);transform:none}body.theme-app .top-tag-select-all{box-shadow:none;color:var(--text-secondary);background:0 0;border:none;padding:5px 4px;font-size:12px;font-weight:500}body.theme-app .top-tag-select-all:hover:not(:disabled){box-shadow:none;color:var(--text);border:none;transform:none}body.theme-app .top-tag-panel-inner{background:var(--surface);border:none;border-bottom:1px solid var(--border);box-shadow:none;border-radius:0}body.theme-app .profile-avatar,body.theme-app .guest-profile-trigger{color:#fff;width:40px;height:40px;box-shadow:var(--shadow-sm);background:#9ca3af;border:none;border-radius:50%}body.theme-app .profile-menu{border-radius:var(--radius-lg);border:1px solid var(--border);width:300px;box-shadow:var(--shadow-lg);gap:12px;padding:16px}body.theme-app .profile-menu-name strong{font-size:15px;font-weight:600}body.theme-app .profile-menu-link{background:var(--surface-muted);color:var(--text);border-radius:var(--radius-sm);padding:12px 14px;font-weight:600}body.theme-app .profile-menu-link:hover{background:var(--hairline)}body.theme-app .profile-menu-settings{border-top-color:var(--border)}body.theme-app .profile-menu-setting-label{color:var(--text-secondary)}body.theme-app .profile-menu-segment{background:var(--surface-muted);border-color:var(--border);color:var(--text)}body.theme-app .profile-menu-segment:hover:not(:disabled){background:var(--hairline)}body.theme-app .profile-menu-segment.active{background:var(--accent);border-color:var(--accent);color:#fff}body.theme-app .profile-menu-select-wrap{align-items:center;display:inline-flex;position:relative}body.theme-app .profile-menu-select{appearance:none;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-muted);min-width:132px;color:var(--text);cursor:pointer;transition:border-color var(--transition), box-shadow var(--transition);padding:8px 30px 8px 12px;font-size:13px;font-weight:600;line-height:1.2}body.theme-app .profile-menu-select:hover{border-color:var(--border-hover)}body.theme-app .profile-menu-select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);outline:none}body.theme-app .profile-menu-select-caret{color:var(--text-secondary);pointer-events:none;font-size:10px;position:absolute;top:50%;right:11px;transform:translateY(-50%)}body.theme-app .theme-toggle{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface-muted);width:64px;height:32px;box-shadow:none;cursor:pointer;transition:background var(--transition), border-color var(--transition);flex-shrink:0;padding:0;position:relative}body.theme-app .theme-toggle:hover:not(:disabled){border-color:var(--border-hover);box-shadow:none;transform:none}body.theme-app .theme-toggle:active:not(:disabled){transform:none}body.theme-app .theme-toggle-icon{z-index:1;transition:opacity var(--transition);font-size:14px;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}body.theme-app .theme-toggle-sun{color:#f59e0b;left:9px}body.theme-app .theme-toggle-moon{color:#cbd5f5;right:9px}body.theme-app .theme-toggle.is-light .theme-toggle-moon,body.theme-app .theme-toggle.is-dark .theme-toggle-sun{opacity:.35}body.theme-app .theme-toggle-thumb{background:var(--surface-elevated);width:26px;height:26px;box-shadow:var(--shadow-sm);transition:transform var(--transition), background var(--transition);z-index:0;border-radius:50%;position:absolute;top:3px;left:3px}body.theme-app .theme-toggle.is-dark .theme-toggle-thumb{transform:translate(32px)}body.theme-app .tag-chip{opacity:.88;border:1px solid #0000;padding:8px 14px;font-weight:600}body.theme-app .tag-chip.active{opacity:1;box-shadow:var(--shadow-sm)}body.theme-app .timeline-wrap{background:0 0}body.theme-app .vertical-timeline{background:var(--surface)}body.theme-app .build-label{color:var(--text-tertiary)}body.theme-app .app-build-footer{bottom:8px}body.theme-app .tick-label{background:var(--surface);color:var(--text-secondary);font-weight:500}body.theme-app .tick-row{border-top-color:var(--hairline)}body.theme-app .timeline-canvas:before{background:var(--border-strong)}body.theme-app .timeline-dot{box-shadow:none;border:none}body.theme-app .timeline-connector{background:var(--border-strong)}body.theme-app .timeline-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:14px 16px}body.theme-app .timeline-item:hover .timeline-card,body.theme-app .timeline-item.is-raised .timeline-card{border-color:var(--border-strong);box-shadow:var(--shadow-md)}body.theme-app .timeline-card-title{color:var(--text);font-size:15px;font-weight:600}body.theme-app .timeline-card-desc{color:var(--text-secondary);font-size:13px}body.theme-app .timeline-event-date{color:var(--event-tag-color,var(--text-secondary))}body.theme-app .fab{background:var(--accent);color:#fff;box-shadow:var(--shadow-md);border:none;border-radius:50%;width:58px;min-width:58px;height:58px;min-height:58px;font-weight:400}body.theme-app .fab:hover{background:var(--accent-hover);box-shadow:var(--shadow-lg)}body.theme-app .modal-backdrop,body.theme-app .sheet-backdrop{background:var(--scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:24px 16px}body.theme-app .event-detail-backdrop{-webkit-backdrop-filter:none;background:0 0}body.theme-app .modal,body.theme-app .sheet-modal{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:none;padding:0;overflow:hidden}body.theme-app .sheet-modal-header{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;gap:12px;padding:22px 24px 8px;display:flex}body.theme-app .sheet-modal-header h2{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600}body.theme-app .sheet-modal-step{color:var(--text-secondary);margin:0;font-size:13px;font-weight:500}body.theme-app .sheet-modal-body{padding:20px 24px}body.theme-app .sheet-modal-footer{border-top:1px solid var(--hairline);background:var(--surface-muted);padding:16px 24px 24px}body.theme-app .icon-close-btn{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:var(--text);padding:0;font-size:20px;line-height:1}body.theme-app .icon-close-btn:hover{background:var(--surface-muted)}body.theme-app .event-modal{flex-direction:column;width:min(480px,100%);max-height:min(90vh,780px);display:flex}body.theme-app .event-modal-steps{gap:8px;padding:0 24px 12px}body.theme-app .event-modal-step-dot{background:var(--hairline);border-radius:var(--radius-pill);height:3px}body.theme-app .event-modal-step-dot.active{background:var(--text)}body.theme-app .event-modal-body{min-height:200px;padding:8px 24px 16px}body.theme-app .event-field-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);font-size:12px;font-weight:600}body.theme-app .event-fixed-title{letter-spacing:-.02em;color:var(--text);background:var(--surface-muted);border-radius:var(--radius-md);padding:12px 16px;font-size:20px;font-weight:600}body.theme-app .event-date-calendar{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:16px}body.theme-app .event-date-day{border-radius:var(--radius-sm);border:1px solid #0000;font-weight:500}body.theme-app .event-date-day:hover{border-color:var(--border);background:var(--surface-muted)}body.theme-app .event-date-day.selected{background:var(--text);border-color:var(--text);color:#fff}body.theme-app .event-summary{background:var(--surface-muted);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}body.theme-app .event-modal-tag-dock{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-muted);margin:0 24px 16px;padding:14px 16px}body.theme-app .event-modal-tag-dock.highlight{background:var(--accent-soft);border-color:var(--accent);box-shadow:none}body.theme-app .event-modal-actions{border-top:none;padding:0}body.theme-app .event-modal-actions .sheet-modal-footer{margin:0}body.theme-app .event-modal-actions-main{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}body.theme-app .tag-add-btn{border:1px dashed var(--border);background:var(--surface);color:var(--text-secondary);font-size:18px}body.theme-app .tag-add-btn:hover{border-color:var(--text);color:var(--text)}body.theme-app .event-modal-tag-dock.borderless .tag-add-btn{justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}body.theme-app .auth-modal{text-align:left;width:min(440px,100%);padding:0}body.theme-app .auth-modal .sheet-modal-body{padding-top:8px}body.theme-app .auth-modal-kicker{color:var(--accent);letter-spacing:.2em;font-weight:700}body.theme-app .auth-modal .auth-modal-title{color:var(--text);letter-spacing:-.03em;margin:4px 0 0;font-size:22px}body.theme-app .auth-modal .auth-modal-kicker{margin:0}body.theme-app .auth-modal-subtitle{color:var(--text-secondary)}body.theme-app .auth-provider-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);padding:14px 16px;font-weight:600}body.theme-app .auth-provider-btn:hover:not(:disabled){background:var(--surface-muted);box-shadow:var(--shadow-sm)}body.theme-app .onboarding-backdrop{background:var(--scrim)}body.theme-app .onboarding-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);color:var(--text);padding:32px 28px 28px}body.theme-app .onboarding-title{color:var(--text);letter-spacing:-.03em;font-size:26px}body.theme-app .onboarding-text{color:var(--text-secondary)}body.theme-app .onboarding-dot{background:var(--hairline)}body.theme-app .onboarding-dot.active{background:var(--text)}body.theme-app .onboarding-skip{color:var(--text-secondary);font-weight:600}body.theme-app .account-page{max-width:720px;padding:96px 24px 48px}body.theme-app .account-topbar{margin-bottom:28px}body.theme-app .account-topbar h1{letter-spacing:-.03em;font-size:32px;font-weight:600}body.theme-app .account-back{color:var(--text);font-weight:600;text-decoration:none}body.theme-app .account-back:hover{color:var(--accent)}body.theme-app .account-card{border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);gap:16px;padding:24px}body.theme-app .account-card h2{font-size:18px;font-weight:600}body.theme-app .account-plan-badge{border-radius:var(--radius-pill);background:var(--surface-muted);border:1px solid var(--border);color:var(--text-secondary);padding:6px 12px;font-size:13px;font-weight:600;display:inline-block}body.theme-app .account-progress{border-radius:var(--radius-pill);background:var(--hairline);height:6px;overflow:hidden}body.theme-app .account-progress span{background:var(--accent);border-radius:inherit;height:100%;display:block}body.theme-app .account-message{background:var(--accent-soft);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-md)}body.theme-app .message{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}body.theme-app .limit-footnote{color:var(--text-tertiary)}body.theme-app .share-link a{color:var(--accent);font-weight:600}body.theme-app .plan-badge{text-align:left;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-muted);width:100%;color:var(--text);box-shadow:none;gap:5px;padding:12px 14px;display:grid}body.theme-app .plan-badge:hover:not(:disabled){border-color:var(--border-hover);box-shadow:var(--shadow-sm);transform:none}body.theme-app .plan-badge-pro{border-color:var(--accent)}body.theme-app .plan-badge-max{border-color:#8b5cf6}.plan-badge-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.plan-badge-name{font-size:14px;font-weight:700}body.theme-app .plan-badge-pro .plan-badge-name{color:var(--accent)}body.theme-app .plan-badge-max .plan-badge-name{color:#8b5cf6}.plan-badge-action{color:var(--accent);font-size:11px;font-weight:600}.plan-badge-meta{color:var(--text-secondary);font-size:12px}body.theme-app .subscription-modal{flex-direction:column;width:min(760px,100%);max-height:min(90vh,780px);display:flex}body.theme-app .subscription-body{gap:16px;display:grid;overflow-y:auto}body.theme-app .subscription-notice{border-radius:var(--radius-md);background:var(--accent-soft);border:1px solid var(--accent);color:var(--text);margin:0;padding:10px 14px;font-size:13px;font-weight:500}.plan-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}body.theme-app .plan-card{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface);flex-direction:column;gap:10px;padding:16px;display:flex}body.theme-app .plan-card.is-current{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}body.theme-app .plan-card-pro{border-color:color-mix(in srgb, var(--accent) 45%, var(--border))}.plan-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.plan-card-name{font-size:16px;font-weight:700}.plan-card-current-tag{letter-spacing:.04em;text-transform:uppercase;color:var(--accent);font-size:10px;font-weight:700}.plan-card-price{margin:0}.plan-card-price strong{font-size:18px}.plan-card-period{color:var(--text-secondary);font-size:12px}.plan-card-features{flex:1;gap:7px;margin:0;padding:0;list-style:none;display:grid}.plan-card-features li{color:var(--text-secondary);padding-left:20px;font-size:13px;line-height:1.4;position:relative}body.theme-app .plan-card-features li:before{content:"✓";color:var(--accent);font-weight:700;position:absolute;top:0;left:0}body.theme-app .plan-card button{width:100%}.subscription-disclaimer{text-align:center;color:var(--text-tertiary);margin:0;font-size:12px}@media (width<=680px){.plan-grid{grid-template-columns:1fr}}body.theme-app .timeline-card-ad{background:var(--surface-muted);border-style:dashed}.timeline-card-ad-badge{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-tertiary);letter-spacing:.06em;text-transform:uppercase;align-self:flex-start;margin-bottom:4px;padding:1px 7px;font-size:9px;font-weight:700;display:inline-block}body.theme-app .ads-toggle .ads-toggle-on{color:var(--accent);font-size:12px;left:9px}body.theme-app .ads-toggle .ads-toggle-off{color:var(--text-secondary);font-size:12px;right:8px}body.theme-app .ads-toggle.is-light .ads-toggle-on,body.theme-app .ads-toggle.is-dark .ads-toggle-off{opacity:.35}body.theme-app .limit-footnote-btn{box-shadow:none;color:var(--text-tertiary);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:11px;font-weight:500;text-decoration:underline}body.theme-app .limit-footnote-btn:hover:not(:disabled){box-shadow:none;color:var(--accent);background:0 0;border:none;transform:none}
