.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:center;z-index:100;animation:fadeIn .15s ease-out}.modal-content.signin-modal{background:#fff;padding:3rem 2.5rem;border-radius:12px;box-shadow:0 40px 60px -10px #0000001a,0 20px 30px -10px #0000000d;width:90%;max-width:400px;position:relative;text-align:center;animation:scaleIn .2s cubic-bezier(.16,1,.3,1)}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;color:#999;cursor:pointer;line-height:1;padding:.5rem;border-radius:4px}.modal-close:hover{color:#333;background:#f5f5f5}.signin-title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:#111}.signin-subtitle{font-size:.95rem;color:#666;margin-bottom:2rem;line-height:1.5}.signin-actions{display:flex;justify-content:center;min-height:48px}.btn-google-primary{display:flex;align-items:center;justify-content:center;gap:.75rem;background-color:#1a73e8;color:#fff;border:none;border-radius:8px;padding:0 2rem;height:48px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s;width:100%}.btn-google-primary:hover{background-color:#1557b0}.btn-google-primary:active{transform:scale(.98)}.btn-google-primary:disabled{background-color:#a0c3ff;cursor:wait}.gsi-fallback-container{display:flex;justify-content:center}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.app-main:has(.landing-page){max-width:1080px}.landing-page{padding:0}.landing-section-title{text-align:center;color:var(--color-text-primary);margin:0 0 2rem}.landing-hero{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;padding:3rem 0 2rem}.landing-hero__title{color:var(--color-text-primary);margin:0 0 1rem}.landing-hero__subtitle{color:var(--color-text-secondary);margin:0 0 2rem}.landing-hero__actions{display:flex;gap:14px;flex-wrap:wrap}.landing-hero__btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.75rem;border-radius:var(--radius);font-weight:600;font-size:1rem;text-decoration:none;transition:all .2s ease;border:1px solid transparent}.landing-hero__btn--primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.landing-hero__btn--primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.landing-hero__btn--secondary{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-border)}.landing-hero__btn--secondary:hover{border-color:var(--color-primary);color:var(--color-primary)}.mobile-frame{position:relative;aspect-ratio:1080 / 2076;max-height:820px;width:min(414px,36vw);padding:10px;border:1px solid rgba(0,0,0,.1);border-radius:44px;background:linear-gradient(180deg,#f9fafb,#eef1f4);box-shadow:0 25px 60px #00000014,0 5px 15px #0000000f}.mobile-frame:before{content:"";position:absolute;top:12px;left:50%;transform:translate(-50%);width:64px;height:6px;border-radius:999px;background:#0003;z-index:10}.mobile-frame__screen{width:100%;height:100%;background:#111;border-radius:34px;overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative}.hero-video-toggle{position:absolute;bottom:20px;right:20px;width:40px;height:40px;border-radius:50%;background:#ffffffd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;color:#111;border:1px solid rgba(255,255,255,.4);box-shadow:0 4px 16px #00000026;cursor:pointer;z-index:20;transition:all .2s ease;padding:0}.hero-video-toggle:hover{transform:scale(1.08);background:#fff}.mobile-frame__video{display:block;width:100%;height:100%;object-fit:cover;cursor:pointer}.landing-trust{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;padding:2rem 0}.landing-trust__item{display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:var(--color-text-secondary);font-weight:500}.landing-trust__icon{color:var(--color-primary);flex-shrink:0}.landing-features{padding:96px 0;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);padding-left:calc(50vw - 50%);padding-right:calc(50vw - 50%);background:#f0f0f0}.landing-features__title{text-align:left}.landing-features__panel{background:#fff;border:1px solid var(--color-border);border-radius:16px;padding:3rem 2.5rem}.landing-features__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.landing-features__card{padding:1rem 0;display:flex;flex-direction:column;align-items:flex-start;text-align:left}.landing-features__icon{color:var(--color-text-primary);display:flex;justify-content:center;align-items:center;margin-bottom:1.25rem}.landing-features__card-title{color:var(--color-text-primary);margin:0 0 1rem}.landing-features__card-desc{font-size:.9rem;color:var(--color-text-secondary);margin:0;line-height:1.5}.landing-everyday{padding:4rem 0;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);padding-left:calc(50vw - 50%);padding-right:calc(50vw - 50%);display:flex;justify-content:center}.landing-everyday__inner{width:100%}.landing-everyday__header{width:100%;max-width:1080px;margin:0 auto 1.5rem}.landing-everyday__canvas{position:relative;overflow:hidden;border-radius:16px;border:1px solid var(--color-border);min-height:520px;max-height:620px;width:100%;max-width:1080px;margin:0 auto}.landing-everyday__bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:right bottom;z-index:0}.landing-everyday__overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#fffffff2,#fffc 35%,#fff0 78%)}.landing-everyday__content{position:relative;padding:4rem 3rem;z-index:2;max-width:50%}.landing-everyday__title{text-align:left;margin:0}.landing-everyday__subtitle{font-size:clamp(1rem,.9rem + .4vw,1.125rem);line-height:1.4;font-weight:600;margin:0 0 1.5rem;text-align:left}.landing-everyday__subtitle-line1,.landing-everyday__subtitle-line2{color:var(--color-text-secondary)}.landing-everyday__list{list-style:none;padding:0;margin:0}.landing-everyday__list.is-animatable .landing-everyday__list-item{opacity:0;transform:translateY(6px);transition:opacity .35s cubic-bezier(.2,.8,.2,1),transform .35s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--index) * .18s)}.landing-everyday__list.is-animatable.is-visible .landing-everyday__list-item{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.landing-everyday__list.is-animatable .landing-everyday__list-item{opacity:1!important;transform:none!important;transition:none!important}}.landing-everyday__list-item{display:flex;align-items:center;gap:12px;font-size:1.125rem;color:var(--color-text-primary);margin-bottom:1rem}.landing-everyday__check{color:var(--color-primary);flex-shrink:0}.landing-how{padding:4rem 0}.landing-how__steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;text-align:center}.landing-how__number{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);font-weight:500;font-size:1.25rem;margin-bottom:1.25rem}.landing-how__step-title{font-size:1.05rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .35rem}.landing-how__step-desc{font-size:.9rem;color:var(--color-text-secondary);margin:0}.landing-pricing{padding:96px 0;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);padding-left:calc(50vw - 50%);padding-right:calc(50vw - 50%);background:#f0f0f0}.landing-pricing__header{text-align:left}.landing-pricing .landing-section-title{text-align:left;margin-bottom:.5rem}.landing-pricing__subtitle{font-size:1.125rem;color:var(--color-text-secondary);margin:0 0 3rem;text-align:left}.landing-pricing__panel{display:flex;max-width:900px;gap:1.5rem;margin:0 auto 3rem;align-items:stretch}.landing-pricing__tier{display:flex;flex-direction:column;flex:1;background:#fff;border-radius:12px;border:1px solid var(--color-border);transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 12px #00000008}.landing-pricing__tier:hover{transform:translateY(-4px);box-shadow:0 12px 24px #00000014}.landing-pricing__tier--pro{border-color:var(--color-primary);border-width:2px;box-shadow:0 12px 32px #0000001f;transform:translateY(-8px);z-index:1}.landing-pricing__tier--pro:hover{transform:translateY(-12px)}.landing-pricing__tier-top{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:3.5rem 1.5rem 2.5rem}.landing-pricing__tier-bottom{display:flex;flex-direction:column;align-items:center;padding:2.5rem 1.5rem;flex:1}.landing-pricing__name{font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.landing-pricing__price{font-size:2rem;font-weight:700;color:var(--color-text-primary);display:flex;align-items:baseline;justify-content:center}.landing-pricing__period{font-size:1rem;font-weight:400;color:var(--color-text-secondary);margin-left:.2rem}.landing-pricing__feature-title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin:0 0 1rem}.landing-pricing__feature-desc{font-size:1rem;color:var(--color-text-secondary);line-height:1.5;margin:0}.landing-pricing__badge{background:var(--color-primary-light, #eef2ff);color:var(--color-primary);padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:1.5rem}.landing-pricing__cta{display:flex;justify-content:center;width:max-content;margin:0 auto;align-items:center;gap:6px;color:var(--color-text-secondary);font-size:.95rem;font-weight:500;text-decoration:underline;transition:color .2s}.landing-pricing__cta:hover{color:var(--color-primary)}.landing-faq{padding:4rem 0 3rem}.landing-faq .landing-section-title{text-align:left;margin-bottom:3rem}.landing-faq__list{max-width:900px;margin:0 auto}.landing-faq__item{border-bottom:1px solid var(--color-border)}.landing-faq__item:first-child{border-top:1px solid var(--color-border)}.landing-faq__question{cursor:pointer;font-size:1rem;font-weight:600;color:var(--color-text-primary);padding:1rem 0;min-height:48px;display:flex;align-items:center;list-style:none;-webkit-user-select:none;user-select:none}.landing-faq__question::-webkit-details-marker{display:none}.landing-faq__question::marker{content:""}.landing-faq__question:after{content:"+";margin-left:auto;font-size:1.25rem;font-weight:400;color:var(--color-text-secondary);transition:transform .2s ease}.landing-faq__item[open] .landing-faq__question:after{content:"−"}.landing-faq__answer{font-size:.9rem;color:var(--color-text-secondary);line-height:1.6;padding:0 0 1rem;margin:0}@media(max-width:1024px){.landing-hero{padding:64px 0 48px}.landing-everyday__canvas{min-height:520px}}@media(max-width:768px){.landing-hero{grid-template-columns:1fr;gap:2rem;padding:48px 0}.landing-hero__subtitle{margin-bottom:1.5rem}.mobile-frame{width:min(414px,92vw)}.landing-everyday{padding-top:3rem;padding-bottom:3rem}.landing-everyday__canvas{min-height:420px}.landing-everyday__overlay{background:linear-gradient(135deg,#fffffff2,#ffffffd9 45%,#fff6)}.landing-everyday__content{padding:3rem 1.5rem;max-width:100%}.landing-features__grid,.landing-how__steps{grid-template-columns:1fr;max-width:400px;margin-left:auto;margin-right:auto}.landing-pricing__panel{flex-direction:column;max-width:400px;margin-left:auto;margin-right:auto;gap:1.5rem}.landing-pricing__tier--pro{transform:none;border-width:2px}.landing-pricing__tier--pro:hover{transform:translateY(-4px)}.landing-trust{flex-direction:column;align-items:flex-start;padding:2rem 1.5rem;gap:1rem}}.sig-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:100;display:flex;align-items:flex-end;justify-content:center}@media(min-width:600px){.sig-backdrop{align-items:center}}.sig-panel{background:#fff;border-radius:16px 16px 0 0;width:100%;max-width:480px;max-height:85vh;overflow-y:auto;padding:20px;box-shadow:0 -4px 24px #0000001f;animation:sig-slide-up .2s ease-out}@media(min-width:600px){.sig-panel{border-radius:12px;box-shadow:0 8px 32px #00000029;animation:sig-fade-in .15s ease-out}}@keyframes sig-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes sig-fade-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.sig-panel-title{font-size:1rem;font-weight:600;color:#111827;margin:0 0 16px}.sig-thumb-list{display:flex;gap:12px;overflow-x:auto;padding:4px 0 8px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.sig-thumb-item{position:relative;flex-shrink:0;width:96px;height:64px;border:2px solid #e5e7eb;border-radius:8px;overflow:hidden;cursor:pointer;transition:border-color .12s ease,box-shadow .12s ease;background:#fafafa;display:flex;align-items:center;justify-content:center}.sig-thumb-img{max-width:88px;max-height:56px;object-fit:contain;pointer-events:none}.sig-thumb-delete{position:absolute;top:2px;right:2px;width:20px;height:20px;background:#00000080;color:#fff;border:none;border-radius:50%;font-size:11px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .12s ease;padding:0}@media(hover:hover){.sig-thumb-item:hover{border-color:#93c5fd}.sig-thumb-item:hover .sig-thumb-delete{opacity:1}.sig-thumb-delete:hover{background:#d93025}.sig-btn:hover{border-color:#d1d5db;background:#f9fafb}.sig-btn--primary:hover{background:#1d4ed8;border-color:#1d4ed8}}.sig-thumb-item--selected{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.sig-thumb-item--selected .sig-thumb-delete{opacity:1}.sig-empty{text-align:center;padding:16px 0;color:#6b7280;font-size:.9rem}.sig-empty p{margin:0 0 4px}.sig-actions{display:flex;gap:8px;margin-top:16px}.sig-btn{flex:1;padding:10px 16px;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .12s ease;border:1px solid #e5e7eb;background:#fff;color:#374151}.sig-btn:hover{border-color:#d1d5db;background:#f9fafb}.sig-btn--primary{background:#2563eb;color:#fff;border-color:#2563eb}.sig-btn--primary:hover{background:#1d4ed8;border-color:#1d4ed8}.sig-btn--primary:disabled{background:#93c5fd;border-color:#93c5fd;cursor:not-allowed}.sig-privacy-hint{font-size:.75rem;color:#9ca3af;text-align:center;margin-top:12px;font-style:italic}.sig-capture-title{font-size:1rem;font-weight:600;color:#111827;margin:0 0 4px}.sig-capture-hint{font-size:.8rem;color:#9ca3af;margin:0 0 12px}.sig-canvas-wrapper{width:100%;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fff}.sig-canvas{display:block;width:100%;height:200px;touch-action:none;cursor:crosshair;background-color:#fff}.sig-capture-actions{display:flex;gap:8px;margin-top:12px}@media print{.sig-backdrop{display:none!important}}.ucm__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:ucm-fadeIn .15s ease-out}.ucm__card{background:var(--color-surface);border-radius:12px;box-shadow:0 40px 60px -10px #0000001a,0 20px 30px -10px #0000000d;width:420px;max-width:calc(100vw - 32px);max-height:85vh;overflow-y:auto;position:relative;animation:ucm-scaleIn .2s cubic-bezier(.16,1,.3,1);z-index:1001}.ucm__close{position:absolute;top:20px;right:20px;background:none;border:none;font-size:1.35rem;color:var(--color-text-secondary);cursor:pointer;line-height:1;padding:4px;border-radius:4px;z-index:1}.ucm__close:hover{color:var(--color-text-primary);background:#0000000d}.ucm__reason{background:#0000000a;color:var(--color-text-secondary);font-size:.875rem;font-weight:400;line-height:1.5;padding:12px 16px;border-radius:8px;margin-bottom:16px}.ucm__plan{padding:24px 24px 0}.ucm__subtitle{font-size:.8rem;font-weight:400;color:var(--color-text-secondary);margin:0 0 12px;letter-spacing:.01em}.ucm__plan-name{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0 0 8px}.ucm__price{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin:0 0 12px;display:inline-flex;align-items:baseline;gap:6px}.ucm__price-period{font-size:.95rem;font-weight:400;color:var(--color-text-secondary)}.ucm__promo-block{margin-bottom:16px}.ucm__promo-price{font-size:.95rem;font-weight:400;color:var(--color-text-secondary)}.ucm__promo-note{font-size:.85rem;font-weight:400;color:var(--color-text-secondary)}.ucm__desc{font-size:.9rem;color:var(--color-text-secondary);margin:0 0 16px}.ucm__features{list-style:none;padding:0;margin:20px 0 0;display:flex;flex-direction:column;gap:12px}.ucm__feature{font-size:.9rem;color:var(--color-text-primary);display:flex;align-items:flex-start;gap:12px}.ucm__feature-check{color:var(--color-primary);flex-shrink:0;margin-top:2px}.ucm__actions{padding:20px 24px 24px;margin-top:24px;border-top:1px solid rgba(0,0,0,.06);display:flex;flex-direction:column;align-items:center;gap:0}.ucm__btn-primary{background:var(--color-primary);color:#fff;border:none;border-radius:10px;padding:0 2rem;height:44px;font-size:1rem;font-weight:600;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s,transform .1s}.ucm__btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.ucm__btn-primary:active:not(:disabled){transform:scale(.98)}.ucm__btn-primary:disabled{opacity:.6;cursor:wait}.ucm__spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:ucm-spin .6s linear infinite}.ucm__btn-cancel{background:transparent;color:#0009;border:none;padding:0;height:36px;font-size:.875rem;font-weight:500;cursor:pointer;margin-top:12px;transition:color .2s}.ucm__btn-cancel:hover{color:var(--color-text-primary)}.ucm__footnote{font-size:.75rem;color:#00000073;text-align:center;margin-top:8px;line-height:1.4}.ucm__error{color:#b91c1c;background:#fef2f2;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius);padding:.5rem .75rem;font-size:.85rem;text-align:center;width:100%;margin-top:12px}.ucm__billing-alert{font-size:.85rem;color:#b91c1c;text-align:center;width:100%;margin-top:12px}.ucm__billing-link{background:none;border:none;padding:0;color:var(--color-text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;text-decoration:underline;display:inline-flex;align-items:center;gap:4px;margin-top:4px}.ucm__billing-link:hover{color:var(--color-text-primary)}@keyframes ucm-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes ucm-scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes ucm-spin{to{transform:rotate(360deg)}}@media(max-width:480px){.ucm__card{max-height:90vh}.ucm__plan{padding:20px 20px 0}.ucm__actions{padding:16px 20px 20px}}.pricing-page{padding:2rem 1rem 3rem;max-width:1080px;margin:0 auto}.app-main:has(.pricing-page){max-width:800px}.pricing-page__header{text-align:center;margin-bottom:2.5rem}.pricing-page__title{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin:0 0 .5rem}.pricing-page__subtitle{font-size:1.05rem;color:var(--color-text-secondary);margin:0}.pricing-page__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;align-items:stretch}.pricing-page__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:2rem 1.5rem;display:flex;flex-direction:column;position:relative;transition:box-shadow .2s ease,border-color .2s ease}.pricing-page__card:hover{box-shadow:0 4px 16px #0000000f}.pricing-page__card--highlighted{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.pricing-page__recommended{position:absolute;top:-.65rem;left:50%;transform:translate(-50%);background:var(--color-primary);color:#fff;font-size:.7rem;font-weight:600;padding:.15rem .75rem;border-radius:10px;text-transform:uppercase;letter-spacing:.04em}.pricing-page__plan-name{font-size:1.25rem;font-weight:600;color:var(--color-text-primary);margin:0 0 .25rem}.pricing-page__card-header{margin-bottom:1rem;min-height:154px;display:flex;flex-direction:column}.pricing-page__price{font-size:2rem;font-weight:700;color:var(--color-text-primary);margin:0 0 .25rem;display:inline-flex;align-items:baseline;gap:6px}.pricing-page__price-period{font-size:.95rem;font-weight:400;color:var(--color-text-secondary)}.pricing-page__desc{font-size:.9rem;color:var(--color-text-secondary);margin:0;min-height:2.5rem}.pricing-page__promo-block{margin-bottom:1rem}.pricing-page__promo-price{font-size:.95rem;font-weight:400;color:var(--color-text-secondary)}.pricing-page__promo-note{font-size:.85rem;font-weight:400;color:var(--color-text-secondary)}.pricing-page__features{list-style:none;padding:0;margin:0 0 1.5rem;flex-grow:1}.pricing-page__feature{font-size:.9rem;color:var(--color-text-primary);padding:.35rem 0;display:flex;align-items:flex-start;gap:.5rem}.pricing-page__feature-check{color:var(--color-primary);flex-shrink:0;margin-top:.2rem}.pricing-page__btn{display:flex;align-items:center;justify-content:center;width:100%;height:40px;min-width:180px;padding:0 1.25rem;border-radius:var(--radius);font-weight:500;font-size:.95rem;cursor:pointer;border:1px solid transparent;text-align:center;transition:all var(--transition);text-decoration:none}.pricing-page__btn--primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.pricing-page__btn--primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.pricing-page__btn--secondary{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-border)}.pricing-page__btn--secondary:hover{border-color:var(--color-primary);color:var(--color-primary)}.pricing-page__btn--disabled{background:var(--color-surface);color:var(--color-text-secondary);border-color:var(--color-border);cursor:default;opacity:.7}.pricing-page__btn--loading{opacity:.6;cursor:wait}.pricing-page__action-area{min-height:56px;display:flex;align-items:center;justify-content:center;margin-top:auto;width:100%}.pricing-page__status-pill{display:flex;align-items:center;justify-content:center;background:#f3f4f6;color:var(--color-text-secondary);border-radius:var(--radius);height:40px;min-width:180px;padding:0 1.25rem;font-size:.95rem;font-weight:500;width:100%;text-align:center;cursor:default;-webkit-user-select:none;user-select:none;border:none;text-decoration:none}.pricing-page__current-label{text-align:center;font-size:.8rem;color:var(--color-text-secondary);margin-top:.5rem}.pricing-page__alert{margin-top:.75rem;padding:.5rem .75rem;border-radius:var(--radius);font-size:.85rem;text-align:center}.pricing-page__alert--error{color:#b91c1c;background:#fef2f2;border:1px solid rgba(239,68,68,.3)}.pricing-page__alert--info{color:var(--color-primary);background:#eff6ff;border:1px solid rgba(37,99,235,.2)}.pricing-page__footer{text-align:center;margin-top:2rem;font-size:.875rem;color:var(--color-text-secondary);font-weight:400}.pricing-page__footer-link{background:none;border:none;padding:0;color:var(--color-text-secondary);font-size:.875rem;font-weight:400;cursor:pointer;text-decoration:underline;display:inline-flex;align-items:center;gap:4px;transition:color var(--transition)}.pricing-page__footer-link:hover{color:var(--color-text-primary)}.pricing-page__modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:100}.pricing-page__modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:2rem;max-width:420px;width:90%;box-shadow:0 8px 32px #0000001f}.pricing-page__modal h3{margin:0 0 .75rem;font-size:1.1rem;font-weight:600;color:var(--color-text-primary)}.pricing-page__modal p{margin:0 0 1.5rem;font-size:.9rem;color:var(--color-text-secondary);line-height:1.5}.pricing-page__modal-actions{display:flex;gap:.75rem;justify-content:flex-end}@media(max-width:768px){.pricing-page__grid{grid-template-columns:1fr;max-width:420px;margin:0 auto}.pricing-page__card-header{min-height:auto}.pricing-page__title{font-size:1.5rem}}.delete-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.delete-modal{background:#fff;padding:24px;border-radius:8px;width:100%;max-width:400px;box-shadow:0 4px 12px #00000026}.delete-modal__title{font-size:1.125rem;font-weight:600;color:#111;margin:0 0 16px}.delete-modal__body{font-size:.95rem;color:#444;margin-bottom:20px;line-height:1.5}.delete-modal__input-label{display:block;font-size:.9rem;color:#444;margin-bottom:8px;font-weight:500}.delete-modal__input{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;margin-bottom:24px;outline:none;transition:border-color .2s}.delete-modal__input:focus{border-color:#ef4444;box-shadow:0 0 0 2px #ef44441a}.delete-modal__actions{display:flex;justify-content:flex-end;gap:12px}.delete-modal__btn{padding:8px 16px;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;border:none;transition:all .2s}.delete-modal__btn--cancel{background:transparent;color:#4b5563}.delete-modal__btn--cancel:hover{background:#f3f4f6;color:#111}.delete-modal__btn--delete{background:#ef4444;color:#fff}.delete-modal__btn--delete:hover:not(:disabled){background:#dc2626}.delete-modal__btn--delete:disabled{background:#fca5a5;cursor:not-allowed;opacity:.7}.account-page{padding:0 1rem 32px;max-width:900px;margin:0 auto}.account-page__spacer{height:1.5rem}.account-page__header{display:flex;align-items:center;gap:1.25rem;margin-bottom:24px}.account-page__header-info{display:flex;flex-direction:column;justify-content:center}.account-page__identity-row{display:flex;align-items:center;gap:.75rem}.account-page__email{font-size:1.125rem;font-weight:500;margin:0;color:var(--color-text-primary);word-break:break-all}.account-page__badge{display:inline-block;padding:.1rem .6rem;border-radius:12px;font-weight:500;font-size:.75rem;border:1px solid;width:fit-content;line-height:normal}.account-page__badge--pro{color:var(--color-primary);border-color:var(--color-primary)}.account-page__badge--free{color:var(--color-text-secondary);border-color:var(--color-text-secondary)}.account-page__badge--ultra{color:#9333ea;border-color:#9333ea;background-color:#f3e8ff}.account-page__divider{border:none;border-top:1px solid rgba(0,0,0,.06);margin:1.5rem 0}.account-page__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.account-page__card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1.5rem;display:flex;flex-direction:column;height:100%}.account-page__card h3{font-size:1rem;font-weight:600;margin:0 0 1.25rem;color:var(--color-text-primary)}.account-page__usage{margin-bottom:1rem}.account-page__usage-label{font-size:.85rem;color:var(--color-text-secondary);margin-bottom:.25rem}.account-page__usage-value{font-size:.9rem;font-weight:500;color:var(--color-text-primary);margin-bottom:.5rem}.account-page__usage-track{height:4px;background:var(--color-border);border-radius:2px;overflow:hidden}.account-page__usage-fill{height:100%;background:var(--color-primary);border-radius:2px;transition:width .3s ease}.account-page__reset-text{font-size:.85rem;color:var(--color-text-secondary);margin:.5rem 0 1.5rem}.account-page__highest-plan-hint{margin-top:6px;display:flex;flex-direction:column;gap:2px}.account-page__highest-plan-text{font-size:.8rem;font-weight:500;color:var(--color-text-secondary)}.account-page__highest-plan-action{font-size:.8rem;font-weight:400;color:var(--color-text-secondary)}.account-page__highest-plan-action a{color:var(--color-text-secondary);text-decoration:underline}.account-page__highest-plan-action a:hover{color:var(--color-text-primary)}.account-page__upgrade-btn{background:var(--color-primary);color:#fff;border:none;padding:.6rem 1.25rem;border-radius:var(--radius);font-weight:500;font-size:.9rem;cursor:pointer;transition:background var(--transition);align-self:flex-start}.account-page__upgrade-btn:hover{background:var(--color-primary-hover)}.account-page__billing-details{margin-bottom:1.5rem;flex-grow:1}.account-page__billing-row{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:.75rem;border-bottom:1px dashed var(--color-border);padding-bottom:.25rem}.account-page__billing-row:last-child{border-bottom:none;margin-bottom:0}.account-page__billing-row label{color:var(--color-text-secondary)}.account-page__billing-value{color:var(--color-text-primary);font-weight:500;text-align:right}.account-page__billing-actions{margin-top:auto}.account-page__billing-btn{padding:.6rem 1.25rem;border-radius:var(--radius);font-weight:500;font-size:.9rem;cursor:pointer;transition:all var(--transition);border:1px solid transparent}.account-page__billing-btn--secondary{background:var(--color-surface);color:var(--color-text-primary);border-color:var(--color-border);width:100%}.account-page__billing-btn--secondary:hover{border-color:var(--color-primary);color:var(--color-primary)}.account-page__billing-link{background:none;border:none;padding:0;color:var(--color-text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;text-decoration:underline}.account-page__billing-link:hover{color:var(--color-text-primary)}.account-page__actions-row{display:flex;gap:2rem;align-items:center;border-top:1px solid var(--color-border);padding-top:2rem;margin-top:1rem}.account-page__actions-group{display:flex;gap:1rem;align-items:center}.account-page__actions-group--right{margin-left:auto;font-size:.85rem}.account-page__action-link{background:none;border:none;padding:.5rem;color:var(--color-text-primary);font-size:.9rem;font-weight:500;cursor:pointer;border-radius:var(--radius);transition:all .2s}.account-page__action-link:hover{background:#0000000d}.account-page__action-link--danger{color:var(--color-text-secondary);cursor:not-allowed;opacity:.5}.account-page__footer-link{color:var(--color-text-secondary);text-decoration:none;margin-left:1rem}.account-page__footer-link:first-child{margin-left:0}.account-page__footer-link:hover{text-decoration:underline;color:var(--color-text-primary)}.account-page__advanced{margin-top:1.5rem}.account-page__advanced-toggle{background:none;border:none;padding:0;font-size:.9rem;font-weight:400;color:var(--color-text-secondary);cursor:pointer;display:flex;align-items:center;gap:.5rem}.account-page__advanced-toggle:hover{color:var(--color-text-primary)}.account-page__danger-zone{margin-top:1rem;padding:1.5rem;background-color:transparent;border:1px solid rgba(239,68,68,.4);border-radius:var(--radius)}.account-page__danger-title{color:#b91c1c;margin:0 0 1.25rem;font-size:1rem;font-weight:600}.account-page__danger-desc{font-size:.9rem;color:var(--color-text-primary);margin:0 0 1rem;line-height:1.5}.account-page__danger-detail{font-size:.85rem;color:var(--color-text-secondary);margin:0 0 1.25rem;line-height:1.5}.account-page__delete-btn{background-color:#ef4444;border:1px solid #ef4444;color:#fff;padding:.5rem 1rem;border-radius:var(--radius);font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s}.account-page__delete-btn:hover{background-color:#dc2626;color:#fff}.account-page__cancel-delete-btn{background:var(--color-primary);border:none;color:#fff;padding:.5rem 1rem;border-radius:var(--radius);font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s}.account-page__cancel-delete-btn:hover{background:var(--color-primary-hover);color:#fff}.account-page__cancel-delete-btn:disabled{opacity:.5;cursor:not-allowed}.account-page__danger-error{color:#ef4444;font-size:.85rem;margin:0 0 .75rem}.account-page__pending-banner{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;margin-bottom:1.5rem;border-radius:var(--radius);background-color:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-primary);font-size:.9rem;line-height:1.5}.account-page__pending-icon{font-size:1.25rem;flex-shrink:0}@media(max-width:600px){.account-page{padding:0 1rem 1.5rem}.account-page__header{gap:1rem}.account-page__identity-row{flex-direction:column;align-items:flex-start;gap:.25rem}.account-page__badge{font-size:.7rem}.account-page__grid{grid-template-columns:1fr}.account-page__actions-row{flex-direction:column;align-items:flex-start;gap:1.5rem}.account-page__actions-group--right{margin-left:0;width:100%;justify-content:space-between;border-top:1px dotted var(--color-border);padding-top:1rem}}.modal-content.support-modal{background:#fff;padding:3rem 2.5rem;border-radius:12px;box-shadow:0 40px 60px -10px #0000001a,0 20px 30px -10px #0000000d;width:90%;max-width:500px;position:relative;max-height:calc(100vh - 120px);overflow-y:auto}.support-title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:#111;text-align:center}.support-subtitle{font-size:.95rem;color:#666;margin-bottom:2rem;line-height:1.5;text-align:center}.support-form{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem;text-align:left}.support-form-group{display:flex;flex-direction:column;gap:.5rem}.support-form-group label{font-size:.875rem;font-weight:500;color:#333;display:flex;justify-content:space-between}.char-count{color:#999;font-weight:400}.support-input{width:100%;padding:.75rem 1rem;border:1px solid rgba(0,0,0,.15);border-radius:8px;font-size:.95rem;color:#111;font-family:inherit;background-color:#fff;transition:border-color .2s}.support-input:focus{outline:none;border-color:var(--color-primary, #1a73e8)}.support-textarea{resize:vertical;min-height:120px}.support-actions{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.5rem}.btn-support-primary{display:flex;align-items:center;justify-content:center;background-color:var(--color-primary, #1a73e8);color:#fff;border:none;border-radius:8px;padding:0 2rem;height:48px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s;width:100%}.btn-support-primary:hover:not(:disabled){background-color:#1557b0}.btn-support-primary:active:not(:disabled){transform:scale(.98)}.btn-support-primary:disabled{background-color:#a0c3ff;cursor:not-allowed;opacity:.7}.support-error-text{font-size:.875rem;color:#d93025;margin:0}.support-link-btn{background:none;border:none;color:var(--color-primary, #1a73e8);font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;padding:0}.support-link-btn:hover{text-decoration:underline}.app-main:has(.support-page){max-width:1080px}.support-page{max-width:1080px;margin:4rem auto;padding:0 1rem}.support-page__header{margin-bottom:3rem}.support-page__footer{text-align:center;margin-top:4rem}.support-page__grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.support-page__card{padding:2rem 1.5rem;border:1px solid rgba(0,0,0,.08);border-radius:16px;background-color:#fff;display:flex;flex-direction:column}.support-page__card-text{flex:1;color:var(--color-text-secondary);margin-bottom:3.5rem}.support-page__actions{display:flex;gap:.75rem;flex-wrap:wrap}.support-page__btn{flex:1 1 auto;text-align:center;padding:.625rem 1rem;border-radius:var(--radius);font-weight:600;font-size:.95rem;text-decoration:none;transition:all .2s ease-in-out;cursor:pointer;border:1px solid transparent}.support-page__btn--primary{background:var(--color-primary);color:#fff}.support-page__btn--primary:hover{background:#0d47a1}.support-page__btn--secondary{background:transparent;border-color:#00000026;color:var(--color-text)}.support-page__btn--secondary:hover{background:#00000008}@media(max-width:768px){.support-page__grid{grid-template-columns:1fr}.support-page__card{padding:1.5rem 1.25rem}}.support-page__contact-link{background:none;border:none;padding:0;color:var(--color-text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;text-decoration:underline;display:inline-flex;align-items:center;gap:4px}.support-page__contact-link:hover{color:var(--color-text-primary)}.legal-layout-container{max-width:900px;margin:4rem auto;padding:0 2rem;font-family:inherit;color:#37352f}.legal-doc-content{font-size:16px;line-height:1.5}.legal-doc-content hr{display:none}.legal-doc-content h1{font-size:40px;font-weight:700;margin-bottom:2rem;line-height:1.2;letter-spacing:-.01em}.legal-doc-content h2{font-size:28px;font-weight:600;margin-top:2.25rem;margin-bottom:1rem;line-height:1.3}h1+h2{margin-top:1.5rem}.legal-doc-content h3{font-size:20px;font-weight:600;margin-top:1.5rem;margin-bottom:.75rem;line-height:1.3}.legal-doc-content p{margin:.5rem 0 .8rem}.legal-doc-content li{margin:.25rem 0}.legal-doc-content strong{font-weight:600}.legal-doc-content a{color:var(--color-primary);text-decoration:none;transition:color .15s ease}.legal-doc-content a:hover{color:var(--color-primary-hover);text-decoration:underline}.legal-inline-toc{margin-bottom:3rem;padding-bottom:2rem}.legal-inline-toc-title{font-size:24px;font-weight:600;margin-bottom:1rem;color:#37352f}.legal-inline-toc-list{list-style:none;padding:0;margin:0}.legal-inline-toc-item{margin-bottom:.25rem}.legal-inline-toc-item--h3{padding-left:1.5rem}.legal-doc-content ul,.legal-doc-content ol{padding-left:2rem;margin:.5rem 0 1.5rem}.legal-inline-toc .legal-inline-toc-link{font-size:14px;line-height:1.5;color:#37352fa6!important;text-decoration:none!important;transition:color .15s ease;display:inline-block}.legal-inline-toc .legal-inline-toc-link:hover{color:#37352fe6!important;text-decoration:none!important}@media print{.app-header,.app-footer{display:none!important}.legal-layout-container{max-width:100%;margin:0;padding:0;display:block}body{background:#fff;color:#000}.legal-doc-content{color:#000}.legal-doc-content a{color:#000;text-decoration:underline}}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter/Inter-Regular.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter/Inter-Medium.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter/Inter-SemiBold.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter/Inter-Bold.woff2) format("woff2")}:root{--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-variant-numeric:tabular-nums}:root{--fs-h1: clamp(2.5rem, 4vw, 3.5rem);--fs-h2: clamp(1.75rem, 2.2vw, 2rem);--fs-h3: 1.125rem;--fs-lead: 1.125rem;--fs-body: clamp(1rem, 1.2vw, 1.125rem);--fs-caption: .8125rem;--fs-nav: .875rem;--fs-button: .875rem;--lh-tight: 1.05;--lh-snug: 1.2;--lh-normal: 1.55;--lh-relaxed: 1.6;--lh-caption: 1.45;--ls-tight: -.02em;--ls-normal: -.01em;--ls-none: 0;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700}.type-h1{font-size:var(--fs-h1);font-weight:var(--fw-bold);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}.type-h2{font-size:var(--fs-h2);font-weight:var(--fw-bold);line-height:var(--lh-snug);letter-spacing:var(--ls-normal)}.type-h3{font-size:var(--fs-h3);font-weight:var(--fw-semibold);line-height:1.35}.type-lead{font-size:var(--fs-lead);font-weight:var(--fw-regular);line-height:var(--lh-relaxed)}.type-body{font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:1.6}.type-caption{font-size:var(--fs-caption);font-weight:var(--fw-regular);line-height:var(--lh-caption)}.type-nav{font-size:var(--fs-nav);font-weight:var(--fw-medium);line-height:var(--lh-snug)}.type-button{font-size:var(--fs-button);font-weight:var(--fw-semibold);line-height:var(--lh-snug)}:root{--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-bg: #f8fafc;--color-surface: #ffffff;--color-border: #e5e7eb;--color-text-primary: #111827;--color-text-secondary: #6b7280;--radius: 8px;--transition: .12s ease;--header-height: 65px;--footer-height: 55px;--layout-chrome: calc(var(--header-height) + var(--footer-height));--min-main-height: calc(100vh - var(--layout-chrome));--min-main-height: calc(100dvh - var(--layout-chrome));--layout-px: 1rem}@media(min-width:768px){:root{--layout-px: 2rem}}body:has(.editor-page){--layout-px: 1rem}.app-main:has(.editor-page){max-width:1080px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{line-height:1.6;color:#1a1a1a;background-color:#fafafa;-webkit-font-smoothing:antialiased}.layout-container{max-width:1080px;margin:0 auto;padding-left:var(--layout-px);padding-right:var(--layout-px)}.app-header{border-bottom:1px solid #e0e0e0;background-color:#fff}.app-header .layout-container{display:flex;align-items:center;justify-content:space-between;padding-top:.75rem;padding-bottom:.75rem}.app-header nav{display:flex;gap:1.5rem}.app-header a{color:#1a1a1a;text-decoration:none;font-weight:500;font-size:.95rem}.app-header a:hover{color:#555}.header-logo-link{display:flex;align-items:center}.header-logo{height:1.75rem;width:auto;display:block}.app-main{max-width:720px;margin:0 auto;padding:2rem var(--layout-px);min-height:var(--min-main-height)}.app-footer{border-top:1px solid #e0e0e0;background-color:#fff;font-size:.85rem;color:#888}.app-footer__content{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;padding-bottom:1rem}.app-footer__nav{display:flex;gap:1.5rem}.app-footer__link{color:#888;text-decoration:none}.app-footer__link:hover{color:#333;text-decoration:underline}.header-actions{display:flex;align-items:center;gap:.75rem}@media(min-width:769px){.header-actions .btn-signin-nav:not(.nav-cta-desktop){background:transparent;color:var(--color-text-primary);border:1px solid transparent;font-weight:500}.header-actions .btn-signin-nav:not(.nav-cta-desktop):hover{background:#0000000a;border-color:var(--color-border)}}.auth-user-name{max-width:120px;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){.nav-cta-desktop{display:none!important}.app-footer__nav{flex-wrap:wrap;gap:.5rem 1rem;justify-content:flex-end}}.text-danger{color:#d32f2f!important}.text-danger:hover{background-color:#ffebee!important}.page-title{font-size:1.5rem;font-weight:600;margin-bottom:.75rem}.page-description{color:#666;font-size:1rem}.global-dropzone-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1000;background-color:#fffc;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;pointer-events:none}.global-dropzone-content{border:2px dashed #2196f3;border-radius:8px;padding:4.5rem 1.5rem;text-align:center;background-color:#e3f2fde6;min-height:300px;min-width:50vw;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.editor-dropzone{border:2px dashed #ccc;border-radius:8px;padding:4.5rem 1.5rem;text-align:center;background-color:#f9f9f9;transition:all .2s ease;margin-top:2rem;min-height:300px;display:flex;align-items:center;justify-content:center}.editor-dropzone-active{border-color:#2196f3;background-color:#e3f2fd}.editor-dropzone-icon{font-size:3rem;margin-bottom:1rem;display:block}.editor-dropzone-title{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem;color:#333}.editor-dropzone-subtitle{margin:0;margin-top:3rem;font-size:.85rem;color:var(--color-text-secondary)}.editor-upload-btn{display:inline-block;background-color:#1a1a1a;color:#fff;padding:.75rem 1.5rem;border-radius:6px;font-weight:500;cursor:pointer;transition:background-color .2s;margin-bottom:1rem}.editor-upload-btn:hover{background-color:#333}.editor-dropzone-hint{color:#666;font-size:.9rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.editor-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#666;gap:1rem}.spinner{width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #1a1a1a;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.editor-error{text-align:center;padding:2rem;background-color:#fff0f0;border:1px solid #ffcdd2;border-radius:8px;margin-top:2rem}.editor-error-msg{color:#d32f2f;margin-bottom:1rem;font-weight:500}.editor-retry-btn,.editor-reset-btn{background:none;border:1px solid #ccc;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;color:#555;transition:all .2s}.editor-retry-btn:hover,.editor-reset-btn:hover{border-color:#999;color:#333}.editor-workspace{display:flex;flex-direction:column;gap:0;margin-top:-2rem;margin-bottom:-2rem}.editor-toolbar-container{background-color:var(--color-bg);border-bottom:1px solid var(--color-border);padding:16px 0;display:flex;gap:12px;align-items:center;justify-content:center;position:relative}.editor-toolbar-container.menu-open .overlay-toolbar-btn:not(.more-menu__trigger){opacity:0;pointer-events:none;transition:opacity .12s ease}.more-menu{position:relative;display:inline-flex}.more-menu__trigger{padding:8px 12px;font-size:18px;letter-spacing:2px;line-height:1}.more-menu__dropdown{position:absolute;right:0;top:calc(100% + 4px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 4px 12px #00000014;min-width:220px;z-index:100;padding:4px 0}.more-menu__section-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary);padding:8px 14px 4px;font-weight:600}.more-menu__item{display:block;width:100%;padding:8px 14px;font-size:14px;cursor:pointer;color:var(--color-text-primary);background:none;border:none;text-align:left;transition:background 80ms ease}.more-menu__item:hover{background:#f5f5f5}.more-menu__divider{height:1px;background:var(--color-border);margin:4px 0}.more-menu__toggle{display:flex;align-items:center;gap:8px;padding:8px 14px;font-size:14px;color:var(--color-text-primary);cursor:pointer}.more-menu__toggle input[type=checkbox]{accent-color:var(--color-primary)}.editor-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-top:1px solid var(--color-border);background:var(--color-surface);gap:12px}.editor-footer-left{display:flex;align-items:center;gap:8px}.editor-footer-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.export-btn{background:var(--color-primary);color:#fff;border:none;padding:10px 20px;border-radius:var(--radius);font-weight:600;font-size:.95rem;cursor:pointer;transition:background var(--transition);white-space:nowrap}.export-btn:hover:not(:disabled){background:var(--color-primary-hover)}.export-btn:disabled{background:#ccc;cursor:not-allowed}.editor-ios-hint{margin-top:1rem;font-size:.85rem;color:#666;max-width:400px;margin-left:auto;margin-right:auto}.pdf-toolbar{display:flex;align-items:center;gap:2px;background:transparent;padding:0;border-radius:0;box-shadow:none;border:none;flex-shrink:0}.pdf-toolbar-btn{border:none;background:transparent;cursor:pointer;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;color:#5f6368;padding:6px;line-height:0}.pdf-toolbar-btn:hover:not(:disabled){background-color:#f0f0f0}.pdf-toolbar-btn:disabled{color:#ccc;cursor:not-allowed}.pdf-toolbar-indicator{display:flex;align-items:center;gap:3px;font-variant-numeric:tabular-nums;font-size:.9375rem;color:#5f6368;white-space:nowrap}.pdf-toolbar-page-input{width:2ch;text-align:right;padding:0;margin:0;border:none;background:transparent;border-radius:0;font-family:var(--font-sans)!important;font-variant-numeric:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;height:24px;color:inherit;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.pdf-toolbar-page-input:focus{outline:none;background-color:#0000000d;border-radius:4px}.pdf-toolbar-page-input::-webkit-outer-spin-button,.pdf-toolbar-page-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.pdf-viewer{width:100%;background-color:#fff;min-height:150px;box-shadow:0 2px 8px #00000014;border-radius:4px;overflow:hidden;position:relative;display:flex;justify-content:center}.pdf-canvas{display:block;max-width:100%;height:auto!important}.pdf-viewer-loading{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background-color:#fffc;z-index:5}.pdf-viewer-error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#d32f2f;text-align:center;width:80%}.overlay-layer{z-index:10}.overlay-item{position:absolute;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;display:flex;align-items:center;justify-content:center;box-sizing:border-box}.overlay-item:active{cursor:grabbing}.overlay-item--selected{outline:2px dashed #1a73e8;background-color:#1a73e80d}.overlay-content-text{font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;line-height:inherit;color:#000;pointer-events:none}.overlay-content-textarea{font-family:inherit;font-weight:inherit;font-style:inherit;font-size:inherit;line-height:inherit;color:#000}.overlay-content-img{width:100%;height:100%;object-fit:contain;pointer-events:none}.overlay-item__delete{position:absolute;top:-12px;right:-12px;width:24px;height:24px;background-color:#d93025;color:#fff;border:2px solid white;border-radius:50%;font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0003;z-index:20;padding:0}.overlay-item__delete:hover{background-color:#b21f16}.overlay-item__resize-handle{position:absolute;bottom:-6px;right:-6px;width:12px;height:12px;background-color:#fff;border:2px solid #1a73e8;border-radius:50%;cursor:nwse-resize;z-index:20;box-shadow:0 1px 3px #0003}.overlay-toolbar{display:flex;flex-direction:column;gap:8px;padding:0;background:transparent;border-bottom:none;width:100%;max-width:1080px;box-sizing:border-box}.overlay-toolbar-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.overlay-toolbar-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:8px 14px;font-size:14px;font-weight:500;color:var(--color-text-primary);cursor:pointer;transition:all var(--transition);display:inline-flex;align-items:center;gap:8px}.icon-btn{padding:0;width:40px;height:40px;justify-content:center;flex-shrink:0}@media(max-width:600px){.overlay-toolbar-actions{gap:8px}.overlay-toolbar-btn{padding:8px 10px;font-size:13px}.icon-btn{padding:0;width:36px;height:36px}.editor-toolbar-container{padding:12px 0}.header-logo{height:1.5rem}}.overlay-toolbar-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.overlay-toolbar-hint{font-size:12px;color:var(--color-text-secondary);margin:0;font-style:italic;display:none}.tool-btn-icon{font-size:16px;line-height:1;color:var(--color-text-secondary)}.tool-btn-icon--text{font-family:Times New Roman,Georgia,serif;font-weight:700;font-size:18px}.tool-btn-svg{color:var(--color-text-secondary);flex-shrink:0}.overlay-text-form{display:flex;gap:8px;align-items:center}.overlay-text-input{padding:6px 8px;border:1px solid #dadce0;border-radius:4px;font-size:14px}.overlay-toolbar-btn-small{padding:6px 10px;font-size:13px;background-color:#1a73e8;color:#fff;border:none;border-radius:4px;cursor:pointer}.overlay-toolbar-btn-small.secondary{background-color:transparent;color:#5f6368;border:1px solid #dadce0}.editor-dropzone-icon-box{width:48px;height:60px;border:2px solid #dadce0;border-radius:4px;margin:0 auto 16px;position:relative}.editor-dropzone-icon-box:after{content:"";position:absolute;top:10px;left:10px;right:10px;height:2px;background-color:#dadce0;box-shadow:0 8px #dadce0,0 16px #dadce0}.overlay-date-controls,.date-inputs-group{display:flex;gap:8px;align-items:center}.date-controls-divider{width:1px;height:20px;background:#ccc;margin:0 4px}.overlay-toolbar-select{padding:6px;border-radius:4px;border:1px solid #ccc;font-size:14px}.overlay-toolbar-date-input{padding:5px;border-radius:4px;border:1px solid #ccc;font-size:14px}@media(max-width:600px){.overlay-date-controls{flex-direction:column;align-items:flex-start;gap:12px}.date-inputs-group{width:100%}.date-controls-divider{display:none}}.auth-container-loading{width:200px;height:40px;background-color:#f1f3f4;border-radius:4px;animation:auth-pulse 1.5s infinite ease-in-out}@keyframes auth-pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.saving-indicator{padding:6px 12px;border-radius:4px;font-size:13px;font-weight:500;color:#666;opacity:0;transition:opacity .3s ease;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.saving-indicator.saving{opacity:.7}.saving-indicator.saved{opacity:1;color:#4caf50;animation:fadeOut 2s forwards 1s}.saving-indicator.error-quota{opacity:1;color:#d32f2f;background:#ffebee}@keyframes fadeOut{to{opacity:0}}.draft-restored-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:#333;color:#fff;padding:10px 16px;border-radius:8px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 12px #0003;z-index:1000;animation:slideUp .3s ease-out;max-width:90vw}@keyframes slideUp{0%{transform:translate(-50%,20px);opacity:0}to{transform:translate(-50%);opacity:1}}.draft-restored-content{display:flex;align-items:center;gap:8px;font-size:14px}.draft-restored-icon{font-size:16px;line-height:1}@media(min-width:768px){.draft-restored-toast{bottom:30px}}.export-status-toast{position:fixed;bottom:80px;left:50%;transform:translate(-50%) translateY(20px);background:#1f2937;color:#fff;padding:10px 16px;border-radius:12px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 12px #00000026;z-index:1100;opacity:0;transition:all .3s cubic-bezier(.16,1,.3,1);max-width:90vw;pointer-events:none;font-weight:500;letter-spacing:.2px}.export-status-toast.visible{opacity:1;transform:translate(-50%) translateY(0)}.export-status-content{display:flex;align-items:center;gap:10px;font-size:14px;line-height:1.4}.export-status-icon{display:flex;align-items:center;justify-content:center;color:#9ca3af}@media(min-width:768px){.export-status-toast{bottom:30px}}.auth-container-unavailable{height:40px;padding:0 12px;display:flex;align-items:center;justify-content:center;border:1px solid #dadce0;border-radius:4px;background-color:#f8f9fa;color:#5f6368;font-size:13px;cursor:not-allowed;-webkit-user-select:none;user-select:none;white-space:nowrap}.auth-container-signed-out{min-width:200px;min-height:40px;display:flex;justify-content:flex-end;align-items:center}.auth-user-card{display:flex;align-items:center;gap:12px}.auth-user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;border:1px solid #e0e0e0}.auth-user-avatar-placeholder{width:32px;height:32px;border-radius:50%;background-color:#1a73e8;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.auth-user-name{font-size:14px;font-weight:500;color:#3c4043;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-signout-btn{background:transparent;border:1px solid #dadce0;border-radius:4px;padding:6px 12px;color:#5f6368;cursor:pointer;font-size:13px;transition:all .2s;display:flex;align-items:center;gap:4px;height:32px}.auth-signout-btn:hover{background-color:#f1f3f4;color:#1a73e8;border-color:#d2e3fc}.auth-signout-icon{display:none}@media(max-width:480px){.auth-user-name,.auth-signout-text{display:none}.auth-signout-icon{display:inline;font-size:16px;line-height:1}.auth-signout-btn{padding:0;width:32px;border:none;justify-content:center}.auth-container-loading{width:40px;border-radius:50%}.auth-container-unavailable{font-size:11px;padding:0 8px}}.account-signin-prompt{text-align:center;padding:40px 20px;background:var(--color-surface);border-radius:var(--radius);border:1px solid var(--color-border);max-width:400px;margin:20px auto}.account-signin-container{display:flex;justify-content:center;margin-top:20px;min-height:50px}.pdf-disabled-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-color:#f0f2f5b3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;pointer-events:all}.incompatible-banner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#fff;border-radius:16px;padding:32px;width:90%;max-width:480px;text-align:center;z-index:20;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:none;margin:0}@media(max-width:480px){.incompatible-banner{top:60%}}.incompatible-icon-wrapper{margin-bottom:24px}.incompatible-icon{width:48px;height:48px}.incompatible-banner-title{margin:0 0 12px;font-size:1.25rem;font-weight:600;color:#111827}.incompatible-banner-desc{font-size:.95rem;color:#6b7280;margin:0 0 24px;line-height:1.6}.incompatible-open-btn{display:flex;align-items:center;justify-content:center;background-color:#1a73e8;color:#fff;text-decoration:none;padding:12px;border-radius:8px;border:none;font-weight:500;font-size:1rem;cursor:pointer;transition:background-color .2s;width:100%;margin-bottom:16px}.incompatible-open-btn:hover{background-color:#1765cc}.incompatible-steps{text-align:left;margin:0 0 24px;padding:16px;background:#f9fafb;border-radius:8px;font-size:.9rem;color:#374151;list-style-position:inside}.incompatible-steps li{margin-bottom:8px;line-height:1.5}.incompatible-steps li:last-child{margin-bottom:0}.incompatible-reset-btn{background-color:transparent;border:none;border-radius:8px;padding:10px;color:#6b7280;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .2s;width:100%}.incompatible-reset-btn:hover{background-color:#f3f4f6;color:#111827}@media print{.app-header,.app-footer,.incompatible-banner,.editor-toolbar-container,.editor-footer,.editor-ios-hint,.overlay-layer,.pdf-disabled-overlay{display:none!important}.app-main{padding:0!important;margin:0!important;max-width:none!important;min-height:auto!important}.editor-page{padding:0!important;margin:0!important}.editor-workspace{margin:0!important;gap:0!important}.editor-canvas-container{margin:0!important;padding:0!important}.pdf-viewer{box-shadow:none!important;border-radius:0!important;min-height:auto!important}.pdf-canvas{max-width:100%!important;width:100%!important}body{background-color:#fff!important}}.confirm-dialog__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:1000;display:flex;justify-content:center;align-items:center;padding:24px}.confirm-dialog{background:var(--color-surface);border-radius:12px;padding:24px;max-width:360px;width:100%;box-shadow:0 8px 32px #00000029}.confirm-dialog__title{font-size:17px;font-weight:600;margin:0 0 8px;color:var(--color-text-primary)}.confirm-dialog__message{font-size:14px;color:var(--color-text-secondary);margin:0 0 20px;line-height:1.4}.confirm-dialog__actions{display:flex;gap:8px;justify-content:flex-end}.confirm-dialog__btn{padding:8px 18px;border-radius:var(--radius);font-size:14px;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all var(--transition)}.confirm-dialog__btn--cancel{background:transparent;color:var(--color-text-secondary);border-color:var(--color-border)}.confirm-dialog__btn--cancel:hover{background:#f5f5f5}.confirm-dialog__btn--confirm{background:#e53935;color:#fff;border-color:#e53935}.confirm-dialog__btn--confirm:hover{background:#c62828;border-color:#c62828}.ios-export-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#f0f2f5b3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.ios-export-card{background-color:#fff;border-radius:16px;padding:32px;width:90%;max-width:400px;text-align:center;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.ios-export-icon-wrapper{margin-bottom:20px;display:flex;justify-content:center}.ios-export-icon{width:48px;height:48px}.ios-export-title{margin:0 0 12px;font-size:1.25rem;font-weight:600;color:#111827}.ios-export-desc{font-size:.95rem;color:#6b7280;margin:0 0 24px;line-height:1.6}.ios-export-confirm-btn{display:block;width:100%;background-color:#1a73e8;color:#fff;padding:12px;border-radius:8px;border:none;font-weight:600;font-size:1rem;cursor:pointer;transition:background-color .2s;margin-bottom:12px}.ios-export-confirm-btn:hover{background-color:#1557b0}.ios-export-cancel-btn{background:transparent;border:none;color:#6b7280;font-size:.9rem;font-weight:500;cursor:pointer;padding:8px;border-radius:4px;width:100%}.ios-export-cancel-btn:hover{color:#374151;background-color:#f3f4f6}.flatten-export-card{background-color:#fff;border-radius:16px;padding:32px;width:90%;max-width:480px;text-align:center;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.flatten-export-checkbox-row{display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-size:.95rem;color:var(--color-text-primary);-webkit-user-select:none;user-select:none}.flatten-export-checkbox{width:18px;height:18px;cursor:pointer;accent-color:#1a73e8}.auth-user-menu{position:relative;display:inline-block}.auth-user-card{display:flex;align-items:center;justify-content:center;padding:0;width:40px;height:40px;border-radius:50%;background-color:transparent;cursor:pointer;border:1px solid transparent;transition:opacity .2s;-webkit-user-select:none;user-select:none}.auth-user-card:hover,.auth-user-card:focus{opacity:.8}.auth-user-card[aria-expanded=true]{opacity:1}.auth-user-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.auth-user-avatar-placeholder{width:32px;height:32px;border-radius:50%;background-color:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.auth-dropdown{position:absolute;top:calc(100% + 4px);right:0;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:0 4px 6px #0000001a;min-width:160px;z-index:1000;overflow:hidden;padding:4px 0;animation:fadeIn .1s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.auth-dropdown-item{display:block;width:100%;padding:10px 16px;text-align:left;background:none;border:none;font-size:.9rem;color:var(--color-text-primary);cursor:pointer;transition:background-color .1s}.auth-dropdown-item:hover{background-color:#f5f5f5}.auth-container-loading{width:200px;height:40px;display:flex;align-items:center;justify-content:center}.auth-skeleton{width:100%;height:100%;background-color:#eee;border-radius:4px;animation:pulse 1.5s infinite ease-in-out}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.auth-container-unavailable{color:var(--color-text-secondary);font-size:.85rem;padding:8px;font-style:italic}@media(max-width:600px){.auth-user-name{display:none}.auth-dropdown{right:-10px}}.auth-user-info{display:flex;align-items:center;gap:8px}.auth-user-name{font-weight:500;font-size:.95rem;color:#333}.auth-dropdown-arrow{font-size:.8rem;color:#666}.auth-dropdown-gap{height:8px}.auth-dropdown-divider{border-top:1px solid var(--color-border);margin:4px 0}.btn-signin-nav{background:var(--color-primary);color:#fff;border:none;padding:0 1.25rem;height:40px;display:inline-flex;align-items:center;border-radius:var(--radius);font-weight:600;font-size:.95rem;cursor:pointer;text-decoration:none;transition:background-color var(--transition)}.btn-signin-nav:hover,a.btn-signin-nav:hover{background:var(--color-primary-hover);color:#fff}a.btn-signin-nav{color:#fff}.btn-signin-large{background:var(--color-primary);color:#fff;border:none;padding:.75rem 2rem;border-radius:24px;font-size:1.1rem;font-weight:500;cursor:pointer;margin-top:1rem;transition:background-color var(--transition)}.btn-signin-large:hover{background:var(--color-primary-hover)}
