@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&display=swap";@keyframes react-loading-skeleton{to{transform:translate(100%)}}.react-loading-skeleton{--base-color:#ebebeb;--highlight-color:#f5f5f5;--animation-duration:1.5s;--animation-direction:normal;--pseudo-element-display:block;background-color:var(--base-color);-webkit-user-select:none;user-select:none;border-radius:.25rem;width:100%;line-height:1;display:inline-flex;position:relative;overflow:hidden}.react-loading-skeleton:after{content:" ";display:var(--pseudo-element-display);background-repeat:no-repeat;background-image:var(--custom-highlight-background,linear-gradient(90deg, var(--base-color) 0%, var(--highlight-color) 50%, var(--base-color) 100%));height:100%;animation-name:react-loading-skeleton;animation-direction:var(--animation-direction);animation-duration:var(--animation-duration);animation-timing-function:ease-in-out;animation-iteration-count:infinite;position:absolute;top:0;left:0;right:0;transform:translate(-100%)}@media (prefers-reduced-motion){.react-loading-skeleton{--pseudo-element-display:none}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#555;--xy-background-pattern-lines-color-default:#333;--xy-background-pattern-cross-color-default:#333;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}:root{--ink:#2b2927;--muted:#746f67;--ivory:#eee8dc;--paper:#f2ecdfed;--paper-strong:#f2ecdf;--wine:#8f4557;--wine-dark:#66313f;--gold:#b69a67;--night:#17191c;--line:#b9a17357;--serif:"Source Han Serif SC", "Noto Serif CJK SC", "Noto Serif SC", "Songti SC", "STSong", "SimSun", serif;--kai:"LXGW WenKai", "霞鹜文楷", "STKaiti", "KaiTi", var(--serif);--sans:"Source Han Sans SC", "Noto Sans CJK SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;--latin:"Cormorant Garamond", Georgia, serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--night)}body{color:var(--ink);background:var(--night);font-family:var(--sans);margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}::selection{color:#fff;background:#8f4557b8}:focus-visible{outline-offset:3px;outline:2px solid #e0c58f}.app-shell{--ambient:#9b826c;isolation:isolate;background:#16191c;min-height:100vh;padding-top:78px;position:relative;overflow-x:clip}.app-shell main{animation:.65s cubic-bezier(.2,.75,.24,1) both page-open}@keyframes page-open{0%{opacity:0;transform:translateY(10px)}}.wallpaper-layer{z-index:-6;image-rendering:auto;background-repeat:no-repeat;background-size:cover;position:fixed;inset:0}.wallpaper-previous{z-index:-7}.wallpaper-current{animation:1.8s both wallpaper-arrive}@keyframes wallpaper-arrive{0%{opacity:0}to{opacity:1}}.wallpaper-veil{z-index:-5;pointer-events:none;background:linear-gradient(#090c0f9e 0%,#0b0e121f 34%,#0b0d102e 58%,#0d0f12c7 100%);position:fixed;inset:0}.app-shell:before{content:"";z-index:-4;pointer-events:none;background:radial-gradient(circle at 16% 10%, var(--ambient), transparent 38%), radial-gradient(ellipse at center, transparent 52%, #080a0c59 100%);position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.app-shell:before{background:radial-gradient(circle at 16% 10%, color-mix(in srgb, var(--ambient) 17%, transparent), transparent 38%), radial-gradient(ellipse at center, transparent 52%, #080a0c59 100%)}}.app-shell:after{content:"";z-index:-3;opacity:.035;pointer-events:none;mix-blend-mode:soft-light;background-image:repeating-radial-gradient(circle at 0 0,#0000 0,#fffc 1px,#0000 2px 5px);background-size:7px 7px;position:fixed;inset:0}.simple-background .collage{display:none}.simple-background .wallpaper-layer{opacity:.52;filter:saturate(.72)brightness(.72)}.simple-background .wallpaper-veil{background:#0e11147a}.detail-background .wallpaper-veil{background:linear-gradient(90deg,#0b0e11bd,#0b0e1142 48%,#0b0e11a3),linear-gradient(#080a0d57,#0000 38%,#080a0dad)}.gallery-mode{color:#e7e1d7;background:#101113}.gallery-mode:before{background:radial-gradient(circle at 50% -20%,#b59a6717,#0000 40%)}.gallery-mode:after{opacity:.02}.gallery-mode main{background:linear-gradient(#111214,#0b0c0e)}.page-frame{z-index:1;width:min(1120px,100% - 44px);margin-inline:auto;position:relative}.eyebrow{color:var(--wine);font-family:var(--latin);letter-spacing:.2em;margin:0 0 10px;font-size:12px;font-weight:600}.eyebrow.light{color:#dfc795}.glass-panel{-webkit-backdrop-filter:blur(12px)saturate(.9);background:#f1ebde29;border:1px solid #fff3;box-shadow:0 18px 55px #0000002e}.dark-panel{color:#ede7db;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1215189e;border:1px solid #ffffff1f;box-shadow:0 24px 70px #0000003d}.paper-sheet{background:var(--paper);border:1px solid #cdbb978a;position:relative;box-shadow:0 28px 90px #0000004d,inset 0 0 80px #8f704209}.paper-sheet:before{content:"";opacity:.04;pointer-events:none;mix-blend-mode:multiply;background-image:repeating-linear-gradient(90deg,#4a372380 0,#0000 1px 4px);position:absolute;inset:0}.topbar{z-index:40;color:#ffffffe0;-webkit-backdrop-filter:blur(14px)saturate(.8);backdrop-filter:blur(14px)saturate(.8);background:#1214168a;border:1px solid #ffffff29;border-radius:4px;grid-template-columns:1fr auto 1fr;align-items:center;width:min(1160px,100% - 32px);height:56px;padding:0 10px 0 14px;display:grid;position:fixed;top:13px;left:50%;transform:translate(-50%);box-shadow:0 12px 42px #0000002e}.brand{align-items:center;gap:10px;min-width:0;display:flex}.brand-mark{color:#e6d5b2;width:31px;height:31px;font-family:var(--latin);border:1px solid #dcc28d7a;border-radius:50%;flex:0 0 31px;place-items:center;font-size:22px;display:grid}.brand strong{font-family:var(--serif);letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;display:block;overflow:hidden}.brand small{color:#ffffff70;font-family:var(--latin);letter-spacing:.18em;margin-top:1px;font-size:8px;display:block}.topbar nav{gap:3px;display:flex}.topbar nav a{color:#ffffff94;font-family:var(--serif);letter-spacing:.08em;padding:10px 15px;font-size:12px;transition:all .25s;position:relative}.topbar nav a:after{content:"";background:#ddc28d;height:1px;transition:all .25s;position:absolute;bottom:3px;left:50%;right:50%}.topbar nav a:hover,.topbar nav a.active{color:#fff}.topbar nav a.active:after{left:15px;right:15px}.background-controls{justify-self:end;gap:4px;display:flex}.background-controls button,.icon-button{color:#ffffffb8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:3px;width:33px;height:33px;transition:all .2s}.background-controls button:hover,.icon-button:hover{color:#fff;background:#ffffff1f;border-color:#dcc28d73}.background-controls button[aria-pressed=true]{color:#1d1b18;background:#d8bd86}.manager-link{color:#ffffff94;border:1px solid #ffffff21;border-radius:3px;justify-content:center;align-items:center;min-width:62px;height:33px;padding:0 10px;font-size:10px;display:inline-flex}.manager-link:hover,.manager-link.owner{color:#f4e6c8;border-color:#dcc28d6b}.collage{z-index:-2;opacity:.86;pointer-events:none;flex-direction:column;gap:18px;width:max(166px,50vw - 460px);display:flex;position:fixed;top:88px;bottom:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000,#000 6% 90%,#0000);mask-image:linear-gradient(#0000,#000 6% 90%,#0000)}.left-collage{align-items:flex-start;left:0}.right-collage{align-items:flex-end;padding-top:68px;right:0}.collage img{object-fit:cover;border:7px solid #e8dfcf;border-bottom-width:22px;flex:none;width:min(235px,94%);height:150px;animation:10s ease-in-out infinite alternate collage-drift;box-shadow:0 16px 40px #0000006b}.collage img:nth-child(2n){animation-duration:13s;animation-delay:-5s}.left-collage img:nth-child(3n){margin-left:-42px}.right-collage img:nth-child(3n+1){margin-right:-44px}@keyframes collage-drift{0%{translate:0 -5px}to{translate:0 8px}}.button{min-height:43px;font-family:var(--serif);letter-spacing:.06em;cursor:pointer;border:1px solid #0000;border-radius:2px;justify-content:center;align-items:center;padding:0 19px;font-size:13px;font-weight:600;transition:all .22s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:disabled{opacity:.55;cursor:wait;transform:none}.button.primary{color:#fffaf0;background:linear-gradient(135deg,#934c5e,#6b3543);border-color:#ffffff1f;box-shadow:0 10px 30px #4518253d}.button.secondary{color:#433d36;background:#fffcf4b8;border-color:#5f4c2f38}.button.ghost-light{color:#f5ecdc;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0c0f1226;border-color:#ffffff4d}.button.ghost-light:hover{background:#0c0f1261;border-color:#dfc595c2}.button.danger{color:#873d50;background:#fff4f0ad;border-color:#873d5038}.text-button{color:#d3b87e;cursor:pointer;background:0 0;border:0;font-weight:700}.hero-section{color:#fff;flex-direction:column;justify-content:center;min-height:calc(100svh - 78px);padding:11vh 0 12vh;display:flex}.hero-copy{text-shadow:0 3px 22px #0000007a;width:min(720px,78%);margin-left:clamp(0px,4vw,52px)}.hero-copy:before{content:"";background:linear-gradient(90deg,#ddc28d,#0000);width:88px;height:1px;margin-bottom:28px;display:block}.hero-copy h1{font-family:var(--serif);letter-spacing:-.045em;margin:0;font-size:clamp(54px,8vw,104px);font-weight:400;line-height:.98}.hero-copy h1 em{color:#f1dfba;font-style:normal}.hero-quote{font-family:var(--kai);letter-spacing:.18em;margin:25px 0 0;font-size:clamp(16px,2vw,22px)}.hero-description{color:#ffffffc7;max-width:520px;font-family:var(--serif);letter-spacing:.06em;margin:16px 0 30px;font-size:14px;line-height:2}.editable-home-copy{align-items:center;gap:10px;width:min(620px,100%);display:flex}.editable-home-copy .hero-quote,.editable-home-copy .hero-description,.editable-home-copy .chronicle-description{white-space:pre-line}.copy-edit-button{color:#ead3a5;cursor:pointer;opacity:.72;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0e101257;border:1px solid #e8d2a442;border-radius:50%;flex:0 0 29px;width:29px;height:29px;transition:all .2s;box-shadow:0 4px 18px #0000002e}.copy-edit-button:hover,.copy-edit-button:focus-visible{opacity:1;background:#1b1916b8;border-color:#e8d2a49e;outline:0;transform:translateY(-1px)}.copy-editor{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:min(620px,100%);text-shadow:none;background:#101214b3;border:1px solid #e8d2a43d;border-radius:3px;margin:18px 0 26px;padding:13px;box-shadow:0 16px 44px #0000003d}.copy-editor label{color:#f4ebdaad;letter-spacing:.12em;gap:7px;font-size:10px;display:grid}.copy-editor input,.copy-editor textarea{color:#f5ecdc;width:100%;font:14px/1.7 var(--serif);resize:vertical;background:#ffffff12;border:1px solid #e8d2a438;border-radius:2px;outline:0;padding:10px 12px}.copy-editor input:focus,.copy-editor textarea:focus{border-color:#e8d2a494;box-shadow:0 0 0 3px #ddc28d1a}.copy-editor-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:9px;display:flex}.copy-editor-footer small{color:#ffffff6b;font-family:var(--sans);font-size:9px}.copy-editor-footer>div{gap:7px;display:flex}.copy-editor-footer button{color:#ffffffc7;cursor:pointer;background:#ffffff12;border:1px solid #e8d2a42e;border-radius:2px;min-height:31px;padding:0 12px}.copy-editor-footer button[type=submit]{color:#241f18;background:#d9bd85;border-color:#d9bd85}.copy-editor-footer button:disabled{opacity:.55;cursor:wait}.copy-editor-error{color:#f3a3ad;margin:8px 0 0;font-size:10px}.hero-actions{flex-wrap:wrap;gap:10px;display:flex}.hero-stats{color:#fff;text-shadow:0 2px 12px #00000080;border-left:1px solid #ffffff4d;gap:0;width:155px;display:grid;position:absolute;bottom:13vh;right:20px}.hero-stats div{grid-template-columns:52px 1fr;align-items:baseline;padding:8px 0 8px 16px;display:grid}.hero-stats strong{color:#ead3a5;font-family:var(--latin);font-size:30px;font-weight:400}.hero-stats span{color:#ffffffa3;font-family:var(--serif);font-size:10px}.scroll-invitation{color:#ffffff8c;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.scroll-invitation span{font-family:var(--latin);letter-spacing:.22em;font-size:9px}.scroll-invitation i{background:linear-gradient(#d8c18f,#0000);width:1px;height:28px}.timeline-section{color:#eee7da;background:linear-gradient(#0e1114d1,#111315ed 420px,#0f1113f5);width:100%;max-width:none;margin:0;padding:120px max(22px,50vw - 465px) 160px;box-shadow:0 -36px 80px #00000038}.chronicle-heading{text-align:center;max-width:630px;margin:0 auto 90px}.chronicle-heading h2{font-family:var(--serif);letter-spacing:.08em;margin:0;font-size:clamp(42px,6vw,70px);font-weight:400}.chronicle-heading p:last-child{color:#eee7da99;font-family:var(--kai);margin:20px 0 0;font-size:13px;line-height:1.9}.chronicle-heading .editable-home-copy{justify-content:center;width:100%}.chronicle-heading .chronicle-description{color:#eee7da99;font-family:var(--kai);margin:20px 0 0;font-size:13px;line-height:1.9}.chronicle-heading .copy-edit-button{margin-top:20px}.chronicle-heading .copy-editor{text-align:left;margin:20px auto 0}.timeline{max-width:930px;margin:auto;position:relative}.timeline:before{content:"";background:linear-gradient(#0000,#caae778a 5%,#caae7726 95%,#0000);width:1px;position:absolute;top:74px;bottom:0;left:148px}.timeline-month{color:#dcc18c;font-family:var(--serif);letter-spacing:.12em;align-items:center;gap:18px;margin:0 0 36px;font-size:23px;display:flex}.timeline-month:before,.timeline-month:after{content:"";background:linear-gradient(90deg,#0000,#d3b87e47);flex:1;height:1px}.timeline-month:after{background:linear-gradient(90deg,#d3b87e47,#0000)}.timeline-group{grid-template-columns:125px 1fr;gap:48px;padding-bottom:56px;display:grid}.timeline-date{text-align:right;align-self:start;padding-top:17px;position:sticky;top:98px}.timeline-date time{color:#e3d1ac;font-family:var(--serif);font-size:14px;display:block}.timeline-date span{color:#fff6;margin-top:6px;font-size:9px;display:block}.timeline-items{gap:11px;display:grid}.activity-card{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#efe9dc14;border:1px solid #ffffff1f;border-radius:3px;grid-template-columns:52px 1fr auto;align-items:center;gap:15px;min-width:0;padding:11px 15px 11px 11px;transition:all .25s;display:grid;position:relative;box-shadow:0 12px 34px #0000001f}.activity-card:before{content:"";background:#1a1d20;border:1px solid #c9ab70;border-radius:50%;width:7px;height:7px;position:absolute;left:-30px;box-shadow:0 0 0 5px #c9ab7014}.activity-card:hover{background:#efe9dc24;border-color:#d9c08f5c;transform:translate(5px)}.activity-cover{object-fit:cover;border-radius:2px;width:52px;height:68px;box-shadow:0 7px 18px #0000003d}.activity-copy{min-width:0}.activity-meta{color:#ffffff75;align-items:center;gap:8px;font-size:9px;display:flex}.activity-copy h3{font-family:var(--serif);margin:7px 0 4px;font-size:16px;font-weight:500}.activity-copy p{color:#ffffff8f;font-family:var(--kai);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:11px;overflow:hidden}.activity-arrow{color:#cfb378;font-family:var(--latin);font-size:28px}.kind-badge{color:#decba4;letter-spacing:.08em;border:1px solid #ffffff1f;padding:2px 6px;font-size:8px;display:inline-flex}.gallery-break{border:1px solid #ffffff26;height:clamp(250px,36vw,420px);margin:25px 0 90px 173px;position:relative;overflow:hidden;box-shadow:0 26px 70px #00000057}.gallery-break:after{content:"";background:linear-gradient(#0000 42%,#0a0c0ec2);position:absolute;inset:0}.gallery-break img{object-fit:cover;width:100%;height:100%}.gallery-break figcaption{z-index:1;color:#fff;position:absolute;bottom:20px;left:25px}.gallery-break figcaption span,.gallery-break figcaption strong{display:block}.gallery-break figcaption span{color:#dcc18c;font-family:var(--latin);letter-spacing:.2em;font-size:9px}.gallery-break figcaption strong{font-family:var(--serif);margin-top:6px;font-size:16px;font-weight:400}.loading-list{gap:10px;padding:25px;display:grid}.library-page,.detail-page{min-height:calc(100vh - 78px);padding:70px 0 150px}.library-page{width:min(1040px,100% - 300px)}.library-header{color:#fff;text-shadow:0 2px 18px #0009;justify-content:space-between;align-items:end;gap:28px;margin-bottom:30px;display:flex}.library-header h1{font-family:var(--serif);letter-spacing:.08em;margin:0;font-size:clamp(44px,6vw,68px);font-weight:400}.library-header p:last-child{color:#ffffffad;font-family:var(--kai);margin:12px 0 0;font-size:13px}.archive-toolbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1214169e;border:1px solid #ffffff29;grid-template-columns:minmax(220px,1.7fr) repeat(5,minmax(105px,1fr));gap:7px;padding:9px;display:grid;box-shadow:0 18px 55px #00000038}.filters input,.filters select,.work-form input,.work-form select,.work-form textarea,.quick-log input,.quick-log textarea,.log-edit input,.log-edit textarea{color:#38332e;background:#fffcf4d1;border:1px solid #745c3933;border-radius:2px;outline:0;width:100%;min-height:42px;padding:10px 11px}.filters input,.filters select{color:#ffffffd6;background:#ffffff0f;border-color:#ffffff1f}.filters select option{color:#222}.filters input::placeholder{color:#ffffff61}.filters input:focus,.filters select:focus,.work-form input:focus,.work-form select:focus,.work-form textarea:focus,.quick-log input:focus,.quick-log textarea:focus{border-color:#b69a67b8;box-shadow:0 0 0 2px #b69a671a}.search-field{align-items:center;display:flex;position:relative}.search-field span{z-index:1;color:#cbb684;position:absolute;left:12px}.search-field input{padding-left:32px}.library-summary{color:#ffffff9e;font-family:var(--latin);letter-spacing:.13em;text-shadow:0 2px 9px #000;align-items:baseline;gap:8px;margin:28px 2px 17px;font-size:11px;display:flex}.library-summary strong{color:#ead4a7;font-family:var(--latin);font-size:30px;font-weight:400}.library-summary .text-button{margin-left:auto}.work-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.work-card{color:#f1eadf;-webkit-backdrop-filter:blur(4px)saturate(.86);background:#1012154d;border:1px solid #ffffff26;min-width:0;transition:border-color .28s,background .28s,box-shadow .28s,transform .28s;position:relative;overflow:hidden;box-shadow:0 18px 48px #00000042}.work-card:after{content:"";opacity:.035;pointer-events:none;mix-blend-mode:soft-light;background:repeating-linear-gradient(0deg,#ffffff8c 0,#0000 1px 4px);position:absolute;inset:0}.work-card:hover,.work-card:focus-visible{background:#1012155c;border-color:#dfc591b8;outline:none;transform:translateY(-8px)rotate(-.2deg);box-shadow:0 30px 75px #0000006b,0 0 0 1px #dfc59124}.work-card:focus-visible{box-shadow:0 30px 75px #0000006b,0 0 0 2px #dfc59161}.work-cover-wrap{aspect-ratio:3/4;background:#25282b;position:relative;overflow:hidden}.work-cover{object-fit:cover;width:100%;height:100%;transition:transform .65s}.work-card:hover .work-cover,.work-card:focus-visible .work-cover{transform:scale(1.035)}.status-ribbon{color:#fff;font-family:var(--serif);letter-spacing:.08em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#262320b8;padding:6px 10px 6px 9px;font-size:9px;position:absolute;top:14px;left:0}.rating-seal{color:#f6e6c2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#492d24c2;border:1px solid #ebd19bb3;border-radius:50%;justify-content:center;align-items:baseline;width:47px;height:47px;padding-top:11px;display:flex;position:absolute;top:9px;right:9px}.rating-seal b{font-family:var(--latin);font-size:20px;font-weight:500}.rating-seal small{font-size:7px}.work-card-copy{background:linear-gradient(#ffffff06,#05070914);border-top:1px solid #ffffff1c;min-height:155px;padding:15px 16px 18px}.catalogue-number{color:#d8bd84;font-family:var(--latin);letter-spacing:.16em;margin-bottom:8px;font-size:9px}.work-card-copy>p{color:#f1eadf8f;margin:0 0 7px;font-size:9px}.work-card-copy h2{color:#f4eee4;font-family:var(--serif);text-shadow:0 2px 12px #0000004d;margin:0;font-size:17px;font-weight:500;line-height:1.45}.work-card-copy>span{color:#f1eadf75;font-family:var(--latin);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:10px;display:block;overflow:hidden}.tag-row{flex-wrap:wrap;gap:5px;margin-top:13px;display:flex}.tag-row i{color:#d0b57d;font-size:9px;font-style:normal}.status-wish{color:#5d7183;background-color:#dbe5eaeb}.status-active{color:#914a5e;background-color:#f0d8dceb}.status-completed{color:#476e60;background-color:#d9e8e1eb}.status-paused{color:#846d42;background-color:#ebe2cceb}.status-dropped{color:#6e6a66;background-color:#e0ded9eb}.status-ribbon.status-wish,.status-ribbon.status-active,.status-ribbon.status-completed,.status-ribbon.status-paused,.status-ribbon.status-dropped{color:#fff;background-color:#232221b8}.cover-placeholder{background:linear-gradient(145deg, var(--ambient), #c5b9a6);place-items:center;display:grid}@supports (color:color-mix(in lab, red, red)){.cover-placeholder{background:linear-gradient(145deg, color-mix(in srgb,var(--ambient) 40%,#9b8d78), #c5b9a6)}}.cover-placeholder span{color:#eee2ca;width:50px;height:50px;font-family:var(--latin);border:1px solid #ffffff8c;border-radius:50%;place-items:center;font-size:25px;display:grid}.empty-state{text-align:center;padding:65px 28px}.empty-state>span{color:#d4b776;margin-bottom:14px;font-size:30px;display:block}.empty-state h3{font-family:var(--serif);margin:0 0 10px;font-size:25px;font-weight:500}.empty-state p{color:inherit;opacity:.64}.empty-state .button{margin-top:13px}.back-link{color:#ffffffc7;font-family:var(--serif);text-shadow:0 2px 10px #000;margin-bottom:18px;font-size:12px;display:inline-flex}.detail-page{width:min(1040px,100% - 44px)}.detail-hero{grid-template-columns:minmax(250px,32%) 1fr;gap:clamp(32px,5vw,62px);padding:clamp(28px,5vw,54px);display:grid;overflow:hidden}.archive-stamp{color:#794d3d5c;font-family:var(--latin);text-align:center;border:2px solid #794d3d47;padding:6px 11px;font-size:20px;line-height:.8;position:absolute;top:18px;right:20px;transform:rotate(4deg)}.archive-stamp small{letter-spacing:.18em;font-size:7px}.detail-cover-shell{border:8px solid #e2d6c1;min-height:420px;overflow:hidden;box-shadow:0 20px 42px #33241847}.detail-cover{object-fit:cover;width:100%;height:100%;min-height:420px}.detail-copy{z-index:1;padding:10px 0;position:relative}.archive-index{color:#99815a;font-family:var(--latin);letter-spacing:.18em;margin:0 0 19px;font-size:9px}.detail-badges{color:#746b5f;align-items:center;gap:10px;font-size:11px;display:flex}.status-pill{border-radius:999px;padding:5px 9px;font-size:9px;font-weight:700;display:inline-flex}.detail-copy h1{font-family:var(--serif);margin:18px 0 6px;font-size:clamp(38px,5vw,58px);font-weight:500;line-height:1.14}.original-title{color:#867c6e;font-family:var(--latin);margin:0;font-size:14px}.detail-score{align-items:center;gap:11px;margin:26px 0;display:flex}.detail-score strong{color:var(--wine);font-family:var(--latin);font-size:54px;font-weight:400;line-height:1}.detail-score span{color:#7b7165;font-size:9px;line-height:1.5}.detail-progress{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0}.detail-progress div{justify-content:space-between;gap:20px;display:flex}.detail-progress span,.detail-dates span{color:#83796c;font-size:9px}.detail-progress progress{width:100%;height:4px;accent-color:var(--wine);margin-top:12px}.detail-dates{border:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0;margin-top:14px;display:grid}.detail-dates div{flex-direction:column;gap:5px;padding:11px 14px;display:flex}.detail-dates div+div{border-left:1px solid var(--line)}.detail-dates strong{font-family:var(--serif);font-size:11px}.detail-buttons{gap:8px;margin-top:23px;display:flex}.review-panel{margin-top:17px;padding:32px 42px}.review-panel h2{font-family:var(--serif);margin:0 0 14px;font-weight:500;position:relative}.review-panel>p:last-child{color:#5f584f;font-family:var(--kai);white-space:pre-wrap;margin:0;line-height:2;position:relative}.detail-columns{grid-template-columns:340px 1fr;align-items:start;gap:17px;margin-top:17px;display:grid}.detail-columns.public-detail-columns{grid-template-columns:1fr}.quick-log,.detail-timeline{padding:29px}.quick-log{position:sticky;top:86px}.quick-log h2,.detail-timeline h2{font-family:var(--serif);margin:0 0 21px;font-weight:500}.quick-log label,.work-form label{flex-direction:column;gap:6px;display:flex}.quick-log label>span,.work-form label>span{color:#7f7465;font-size:10px;font-weight:700}.quick-log>label,.quick-log .progress-fields{margin-bottom:13px}.quick-log .button{width:100%}.section-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.section-heading>span{color:#887d6e;font-size:10px}.detail-log{border-bottom:1px solid var(--line);grid-template-columns:18px 1fr;gap:7px;padding:19px 0;display:grid;position:relative}.log-dot{background:var(--wine);border-radius:50%;width:7px;height:7px;margin-top:7px;box-shadow:0 0 0 4px #8f45571a}.log-heading{justify-content:space-between;gap:13px;display:flex}.log-heading>div:first-child{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.log-heading time{color:#887e70;font-family:var(--serif);font-size:10px}.log-heading strong{font-size:10px}.log-body>p{color:#5e574e;font-family:var(--kai);white-space:pre-wrap;margin:11px 0 0;line-height:1.8}.log-actions{opacity:0;gap:7px;transition:all .2s;display:flex}.detail-log:hover .log-actions,.log-actions:focus-within{opacity:1}.log-actions button{color:#817566;cursor:pointer;background:0 0;border:0;font-size:9px}.log-edit{gap:8px;margin-top:11px;display:grid}.log-edit>div{justify-content:flex-end;gap:8px;display:flex}.log-edit .button{min-height:34px;padding:0 13px;font-size:10px}.mini-empty{color:#877c6d;text-align:center;padding:38px 0}.detail-loading{padding:28px}.detail-page .paper-sheet{--line:#ffffff21;color:#eee7db;-webkit-backdrop-filter:blur(6px)saturate(.86);background:#0e11149e;border-color:#ffffff24;box-shadow:0 28px 90px #00000057,inset 0 0 80px #ffffff05}.detail-page .paper-sheet:before{opacity:.035;mix-blend-mode:soft-light;background-image:repeating-linear-gradient(90deg,#ffffff8c 0,#0000 1px 5px)}.detail-page .detail-cover-shell{border-color:#111417e6;box-shadow:0 0 0 1px #dcc28d52,0 22px 48px #0000006b}.detail-page .archive-stamp{color:#dcc28d80;border-color:#dcc28d61}.detail-page .archive-index,.detail-page .paper-sheet .eyebrow{color:#d9bd84}.detail-page .detail-badges{color:#eee7dba8}.detail-page .status-pill{color:#ead8b2;background:#ffffff12;border:1px solid #dcc28d3d}.detail-page .detail-copy h1,.detail-page .review-panel h2,.detail-page .quick-log h2,.detail-page .detail-timeline h2,.detail-page .detail-progress strong,.detail-page .detail-dates strong{color:#f4eee4}.detail-page .original-title{color:#eee7db80}.detail-page .detail-score strong{color:#d7a0ae}.detail-page .detail-score span,.detail-page .detail-progress span,.detail-page .detail-dates span{color:#eee7db80}.detail-page .detail-progress,.detail-page .detail-dates,.detail-page .detail-dates div+div,.detail-page .detail-log{border-color:var(--line)}.detail-page .review-panel>p:last-child,.detail-page .log-body>p{color:#eee7dbb8}.detail-page .quick-log label>span{color:#eee7db94}.detail-page .section-heading>span,.detail-page .log-heading time,.detail-page .mini-empty{color:#eee7db7a}.detail-page .log-heading strong{color:#eee7dbcc}.detail-page .log-actions button{color:#eee7db94}.detail-page .log-actions button:hover,.detail-page .log-actions button:focus-visible{color:#e4c78f}.detail-page .quick-log input,.detail-page .quick-log textarea,.detail-page .log-edit input,.detail-page .log-edit textarea{color:#f3ede3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#ffffff0f;border-color:#ffffff24}.detail-page .quick-log input::placeholder,.detail-page .quick-log textarea::placeholder,.detail-page .log-edit input::placeholder,.detail-page .log-edit textarea::placeholder{color:#eee7db57}.detail-page .quick-log input:focus,.detail-page .quick-log textarea:focus,.detail-page .log-edit input:focus,.detail-page .log-edit textarea:focus{border-color:#dcc28db3;box-shadow:0 0 0 2px #dcc28d1f}.detail-page .detail-buttons .button.danger{color:#e3acba;background:#6a2a3a3d;border-color:#c9738859}.detail-page .log-edit .button.secondary{color:#eee7db;background:#ffffff12;border-color:#ffffff29}.detail-page .detail-loading{--base-color:#ffffff12;--highlight-color:#ffffff21}.home-memory-page{color:#eee7db;min-height:calc(100svh - 78px);padding:12px 0 0}.home-view-tabs{z-index:12;border-radius:3px;grid-template-columns:repeat(3,1fr);width:min(510px,100% - 30px);height:58px;margin:0 auto 11px;display:grid;position:relative;overflow:hidden}.home-view-tabs button{color:#ffffff8a;cursor:pointer;background:0 0;border:0;border-right:1px solid #ffffff14;grid-template-rows:1fr 1fr;grid-template-columns:26px 1fr;align-items:end;padding:8px 12px;transition:all .25s;display:grid;position:relative}.home-view-tabs button:last-child{border-right:0}.home-view-tabs button:after{content:"";background:#d5b979;height:1px;transition:all .25s;position:absolute;bottom:0;left:18px;right:18px;transform:scaleX(0)}.home-view-tabs button span{color:#c4a871;font-family:var(--serif);grid-row:1/3;align-self:center;font-size:19px}.home-view-tabs button b{font-family:var(--serif);letter-spacing:.07em;align-self:end;font-size:12px;font-weight:500}.home-view-tabs button small{font-family:var(--latin);letter-spacing:.15em;align-self:start;margin-top:1px;font-size:7px}.home-view-tabs button:hover,.home-view-tabs button.active{color:#fff;background:#ffffff0b}.home-view-tabs button.active:after{transform:scaleX(1)}.memory-tree-stage{background:linear-gradient(#0c0e122e,#0a0c0f7a);border:1px solid #ffffff21;border-radius:5px;width:calc(100% - 24px);height:calc(100svh - 159px);min-height:680px;margin:0 auto 12px;position:relative;overflow:hidden;box-shadow:0 28px 90px #00000042}.memory-tree-stage:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle at 50% 13%,#dac1901a,#0000 30%),linear-gradient(90deg,#07090c42,#0000 23% 77%,#07090c33);position:absolute;inset:0}.memory-tree-stage .react-flow{z-index:0}.memory-tree-stage .react-flow__pane{cursor:grab}.memory-tree-stage .react-flow__pane:active{cursor:grabbing}.memory-tree-stage .react-flow__node{font-family:var(--sans)}.memory-tree-stage .react-flow__controls{z-index:5;background:#0e1115d1;border:1px solid #ffffff1f;border-radius:3px;overflow:hidden;box-shadow:0 10px 32px #00000047}.memory-tree-stage .react-flow__controls button{color:#ddc796;fill:currentColor;background:0 0;border-bottom-color:#ffffff1a}.memory-tree-stage .react-flow__controls button:hover{background:#ffffff14}.memory-tree-stage .react-flow__attribution{color:#ffffff40;background:#080a0c59}.memory-intro-panel{z-index:8;color:#f4eee4;text-shadow:0 2px 15px #0000008c;pointer-events:auto;background:linear-gradient(90deg,#090b0ec7,#090b0e61 78%,#0000);border-left:1px solid #ddc28994;width:min(350px,100% - 50px);padding:23px 25px 21px;position:absolute;top:22px;left:25px}.memory-intro-panel .eyebrow{color:#d6bb82;margin-bottom:7px;font-size:8px}.memory-intro-panel h1{font-family:var(--serif);letter-spacing:.08em;margin:0;font-size:clamp(38px,4.2vw,61px);font-weight:400;line-height:1.05}.memory-intro-panel>small{color:#ffffff6b;font-family:var(--serif);letter-spacing:.2em;margin-top:4px;font-size:10px;display:block}.memory-hero-quote{color:#ecdfc5;font-family:var(--kai);margin:18px 0 0;font-size:13px;line-height:1.7}.memory-hero-description{color:#ffffff94;font-family:var(--serif);margin:9px 0 15px;font-size:10px;line-height:1.75}.memory-intro-panel .editable-home-copy{align-items:flex-start}.memory-intro-panel .copy-edit-button{width:22px;height:22px;margin:14px 0 0 6px}.memory-intro-panel .copy-editor{background:#080a0cc7;width:100%;margin-top:11px;padding:9px}.memory-intro-actions{flex-wrap:wrap;gap:7px;display:flex}.memory-intro-actions .button{min-height:34px;padding-inline:12px;font-size:9px}.memory-intro-count{color:#ffffff7a;font-family:var(--serif);border-top:1px solid #ffffff1a;align-items:baseline;gap:7px;margin-top:14px;padding-top:10px;font-size:9px;display:flex}.memory-intro-count strong{color:#e1c68d;font-family:var(--latin);font-size:23px;font-weight:400}.memory-tree-toolbar{z-index:9;border-radius:3px;grid-template-columns:minmax(160px,1fr) 110px 110px auto;align-items:center;gap:6px;width:min(620px,100% - 430px);min-height:42px;padding:6px;display:grid;position:absolute;top:22px;right:25px}.memory-tree-toolbar input,.memory-tree-toolbar select{color:#ffffffc2;background:#ffffff0b;border:1px solid #ffffff17;border-radius:2px;outline:none;width:100%;height:30px;font-size:9px}.memory-tree-toolbar input:focus,.memory-tree-toolbar select:focus{border-color:#d3b578b3}.memory-tree-toolbar select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;padding:0 8px}.memory-search{display:block;position:relative}.memory-search span{color:#cbb27e;position:absolute;top:5px;left:9px}.memory-search input{padding:0 9px 0 27px}.memory-tree-toolbar>button{color:#d9c59c;height:30px;font-family:var(--serif);cursor:pointer;background:0 0;border:1px solid #d5b87b4d;padding:0 12px;font-size:9px}.memory-tree-toolbar>button.active{color:#17191c;background:#d5bb83}.memory-year-node{color:#f4ebdc;text-align:center;background:linear-gradient(145deg,#1d1b1bed,#0e1115e6);border:1px solid #ddc2898c;border-radius:4px;width:240px;padding:17px 20px 15px;box-shadow:0 16px 50px #00000059,inset 0 0 25px #d1b3750d}.memory-year-node:before,.memory-year-node:after{content:"✦";color:#d7bb82;font-size:13px;position:absolute;top:-9px}.memory-year-node:before{left:18px}.memory-year-node:after{right:18px}.memory-year-node small,.memory-season-node small{color:#b89b65;font-family:var(--latin);letter-spacing:.2em;font-size:8px;display:block}.memory-year-node strong{font-family:var(--latin);margin:2px 0 0;font-size:45px;font-weight:400;line-height:1;display:block}.memory-year-node span{color:#ffffff7a;font-family:var(--serif);font-size:9px}.memory-season-node{color:#eee5d7;text-align:center;background:radial-gradient(circle,#1c191cf0,#0d0f13e0);border:1px solid #d8be8a57;border-radius:50%;place-content:center;width:152px;min-height:82px;display:grid;box-shadow:0 11px 34px #00000047}.memory-season-node strong{font-family:var(--serif);letter-spacing:.12em;font-size:17px;font-weight:500}.memory-season-node span{color:#fff6;font-size:8px}.memory-season-node.season-0{border-color:#9bbed566}.memory-season-node.season-1{border-color:#c796b86b}.memory-season-node.season-2{border-color:#acbb806b}.memory-season-node.season-3{border-color:#c98f5b70}.memory-work-node{color:#eee8df;background:#0f1115d6;border:1px solid #ffffff24;border-radius:5px;width:190px;transition:border-color .22s,box-shadow .22s,transform .22s;overflow:hidden;box-shadow:0 16px 45px #00000052}.memory-work-node:hover,.memory-work-node.is-selected{border-color:#dabb7ec7;transform:translateY(-3px);box-shadow:0 18px 52px #0000006b,0 0 24px #be907121}.memory-work-node.is-family{border-color:#a77ac094}.memory-work-node.is-drop-target{border-color:#d9bd7f;transform:translateY(-5px)scale(1.025);box-shadow:0 0 0 3px #d9bd7f33,0 0 38px #d9bd7f57}.memory-node-cover{object-fit:cover;background:#28272a;width:100%;height:168px;display:block}.memory-node-copy{padding:10px 11px 9px}.memory-node-copy>div{color:#d3b97f;letter-spacing:.08em;justify-content:space-between;align-items:center;gap:8px;font-size:7px;display:flex}.memory-node-copy time{color:#fff6;font-family:var(--latin)}.memory-node-copy h3{height:39px;font-family:var(--serif);margin:6px 0 2px;font-size:13px;font-weight:500;line-height:1.45;overflow:hidden}.memory-node-copy p{color:#ffffff6b;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:8px;overflow:hidden}.memory-node-copy footer{color:#dfc27f;font-family:var(--latin);border-top:1px solid #ffffff14;justify-content:space-between;margin-top:8px;padding-top:7px;font-size:8px;display:flex}.memory-node-copy footer i{color:#ffffff52;font-style:normal}.memory-node-toolbar{background:#0b0d10f0;border:1px solid #ffffff1f;border-radius:3px;gap:4px;padding:4px;display:flex;box-shadow:0 9px 25px #00000059}.memory-node-toolbar button{color:#e7dcc8;cursor:pointer;background:0 0;border:0;border-right:1px solid #ffffff17;padding:5px 8px;font-size:8px}.memory-node-toolbar button:last-child{color:#dcb5bf;border-right:0}.memory-node-toolbar button:hover{color:#e0c487}.memory-trunk-edge path{stroke:#d2b77e70;stroke-width:1.2px}.memory-time-edge path{stroke:#dacdb233;stroke-width:.8px}.memory-relation-edge path{stroke:#a36dbe52;stroke-width:1.3px;stroke-dasharray:5 5}.memory-relation-edge.is-highlighted path{stroke:#bc80dc;stroke-width:2px;filter:drop-shadow(0 0 5px #bc80dca6)}.memory-minimap{border:1px solid #ffffff1f;border-radius:3px;overflow:hidden;z-index:7!important;background:#0c0e12c7!important;width:170px!important;height:105px!important;top:82px!important;bottom:auto!important;right:14px!important}.memory-tree-hint{z-index:8;color:#ffffff7a;font-family:var(--serif);pointer-events:none;background:#0a0c0fad;border:1px solid #ffffff17;border-radius:2px;align-items:center;gap:14px;padding:7px 12px;font-size:8px;display:flex;position:absolute;bottom:13px;left:50%;transform:translate(-50%)}.memory-tree-hint b{color:#d5bb83;font-family:var(--latin);font-size:10px;font-weight:400}.memory-drag-date,.memory-notice{z-index:20;color:#f4e9d5;font-family:var(--serif);background:#0e1014eb;border:1px solid #dabb7e80;border-radius:2px;padding:8px 13px;font-size:11px;position:absolute;top:80px;left:50%;transform:translate(-50%);box-shadow:0 10px 35px #00000059}.memory-notice{color:#ebc7cf;border-color:#b5697f73;top:auto;bottom:52px}.memory-notice.success{color:#e3d1a8;border-color:#dabb7e80}.memory-filter-empty{z-index:9;text-align:center;place-items:center;gap:8px;padding:25px 34px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.memory-filter-empty strong{font-family:var(--serif);font-size:17px;font-weight:400}.memory-filter-empty span{color:#ffffff6b;font-size:9px}.memory-filter-empty button{color:#d6bb82;font-family:var(--serif);cursor:pointer;background:0 0;border:0;font-size:9px}.memory-editor-backdrop{z-index:90;background:#050709ad;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.memory-editor{border-radius:4px;width:min(460px,100%);padding:25px}.memory-editor-heading{justify-content:space-between;margin-bottom:22px;display:flex}.memory-editor-heading small,.memory-stat-panel header p,.memory-trend-panel header p,.memory-tags-panel header p{color:#c6a96d;font-family:var(--latin);letter-spacing:.2em;font-size:8px}.memory-editor-heading h2{font-family:var(--serif);margin:3px 0 2px;font-size:25px;font-weight:400}.memory-editor-heading p{color:#ffffff7a;font-family:var(--serif);margin:0;font-size:10px}.memory-editor-heading>button{color:#ffffff8f;cursor:pointer;background:0 0;border:0;align-self:start;font-size:25px}.memory-editor>label{gap:6px;margin-top:13px;display:grid}.memory-editor>label span{color:#ffffff94;font-family:var(--serif);font-size:9px}.memory-editor input,.memory-editor select{color:#f1e9dc;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#ffffff0d;border:1px solid #ffffff21;outline:0;width:100%;height:42px;padding:0 11px}.memory-editor input:focus,.memory-editor select:focus{border-color:#c9ab70}.memory-editor-note{color:#ffffff61;font-family:var(--kai);margin:16px 0 0;font-size:9px}.memory-editor-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.memory-tree-state{place-items:center;display:grid}.memory-tree-state .empty-state{width:min(520px,100% - 30px)}.memory-tree-loading,.memory-stats-loading{text-align:center;place-items:center;gap:8px;width:min(380px,100% - 40px);padding:35px;display:grid}.memory-tree-loading i,.memory-stats-loading i{border:1px solid #d3b87e40;border-top-color:#d3b87e;border-radius:50%;width:24px;height:24px;animation:1s linear infinite memory-spin}.memory-tree-loading strong{font-family:var(--serif);font-weight:400}.memory-tree-loading span{color:#fff6;font-size:9px}@keyframes memory-spin{to{transform:rotate(360deg)}}.memory-stats-view{width:min(1120px,100% - 28px);margin:0 auto;padding:70px 0 120px}.memory-stats-heading{text-align:center;text-shadow:0 2px 18px #000;margin-bottom:45px}.memory-stats-heading h2{font-family:var(--serif);letter-spacing:.1em;margin:0;font-size:clamp(43px,6vw,72px);font-weight:400}.memory-stats-heading>span{color:#ffffff8f;font-family:var(--kai);margin-top:12px;font-size:11px;display:block}.memory-stat-summary{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:10px;display:grid}.memory-stat-summary>div{flex-direction:column;justify-content:flex-end;min-height:140px;padding:19px;display:flex;position:relative;overflow:hidden}.memory-stat-summary>div:after{content:"";border:1px solid #d4b77a24;border-radius:50%;width:100px;height:100px;position:absolute;top:-35px;right:-25px}.memory-stat-summary small{color:#c8ad75;font-family:var(--latin);letter-spacing:.18em;font-size:8px}.memory-stat-summary strong{color:#f0e7d8;font-family:var(--latin);font-size:47px;font-weight:400;line-height:1}.memory-stat-summary span{color:#fff6;font-family:var(--serif);font-size:9px}.memory-trend-panel,.memory-stat-panel,.memory-tags-panel{padding:25px}.memory-trend-panel header h3,.memory-stat-panel header h3,.memory-tags-panel header h3{font-family:var(--serif);margin:4px 0 22px;font-size:20px;font-weight:400}.year-bars{border-bottom:1px solid #ffffff1a;justify-content:center;align-items:end;gap:clamp(16px,4vw,55px);height:220px;padding:20px 20px 28px;display:flex}.year-bars>div{justify-content:center;align-items:end;width:34px;height:100%;display:flex;position:relative}.year-bars i{background:linear-gradient(#c6a6d8,#8b5ca5 55%,#754d8940);width:100%;min-height:8px;box-shadow:0 0 25px #9e64be33}.year-bars b{color:#dfc98f;font-family:var(--latin);font-size:10px;font-weight:400;position:absolute;bottom:calc(100% + 5px)}.year-bars span{font-family:var(--latin);font-size:9px;position:absolute;top:calc(100% + 8px)}.month-spark{align-items:end;gap:5px;height:95px;padding-top:17px;display:flex}.month-spark>div{flex:1;justify-content:center;align-items:end;min-width:4px;height:100%;display:flex}.month-spark i{background:#d3b87e8c;border-radius:2px 2px 0 0;width:100%;max-width:22px;min-height:4px}.month-spark span{display:none}.memory-stat-grid{grid-template-columns:1fr 1fr;gap:10px;margin:10px 0;display:grid}.distribution-list{gap:14px;display:grid}.distribution-list>div>div{color:#ffffffa3;font-family:var(--serif);justify-content:space-between;font-size:10px;display:flex}.distribution-list b{color:#d8bd84;font-family:var(--latin);font-weight:400}.distribution-list>div>i{background:#ffffff12;height:3px;margin-top:7px;display:block;overflow:hidden}.distribution-list em{background:linear-gradient(90deg,#8b5ca5,#d3b87e);height:100%;display:block}.memory-tags-panel>div{flex-wrap:wrap;gap:7px;display:flex}.memory-tags-panel>div>span{color:#ffffffb3;font-family:var(--serif);background:#ffffff09;border:1px solid #ffffff1a;align-items:center;gap:7px;padding:8px 10px;font-size:9px;display:flex}.memory-tags-panel span b{color:#8d699d;font-family:var(--latin);font-weight:400}.memory-tags-panel span i{color:#d3b87e;font-family:var(--latin);font-style:normal}.memory-stats-loading,.memory-stats-state{margin:120px auto}.home-timeline-view{margin-top:0}.gallery-page{width:min(1500px,100% - 44px);min-height:calc(100vh - 78px);padding:60px 0 140px}.gallery-header{justify-content:space-between;align-items:end;gap:30px;padding:25px 0 38px;display:flex}.gallery-header h1{color:#f0e9dc;font-family:var(--serif);letter-spacing:.06em;margin:0;font-size:clamp(48px,7vw,88px);font-weight:400}.gallery-header p:last-child{color:#e7e1d785;max-width:600px;font-family:var(--kai);margin:13px 0 0;line-height:1.8}.gallery-filters{background:#ffffff09;border:1px solid #ffffff1a;grid-template-columns:minmax(240px,1.8fr) repeat(4,minmax(125px,1fr));gap:7px;padding:8px;display:grid}.gallery-filters input,.gallery-filters select,.upload-fields input,.upload-fields select,.gallery-edit-sheet input,.gallery-edit-sheet select{color:#ddd6ca;background:#ffffff0b;border:1px solid #ffffff1a;border-radius:2px;outline:0;width:100%;min-height:42px;padding:9px 11px}.gallery-filters select option{color:#222}.gallery-filters input::placeholder{color:#ffffff59}.gallery-filters input:focus,.gallery-filters select:focus{border-color:#d2b4799e}.gallery-summary{color:#e7e1d773;letter-spacing:.08em;align-items:baseline;gap:8px;margin:27px 2px 18px;font-size:10px;display:flex}.gallery-summary strong{color:#dcc18c;font-family:var(--latin);font-size:30px;font-weight:400}.gallery-alert{color:#f1b8c5;background:#682b3a59;border:1px solid #be5e7440;justify-content:space-between;gap:15px;margin-bottom:16px;padding:12px 15px;display:flex}.gallery-alert button{color:inherit;cursor:pointer;background:0 0;border:0}.gallery-masonry{columns:5 240px;column-gap:12px}.gallery-card,.gallery-skeleton{break-inside:avoid;margin:0 0 12px}.gallery-card{cursor:zoom-in;background:#1b1d20;position:relative;overflow:hidden;box-shadow:0 8px 30px #00000038}.gallery-card img{width:100%;height:auto;transition:transform .6s,filter .35s;display:block}.gallery-card:hover img{transform:scale(1.018)}.gallery-card figcaption{color:#fff;opacity:0;background:linear-gradient(#0000,#080a0cd1);justify-content:space-between;align-items:end;gap:12px;min-height:100px;padding:44px 13px 12px;transition:all .28s;display:flex;position:absolute;inset:auto 0 0}.gallery-card:hover figcaption,.gallery-card:focus-within figcaption{opacity:1}.gallery-card figcaption div{min-width:0}.gallery-card figcaption strong,.gallery-card figcaption span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.gallery-card figcaption strong{font-family:var(--serif);font-size:12px;font-weight:500}.gallery-card figcaption span{color:#ffffff80;margin-top:4px;font-size:8px}.gallery-card figcaption i{color:#e4c78f;font-style:normal}.gallery-more{margin:28px auto 0;display:flex}.lightbox{z-index:80;color:#e9e3d9;background:#060708f7;grid-template-columns:minmax(0,1fr) minmax(285px,360px);display:grid;position:fixed;inset:0}.lightbox-image{place-items:center;min-width:0;min-height:0;padding:38px 72px;display:grid;overflow:hidden}.lightbox-image img{object-fit:contain;max-width:100%;max-height:calc(100vh - 76px);display:block;box-shadow:0 25px 90px #0000008f}.lightbox aside{background:#151719;border-left:1px solid #ffffff14;padding:75px 32px 36px;overflow:auto}.lightbox aside h2{font-family:var(--serif);margin:0 0 28px;font-size:28px;font-weight:400}.lightbox aside dl{margin:0 0 22px}.lightbox aside dl div{border-bottom:1px solid #ffffff14;justify-content:space-between;gap:20px;padding:10px 0;display:flex}.lightbox aside dt,.lightbox aside dd{font-size:10px}.lightbox aside dt{color:#ffffff6b}.lightbox aside dd{text-align:right;margin:0}.lightbox aside .tag-row i{color:#d6c092}.lightbox aside>.button{width:100%}.lightbox-close,.lightbox-prev,.lightbox-next{z-index:2;color:#fff;cursor:pointer;background:#11131580;border:1px solid #ffffff26;border-radius:50%;place-items:center;display:grid;position:absolute}.lightbox-close{width:40px;height:40px;font-size:22px;top:17px;right:378px}.lightbox-prev,.lightbox-next{width:46px;height:46px;margin-top:-23px;font-size:32px;top:50%}.lightbox-prev{left:15px}.lightbox-next{right:376px}.background-note{color:#d9bd84;margin:18px 0;font-size:10px}.lightbox-actions{grid-template-columns:1fr 1fr;gap:7px;margin-top:9px;display:grid}.floating-add{z-index:30;color:#fff5e4;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#5f2b39e0;border:1px solid #e8cd9773;border-radius:2px;align-items:center;gap:8px;height:48px;padding:0 17px;display:flex;position:fixed;bottom:26px;right:26px;box-shadow:0 14px 36px #0000004d}.floating-add span:first-child{font-size:19px}.dialog-backdrop{z-index:70;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#07090bad;justify-content:flex-end;display:flex;position:fixed;inset:0}.form-sheet,.upload-sheet,.gallery-edit-sheet{color:#37312b;background:#eee7da;height:100%;animation:.34s both sheet-in;overflow:auto;box-shadow:-24px 0 70px #0000004d}.form-sheet{width:min(640px,100%);padding:33px}.upload-sheet{width:min(840px,100%);padding:32px 33px 110px}.gallery-edit-sheet{width:min(460px,100%);padding:33px}@keyframes sheet-in{0%{opacity:0;transform:translate(50px)}}.form-heading{grid-column:1/-1;justify-content:space-between;align-items:start;margin-bottom:12px;display:flex}.form-heading h2{font-family:var(--serif);margin:0;font-size:29px;font-weight:500}.work-form{grid-template-columns:1fr 1fr;gap:16px 13px;display:grid}.work-form .wide{grid-column:1/-1}.work-form textarea{resize:vertical;min-height:108px;line-height:1.65}.progress-fields{grid-template-columns:1fr 1fr 1fr;gap:9px;display:grid}.form-actions{justify-content:flex-end;gap:9px;padding-top:8px;display:flex}.form-error{color:#963d52;background:#f8dfe3;grid-column:1/-1;margin:0;padding:11px 13px}.drop-zone{color:#756c61;text-align:center;cursor:pointer;background:#fffcf573;border:1px dashed #83504573;flex-direction:column;justify-content:center;align-items:center;gap:7px;min-height:175px;display:flex}.drop-zone input{opacity:0;width:1px;height:1px;position:absolute}.drop-zone span{color:var(--wine);font-size:32px}.drop-zone small{font-size:9px}.upload-queue{gap:9px;margin-top:19px;display:grid}.upload-item{background:#fffcf58c;border:1px solid #5a442621;grid-template-columns:86px minmax(0,1fr) auto;gap:13px;padding:10px;display:grid}.upload-item>img{object-fit:cover;width:86px;height:98px}.upload-fields{align-content:center;gap:7px;display:grid}.upload-fields>div{grid-template-columns:118px 1fr;gap:7px;display:grid}.upload-fields input,.upload-fields select,.gallery-edit-sheet input,.gallery-edit-sheet select{color:#38322d;background:#fffcf5bd;border-color:#61482a2e;min-height:37px;padding:7px 9px;font-size:10px}.switch-row{color:#786f64;align-items:center;font-size:10px;flex-direction:row!important;gap:7px!important;display:flex!important}.switch-row input{accent-color:var(--wine);width:15px!important;min-height:15px!important}.upload-fields p{color:#9b3e53;margin:0;font-size:9px}.upload-state{color:#7b7267;flex-direction:column;justify-content:space-between;align-items:end;min-width:68px;font-size:8px;display:flex}.upload-state button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:17px}.upload-done{border-color:#44846b47}.upload-error{border-color:#ae3d583d}.upload-actions{background:#eee7daf5;border-top:1px solid #4d3b251f;justify-content:flex-end;align-items:center;gap:8px;margin:24px -33px -110px;padding:17px 33px 25px;display:flex;position:sticky;bottom:-110px}.upload-actions>span{color:#7d7367;margin-right:auto;font-size:10px}.gallery-edit-sheet>img{object-fit:contain;background:#d4cab9;width:100%;max-height:280px;margin-bottom:21px;display:block}.gallery-edit-sheet>label{flex-direction:column;gap:6px;margin-bottom:13px;display:flex}.gallery-edit-sheet>label>span{color:#776d60;font-size:10px;font-weight:700}.mobile-nav{display:none}@media (width<=1280px){.library-page{width:min(940px,100% - 240px)}.archive-toolbar{grid-template-columns:1.7fr repeat(3,1fr)}.gallery-filters{grid-template-columns:1.6fr repeat(2,1fr)}.collage{opacity:.58;width:150px}}@media (width<=920px){.app-shell{padding-top:70px}.topbar{grid-template-columns:1fr auto;width:calc(100% - 20px);height:53px;top:9px}.topbar nav,.collage{display:none}.hero-copy{width:100%;margin-left:0}.hero-stats{right:0}.timeline-section{padding-inline:max(18px,50vw - 370px)}.timeline:before{left:120px}.timeline-group{grid-template-columns:98px 1fr;gap:44px}.gallery-break{margin-left:142px}.library-page,.detail-page{width:calc(100% - 36px)}.work-grid{grid-template-columns:repeat(3,1fr)}.detail-hero{grid-template-columns:270px 1fr;gap:29px}.detail-columns{grid-template-columns:1fr}.quick-log{position:static}.gallery-masonry{columns:3 210px}.lightbox{grid-template-columns:1fr 285px}.lightbox-image{padding-inline:60px}.lightbox-close{right:300px}.lightbox-next{right:298px}.mobile-nav{z-index:45;color:#ffffffa6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#111315e0;border:1px solid #ffffff24;border-radius:4px;justify-content:space-around;align-items:center;width:min(390px,100% - 26px);height:58px;display:flex;position:fixed;bottom:9px;left:50%;transform:translate(-50%);box-shadow:0 14px 42px #0000004d}.mobile-nav a{flex-direction:column;align-items:center;gap:2px;font-size:8px;display:flex}.mobile-nav a span{color:#d4ba84;font-size:17px}.mobile-nav a.active{color:#fff}.floating-add{bottom:80px}}@media (width<=640px){.page-frame{width:calc(100% - 24px)}.brand strong{font-size:12px}.brand small{display:none}.manager-link{min-width:45px;padding-inline:7px;font-size:0}.manager-link:after{content:"管理";font-size:8px}.manager-link.owner:after{content:"管理中"}.background-controls button:nth-child(2){display:none}.hero-section{min-height:calc(100svh - 70px);padding:13vh 0 15vh}.hero-copy h1{font-size:clamp(50px,16vw,76px)}.hero-quote{font-size:16px}.hero-description{max-width:92%;font-size:12px}.editable-home-copy{align-items:flex-start}.copy-edit-button{margin-top:19px}.editable-home-copy:has(.hero-description) .copy-edit-button{margin-top:15px}.copy-editor{width:100%}.chronicle-heading .editable-home-copy{align-items:flex-start}.hero-actions .button{flex:1;padding-inline:10px;font-size:11px}.hero-stats{border-top:1px solid #ffffff40;border-left:0;grid-template-columns:repeat(4,1fr);width:100%;margin-top:34px;position:static}.hero-stats div{flex-direction:column;padding:11px 0 0;display:flex}.hero-stats strong{font-size:25px}.scroll-invitation{display:none}.timeline-section{padding:80px 12px 110px}.chronicle-heading{margin-bottom:55px}.timeline:before{top:65px;left:8px}.timeline-month{font-size:18px}.timeline-group{grid-template-columns:1fr;gap:10px;padding:0 3px 42px 22px}.timeline-date{text-align:left;align-items:baseline;gap:8px;padding:0;display:flex;position:static}.activity-card{grid-template-columns:46px 1fr auto;gap:10px;padding:9px}.activity-card:before{left:-18px}.activity-cover{width:46px;height:59px}.activity-copy h3{font-size:14px}.activity-copy p{max-width:220px}.gallery-break{height:190px;margin:5px 0 62px 22px}.gallery-break figcaption{bottom:13px;left:15px}.library-page,.detail-page{padding-top:35px}.library-header{flex-direction:column;align-items:start}.library-header h1{font-size:43px}.library-header .button{width:100%}.archive-toolbar{grid-template-columns:1fr 1fr}.archive-toolbar .search-field{grid-column:1/-1}.work-grid{grid-template-columns:1fr 1fr;gap:10px}.work-card-copy{min-height:132px;padding:11px}.work-card-copy h2{font-size:14px}.rating-seal{width:40px;height:40px;padding-top:8px}.detail-hero{grid-template-columns:1fr;padding:18px}.archive-stamp{z-index:2}.detail-cover-shell,.detail-cover{aspect-ratio:3/4;min-height:0}.detail-copy{padding:8px}.detail-copy h1{font-size:38px}.review-panel,.quick-log,.detail-timeline{padding:23px 19px}.log-actions{opacity:1}.gallery-page{padding-top:26px}.gallery-header{flex-direction:column;align-items:start;padding:24px 5px 28px}.gallery-header h1{font-size:48px}.gallery-header .button{width:100%}.gallery-filters{grid-template-columns:1fr 1fr}.gallery-filters .search-field{grid-column:1/-1}.gallery-masonry{columns:2;column-gap:7px}.gallery-card,.gallery-skeleton{margin-bottom:7px}.gallery-card figcaption{opacity:1;min-height:58px;padding:24px 8px 7px}.gallery-card figcaption strong{font-size:9px}.gallery-card figcaption span{display:none}.lightbox{flex-direction:column;display:flex;overflow:auto}.lightbox-image{flex:0 0 72svh;padding:55px 33px 22px}.lightbox-image img{max-height:65svh}.lightbox aside{border-top:1px solid #ffffff14;border-left:0;padding:27px 21px 105px;overflow:visible}.lightbox-close{position:fixed;top:11px;right:11px}.lightbox-prev,.lightbox-next{width:38px;height:38px;font-size:27px;position:fixed;top:36svh}.lightbox-prev{left:5px}.lightbox-next{right:5px}.form-sheet,.upload-sheet,.gallery-edit-sheet{padding:23px 16px 105px}.work-form{grid-template-columns:1fr}.work-form .wide,.form-heading,.form-error{grid-column:1}.upload-item{grid-template-columns:68px minmax(0,1fr)}.upload-item>img{width:68px;height:84px}.upload-fields>div{grid-template-columns:1fr}.upload-state{flex-direction:row;grid-column:1/-1;align-items:center}.upload-actions{margin-inline:-16px;padding-inline:16px}.floating-add{border-radius:50%;justify-content:center;width:48px;padding:0;bottom:78px;right:14px}.floating-add span:last-child{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (prefers-contrast:more){.wallpaper-veil{background:#07090ba8}.paper-sheet{background:#fffaf0;border-color:#5a4d3c}.detail-page .paper-sheet{color:#fff;background:#07090bf0;border-color:#ffffffa6}.activity-card,.work-card,.topbar,.archive-toolbar{background:#080a0cd1;border-color:#ffffff73}.memory-work-node,.memory-year-node,.memory-season-node,.memory-intro-panel,.memory-tree-toolbar{background:#050709f0;border-color:#ffffff8c}}@media (width<=1100px){.memory-tree-toolbar{grid-template-columns:minmax(130px,1fr) 96px 96px;width:min(520px,100% - 385px);top:18px;right:18px}.memory-tree-toolbar>button{grid-column:1/-1}.memory-intro-panel{width:340px;top:18px;left:18px}.memory-minimap{top:116px!important}}@media (width<=760px){.home-memory-page{min-height:calc(100svh - 70px);padding-top:5px;padding-bottom:76px}.home-view-tabs{width:calc(100% - 18px);height:52px;margin-bottom:6px}.home-view-tabs button{grid-template-columns:21px 1fr;padding:7px 8px}.home-view-tabs button span{font-size:15px}.home-view-tabs button b{font-size:10px}.home-view-tabs button small{font-size:6px}.memory-tree-stage{width:calc(100% - 10px);height:calc(100svh - 139px);min-height:600px;margin-bottom:0}.memory-intro-panel{background:linear-gradient(90deg,#090b0ee0,#090b0ead);width:auto;max-height:195px;padding:13px 15px;top:8px;left:9px;right:9px}.memory-intro-panel h1{font-size:31px}.memory-intro-panel>small{font-size:7px}.memory-hero-quote{margin-top:8px;font-size:10px}.memory-hero-description{display:none}.memory-intro-actions{margin-top:8px}.memory-intro-actions .button{min-height:29px}.memory-intro-count{border:0;margin:0;padding:0;position:absolute;bottom:12px;right:14px}.memory-intro-count strong{font-size:19px}.memory-intro-count span{display:none}.memory-tree-toolbar{grid-template-columns:1fr 78px;width:auto;min-height:0;top:202px;left:9px;right:9px}.memory-tree-toolbar select:nth-of-type(2){display:none}.memory-tree-toolbar>button{grid-column:auto;padding-inline:5px}.memory-minimap{display:none}.memory-tree-stage .react-flow__controls{bottom:45px}.memory-tree-hint{text-align:center;justify-content:center;width:calc(100% - 18px);bottom:8px}.memory-work-node{width:166px}.memory-node-cover{height:143px}.memory-node-copy h3{font-size:12px}.memory-editor-backdrop{align-items:end;padding:0}.memory-editor{border-radius:8px 8px 0 0;width:100%;padding:22px 16px 93px}.memory-stats-view{width:calc(100% - 18px);padding:48px 0 60px}.memory-stats-heading{margin-bottom:28px}.memory-stats-heading h2{font-size:42px}.memory-stats-heading>span{padding-inline:22px}.memory-stat-summary{grid-template-columns:1fr 1fr;gap:7px}.memory-stat-summary>div{min-height:116px;padding:14px}.memory-stat-summary strong{font-size:37px}.memory-stat-grid{grid-template-columns:1fr;gap:7px}.memory-trend-panel,.memory-stat-panel,.memory-tags-panel{padding:18px 15px}.year-bars{justify-content:start;gap:28px;overflow-x:auto}.year-bars>div{flex:0 0 30px}.home-timeline-view{padding-top:64px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
