:root{--el-color-white:#fff;--el-color-black:#000;--el-color-primary-rgb:64, 158, 255;--el-color-success-rgb:103, 194, 58;--el-color-warning-rgb:230, 162, 60;--el-color-danger-rgb:245, 108, 108;--el-color-error-rgb:245, 108, 108;--el-color-info-rgb:144, 147, 153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645, .045, .355, 1);--el-transition-function-fast-bezier:cubic-bezier(.23, 1, .32, 1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier), opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--el-color-primary:#409eff;--el-color-primary-light-3:#79bbff;--el-color-primary-light-5:#a0cfff;--el-color-primary-light-7:#c6e2ff;--el-color-primary-light-8:#d9ecff;--el-color-primary-light-9:#ecf5ff;--el-color-primary-dark-2:#337ecc;--el-color-success:#67c23a;--el-color-success-light-3:#95d475;--el-color-success-light-5:#b3e19d;--el-color-success-light-7:#d1edc4;--el-color-success-light-8:#e1f3d8;--el-color-success-light-9:#f0f9eb;--el-color-success-dark-2:#529b2e;--el-color-warning:#e6a23c;--el-color-warning-light-3:#eebe77;--el-color-warning-light-5:#f3d19e;--el-color-warning-light-7:#f8e3c5;--el-color-warning-light-8:#faecd8;--el-color-warning-light-9:#fdf6ec;--el-color-warning-dark-2:#b88230;--el-color-danger:#f56c6c;--el-color-danger-light-3:#f89898;--el-color-danger-light-5:#fab6b6;--el-color-danger-light-7:#fcd3d3;--el-color-danger-light-8:#fde2e2;--el-color-danger-light-9:#fef0f0;--el-color-danger-dark-2:#c45656;--el-color-error:#f56c6c;--el-color-error-light-3:#f89898;--el-color-error-light-5:#fab6b6;--el-color-error-light-7:#fcd3d3;--el-color-error-light-8:#fde2e2;--el-color-error-light-9:#fef0f0;--el-color-error-dark-2:#c45656;--el-color-info:#909399;--el-color-info-light-3:#b1b3b8;--el-color-info-light-5:#c8c9cc;--el-color-info-light-7:#dedfe0;--el-color-info-light-8:#e9e9eb;--el-color-info-light-9:#f4f4f5;--el-color-info-dark-2:#73767a;--el-bg-color:#fff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#fff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#fff;--el-box-shadow:0px 12px 32px 4px #0000000a, 0px 8px 20px #00000014;--el-box-shadow-light:0px 0px 12px #0000001f;--el-box-shadow-lighter:0px 0px 6px #0000001f;--el-box-shadow-dark:0px 16px 48px 16px #00000014, 0px 12px 32px #0000001f, 0px 8px 16px -8px #00000029;--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:#000c;--el-overlay-color-light:#000000b3;--el-overlay-color-lighter:#00000080;--el-mask-color:#ffffffe6;--el-mask-color-extra-light:#ffffff4d;--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:top;transform:scaleY(1)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:bottom;transform:scaleY(1)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:0 0;transform:scale(1)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-leave-active,.el-collapse-transition-enter-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.el-icon{--color:inherit;fill:currentColor;width:1em;height:1em;color:var(--color);line-height:1em;font-size:inherit;justify-content:center;align-items:center;display:inline-flex;position:relative}.el-icon.is-loading{animation:2s linear infinite rotating}.el-icon svg{width:1em;height:1em}.el-button{--el-button-font-weight:var(--el-font-weight-primary);--el-button-border-color:var(--el-border-color);--el-button-bg-color:var(--el-fill-color-blank);--el-button-text-color:var(--el-text-color-regular);--el-button-disabled-text-color:var(--el-disabled-text-color);--el-button-disabled-bg-color:var(--el-fill-color-blank);--el-button-disabled-border-color:var(--el-border-color-light);--el-button-divide-border-color:#ffffff80;--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-7);--el-button-active-text-color:var(--el-button-hover-text-color);--el-button-active-border-color:var(--el-color-primary);--el-button-active-bg-color:var(--el-button-hover-bg-color);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-hover-link-text-color:var(--el-text-color-secondary);--el-button-active-color:var(--el-text-color-primary);white-space:nowrap;cursor:pointer;height:32px;color:var(--el-button-text-color);text-align:center;box-sizing:border-box;line-height:1;font-weight:var(--el-button-font-weight);-webkit-user-select:none;user-select:none;vertical-align:middle;-webkit-appearance:none;background-color:var(--el-button-bg-color);border:var(--el-border);border-color:var(--el-button-border-color);outline:none;justify-content:center;align-items:center;transition:all .1s;display:inline-flex}.el-button:hover{color:var(--el-button-hover-text-color);border-color:var(--el-button-hover-border-color);background-color:var(--el-button-hover-bg-color);outline:none}.el-button:active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:none}.el-button:focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset,outline}.el-button>span{align-items:center;display:inline-flex}.el-button+.el-button{margin-left:12px}.el-button{font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base);padding:8px 15px}.el-button.is-round{padding:8px 15px}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon]+span{margin-left:6px}.el-button [class*=el-icon] svg{vertical-align:bottom}.el-button.is-plain{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary)}.el-button.is-active{color:var(--el-button-active-text-color);border-color:var(--el-button-active-border-color);background-color:var(--el-button-active-bg-color);outline:none}.el-button.is-disabled,.el-button.is-disabled:hover{color:var(--el-button-disabled-text-color);cursor:not-allowed;background-image:none;background-color:var(--el-button-disabled-bg-color);border-color:var(--el-button-disabled-border-color)}.el-button.is-loading{pointer-events:none;position:relative}.el-button.is-loading:before{z-index:1;pointer-events:none;content:"";border-radius:inherit;background-color:var(--el-mask-color-extra-light);position:absolute;inset:-1px}.el-button.is-round{border-radius:var(--el-border-radius-round)}.el-button.is-dashed{--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-fill-color-blank);--el-button-hover-border-color:var(--el-color-primary);border-style:dashed}.el-button.is-circle{border-radius:50%;width:32px;padding:8px}.el-button.is-text{color:var(--el-button-text-color);background-color:#0000;border:0 solid #0000}.el-button.is-text.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important}.el-button.is-text:not(.is-disabled):hover{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled):focus-visible{outline:2px solid var(--el-button-outline-color);outline-offset:1px;transition:outline-offset,outline}.el-button.is-text:not(.is-disabled):active{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg{background-color:var(--el-fill-color-light)}.el-button.is-text:not(.is-disabled).is-has-bg:hover{background-color:var(--el-fill-color)}.el-button.is-text:not(.is-disabled).is-has-bg:active{background-color:var(--el-fill-color-dark)}.el-button__text--expand{letter-spacing:.3em;margin-right:-.3em}.el-button.is-link{color:var(--el-button-text-color);background:0 0;border-color:#0000;height:auto;padding:2px}.el-button.is-link:hover{color:var(--el-button-hover-link-text-color)}.el-button.is-link.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important;border-color:#0000!important}.el-button.is-link:not(.is-disabled):hover{background-color:#0000;border-color:#0000}.el-button.is-link:not(.is-disabled):active{color:var(--el-button-active-color);background-color:#0000;border-color:#0000}.el-button--text{color:var(--el-color-primary);background:0 0;border-color:#0000;padding-left:0;padding-right:0}.el-button--text.is-disabled{color:var(--el-button-disabled-text-color);background-color:#0000!important;border-color:#0000!important}.el-button--text:not(.is-disabled):hover{color:var(--el-color-primary-light-3);background-color:#0000;border-color:#0000}.el-button--text:not(.is-disabled):active{color:var(--el-color-primary-dark-2);background-color:#0000;border-color:#0000}.el-button__link--expand{letter-spacing:.3em;margin-right:-.3em}.el-button--primary{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-primary);--el-button-border-color:var(--el-color-primary);--el-button-outline-color:var(--el-color-primary-light-5);--el-button-active-color:var(--el-color-primary-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-primary-light-5);--el-button-hover-bg-color:var(--el-color-primary-light-3);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-bg-color:var(--el-color-primary-dark-2);--el-button-active-border-color:var(--el-color-primary-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-primary-light-5);--el-button-disabled-border-color:var(--el-color-primary-light-5)}.el-button--primary.is-plain,.el-button--primary.is-text,.el-button--primary.is-link{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-primary);--el-button-hover-border-color:var(--el-color-primary);--el-button-active-text-color:var(--el-color-white)}.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:hover,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-text.is-disabled,.el-button--primary.is-text.is-disabled:hover,.el-button--primary.is-text.is-disabled:focus,.el-button--primary.is-text.is-disabled:active,.el-button--primary.is-link.is-disabled,.el-button--primary.is-link.is-disabled:hover,.el-button--primary.is-link.is-disabled:focus,.el-button--primary.is-link.is-disabled:active{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8)}.el-button--primary.is-dashed{--el-button-text-color:var(--el-color-primary);--el-button-bg-color:var(--el-color-primary-light-9);--el-button-border-color:var(--el-color-primary-light-5);--el-button-hover-text-color:var(--el-color-primary);--el-button-hover-bg-color:var(--el-color-primary-light-9);--el-button-hover-border-color:var(--el-color-primary-light-3);--el-button-active-text-color:var(--el-color-primary-dark-2);--el-button-active-bg-color:var(--el-color-primary-light-9);--el-button-active-border-color:var(--el-color-primary-dark-2)}.el-button--primary.is-dashed.is-disabled,.el-button--primary.is-dashed.is-disabled:hover,.el-button--primary.is-dashed.is-disabled:focus,.el-button--primary.is-dashed.is-disabled:active{color:var(--el-color-primary-light-5);background-color:var(--el-color-primary-light-9);border-color:var(--el-color-primary-light-8)}.el-button--success{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-success);--el-button-border-color:var(--el-color-success);--el-button-outline-color:var(--el-color-success-light-5);--el-button-active-color:var(--el-color-success-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-success-light-5);--el-button-hover-bg-color:var(--el-color-success-light-3);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-bg-color:var(--el-color-success-dark-2);--el-button-active-border-color:var(--el-color-success-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-success-light-5);--el-button-disabled-border-color:var(--el-color-success-light-5)}.el-button--success.is-plain,.el-button--success.is-text,.el-button--success.is-link{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-success);--el-button-hover-border-color:var(--el-color-success);--el-button-active-text-color:var(--el-color-white)}.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:hover,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-text.is-disabled,.el-button--success.is-text.is-disabled:hover,.el-button--success.is-text.is-disabled:focus,.el-button--success.is-text.is-disabled:active,.el-button--success.is-link.is-disabled,.el-button--success.is-link.is-disabled:hover,.el-button--success.is-link.is-disabled:focus,.el-button--success.is-link.is-disabled:active{color:var(--el-color-success-light-5);background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8)}.el-button--success.is-dashed{--el-button-text-color:var(--el-color-success);--el-button-bg-color:var(--el-color-success-light-9);--el-button-border-color:var(--el-color-success-light-5);--el-button-hover-text-color:var(--el-color-success);--el-button-hover-bg-color:var(--el-color-success-light-9);--el-button-hover-border-color:var(--el-color-success-light-3);--el-button-active-text-color:var(--el-color-success-dark-2);--el-button-active-bg-color:var(--el-color-success-light-9);--el-button-active-border-color:var(--el-color-success-dark-2)}.el-button--success.is-dashed.is-disabled,.el-button--success.is-dashed.is-disabled:hover,.el-button--success.is-dashed.is-disabled:focus,.el-button--success.is-dashed.is-disabled:active{color:var(--el-color-success-light-5);background-color:var(--el-color-success-light-9);border-color:var(--el-color-success-light-8)}.el-button--warning{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-warning);--el-button-border-color:var(--el-color-warning);--el-button-outline-color:var(--el-color-warning-light-5);--el-button-active-color:var(--el-color-warning-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-warning-light-5);--el-button-hover-bg-color:var(--el-color-warning-light-3);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-bg-color:var(--el-color-warning-dark-2);--el-button-active-border-color:var(--el-color-warning-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-warning-light-5);--el-button-disabled-border-color:var(--el-color-warning-light-5)}.el-button--warning.is-plain,.el-button--warning.is-text,.el-button--warning.is-link{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-warning);--el-button-hover-border-color:var(--el-color-warning);--el-button-active-text-color:var(--el-color-white)}.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:hover,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-text.is-disabled,.el-button--warning.is-text.is-disabled:hover,.el-button--warning.is-text.is-disabled:focus,.el-button--warning.is-text.is-disabled:active,.el-button--warning.is-link.is-disabled,.el-button--warning.is-link.is-disabled:hover,.el-button--warning.is-link.is-disabled:focus,.el-button--warning.is-link.is-disabled:active{color:var(--el-color-warning-light-5);background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8)}.el-button--warning.is-dashed{--el-button-text-color:var(--el-color-warning);--el-button-bg-color:var(--el-color-warning-light-9);--el-button-border-color:var(--el-color-warning-light-5);--el-button-hover-text-color:var(--el-color-warning);--el-button-hover-bg-color:var(--el-color-warning-light-9);--el-button-hover-border-color:var(--el-color-warning-light-3);--el-button-active-text-color:var(--el-color-warning-dark-2);--el-button-active-bg-color:var(--el-color-warning-light-9);--el-button-active-border-color:var(--el-color-warning-dark-2)}.el-button--warning.is-dashed.is-disabled,.el-button--warning.is-dashed.is-disabled:hover,.el-button--warning.is-dashed.is-disabled:focus,.el-button--warning.is-dashed.is-disabled:active{color:var(--el-color-warning-light-5);background-color:var(--el-color-warning-light-9);border-color:var(--el-color-warning-light-8)}.el-button--danger{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-danger);--el-button-border-color:var(--el-color-danger);--el-button-outline-color:var(--el-color-danger-light-5);--el-button-active-color:var(--el-color-danger-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-danger-light-5);--el-button-hover-bg-color:var(--el-color-danger-light-3);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-bg-color:var(--el-color-danger-dark-2);--el-button-active-border-color:var(--el-color-danger-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-danger-light-5);--el-button-disabled-border-color:var(--el-color-danger-light-5)}.el-button--danger.is-plain,.el-button--danger.is-text,.el-button--danger.is-link{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-danger);--el-button-hover-border-color:var(--el-color-danger);--el-button-active-text-color:var(--el-color-white)}.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:hover,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-text.is-disabled,.el-button--danger.is-text.is-disabled:hover,.el-button--danger.is-text.is-disabled:focus,.el-button--danger.is-text.is-disabled:active,.el-button--danger.is-link.is-disabled,.el-button--danger.is-link.is-disabled:hover,.el-button--danger.is-link.is-disabled:focus,.el-button--danger.is-link.is-disabled:active{color:var(--el-color-danger-light-5);background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8)}.el-button--danger.is-dashed{--el-button-text-color:var(--el-color-danger);--el-button-bg-color:var(--el-color-danger-light-9);--el-button-border-color:var(--el-color-danger-light-5);--el-button-hover-text-color:var(--el-color-danger);--el-button-hover-bg-color:var(--el-color-danger-light-9);--el-button-hover-border-color:var(--el-color-danger-light-3);--el-button-active-text-color:var(--el-color-danger-dark-2);--el-button-active-bg-color:var(--el-color-danger-light-9);--el-button-active-border-color:var(--el-color-danger-dark-2)}.el-button--danger.is-dashed.is-disabled,.el-button--danger.is-dashed.is-disabled:hover,.el-button--danger.is-dashed.is-disabled:focus,.el-button--danger.is-dashed.is-disabled:active{color:var(--el-color-danger-light-5);background-color:var(--el-color-danger-light-9);border-color:var(--el-color-danger-light-8)}.el-button--info{--el-button-text-color:var(--el-color-white);--el-button-bg-color:var(--el-color-info);--el-button-border-color:var(--el-color-info);--el-button-outline-color:var(--el-color-info-light-5);--el-button-active-color:var(--el-color-info-dark-2);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-link-text-color:var(--el-color-info-light-5);--el-button-hover-bg-color:var(--el-color-info-light-3);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-bg-color:var(--el-color-info-dark-2);--el-button-active-border-color:var(--el-color-info-dark-2);--el-button-disabled-text-color:var(--el-color-white);--el-button-disabled-bg-color:var(--el-color-info-light-5);--el-button-disabled-border-color:var(--el-color-info-light-5)}.el-button--info.is-plain,.el-button--info.is-text,.el-button--info.is-link{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-white);--el-button-hover-bg-color:var(--el-color-info);--el-button-hover-border-color:var(--el-color-info);--el-button-active-text-color:var(--el-color-white)}.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:hover,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-text.is-disabled,.el-button--info.is-text.is-disabled:hover,.el-button--info.is-text.is-disabled:focus,.el-button--info.is-text.is-disabled:active,.el-button--info.is-link.is-disabled,.el-button--info.is-link.is-disabled:hover,.el-button--info.is-link.is-disabled:focus,.el-button--info.is-link.is-disabled:active{color:var(--el-color-info-light-5);background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8)}.el-button--info.is-dashed{--el-button-text-color:var(--el-color-info);--el-button-bg-color:var(--el-color-info-light-9);--el-button-border-color:var(--el-color-info-light-5);--el-button-hover-text-color:var(--el-color-info);--el-button-hover-bg-color:var(--el-color-info-light-9);--el-button-hover-border-color:var(--el-color-info-light-3);--el-button-active-text-color:var(--el-color-info-dark-2);--el-button-active-bg-color:var(--el-color-info-light-9);--el-button-active-border-color:var(--el-color-info-dark-2)}.el-button--info.is-dashed.is-disabled,.el-button--info.is-dashed.is-disabled:hover,.el-button--info.is-dashed.is-disabled:focus,.el-button--info.is-dashed.is-disabled:active{color:var(--el-color-info-light-5);background-color:var(--el-color-info-light-9);border-color:var(--el-color-info-light-8)}.el-button--large{--el-button-size:40px;height:var(--el-button-size)}.el-button--large [class*=el-icon]+span{margin-left:8px}.el-button--large{font-size:var(--el-font-size-base);border-radius:var(--el-border-radius-base);padding:12px 19px}.el-button--large.is-round{padding:12px 19px}.el-button--large.is-circle{width:var(--el-button-size);padding:12px}.el-button--small{--el-button-size:24px;height:var(--el-button-size)}.el-button--small [class*=el-icon]+span{margin-left:4px}.el-button--small{border-radius:calc(var(--el-border-radius-base) - 1px);padding:5px 11px;font-size:12px}.el-button--small.is-round{padding:5px 11px}.el-button--small.is-circle{width:var(--el-button-size);padding:5px}:root{font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif;color:#34272a;background:#f6f7f8;font-synthesis:none;--accent: #d13a52;--accent-dark: #a7243b;--accent-soft: #fff3f1;--accent-mist: #f8e2de;--canvas: #f6f7f8;--surface: #ffffff;--surface-muted: #f4f5f6;--line: #e5e7ea;--muted: #6f7076;--text: #34272a;--text-soft: #55565c;--field-border: #d9dce0;--success: #2f6b4e;--success-soft: #f0f8f4;--success-line: #b9d8c8;--radius: 10px;--el-color-primary: var(--accent)}*{box-sizing:border-box}html{min-width:320px;background:var(--canvas)}body{margin:0;min-width:320px;min-height:100dvh;background:var(--canvas);color:var(--text)}button,a,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}::selection{background:var(--accent-mist);color:var(--accent-dark)}a:focus-visible,button:focus-visible{outline:3px solid rgba(209,58,82,.25);outline-offset:2px}.app-shell{min-height:100dvh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;display:flex;flex-direction:column;width:224px;padding:26px 16px;border-right:1px solid var(--line);background:var(--surface)}.brand{display:flex;align-items:center;gap:11px;padding:0 9px 26px;text-decoration:none}.brand-mark{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:var(--radius);background:var(--accent);color:#fff;font-size:19px;font-weight:800}.brand strong,.brand small{display:block}.brand small{margin-top:1px;color:var(--muted);font-size:10px}.side-nav{display:grid;gap:4px}.side-nav a{min-height:42px;padding:10px 13px;border-radius:8px;color:var(--muted);font-weight:650;text-decoration:none}.side-nav a:hover,.side-nav a.router-link-active{background:var(--accent-soft);color:var(--accent-dark)}.sidebar-account{display:grid;gap:4px;margin-top:auto;padding:14px 8px 8px;border-top:1px solid var(--line)}.sidebar-account>a{overflow:hidden;color:var(--text-soft);font-size:13px;font-weight:750;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.sidebar-account .el-button{width:fit-content;height:auto;margin:0;padding:3px 0;color:var(--muted)}.stage-label{margin:8px 8px 0;color:var(--muted);font-size:11px}.workspace{min-width:0;margin-left:224px}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:0 clamp(22px,4vw,58px);border-bottom:1px solid var(--line);background:#f6f7f8f0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-copy{display:flex;align-items:baseline;gap:12px}.topbar-copy span{color:var(--muted);font-size:12px}.environment,.status-badge{padding:5px 9px;border-radius:8px;background:var(--accent-soft);color:var(--accent-dark);font-size:11px;font-weight:750}.topbar-account{display:flex;align-items:center;gap:12px;font-size:13px}.topbar-account a{max-width:120px;overflow:hidden;color:var(--text-soft);font-weight:750;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.logout-button{padding:5px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}.logout-button:hover{border-color:#d9b7bf;color:var(--accent-dark)}.logout-button:active,.el-button:active{transform:translateY(1px)}.shell-notice{margin:0;padding:8px 24px;background:var(--accent-soft);color:var(--accent-dark);font-size:12px;text-align:center}.mobile-brand{display:none;align-items:center;gap:8px;text-decoration:none}.content{width:min(100%,1180px);margin:0 auto;padding:54px clamp(22px,5vw,72px) 90px}.page-intro{max-width:700px}.page-intro h1,.placeholder-view h1{margin:8px 0 12px;font-size:clamp(30px,5vw,52px);line-height:1.1;letter-spacing:-.035em}.page-intro>p:last-child,.placeholder-view p{max-width:62ch;color:var(--muted);font-size:16px;line-height:1.8}.eyebrow,.section-label{margin:0;color:var(--accent);font-size:12px;font-weight:800;letter-spacing:.08em}.status-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:48px;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.status-panel h2,.next-step h2{margin:7px 0 4px;font-size:22px}.status-panel p,.next-step p{margin:0;color:var(--muted)}.next-step{max-width:620px;margin-top:44px}.skeleton-title{color:var(--muted)}.placeholder-view{max-width:700px;padding-top:4vh}.text-link{display:inline-block;margin-top:18px;color:var(--accent-dark);font-weight:750;text-underline-offset:4px}.mobile-nav,.mobile-ai-entry{display:none}.el-button--primary{--el-button-bg-color: var(--accent);--el-button-border-color: var(--accent);--el-button-hover-bg-color: var(--accent-dark);--el-button-hover-border-color: var(--accent-dark);--el-button-active-bg-color: var(--accent-dark);--el-button-active-border-color: var(--accent-dark);border-radius:8px;font-weight:700}.auth-page{display:grid;grid-template-columns:minmax(320px,.88fr) minmax(480px,1.12fr);min-height:100dvh;background:var(--surface)}.auth-story{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100dvh;padding:clamp(30px,5vw,72px);overflow:hidden;background:var(--accent-soft)}.auth-story:after{position:absolute;right:-20%;bottom:-18%;width:min(44vw,560px);aspect-ratio:1;border:1px solid rgba(209,58,82,.16);border-radius:50%;box-shadow:0 0 0 70px #ffffff57,0 0 0 140px #d13a520f;content:"";pointer-events:none}.auth-brand{position:relative;z-index:1;display:flex;align-items:center;gap:11px;width:fit-content;color:var(--text);font-size:20px;text-decoration:none}.auth-story>div{position:relative;z-index:1;max-width:560px}.auth-story h1{max-width:10ch;margin:14px 0 20px;color:var(--text);font-size:clamp(42px,5vw,68px);line-height:1.08;letter-spacing:-.05em}.auth-story>div>p:last-child{max-width:42ch;margin:0;color:var(--text-soft);font-size:16px;line-height:1.8}.privacy-note{position:relative;z-index:1;max-width:42ch;margin:0;color:var(--muted);font-size:12px;line-height:1.6}.auth-form-area{display:grid;place-items:center;min-height:100dvh;padding:42px clamp(24px,6vw,92px);background:var(--surface)}.auth-card{width:min(100%,500px)}.auth-card header h2{margin:0 0 9px;color:var(--text);font-size:clamp(28px,4vw,38px);letter-spacing:-.03em}.auth-card header p{margin:0;color:var(--muted);line-height:1.7}.auth-card form{display:grid;gap:18px;margin-top:32px}.field{display:grid;gap:8px;color:var(--text-soft);font-size:13px;font-weight:750}.field input,.field textarea{width:100%;min-height:46px;padding:11px 13px;border:1px solid var(--field-border);border-radius:8px;outline:none;background:#fff;color:var(--text);font-weight:500;line-height:1.5;transition:border-color .18s ease,box-shadow .18s ease}.field textarea{resize:vertical}.field input:hover,.field textarea:hover{border-color:#d5aeb7}.field input:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #d13a5224}.field small,.form-helper{margin:0;color:var(--muted);font-size:11px;font-weight:500;line-height:1.6}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-aside{margin-top:-8px;text-align:right}.form-aside a,.auth-switch a{color:var(--accent-dark);font-weight:750;text-underline-offset:3px}.form-message,.form-notice{margin:0;padding:11px 13px;border-radius:8px;font-size:13px;line-height:1.55}.form-message.error{border:1px solid #eebcc6;background:#fff1f4;color:#8f2339}.form-message.success,.form-notice{border:1px solid var(--success-line);background:var(--success-soft);color:var(--success)}.form-notice{margin-top:22px}.submit-button{width:100%;min-height:46px;margin:0!important}.secondary-button{margin-top:-8px!important;color:var(--accent-dark)}.auth-switch{margin-top:26px;color:var(--muted);font-size:13px;text-align:center}.page-heading{display:flex;justify-content:space-between;gap:32px}.page-heading h1{margin:8px 0 10px;font-size:clamp(32px,5vw,48px);letter-spacing:-.04em}.page-heading p:last-child{max-width:62ch;margin:0;color:var(--muted);line-height:1.75}.profile-layout{display:grid;grid-template-columns:minmax(220px,.68fr) minmax(380px,1.32fr);gap:clamp(36px,6vw,84px);margin-top:48px;padding-top:32px;border-top:1px solid var(--line)}.identity-panel{align-self:start;display:grid;justify-items:start}.profile-avatar{display:grid;place-items:center;width:96px;height:96px;overflow:hidden;border-radius:16px;background:var(--accent-soft);color:var(--accent-dark);font-size:38px;font-weight:850}.profile-avatar img{width:100%;height:100%;object-fit:cover}.identity-panel>strong{margin-top:16px;font-size:20px}.identity-panel>span{margin-top:3px;color:var(--muted);font-size:12px}.identity-panel dl{display:grid;gap:14px;width:100%;margin:28px 0 0}.identity-panel dl>div{display:grid;gap:4px}.identity-panel dt{color:var(--muted);font-size:11px}.identity-panel dd{margin:0;overflow-wrap:anywhere;color:var(--text-soft);font-size:13px}.profile-form{display:grid;gap:20px}.profile-actions{display:flex;gap:10px}.avatar-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.avatar-actions .secondary-action{position:relative;min-height:36px;padding:8px 11px;overflow:hidden;cursor:pointer}.avatar-actions input,.creation-image-picker input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.avatar-actions .disabled{opacity:.55;cursor:wait}.profile-loading{display:grid;gap:14px;margin-top:48px}.skeleton{display:block;border-radius:8px;background:linear-gradient(90deg,#f4e8eb,#fff8fa,#f4e8eb);background-size:200% 100%;animation:skeleton-shift 1.4s ease infinite}.avatar-skeleton{width:96px;height:96px;border-radius:16px}.line-skeleton{width:min(100%,480px);height:18px}.line-skeleton.short{width:min(65%,300px)}.empty-state{display:grid;justify-items:start;gap:10px;margin-top:48px;padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.empty-state h2,.empty-state p{margin:0}.empty-state p{color:var(--muted)}.memory-page{min-width:0}.memory-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.memory-heading>div{max-width:720px}.memory-heading h1{max-width:13ch;margin:8px 0 12px;font-size:clamp(34px,5vw,54px);line-height:1.08;letter-spacing:-.045em}.memory-heading>div>p:last-child{max-width:62ch;margin:0;color:var(--muted);line-height:1.75}.primary-action,.secondary-action{min-height:42px;padding:10px 17px;border-radius:9px;font-weight:750;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.primary-action{border:1px solid var(--accent);background:var(--accent);color:#fff}.primary-action:hover{border-color:var(--accent-dark);background:var(--accent-dark)}.secondary-action{border:1px solid var(--field-border);background:var(--surface);color:var(--text-soft)}.secondary-action:hover{border-color:#d5aeb7;color:var(--accent-dark)}.primary-action:active,.secondary-action:active{transform:translateY(1px)}.primary-action:disabled,.secondary-action:disabled{opacity:.58;cursor:wait}.memory-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 170px auto;align-items:end;gap:12px;margin:42px 0 28px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.memory-toolbar label{display:grid;gap:7px;color:var(--muted);font-size:11px;font-weight:750}.memory-toolbar input,.memory-toolbar select{width:100%;min-height:42px;padding:9px 12px;border:1px solid var(--field-border);border-radius:8px;outline:none;background:var(--surface);color:var(--text)}.memory-toolbar input:focus,.memory-toolbar select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #d13a521f}.memory-grid{columns:2 320px;column-gap:20px;margin-top:24px}.memory-card{display:inline-block;width:100%;margin:0 0 20px;overflow:hidden;break-inside:avoid;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 14px 38px #5b27310f}.memory-card:nth-child(3n) .memory-cover{aspect-ratio:4 / 5}.memory-cover{position:relative;aspect-ratio:16 / 11;overflow:hidden;background:var(--accent-soft)}.memory-cover>img{width:100%;height:100%;object-fit:cover}.generated-cover{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:100%;padding:clamp(24px,5vw,46px);color:#781f32}.generated-cover:after{position:absolute;top:-18%;right:-22%;width:72%;aspect-ratio:1;border:1px solid rgba(120,31,50,.16);border-radius:50%;box-shadow:0 0 0 34px #ffffff2e,0 0 0 68px #ffffff1c;content:""}.generated-cover span,.generated-cover strong,.generated-cover small{position:relative;z-index:1}.generated-cover span{font-size:12px;font-weight:750;letter-spacing:.08em}.generated-cover strong{margin-top:4px;font-size:clamp(34px,6vw,54px);line-height:1;letter-spacing:-.05em}.generated-cover small{margin-top:12px;font-size:11px;opacity:.72}.memory-cover.tone-0{background:#e8eceb}.memory-cover.tone-1{background:#e7eaee}.memory-cover.tone-2{background:#eeeae5}.memory-cover.tone-3{background:#e9e7eb}.memory-status{position:absolute;z-index:2;top:12px;left:12px;padding:5px 9px;border:1px solid rgba(255,255,255,.5);border-radius:7px;background:#ffffffd6;color:var(--accent-dark);font-size:10px;font-weight:800;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.memory-card-body{padding:18px}.memory-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.memory-card-heading p,.memory-card-heading h2{margin:0}.memory-card-heading p{color:var(--accent);font-size:11px;font-weight:800}.memory-card-heading h2{margin-top:4px;font-size:20px;line-height:1.35}.memory-card-heading>span{flex:none;padding:4px 7px;border-radius:6px;background:var(--accent-soft);color:var(--accent-dark);font-size:10px;font-weight:750}.memory-excerpt{display:-webkit-box;margin:13px 0 0;overflow:hidden;color:var(--text-soft);font-size:13px;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:3}.memory-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;color:var(--accent-dark);font-size:11px}.memory-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 0;padding-top:15px;border-top:1px solid var(--line)}.memory-facts div{min-width:0}.memory-facts dt{color:var(--muted);font-size:9px}.memory-facts dd{margin:4px 0 0;overflow:hidden;font-size:11px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.memory-card-actions{display:flex;justify-content:flex-end;gap:14px;margin-top:16px}.memory-card-actions button{padding:4px 0;border:0;background:transparent;color:var(--accent-dark);font-size:12px;font-weight:750;cursor:pointer}.memory-card-actions button:disabled{opacity:.55;cursor:wait}.memory-card-actions .danger-link{color:#90263b}.memory-card-loading{padding-bottom:18px}.memory-cover-skeleton{width:100%;aspect-ratio:16 / 11;border-radius:0}.memory-card-loading .line-skeleton{margin:18px 18px 0;width:calc(100% - 36px)}.memory-card-loading .line-skeleton.short{width:52%}.memory-empty{display:grid;justify-items:start;max-width:620px;margin-top:40px;padding:clamp(28px,6vw,56px);border:1px solid var(--line);border-radius:14px;background:var(--surface)}.memory-empty>span{color:var(--accent);font-size:12px;font-weight:800}.memory-empty h2{margin:9px 0 8px;font-size:28px}.memory-empty p{max-width:52ch;margin:0 0 22px;color:var(--muted);line-height:1.7}.memory-dialog-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:20px;background:#34272a61;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.memory-dialog{width:min(100%,900px);max-height:calc(100dvh - 40px);overflow:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 28px 80px #3e192138}.memory-dialog>header{position:sticky;z-index:2;top:0;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:22px 24px 18px;border-bottom:1px solid var(--line);background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.memory-dialog h2{margin:5px 0 0;font-size:26px}.dialog-close{width:36px;height:36px;flex:none;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font-size:22px;cursor:pointer}.dialog-close:hover{border-color:#d5aeb7;color:var(--accent-dark)}.memory-form{padding:24px}.memory-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.memory-form-grid .field-wide{grid-column:1 / -1}.choice-section{margin:26px 0 0;padding:0;border:0}.choice-section legend{margin-bottom:10px;color:var(--text-soft);font-size:13px;font-weight:800}.choice-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.choice-grid button,.publish-choice button{min-height:64px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text-soft);text-align:left;cursor:pointer}.choice-grid button strong,.choice-grid button span{display:block}.choice-grid button strong{font-size:12px}.choice-grid button span{margin-top:4px;color:var(--muted);font-size:10px;line-height:1.4}.choice-grid button.selected,.publish-choice button.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark);box-shadow:inset 0 0 0 1px var(--accent)}.publish-choice{display:grid;grid-template-columns:1fr 1fr;gap:8px}.publish-choice button{min-height:44px;text-align:center;font-weight:750}.comment-switch{display:flex;align-items:center;gap:9px;width:fit-content;margin-top:22px;color:var(--text-soft);font-size:13px;font-weight:650;cursor:pointer}.comment-switch input{width:17px;height:17px;accent-color:var(--accent)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:26px;padding-top:18px;border-top:1px solid var(--line)}.image-dialog-backdrop{z-index:105}.image-dialog{width:min(100%,1040px)}.image-manager{display:grid;gap:20px;padding:24px}.image-add-panel{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(210px,.8fr) minmax(320px,1.5fr);gap:16px;align-items:stretch;padding-bottom:22px;border-bottom:1px solid var(--line)}.image-add-copy h3{margin:0 0 8px;font-size:20px}.image-add-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}.upload-trigger{display:grid;place-content:center;min-height:118px;padding:16px;border:1px dashed #d8aeb7;border-radius:12px;background:var(--accent-soft);color:var(--accent-dark);text-align:center;cursor:pointer}.upload-trigger:hover{border-color:var(--accent);background:#ffe8ed}.upload-trigger.disabled{opacity:.62;cursor:wait}.upload-trigger input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.upload-trigger strong{font-size:14px}.upload-trigger span{margin-top:6px;color:var(--muted);font-size:10px;line-height:1.5}.url-import{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}.url-import .secondary-action{grid-column:1 / -1;width:100%}.image-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}.image-gallery-loading{min-height:260px}.image-tile-skeleton{min-height:260px;border-radius:12px}.image-tile{display:grid;grid-template-columns:minmax(130px,.72fr) minmax(180px,1fr);min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.image-preview-button{position:relative;min-height:210px;padding:0;overflow:hidden;border:0;background:var(--surface-muted);cursor:zoom-in}.image-preview-button img{width:100%;height:100%;min-height:210px;object-fit:cover}.cover-badge{position:absolute;top:10px;left:10px;padding:5px 8px;border:1px solid rgba(255,255,255,.56);border-radius:7px;background:#ffffffe6;color:var(--accent-dark);font-size:10px;font-weight:800}.image-tile-body{display:grid;align-content:start;gap:13px;min-width:0;padding:14px}.image-meta{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0}.image-meta strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.image-meta span{flex:none;color:var(--muted);font-size:10px}.compact-field{gap:5px}.compact-field input{min-height:38px;padding:8px 10px;font-size:11px}.image-tile-actions{display:flex;flex-wrap:wrap;gap:6px 11px;align-items:center}.image-tile-actions button{padding:3px 0;border:0;background:transparent;color:var(--accent-dark);font-size:10px;font-weight:750;cursor:pointer}.image-tile-actions button:disabled{opacity:.45;cursor:not-allowed}.image-tile-actions .danger-link{color:#90263b}.order-actions{display:flex;gap:9px;padding-inline:8px;border-inline:1px solid var(--line)}.image-empty{display:grid;justify-items:start;gap:7px;padding:34px;border:1px dashed var(--field-border);border-radius:12px;background:var(--surface-muted)}.image-empty strong{font-size:18px}.image-empty p{max-width:50ch;margin:0;color:var(--muted);font-size:12px;line-height:1.65}.image-preview-overlay{position:fixed;z-index:120;inset:0;display:grid;place-items:center;padding:56px 24px 24px;background:#23191ce6}.image-preview-overlay img{max-width:min(1200px,100%);max-height:calc(100dvh - 80px);object-fit:contain}.image-preview-overlay>button{position:absolute;top:16px;right:20px;width:38px;height:38px;border:1px solid rgba(255,255,255,.35);border-radius:8px;background:#ffffff1a;color:#fff;font-size:24px;cursor:pointer}.wish-page{min-width:0}.wish-heading h1{max-width:12ch}.wish-overview{display:grid;grid-template-columns:130px 130px 130px 1fr;gap:0;align-items:stretch;margin-top:38px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.wish-overview>div{display:grid;gap:5px;padding:18px 20px;border-right:1px solid var(--line)}.wish-overview span{color:var(--muted);font-size:10px;font-weight:750}.wish-overview strong{font-size:24px;line-height:1}.wish-overview p{align-self:center;max-width:42ch;margin:0;padding:18px 22px;color:var(--muted);font-size:12px;line-height:1.65}.wish-toolbar{grid-template-columns:minmax(220px,1fr) 150px 150px auto;margin-top:18px}.wish-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:24px}.wish-card{display:grid;grid-template-columns:150px minmax(0,1fr);min-height:190px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 10px 28px #25272d0d}.wish-cover{position:relative;min-height:190px;overflow:hidden;background:var(--surface-muted)}.wish-cover>img,.wish-cover-preview>img{width:100%;height:100%;object-fit:cover}.wish-generated-cover{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-height:inherit;padding:20px;color:#3e4147}.wish-generated-cover:before{position:absolute;top:-22%;right:-26%;width:88%;aspect-ratio:1;border:1px solid rgba(115,34,55,.15);border-radius:50%;box-shadow:0 0 0 28px #ffffff2b,0 0 0 56px #ffffff17;content:""}.wish-generated-cover:after{position:absolute;right:10%;bottom:13%;width:32px;height:32px;border:1px solid rgba(115,34,55,.18);border-radius:50%;content:""}.wish-generated-cover span,.wish-generated-cover strong,.wish-generated-cover small{position:relative;z-index:1}.wish-generated-cover span{font-size:10px;font-weight:800;letter-spacing:.12em}.wish-generated-cover strong{max-width:9ch;margin-top:6px;font-size:clamp(24px,3vw,32px);line-height:1.06;letter-spacing:-.045em;overflow-wrap:anywhere}.wish-generated-cover small{margin-top:13px;font-size:10px;opacity:.7}.wish-tone-0{background:#e9edef}.wish-tone-1{background:#e4e9e7}.wish-tone-2{background:#eeeae4}.wish-tone-3{background:#e7e5e9}.wish-status{position:absolute;z-index:2;top:11px;left:11px;padding:5px 9px;border:1px solid rgba(255,255,255,.55);border-radius:7px;background:#ffffffe0;color:var(--accent-dark);font-size:10px;font-weight:800;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.wish-status.status-completed{color:var(--success)}.wish-status.status-cancelled{color:var(--muted)}.wish-card-body{display:flex;flex-direction:column;padding:16px}.wish-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.wish-title-row h2{margin:4px 0 0;font-size:18px;line-height:1.35}.wish-title-row div>span{color:var(--accent);font-size:10px;font-weight:800}.wish-title-row>strong{flex:none;padding-top:2px;color:var(--text-soft);font-size:11px}.wish-description{display:-webkit-box;margin:11px 0 0;overflow:hidden;color:var(--text-soft);font-size:12px;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:3}.wish-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0 0;padding-top:13px;border-top:1px solid var(--line)}.wish-facts dt{color:var(--muted);font-size:9px}.wish-facts dd{margin:4px 0 0;font-size:11px;font-weight:750}.wish-note{display:-webkit-box;margin:10px 0 0;overflow:hidden;padding:8px 10px;border-radius:8px;background:var(--surface-muted);color:var(--muted);font-size:10px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.wish-actions{margin-top:auto;padding-top:12px}.wish-card-loading{padding-bottom:16px}.wish-cover-skeleton{width:150px;height:100%;min-height:190px;border-radius:0}.wish-card-loading .line-skeleton{width:calc(100% - 32px);margin:16px 16px 0}.wish-card-loading .line-skeleton.short{width:52%}.wish-empty-actions{display:flex;flex-wrap:wrap;gap:9px}.wish-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.wish-choice-grid button{min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text-soft);font-weight:750;text-align:center;cursor:pointer}.wish-choice-grid button strong,.wish-choice-grid button span{display:block}.wish-choice-grid button span{margin-top:3px;color:var(--muted);font-size:9px;font-weight:500}.wish-choice-grid button.selected{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark);box-shadow:inset 0 0 0 1px var(--accent)}.wish-cover-helper{margin-top:22px}.wish-cover-dialog{width:min(100%,820px)}.wish-cover-manager{display:grid;grid-template-columns:minmax(260px,.86fr) minmax(320px,1.14fr);gap:24px;padding:24px}.wish-cover-preview{min-height:390px;overflow:hidden;border-radius:12px}.wish-cover-controls{display:grid;align-content:start;gap:16px}.wish-cover-controls h3{margin:0 0 6px;font-size:20px}.wish-cover-controls p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}.wish-cover-url{display:grid;gap:9px}.wish-cover-url .secondary-action{width:100%}.wish-remove-cover{width:fit-content;padding:4px 0;border:0;background:transparent;color:#90263b;font-size:11px;font-weight:750;cursor:pointer}.creation-image-picker{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:20px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted)}.creation-image-picker>div{display:grid;gap:4px}.creation-image-picker strong{font-size:12px}.creation-image-picker>div span{color:var(--muted);font-size:10px}.creation-image-picker .secondary-action{position:relative;overflow:hidden;cursor:pointer}.creation-image-picker ul{grid-column:1 / -1;display:grid;gap:5px;margin:0;padding:10px 0 0;border-top:1px solid var(--line);list-style:none}.creation-image-picker li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;font-size:10px}.creation-image-picker li span{overflow:hidden;color:var(--text-soft);text-overflow:ellipsis;white-space:nowrap}.creation-image-picker li button{flex:none;border:0;background:transparent;color:var(--accent-dark);font-size:10px;cursor:pointer}.expense-page{min-width:0}.expense-heading h1{max-width:13ch}.expense-heading-actions{display:flex;flex:none;gap:9px}.batch-section,.expense-list-section{margin-top:38px}.expense-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.expense-section-heading h2{margin:6px 0 0;font-size:22px}.expense-section-heading>button{padding:5px 0;border:0;background:transparent;color:var(--accent-dark);font-size:12px;font-weight:750;cursor:pointer}.expense-section-heading>button.active{color:var(--text)}.batch-strip{display:grid;grid-auto-columns:minmax(260px,1fr);grid-auto-flow:column;gap:14px;margin-top:16px;padding-bottom:7px;overflow-x:auto;scroll-snap-type:x proximity}.batch-card{min-width:0;padding:18px;scroll-snap-align:start;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.batch-card:hover{transform:translateY(-2px);border-color:#d9b7bf;box-shadow:0 14px 34px #5b27310f}.batch-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.batch-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.batch-card-top span{color:var(--accent);font-size:11px;font-weight:800}.batch-card-top strong{padding:4px 7px;border-radius:6px;background:var(--accent-soft);color:var(--accent-dark);font-size:9px}.batch-card h3{margin:12px 0 4px;font-size:19px}.batch-card>p{margin:0;color:var(--muted);font-size:10px}.batch-money{display:flex;align-items:baseline;gap:7px;margin-top:19px}.batch-money strong{font-size:22px}.batch-money span{color:var(--muted);font-size:10px}.batch-progress{height:5px;margin-top:10px;overflow:hidden;border-radius:5px;background:var(--accent-soft)}.batch-progress span{display:block;height:100%;border-radius:inherit;background:var(--accent)}.batch-card footer{display:flex;justify-content:flex-end;gap:13px;margin-top:18px;padding-top:13px;border-top:1px solid var(--line)}.batch-card footer button,.expense-row-actions button{padding:3px 0;border:0;background:transparent;color:var(--accent-dark);font-size:10px;font-weight:750;cursor:pointer}.batch-card footer .danger-link,.expense-row-actions .danger-link{color:#90263b}.batch-strip-loading{grid-template-columns:repeat(3,1fr);grid-auto-flow:row;margin-top:38px}.batch-card-skeleton{min-height:190px}.expense-batch-empty{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:38px;padding:clamp(24px,5vw,42px);border:1px solid var(--line);border-radius:13px;background:var(--surface)}.expense-batch-empty h2{margin:6px 0 7px;font-size:25px}.expense-batch-empty p{max-width:58ch;margin:0;color:var(--muted);font-size:13px;line-height:1.7}.expense-toolbar{display:grid;grid-template-columns:minmax(190px,1fr) 130px 145px 145px auto auto;align-items:end;gap:10px;margin-top:28px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.expense-toolbar label{display:grid;gap:6px;color:var(--muted);font-size:10px;font-weight:750}.expense-toolbar input,.expense-toolbar select,.expense-dialog select{width:100%;min-height:42px;padding:9px 11px;border:1px solid var(--field-border);border-radius:8px;outline:none;background:var(--surface);color:var(--text)}.expense-toolbar input:focus,.expense-toolbar select:focus,.expense-dialog select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #d13a521f}.expense-summary{display:grid;grid-template-columns:repeat(4,1fr);margin-top:18px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.expense-summary>div{display:grid;gap:7px;padding:18px 20px;border-right:1px solid var(--line)}.expense-summary>div:last-child{border-right:0}.expense-summary span{color:var(--muted);font-size:10px}.expense-summary strong{overflow:hidden;font-size:20px;text-overflow:ellipsis;white-space:nowrap}.expense-summary .overspent{color:#a7243b}.expense-charts{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px;margin-top:18px}.expense-charts article{min-width:0;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.expense-charts h2{margin:5px 0 0;font-size:18px}.expense-chart{width:100%;height:260px;margin-top:4px}.expense-list{display:grid;gap:8px;margin-top:16px}.expense-row{display:grid;grid-template-columns:58px minmax(180px,1fr) 130px auto;align-items:center;gap:15px;padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.expense-category{display:grid;place-items:center;min-height:32px;padding:4px;border-radius:7px;background:var(--accent-soft);color:var(--accent-dark);font-size:10px;font-weight:800}.category-food,.category-hotel{background:#fff0e9;color:#8a4932}.category-transport,.category-ticket{background:#f3edf5;color:#654d70}.expense-main,.expense-amount{display:grid;gap:4px;min-width:0}.expense-main strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.expense-main span,.expense-amount span{overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.expense-amount{text-align:right}.expense-amount strong{font-size:15px}.expense-row-actions{display:flex;gap:12px}.expense-list-loading{display:grid;gap:12px;margin-top:18px}.expense-list-loading .line-skeleton{width:100%;height:58px}.expense-list-empty{display:grid;justify-items:start;gap:7px;margin-top:16px;padding:28px;border:1px dashed var(--field-border);border-radius:11px;background:var(--surface-muted)}.expense-list-empty strong{font-size:18px}.expense-list-empty p{margin:0 0 10px;color:var(--muted);font-size:12px}.expense-dialog{width:min(100%,820px)}.home-page,.plan-page{min-width:0}.home-heading{display:flex;align-items:center;justify-content:space-between;gap:32px}.home-heading>div{max-width:720px}.home-heading h1{max-width:22ch;margin:5px 0 7px;font-size:clamp(28px,4vw,40px);line-height:1.1;letter-spacing:-.04em}.home-heading>div>p:last-child{max-width:58ch;margin:0;color:var(--muted);line-height:1.75}.home-quick-actions{display:flex;flex:none;gap:9px}.home-quick-actions a,.home-empty-action{display:inline-grid;place-items:center;text-decoration:none;white-space:nowrap}.home-data-notice{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:26px 0 0;padding:12px 14px;border:1px solid #eebcc6;border-radius:9px;background:#fff1f4;color:#8f2339;font-size:12px}.home-data-notice button{flex:none;padding:5px 0;border:0;background:transparent;color:var(--accent-dark);font-weight:800;cursor:pointer}.home-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:24px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.home-metrics>div{display:flex;align-items:baseline;gap:5px;padding:18px 20px;border-right:1px solid var(--line)}.home-metrics>div:last-child{border-right:0}.home-metrics span{align-self:center;margin-right:auto;color:var(--muted);font-size:10px;font-weight:750}.home-metrics strong{font-size:23px;line-height:1}.home-metrics small{color:var(--muted);font-size:9px}.home-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.home-section-heading h2{margin:0;font-size:20px}.home-section-heading p{margin:5px 0 0;color:var(--muted);font-size:11px}.home-section-heading>a{flex:none;color:var(--accent-dark);font-size:10px;font-weight:800;text-underline-offset:3px}.home-section-heading{align-items:end;margin-top:44px}.home-dashboard{max-width:1100px;margin:0 auto}.home-welcome{min-height:112px;padding:18px 22px;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.dashboard-loading{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}.dashboard-loading span{height:112px}.dashboard-bento{gap:12px;overflow:visible;border:0;background:transparent}.dashboard-bento>a{display:grid;gap:7px;min-height:116px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--surface);text-decoration:none;transition:border-color .18s ease,transform .18s ease}.dashboard-bento>a:hover{transform:translateY(-2px);border-color:#cfd2d7}.dashboard-bento>a:nth-child(1){grid-column:span 1}.dashboard-bento span{color:var(--muted);font-size:10px;font-weight:750}.dashboard-bento strong{align-self:end;font-size:clamp(26px,3vw,34px);line-height:1;letter-spacing:-.045em}.dashboard-bento strong em{margin-left:4px;color:var(--muted);font-size:11px;font-style:normal;font-weight:600;letter-spacing:0}.dashboard-bento small{color:#8a8b91;font-size:9px}.home-recent-section,.home-memory-section{margin-top:32px}.home-recent-section .home-section-heading,.home-memory-section .home-section-heading{margin-top:0}.home-recent-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(310px,390px);gap:12px;margin-top:13px;overflow-x:auto;padding-bottom:5px;scroll-snap-type:x proximity}.home-recent-card{display:grid;grid-template-columns:118px minmax(0,1fr);height:132px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface);text-decoration:none;scroll-snap-align:start}.home-recent-cover{display:grid;place-items:end start;min-width:0;overflow:hidden;padding:14px;color:#34373c}.home-recent-cover img{width:calc(100% + 28px);height:calc(100% + 28px);margin:-14px;object-fit:cover}.home-recent-cover strong{max-width:5ch;overflow-wrap:anywhere;font-size:21px;line-height:1.08}.home-recent-card>div:last-child{display:grid;align-content:center;min-width:0;padding:16px}.home-recent-card span{color:var(--accent);font-size:9px;font-weight:800}.home-recent-card h3{margin:5px 0 7px;overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.home-recent-card p{display:-webkit-box;margin:0;overflow:hidden;color:var(--muted);font-size:10px;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2}.home-tone-0{background:#e7eceb;color:#34373c}.home-tone-1{background:#e9e8e4;color:#34373c}.home-tone-2{background:#e6e8ed;color:#34373c}.home-tone-3{background:#ece7e5;color:#34373c}.home-compact-empty,.home-memory-empty-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:92px;margin-top:13px;padding:20px;border:1px dashed #d6d9dd;border-radius:12px;background:var(--surface-muted)}.home-compact-empty p{margin:0;color:var(--muted);font-size:12px}.home-compact-empty a{color:var(--accent-dark);font-size:11px;font-weight:800}.home-memory-list{display:grid;margin-top:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.home-memory-list a{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:64px;padding:10px 14px;border-bottom:1px solid var(--line);text-decoration:none}.home-memory-list a:last-child{border-bottom:0}.home-memory-list a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:9px;font-size:14px;font-weight:850}.home-memory-list a>div{display:grid;gap:4px;min-width:0}.home-memory-list strong,.home-memory-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-memory-list strong{font-size:11px}.home-memory-list small{color:var(--muted);font-size:9px}.home-memory-list em{color:var(--muted);font-size:9px;font-style:normal}.home-memory-empty-cta{color:inherit;text-decoration:none}.home-memory-empty-cta>div{display:grid;gap:5px}.home-memory-empty-cta strong{font-size:14px}.home-memory-empty-cta span{color:var(--muted);font-size:10px}.home-memory-empty-cta b{flex:none;color:var(--accent-dark);font-size:11px}.plan-heading+.form-message{margin-top:24px}.plan-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:38px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.plan-overview>div{display:flex;align-items:baseline;gap:5px;padding:18px 20px;border-right:1px solid var(--line)}.plan-overview>div:last-child{border-right:0}.plan-overview span{align-self:center;margin-right:auto;color:var(--muted);font-size:10px;font-weight:750}.plan-overview strong{font-size:22px}.plan-overview small{color:var(--muted);font-size:9px}.plan-toolbar{display:grid;grid-template-columns:minmax(190px,1fr) minmax(390px,auto) auto auto;align-items:end;gap:10px;margin-top:16px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.plan-toolbar>label,.plan-pending-form label,.plan-pending-list label,.plan-dialog .memory-form label,.plan-small-dialog .memory-form label{display:grid;gap:7px;color:var(--muted);font-size:10px;font-weight:750}.plan-toolbar input,.plan-pending-form input,.plan-pending-form textarea,.plan-pending-list select,.plan-dialog .memory-form input,.plan-dialog .memory-form textarea,.plan-small-dialog .memory-form input,.plan-small-dialog .memory-form textarea{width:100%;min-height:42px;padding:9px 11px;border:1px solid var(--field-border);border-radius:8px;outline:none;background:var(--surface);color:var(--text);font-weight:500;resize:vertical}.plan-toolbar input:focus,.plan-pending-form input:focus,.plan-pending-form textarea:focus,.plan-pending-list select:focus,.plan-dialog .memory-form input:focus,.plan-dialog .memory-form textarea:focus,.plan-small-dialog .memory-form input:focus,.plan-small-dialog .memory-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #d13a521f}.plan-filter-status{display:grid;grid-template-columns:repeat(5,auto);min-height:42px;overflow:hidden;border:1px solid var(--field-border);border-radius:9px;background:var(--surface-muted)}.plan-filter-status button{min-width:56px;padding:8px 10px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--muted);font-size:10px;font-weight:750;cursor:pointer;white-space:nowrap}.plan-filter-status button:last-child{border-right:0}.plan-filter-status button.active{background:var(--accent);color:#fff}.text-button{min-height:42px;padding:9px 4px;border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:750;cursor:pointer}.text-button:hover{color:var(--accent-dark)}.plan-loading{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px;margin-top:22px}.plan-list-skeleton,.plan-detail-skeleton{height:620px}.plan-workspace{display:grid;grid-template-columns:280px minmax(0,1fr);align-items:start;gap:16px;margin-top:22px}.plan-collection{display:grid;gap:10px;min-width:0}.plan-list-card{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface);transition:border-color .16s ease,transform .16s ease}.plan-list-card:hover{transform:translateY(-1px);border-color:#d7adb6}.plan-list-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.plan-list-select{display:grid;grid-template-columns:94px minmax(0,1fr);width:100%;min-height:142px;padding:0;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.plan-list-cover{position:relative;min-height:142px;overflow:hidden}.plan-list-cover img{width:100%;height:100%;object-fit:cover}.plan-list-cover>div{display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-height:142px;padding:13px;color:#702337}.plan-list-cover span{font-size:9px;font-weight:800}.plan-list-cover strong{margin-top:3px;font-size:20px}.plan-tone-0{background:#e8eceb}.plan-tone-1{background:#e7eaee}.plan-tone-2{background:#eeeae5}.plan-tone-3{background:#e9e7eb}.plan-list-copy{min-width:0;padding:13px 12px}.plan-list-copy h2{margin:8px 0 5px;overflow:hidden;font-size:14px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.plan-list-copy>p{margin:0;color:var(--muted);font-size:9px}.plan-list-copy dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0 0}.plan-list-copy dt{color:var(--muted);font-size:8px}.plan-list-copy dd{margin:3px 0 0;font-size:9px;font-weight:750}.plan-status{display:inline-block;width:fit-content;padding:4px 7px;border-radius:6px;background:var(--accent-soft);color:var(--accent-dark);font-size:9px;font-weight:800}.status-in_progress{background:var(--accent);color:#fff}.status-completed{background:#f3e9eb;color:#654f54}.status-cancelled{background:#f2eeee;color:#78696d}.plan-detail-panel{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.plan-detail-loading{padding:18px}.plan-detail-loading .plan-detail-skeleton{height:620px}.plan-detail-hero{display:grid;grid-template-columns:minmax(230px,.82fr) minmax(320px,1.18fr);min-height:310px;border-bottom:1px solid var(--line)}.plan-detail-cover{position:relative;min-height:310px;overflow:hidden}.plan-detail-cover img{width:100%;height:100%;object-fit:cover}.plan-detail-cover>div{display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-height:310px;padding:28px;color:#702337}.plan-detail-cover span{font-size:10px;font-weight:800}.plan-detail-cover strong{margin-top:5px;font-size:clamp(34px,5vw,48px);line-height:1;letter-spacing:-.05em}.plan-detail-cover small{margin-top:10px;font-size:9px}.plan-detail-copy{display:grid;align-content:center;justify-items:start;min-width:0;padding:clamp(25px,4vw,42px)}.plan-detail-copy h2{margin:10px 0 8px;font-size:clamp(25px,4vw,36px);line-height:1.18;letter-spacing:-.035em}.plan-detail-copy>p{margin:0;color:var(--muted);font-size:11px;line-height:1.7}.plan-detail-copy dl{display:grid;grid-template-columns:1.4fr .55fr .65fr;gap:16px;width:100%;margin:22px 0 0;padding-top:16px;border-top:1px solid var(--line)}.plan-detail-copy dt{color:var(--muted);font-size:8px}.plan-detail-copy dd{margin:4px 0 0;font-size:10px;font-weight:750}.plan-detail-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:20px}.plan-detail-actions button,.plan-row-actions button,.plan-pending-list article>div:last-child button{padding:3px 0;border:0;background:transparent;color:var(--accent-dark);font-size:10px;font-weight:800;cursor:pointer}.danger-link{color:#90263b!important}.plan-days-section{padding:24px 24px 0}.plan-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}.plan-section-heading h2{margin:5px 0 0;font-size:20px}.compact{min-height:36px;padding:8px 13px;font-size:11px}.plan-day-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(106px,1fr);gap:8px;margin-top:16px;padding-bottom:6px;overflow-x:auto;scroll-snap-type:x proximity}.plan-day-tabs button{display:grid;gap:4px;min-width:106px;min-height:78px;padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--surface-muted);color:var(--text-soft);text-align:left;cursor:pointer;scroll-snap-align:start}.plan-day-tabs button span{color:var(--muted);font-size:8px}.plan-day-tabs button strong{font-size:13px}.plan-day-tabs button small{color:var(--muted);font-size:8px}.plan-day-tabs button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark);box-shadow:inset 0 0 0 1px var(--accent)}.plan-day-content{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(230px,.7fr);gap:16px;padding:20px 24px 24px}.plan-day-main,.plan-pending-panel{min-width:0;padding:19px;border:1px solid var(--line);border-radius:11px;background:var(--surface)}.plan-day-main>header,.plan-pending-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.plan-day-main>header span{color:var(--accent);font-size:9px;font-weight:800}.plan-day-main>header h2{margin:4px 0 0;font-size:19px}.plan-day-notes{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}.plan-day-notes>div{display:grid;gap:5px;padding:12px;border-radius:9px;background:var(--surface-muted)}.plan-day-notes span{color:var(--muted);font-size:8px}.plan-day-notes strong{overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.plan-activity-list{display:grid;margin-top:16px}.plan-activity-list article{display:grid;grid-template-columns:55px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:66px;padding:11px 0;border-bottom:1px solid var(--line)}.plan-activity-list article:last-child{border-bottom:0}.plan-activity-list time{color:var(--accent-dark);font-size:9px;font-weight:800}.plan-activity-list article>div:nth-child(2){min-width:0}.plan-activity-list strong{font-size:11px}.plan-activity-list p{margin:4px 0 0;overflow:hidden;color:var(--muted);font-size:9px;text-overflow:ellipsis;white-space:nowrap}.plan-row-actions{display:flex;gap:10px}.plan-pending-panel{align-self:start;background:var(--surface-muted)}.plan-pending-panel>header{align-items:center}.plan-pending-panel>header>strong{color:var(--accent-dark);font-size:10px}.plan-pending-form{display:grid;gap:11px;margin-top:16px}.plan-pending-form textarea{min-height:68px}.plan-pending-list{display:grid;gap:9px;margin-top:15px}.plan-pending-list article{display:grid;gap:11px;padding:13px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.plan-pending-list article>div:first-child{min-width:0}.plan-pending-list article strong{font-size:11px}.plan-pending-list article p{margin:4px 0 0;color:var(--muted);font-size:9px;line-height:1.55}.plan-pending-list select{min-height:36px;padding:7px 9px}.plan-pending-list article>div:last-child{display:flex;gap:12px}.plan-pending-empty{margin:16px 0 0;padding:18px;border:1px dashed var(--field-border);border-radius:9px;background:var(--surface);color:var(--muted);font-size:10px;line-height:1.65}.plan-empty{max-width:none}.plan-dialog{width:min(100%,780px)}.plan-small-dialog{width:min(100%,560px)}.plan-dialog .memory-form,.plan-small-dialog .memory-form{display:grid;gap:17px}.plan-dialog>header>button,.plan-small-dialog>header>button{width:36px;height:36px;flex:none;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);font-size:22px;cursor:pointer}.plan-status-fieldset{margin:3px 0 0;padding:0;border:0}.plan-status-fieldset legend{margin-bottom:9px;color:var(--text-soft);font-size:11px;font-weight:800}.plan-status-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.plan-status-options button{display:grid;gap:4px;min-height:62px;padding:10px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text-soft);text-align:left;cursor:pointer}.plan-status-options button strong{font-size:11px}.plan-status-options button span{color:var(--muted);font-size:9px}.plan-status-options button.active,.plan-period-options button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-dark);box-shadow:inset 0 0 0 1px var(--accent)}.plan-period-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.plan-period-options button{min-height:40px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text-soft);font-size:10px;font-weight:750;cursor:pointer}.plan-form-tip,.plan-cover-form>p{margin:0;color:var(--muted);font-size:10px;line-height:1.65}.plan-file-action{position:relative;display:grid;place-items:center;width:100%;overflow:hidden}.plan-file-action input{position:absolute;width:1px!important;height:1px;min-height:0!important;opacity:0}.danger-outline{min-height:42px;padding:9px 13px;border:1px solid #dcaab4;border-radius:9px;background:#fff5f7;color:#90263b;font-weight:750;cursor:pointer}.footprint-page{min-width:0}.footprint-heading h1{max-width:13ch}.footprint-memory-link{display:inline-grid;place-items:center;flex:none;text-decoration:none}.footprint-loading{display:grid;gap:18px;margin-top:38px}.footprint-summary-skeleton{height:102px}.footprint-map-skeleton{height:360px}.footprint-card-skeleton{width:48%;height:300px}.footprint-summary{display:grid;grid-template-columns:150px 150px 170px 1fr;margin-top:38px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.footprint-summary>div{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:4px 7px;padding:19px 20px;border-right:1px solid var(--line)}.footprint-summary span{grid-column:1 / -1;color:var(--muted);font-size:10px;font-weight:750}.footprint-summary strong{font-size:26px;line-height:1}.footprint-summary small{color:var(--muted);font-size:9px}.footprint-summary p{align-self:center;max-width:52ch;margin:0;padding:18px 22px;color:var(--muted);font-size:11px;line-height:1.65}.footprint-map-panel{display:grid;grid-template-columns:minmax(250px,.62fr) minmax(420px,1.38fr);min-height:360px;margin-top:18px;overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--surface)}.footprint-map-copy{display:grid;align-content:end;padding:clamp(26px,5vw,48px);border-right:1px solid var(--line)}.footprint-map-copy h2{max-width:12ch;margin:8px 0 12px;font-size:clamp(27px,4vw,38px);line-height:1.12;letter-spacing:-.035em}.footprint-map-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.75}.footprint-map-visual{position:relative;min-height:360px;overflow:hidden;background:linear-gradient(145deg,#f5f6f7,#e4e8e7)}.footprint-map-visual:before{position:absolute;inset:0;background-image:linear-gradient(rgba(140,64,80,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(140,64,80,.055) 1px,transparent 1px);background-size:42px 42px;content:""}.footprint-map-visual.live-map:before{display:none}.footprint-map-canvas{position:absolute;inset:0;min-height:360px}.map-state-overlay{position:absolute;z-index:4;inset:0;display:grid;place-content:center;justify-items:center;padding:24px;background:#f6f7f8eb;color:var(--text-soft);text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.map-state-overlay strong{font-size:17px}.map-state-overlay span{margin-top:7px;color:var(--muted);font-size:10px}.map-state-overlay.compact-state{inset:auto 18px 18px;display:block;padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:#fffffff0;text-align:left;box-shadow:0 10px 28px #5b273114}.map-state-overlay.compact-state strong,.map-state-overlay.compact-state span{display:block}.map-state-overlay.compact-state strong{font-size:12px}.amap-grapefruit-marker{position:relative;display:grid;place-items:center;width:24px;height:24px;border:3px solid rgba(255,255,255,.96);border-radius:50% 50% 50% 12%;background:var(--accent);box-shadow:0 7px 18px #771f3347;transform:rotate(-45deg);transition:transform .18s ease,box-shadow .18s ease}.amap-grapefruit-marker i{width:7px;height:7px;border-radius:50%;background:#fffffff5}.amap-grapefruit-marker.is-active{box-shadow:0 0 0 5px #d13a5233,0 8px 20px #771f3352;transform:rotate(-45deg) scale(1.16)}.map-orbit{position:absolute;border:1px solid rgba(126,48,65,.12);border-radius:50%}.orbit-one{width:290px;height:290px;top:-82px;right:-30px;box-shadow:0 0 0 38px #ffffff1f,0 0 0 76px #d13a5209}.orbit-two{width:190px;height:190px;bottom:-82px;left:-25px;box-shadow:0 0 0 30px #ffffff29}.map-destination-chip{position:absolute;z-index:2;display:flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid rgba(255,255,255,.65);border-radius:9px;background:#ffffffe0;color:var(--text-soft);font-size:11px;font-weight:800;cursor:pointer;box-shadow:0 9px 24px #5b273114;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.map-destination-chip span{width:7px;height:7px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #d13a521f}.map-destination-chip.active{border-color:var(--accent);color:var(--accent-dark)}.chip-0{top:24%;left:20%}.chip-1{top:53%;left:42%}.chip-2{top:19%;right:17%}.chip-3{bottom:18%;right:21%}.chip-4{bottom:19%;left:15%}.chip-5{top:43%;right:10%}.map-legend{position:absolute;right:16px;bottom:14px;color:#5d494eb8;font-size:9px}.map-empty-copy{position:relative;z-index:2;display:grid;place-content:center;justify-items:center;height:100%;min-height:360px;text-align:center}.map-empty-copy strong{font-size:20px}.map-empty-copy span{margin-top:7px;color:var(--muted);font-size:11px}.footprint-destinations{margin-top:40px}.footprint-list-heading{align-items:end}.footprint-list-heading label{display:grid;gap:6px;color:var(--muted);font-size:9px;font-weight:750}.footprint-list-heading input{width:min(300px,42vw);min-height:40px;padding:9px 11px;border:1px solid var(--field-border);border-radius:8px;outline:none;background:var(--surface);color:var(--text)}.footprint-list-heading input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #d13a521f}.footprint-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:17px}.footprint-card{display:grid;grid-template-columns:minmax(160px,.82fr) minmax(190px,1.18fr);min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface);cursor:pointer;transition:border-color .18s ease,transform .18s ease}.footprint-card:hover{transform:translateY(-2px);border-color:#d7adb6}.footprint-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.footprint-cover{position:relative;min-height:220px;overflow:hidden;background:var(--accent-soft)}.footprint-cover>img{width:100%;height:100%;object-fit:cover}.footprint-cover>div{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:100%;min-height:220px;padding:22px;color:#712034}.footprint-cover>div:before{position:absolute;top:-22%;right:-30%;width:90%;aspect-ratio:1;border:1px solid rgba(113,32,52,.15);border-radius:50%;box-shadow:0 0 0 26px #ffffff29;content:""}.footprint-cover span,.footprint-cover strong,.footprint-cover small{position:relative;z-index:1}.footprint-cover span{font-size:9px;font-weight:800}.footprint-cover strong{margin-top:3px;font-size:32px;letter-spacing:-.05em}.footprint-cover small{margin-top:8px;font-size:9px}.footprint-cover em{position:absolute;z-index:2;top:10px;left:10px;padding:5px 8px;border-radius:6px;background:#ffffffe0;color:var(--accent-dark);font-size:9px;font-style:normal;font-weight:800}.footprint-tone-0{background:#e8eceb}.footprint-tone-1{background:#e7eaee}.footprint-tone-2{background:#eeeae5}.footprint-tone-3{background:#e9e7eb}.footprint-card-body{display:grid;align-content:space-between;gap:18px;padding:18px}.footprint-card-body>div>span{color:var(--accent);font-size:9px;font-weight:800}.footprint-card-body h3{margin:5px 0 0;font-size:18px;line-height:1.4}.footprint-card-body dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding-top:13px;border-top:1px solid var(--line)}.footprint-card-body dt{color:var(--muted);font-size:9px}.footprint-card-body dd{margin:4px 0 0;font-size:10px;font-weight:750}.footprint-card-body button{width:fit-content;padding:4px 0;border:0;background:transparent;color:var(--accent-dark);font-size:10px;font-weight:800;cursor:pointer}.footprint-related{margin-top:28px;padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.footprint-related>header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.footprint-related h2{margin:5px 0 0;font-size:22px}.footprint-related>header>strong{color:var(--accent-dark);font-size:11px}.footprint-timeline{display:grid;margin-top:18px;border-top:1px solid var(--line)}.footprint-timeline a{position:relative;display:grid;grid-template-columns:100px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);text-decoration:none}.footprint-timeline time{color:var(--muted);font-size:10px}.footprint-timeline div{display:grid;gap:4px}.footprint-timeline strong{font-size:12px}.footprint-timeline span{color:var(--muted);font-size:9px}.footprint-empty{margin-top:28px}.assistant-page{min-width:0}.assistant-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.assistant-heading>div:first-child{max-width:720px}.assistant-heading h1{margin:8px 0 12px;font-size:clamp(34px,5vw,52px);line-height:1.08;letter-spacing:0}.assistant-heading>div:first-child>p:last-child{margin:0;color:var(--muted);line-height:1.75}.assistant-heading-actions{display:flex;align-items:center;gap:10px;flex:none}.assistant-service{padding:7px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface-muted);color:var(--muted);font-size:10px;font-weight:800;white-space:nowrap}.assistant-service.ready{border-color:var(--success-line);background:var(--success-soft);color:var(--success)}.assistant-error{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:22px 0 0;padding:11px 13px;border:1px solid #eebcc6;border-radius:8px;background:#fff1f4;color:#8f2339;font-size:12px}.assistant-error button{flex:none;padding:3px 0;border:0;background:transparent;color:inherit;font-weight:800;cursor:pointer}.assistant-loading{display:grid;grid-template-columns:250px minmax(0,1fr);gap:14px;height:620px;margin-top:32px}.assistant-loading .skeleton{height:100%}.assistant-workspace{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:620px;height:min(720px,calc(100dvh - 210px));margin-top:32px;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 18px 46px #5b27310f}.assistant-history{min-width:0;padding:18px 14px;overflow-y:auto;border-right:1px solid var(--line);background:var(--surface-muted)}.assistant-history>header{display:flex;align-items:center;justify-content:space-between;padding:0 4px 13px;color:var(--muted);font-size:10px;font-weight:800}.assistant-history>header strong{display:grid;place-items:center;min-width:24px;height:24px;border-radius:50%;background:var(--accent-mist);color:var(--accent-dark)}.assistant-history>p{margin:10px 4px;color:var(--muted);font-size:11px;line-height:1.6}.assistant-conversation-list{display:grid;gap:7px}.assistant-conversation-list article{position:relative;min-width:0;border:1px solid transparent;border-radius:8px;background:transparent}.assistant-conversation-list article.active{border-color:var(--line);background:var(--surface)}.assistant-conversation-select{display:grid;gap:5px;width:100%;min-width:0;padding:12px 42px 12px 11px;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.assistant-conversation-select strong{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.assistant-conversation-select span{color:var(--muted);font-size:9px}.assistant-delete-trigger{position:absolute;top:11px;right:8px;padding:2px;border:0;background:transparent;color:var(--muted);font-size:9px;cursor:pointer}.assistant-delete-trigger:hover{color:var(--accent-dark)}.assistant-delete-confirm{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:7px;margin:0 8px 8px;padding:8px;border-top:1px solid var(--line);color:var(--text-soft);font-size:9px}.assistant-delete-confirm button{padding:2px 0;border:0;background:transparent;color:var(--accent-dark);font-size:9px;font-weight:800;cursor:pointer}.assistant-chat{display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0}.assistant-messages{min-height:0;overflow-y:auto;padding:clamp(22px,4vw,46px);scroll-behavior:smooth}.assistant-chat-loading{display:grid;gap:14px}.assistant-chat-loading .skeleton{width:min(72%,520px);height:74px}.assistant-chat-loading .skeleton:nth-child(2){width:min(54%,390px);margin-left:auto}.assistant-empty{display:grid;align-content:center;justify-items:start;min-height:100%;max-width:660px;margin:auto}.assistant-empty>span{color:var(--accent);font-size:10px;font-weight:800}.assistant-empty h2{margin:8px 0 12px;font-size:28px;letter-spacing:0}.assistant-empty>p{margin:0;color:var(--muted);line-height:1.7}.assistant-prompts{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;margin-top:26px}.assistant-prompts button{min-height:74px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted);color:var(--text-soft);font-size:12px;font-weight:700;line-height:1.55;text-align:left;cursor:pointer}.assistant-prompts button:hover{border-color:#d7adb6;background:var(--accent-soft);color:var(--accent-dark)}.assistant-message{width:min(82%,700px);margin:0 0 24px;overflow-wrap:anywhere}.assistant-message.user{margin-left:auto;padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:var(--accent-soft)}.assistant-message.assistant{padding-left:15px;border-left:3px solid var(--accent)}.assistant-message.pending{opacity:.72}.assistant-message-meta{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:9px}.assistant-message-meta strong{color:var(--text-soft);font-size:11px}.assistant-message p{margin:9px 0 0;color:var(--text);font-size:13px;line-height:1.85;white-space:pre-wrap}.assistant-message>button{margin-top:10px;padding:5px 9px;border:1px solid var(--field-border);border-radius:7px;background:var(--surface);color:var(--accent-dark);font-size:10px;font-weight:800;cursor:pointer}.assistant-typing{color:var(--accent);letter-spacing:5px;animation:assistant-pulse 1.1s ease-in-out infinite}.assistant-composer{padding:14px 16px 15px;border-top:1px solid var(--line);background:var(--surface)}.assistant-composer textarea{display:block;width:100%;min-height:76px;max-height:170px;padding:12px 13px;resize:vertical;border:1px solid var(--field-border);border-radius:8px;outline:none;background:var(--surface-muted);color:var(--text);line-height:1.6}.assistant-composer textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #d13a521f}.assistant-composer textarea:disabled{opacity:.6;cursor:not-allowed}.assistant-composer>div{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:9px}.assistant-composer>div>span{color:var(--muted);font-size:9px}.assistant-composer .primary-action{min-width:92px}.admin-topbar-link{padding:5px 8px;border:1px solid var(--line);border-radius:7px;background:var(--accent-soft);color:var(--accent-dark)!important}.admin-page{min-width:0}.admin-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.admin-heading h1{margin:8px 0 10px;font-size:44px;line-height:1.08;letter-spacing:0}.admin-heading>div>p:last-child{margin:0;color:var(--muted)}.admin-identity{flex:none;padding:8px 11px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--text-soft);font-size:11px;font-weight:800}.admin-tabs{display:flex;gap:2px;margin-top:30px;overflow-x:auto;border-bottom:1px solid var(--line)}.admin-tabs button{min-width:98px;padding:12px 14px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);font-size:12px;font-weight:750;cursor:pointer;white-space:nowrap}.admin-tabs button.active{border-bottom-color:var(--accent);color:var(--accent-dark)}.admin-message{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0 0;padding:10px 12px;border-radius:7px;font-size:12px}.admin-message.error{border:1px solid #eebcc6;background:#fff1f4;color:#8f2339}.admin-message.success{border:1px solid var(--success-line);background:var(--success-soft);color:var(--success)}.admin-message button{border:0;background:transparent;color:inherit;font-weight:800;cursor:pointer}.admin-loading{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px}.admin-loading .skeleton{height:120px}.admin-section{margin-top:28px}.admin-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:8px;background:var(--surface)}.admin-metrics>div{display:grid;grid-template-columns:1fr auto;align-items:end;gap:5px 12px;min-height:118px;padding:21px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.admin-metrics>div:nth-child(3n){border-right:0}.admin-metrics>div:nth-last-child(-n+3){border-bottom:0}.admin-metrics span{grid-column:1 / -1;color:var(--muted);font-size:10px;font-weight:750}.admin-metrics strong{font-size:30px;line-height:1}.admin-metrics small{color:var(--muted);font-size:9px;text-align:right}.admin-overview-band{display:grid;grid-template-columns:repeat(4,1fr);margin-top:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.admin-overview-band>div{display:grid;gap:7px;padding:18px;border-right:1px solid var(--line)}.admin-overview-band>div:last-child{border-right:0}.admin-overview-band span{color:var(--muted);font-size:9px}.admin-overview-band strong{font-size:14px}.admin-toolbar{display:grid;grid-template-columns:minmax(230px,1fr) 180px auto;align-items:end;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.admin-toolbar-simple{grid-template-columns:minmax(230px,1fr) auto}.admin-toolbar label{display:grid;gap:6px;color:var(--muted);font-size:10px;font-weight:750}.admin-toolbar input,.admin-toolbar select{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--field-border);border-radius:7px;outline:none;background:var(--surface);color:var(--text)}.admin-toolbar input:focus,.admin-toolbar select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #d13a521a}.admin-privacy-note{margin:12px 0;padding:9px 11px;border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--text-soft);font-size:10px;line-height:1.6}.admin-table-wrap{margin-top:14px;overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.admin-table{width:100%;min-width:820px;border-collapse:collapse;font-size:11px}.admin-table th{padding:11px 13px;border-bottom:1px solid var(--line);background:var(--surface-muted);color:var(--muted);font-size:9px;text-align:left;white-space:nowrap}.admin-table td{padding:13px;border-bottom:1px solid var(--line);color:var(--text-soft);vertical-align:middle}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table td strong,.admin-table td span{display:block}.admin-table td strong{color:var(--text);font-size:11px}.admin-table td span{margin-top:3px;color:var(--muted);font-size:9px}.admin-table td em{display:inline-block;padding:4px 7px;border-radius:6px;background:var(--success-soft);color:var(--success);font-size:9px;font-style:normal;font-weight:800}.admin-table td em.disabled{background:var(--accent-soft);color:var(--accent-dark)}.admin-actions{min-width:120px;white-space:nowrap}.admin-actions button{margin-right:10px;padding:3px 0;border:0;background:transparent;color:var(--accent-dark);font-size:10px;font-weight:800;cursor:pointer}.admin-actions button:disabled{opacity:.55;cursor:wait}.admin-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:12px}.admin-pagination span{margin-right:auto;color:var(--muted);font-size:10px}.admin-pagination button{min-height:34px;padding:7px 11px;border:1px solid var(--field-border);border-radius:7px;background:var(--surface);color:var(--text-soft);font-size:10px;font-weight:750;cursor:pointer}.admin-pagination button:disabled{opacity:.45;cursor:not-allowed}.admin-log-table{min-width:900px}.admin-config-list{border-top:1px solid var(--line)}.admin-config-list>div{display:grid;grid-template-columns:140px minmax(220px,1fr) auto;align-items:center;gap:18px;padding:17px 4px;border-bottom:1px solid var(--line)}.admin-config-list span{color:var(--muted);font-size:10px;font-weight:750}.admin-config-list strong{font-size:12px}.admin-config-list em{padding:5px 8px;border-radius:6px;background:var(--surface-muted);color:var(--muted);font-size:9px;font-style:normal;font-weight:800}.admin-config-list em.ready{background:var(--success-soft);color:var(--success)}@keyframes assistant-pulse{50%{opacity:.35}}@keyframes skeleton-shift{to{background-position:-200% 0}}@media(max-width:780px){.sidebar{display:none}.workspace{margin-left:0}.topbar{min-height:58px;padding:0 16px}.topbar-copy{display:none}.mobile-brand{display:flex}.mobile-brand .brand-mark{width:31px;height:31px;border-radius:8px;font-size:15px}.environment{font-size:10px}.topbar-account{gap:8px}.topbar-account a{max-width:88px;font-size:12px}.content{padding:38px 18px 92px}.mobile-nav{position:fixed;z-index:30;inset:auto 0 0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-height:66px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:#fffffff7}.mobile-nav a{display:grid;place-items:center;min-width:0;padding:8px 2px;color:var(--muted);font-size:10px;text-decoration:none}.mobile-nav a.router-link-active{color:var(--accent-dark);font-weight:800}.mobile-ai-entry{position:fixed;z-index:31;right:17px;bottom:calc(76px + env(safe-area-inset-bottom));display:grid;place-items:center;width:46px;height:46px;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:var(--accent);color:#fff;box-shadow:0 10px 26px #7e1f343d;font-size:11px;font-weight:850;text-decoration:none}.mobile-ai-entry.router-link-active{display:none}.assistant-heading{align-items:flex-start;flex-direction:column;gap:18px}.assistant-heading-actions{width:100%;justify-content:space-between}.assistant-loading{grid-template-columns:1fr;height:580px}.assistant-loading .skeleton:first-child{height:110px}.assistant-workspace{display:block;height:auto;min-height:0}.assistant-history{overflow:hidden;border-right:0;border-bottom:1px solid var(--line)}.assistant-conversation-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.assistant-conversation-list article{width:220px;min-width:220px;background:var(--surface)}.assistant-chat{min-height:610px}.assistant-messages{min-height:430px;max-height:560px;padding:24px 18px}.admin-heading{align-items:flex-start;flex-direction:column;gap:14px}.admin-metrics{grid-template-columns:1fr 1fr}.admin-metrics>div,.admin-metrics>div:nth-child(3n),.admin-metrics>div:nth-last-child(-n+3){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.admin-metrics>div:nth-child(2n){border-right:0}.admin-metrics>div:nth-last-child(-n+2){border-bottom:0}.admin-overview-band{grid-template-columns:1fr 1fr}.admin-overview-band>div:nth-child(2){border-right:0}.admin-overview-band>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.admin-toolbar{grid-template-columns:1fr 1fr}.admin-toolbar label:first-child{grid-column:1 / -1}.admin-toolbar-simple{grid-template-columns:1fr auto}.admin-toolbar-simple label:first-child{grid-column:auto}.memory-heading{align-items:flex-start;flex-direction:column}.memory-heading .primary-action{width:100%}.memory-toolbar{grid-template-columns:1fr 1fr}.memory-toolbar label:first-child{grid-column:1 / -1}.memory-toolbar .secondary-action{width:100%}.choice-grid{grid-template-columns:1fr 1fr}.wish-overview{grid-template-columns:repeat(3,1fr)}.wish-overview>div{border-bottom:1px solid var(--line)}.wish-overview p{grid-column:1 / -1}.wish-toolbar{grid-template-columns:1fr 1fr}.wish-toolbar label:first-child{grid-column:1 / -1}.wish-toolbar .secondary-action{width:100%}.expense-heading{align-items:flex-start;flex-direction:column}.expense-heading-actions{width:100%}.expense-heading-actions button{flex:1}.expense-toolbar{grid-template-columns:1fr 1fr 1fr}.expense-toolbar label:first-child{grid-column:1 / -1}.expense-toolbar button{width:100%}.expense-charts{grid-template-columns:1fr}.footprint-summary{grid-template-columns:repeat(3,1fr)}.footprint-summary p{grid-column:1 / -1;border-top:1px solid var(--line)}.footprint-map-panel{grid-template-columns:1fr}.footprint-map-copy{border-right:0;border-bottom:1px solid var(--line)}.footprint-grid{grid-template-columns:1fr}}@media(max-width:900px){.auth-page{grid-template-columns:1fr}.auth-story{display:block;min-height:auto;padding:22px 24px 30px}.auth-story>div{margin-top:42px}.auth-story h1{max-width:15ch;font-size:clamp(34px,9vw,48px)}.auth-story>div>p:last-child,.privacy-note{display:none}.auth-form-area{min-height:auto;padding:38px 24px 56px;place-items:start center}.profile-layout{grid-template-columns:1fr;gap:34px}.identity-panel{grid-template-columns:auto 1fr;column-gap:16px;align-items:center}.identity-panel>strong{align-self:end;margin:0}.identity-panel>span{align-self:start;grid-column:2}.identity-panel dl{grid-column:1 / -1;grid-template-columns:1fr 1fr}.image-add-panel{grid-template-columns:1fr 1fr}.image-add-copy{grid-column:1 / -1}.url-import{grid-template-columns:1fr}.url-import .secondary-action{grid-column:auto}.image-gallery,.wish-cover-manager{grid-template-columns:1fr}.wish-cover-preview{min-height:320px;max-height:440px}.wish-grid{grid-template-columns:1fr}.expense-summary{grid-template-columns:1fr 1fr}.expense-summary>div:nth-child(2){border-right:0}.expense-summary>div:nth-child(-n+2){border-bottom:1px solid var(--line)}}@media(max-width:520px){.status-panel{align-items:flex-start;flex-direction:column}.status-panel .el-button{width:100%}.page-intro h1,.placeholder-view h1{font-size:32px}.mobile-nav a:nth-child(3){display:none}.mobile-nav{grid-template-columns:repeat(6,minmax(0,1fr))}.field-grid{grid-template-columns:1fr}.auth-card header h2{font-size:28px}.profile-actions{display:grid;grid-template-columns:1fr 1fr}.profile-actions .el-button{width:100%;margin:0}.memory-heading h1{font-size:34px}.memory-toolbar{grid-template-columns:1fr;padding:14px}.memory-toolbar label:first-child{grid-column:auto}.memory-grid{columns:1}.memory-card:nth-child(3n) .memory-cover{aspect-ratio:16 / 11}.memory-dialog-backdrop{align-items:end;padding:0}.memory-dialog{max-height:94dvh;border-radius:14px 14px 0 0}.memory-dialog>header,.memory-form{padding-inline:18px}.memory-form-grid{grid-template-columns:1fr}.memory-form-grid .field-wide{grid-column:auto}.choice-grid{grid-template-columns:1fr}.dialog-actions{display:grid;grid-template-columns:1fr 1fr}.image-manager{padding:18px}.image-add-panel{grid-template-columns:1fr}.image-add-copy{grid-column:auto}.image-tile{grid-template-columns:1fr}.image-preview-button,.image-preview-button img{min-height:220px;max-height:280px}.image-preview-overlay{padding:58px 12px 16px}.wish-overview{grid-template-columns:repeat(3,1fr)}.wish-overview>div{padding:14px 10px}.wish-overview p{padding:14px}.wish-toolbar{grid-template-columns:1fr}.wish-toolbar label:first-child{grid-column:auto}.wish-grid{grid-template-columns:1fr}.wish-card{grid-template-columns:108px minmax(0,1fr);min-height:174px}.wish-cover{min-height:174px}.wish-generated-cover{padding:14px}.wish-generated-cover strong{font-size:21px}.wish-choice-grid{grid-template-columns:1fr}.wish-cover-manager{padding:18px}.wish-cover-preview{min-height:280px}.creation-image-picker{grid-template-columns:1fr}.creation-image-picker .secondary-action{width:100%}.creation-image-picker ul{grid-column:auto}.expense-heading-actions{display:grid;grid-template-columns:1fr 1fr}.expense-batch-empty{align-items:flex-start;flex-direction:column}.expense-batch-empty .primary-action{width:100%}.batch-strip{grid-auto-columns:88%}.expense-toolbar{grid-template-columns:1fr 1fr}.expense-toolbar label:first-child{grid-column:1 / -1}.expense-summary>div{padding:14px}.expense-summary strong{font-size:17px}.expense-row{grid-template-columns:48px minmax(0,1fr) auto;gap:10px}.expense-amount{grid-column:3;grid-row:1}.expense-row-actions{grid-column:2 / -1;justify-content:flex-end}.footprint-summary>div{padding:14px 10px}.footprint-summary strong{font-size:22px}.footprint-map-visual{min-height:320px}.footprint-list-heading{align-items:flex-start;flex-direction:column}.footprint-list-heading label,.footprint-list-heading input{width:100%}.footprint-card{grid-template-columns:1fr}.footprint-cover,.footprint-cover>div{min-height:190px}.footprint-related{padding:18px}.footprint-related>header{align-items:flex-start;flex-direction:column}.footprint-timeline a{grid-template-columns:82px 1fr;gap:12px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media(max-width:1180px){.plan-workspace,.plan-loading{grid-template-columns:1fr}.plan-collection{grid-auto-flow:column;grid-auto-columns:minmax(260px,300px);overflow-x:auto;padding-bottom:6px;scroll-snap-type:x proximity}.plan-list-card{scroll-snap-align:start}}@media(max-width:900px){.plan-toolbar{grid-template-columns:minmax(180px,1fr) auto auto}.plan-filter-status{grid-column:1 / -1;grid-row:2}.plan-detail-hero{grid-template-columns:1fr}.plan-detail-cover,.plan-detail-cover>div{min-height:260px}.plan-day-content{grid-template-columns:1fr}}@media(max-width:780px){.home-heading{align-items:flex-start;flex-direction:column}.home-quick-actions{width:100%}.home-quick-actions a{flex:1}.home-metrics,.plan-overview{grid-template-columns:1fr 1fr}.home-metrics>div:nth-child(2),.plan-overview>div:nth-child(2){border-right:0}.home-metrics>div:nth-child(-n+2),.plan-overview>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.plan-heading{align-items:flex-start;flex-direction:column}.plan-heading .primary-action{width:100%}.plan-toolbar{grid-template-columns:1fr auto}.plan-filter-status{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;overflow:visible;border:0;background:transparent}.plan-filter-status button,.plan-filter-status button:last-child{min-width:0;border:1px solid var(--line);border-radius:7px;background:var(--surface-muted)}.plan-toolbar .secondary-action{width:100%}.plan-days-section{padding:20px 18px 0}.plan-day-content{padding:18px}}@media(max-width:520px){.home-heading h1{font-size:28px}.home-welcome{min-height:0;padding:16px}.home-quick-actions{display:grid;grid-template-columns:1fr 1fr}.home-metrics>div{display:grid;grid-template-columns:1fr auto;gap:4px;padding:14px}.home-metrics span{grid-column:1 / -1;margin:0}.home-metrics strong{font-size:20px}.home-section-heading{align-items:flex-start;margin-top:34px}.home-data-notice{align-items:flex-start;flex-direction:column}.dashboard-loading{grid-template-columns:1fr 1fr}.dashboard-loading span{height:96px}.dashboard-bento>a{min-height:98px;padding:14px}.dashboard-bento strong{font-size:23px}.home-recent-section,.home-memory-section{margin-top:26px}.home-recent-strip{grid-auto-columns:88%}.home-recent-card{grid-template-columns:96px minmax(0,1fr);height:124px}.home-memory-empty-cta{align-items:flex-start;flex-direction:column}.home-memory-list em{display:none}.plan-overview>div{display:grid;grid-template-columns:1fr auto;gap:4px;padding:14px 12px}.plan-overview span{grid-column:1 / -1;margin:0}.plan-overview strong{font-size:19px}.plan-toolbar{grid-template-columns:1fr 1fr;padding:13px}.plan-toolbar>label{grid-column:1 / -1}.plan-filter-status{grid-column:1 / -1}.plan-collection{grid-auto-columns:88%}.plan-list-select{grid-template-columns:86px minmax(0,1fr)}.plan-detail-cover,.plan-detail-cover>div{min-height:220px}.plan-detail-copy{padding:23px 19px}.plan-detail-copy dl{grid-template-columns:1fr 1fr}.plan-detail-copy dl>div:first-child{grid-column:1 / -1}.plan-section-heading{align-items:flex-start;flex-direction:column}.plan-section-heading .secondary-action{width:100%}.plan-day-content{padding:14px}.plan-day-main,.plan-pending-panel{padding:15px}.plan-day-main>header{align-items:flex-start;flex-direction:column}.plan-day-main>header .primary-action{width:100%}.plan-day-notes{grid-template-columns:1fr}.plan-activity-list article{grid-template-columns:48px minmax(0,1fr)}.plan-row-actions{grid-column:2}.plan-status-options,.plan-period-options{grid-template-columns:1fr 1fr}.assistant-heading h1{font-size:34px}.assistant-heading-actions{display:grid;grid-template-columns:1fr}.assistant-heading-actions .primary-action{width:100%}.assistant-prompts{grid-template-columns:1fr}.assistant-message{width:94%}.assistant-composer{padding:12px}.admin-heading h1{font-size:34px}.admin-identity{width:100%;text-align:center}.admin-tabs button{min-width:88px;padding-inline:10px}.admin-loading{grid-template-columns:1fr 1fr}.admin-metrics>div{min-height:102px;padding:15px}.admin-metrics strong{font-size:24px}.admin-toolbar,.admin-toolbar-simple{grid-template-columns:1fr}.admin-toolbar label:first-child,.admin-toolbar-simple label:first-child{grid-column:1}.admin-toolbar .primary-action{width:100%}.admin-config-list>div{grid-template-columns:1fr auto;gap:7px 12px}.admin-config-list strong{grid-column:1 / -1;grid-row:2}}
