@charset "UTF-8";body{margin:0;padding:0;overflow-x:hidden;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Noto Sans", "Noto Sans CJK SC", "Microsoft Yahei", "Hiragino Sans GB", Arial, sans-serif);color:var(--color-on-surface, #020617)}html,body{height:100%;height:100dvh;width:100%;width:100dvw;overflow:hidden;overflow-x:hidden}#root{height:100%;height:100dvh;width:100%;width:100dvw;overflow:hidden;overflow-x:hidden;max-width:100%}.dtanimation-console{position:absolute;top:50%;transform:translateY(-50%);left:0;height:200px;width:100px;overflow:auto;background-color:#000;color:#fff;padding:8px;opacity:.5}@keyframes spin{to{transform:rotate(360deg)}}.plait-board-container{display:block;width:100%;height:100%;position:relative;overflow:hidden}.plait-board-container foreignObject{outline:none}.plait-board-container.firefox{-webkit-user-select:none;user-select:none}.plait-board-container .viewport-container{width:100%;height:100%;overflow:auto;scrollbar-width:thin;scrollbar-color:var(--color-gray-30, #d1d5db) transparent}.plait-board-container .viewport-container::-webkit-scrollbar{width:12px;height:12px}.plait-board-container .viewport-container::-webkit-scrollbar-track{background:transparent;border-radius:6px;margin-right:2px;margin-bottom:2px}.plait-board-container .viewport-container::-webkit-scrollbar-corner{background:transparent}.plait-board-container .viewport-container::-webkit-scrollbar-thumb{background-color:var(--color-gray-30, #d1d5db);border-radius:6px;border:2px solid transparent;background-clip:padding-box;min-height:40px;min-width:40px}.plait-board-container .viewport-container::-webkit-scrollbar-thumb:hover{background-color:var(--color-gray-40, #9ca3af)}.plait-board-container .viewport-container::-webkit-scrollbar-thumb:active{background-color:var(--color-gray-50, #6b7280)}.plait-board-container .viewport-container::-webkit-scrollbar-thumb:horizontal{min-width:40px}.plait-board-container .viewport-container::-webkit-scrollbar-thumb:vertical{min-height:40px}.plait-board-container.disabled-scroll .viewport-container{overflow:hidden}.plait-board-container svg{transform:scale(1)}.plait-board-container .plait-text-container{position:initial!important}.plait-board-container .text foreignObject{outline:none;overflow:visible}.plait-board-container .text .slate-editable-container{outline:none}.plait-board-container .plait-toolbar{position:absolute;display:flex;height:30px;z-index:100}.plait-board-container.element-moving .element-active-host>g:not(.active-with-moving){display:none}.plait-board-container.element-rotating .element-active-host g.resize-handle,.plait-board-container.element-rotating .element-active-host g[class^=line-auto-complete-]{display:none}.plait-board-container.pointer-selection{cursor:default}.plait-board-container.ns-resize{cursor:ns-resize}.plait-board-container.ew-resize{cursor:ew-resize}.plait-board-container.nwse-resize{cursor:nwse-resize}.plait-board-container.nesw-resize{cursor:nesw-resize}.plait-board-container.crosshair{cursor:crosshair}.plait-board-container foreignObject[class^=foreign-object-]{-webkit-user-select:none;user-select:none}.plait-board-container .board-active-svg{position:absolute;left:0;top:0;pointer-events:none}.plait-board-container.board-with-grid .board-host-svg{background-image:radial-gradient(circle,rgba(229,231,235,.3) 1.5px,transparent 1.5px);background-size:20px 20px;background-position:0 0}.plait-board-container.board-with-grid.theme-dark .board-host-svg,.plait-board-container.board-with-grid.theme-starry .board-host-svg{background-image:radial-gradient(circle,rgba(255,255,255,.2) 1.5px,transparent 1.5px);background-size:20px 20px;background-position:0 0}.plait-board-container.theme-colorful .board-host-svg,.plait-board-container.theme-default .board-host-svg{background-color:#fff}.plait-board-container.theme-soft .board-host-svg{background-color:#f5f5f5}.plait-board-container.theme-retro .board-host-svg{background-color:#f9f8ed}.plait-board-container.theme-dark .board-host-svg{background-color:#141414}.plait-board-container.theme-starry .board-host-svg{background-color:#0d2537}.plait-board-container .text foreignObject{overflow-y:auto;scrollbar-width:none}.plait-board-container .text foreignObject::-webkit-scrollbar{display:none}.plait-text-container{font-size:14px;min-height:20px;line-height:1.2;display:block;padding:6px 0;box-sizing:border-box;overflow:visible;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Noto Sans,Noto Sans CJK SC,Microsoft Yahei,Hiragino Sans GB,Arial,sans-serif}.slate-editable-container{outline:none;padding:0;cursor:default;line-height:inherit}.slate-editable-container [data-slate-node=element]{-webkit-user-select:none;user-select:none}.slate-editable-container[contenteditable=true]{cursor:text}.slate-editable-container[contenteditable=true] [data-slate-node=element]{-webkit-user-select:text;user-select:text}[plait-mindmap=true] .plait-text-container{text-align:center;padding-top:0;padding-bottom:6px}[plait-mindmap=true] .plait-text-container .slate-editable-container{text-align:center;margin-top:-2px}[plait-mindmap=true] .plait-text-container .slate-editable-container [data-slate-node=element]{text-align:center!important}.plait-board-container[plait-mindmap=true] .text foreignObject .plait-text-container{text-align:center;padding-top:0;padding-bottom:6px}.plait-board-container[plait-mindmap=true] .text foreignObject .plait-text-container .slate-editable-container{text-align:center;margin-top:-2px}.plait-board-container[plait-mindmap=true] .text foreignObject .plait-text-container .slate-editable-container [data-slate-node=element]{text-align:center!important}.dtanimation .island{--padding: 0;box-sizing:border-box;background-color:var(--island-bg-color);box-shadow:var(--shadow-md);border-radius:var(--border-radius-md);padding:calc(var(--padding) * var(--space-factor));position:relative;transition:box-shadow var(--transition-base),border-color var(--transition-base);border:1px solid var(--island-border-color)}.dtanimation .island:hover{box-shadow:var(--shadow-lg)}.dtanimation .island.zen-mode{box-shadow:none;border:none}.dtanimation .stack{--gap: 0;display:grid;gap:calc(var(--space-factor) * var(--gap))}.dtanimation .stack_vertical{grid-template-columns:auto;grid-auto-flow:row;grid-auto-rows:min-content}.dtanimation .stack_horizontal{grid-template-rows:auto;grid-auto-flow:column;grid-auto-columns:min-content}.dtanimation .tool-icon{border-radius:var(--border-radius-md);display:inline-flex;align-items:center;justify-content:center;position:relative;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;transition:background-color var(--transition-fast),box-shadow var(--transition-fast)}.dtanimation .tool-icon__hidden{display:none!important}.dtanimation .tool-icon.fillable .tool-icon_type_radio:checked+.tool-icon__icon,.dtanimation .tool-icon.fillable .tool-icon_type_checkbox:checked+.tool-icon__icon{--icon-fill-color: #ffffff}.dtanimation .tool-icon.fillable .tool-icon_type_radio:checked+.tool-icon__icon svg,.dtanimation .tool-icon.fillable .tool-icon_type_checkbox:checked+.tool-icon__icon svg{fill:var(--icon-fill-color)}.dtanimation .tool-icon .tool-icon_type_radio:checked+.tool-icon__icon,.dtanimation .tool-icon .tool-icon_type_checkbox:checked+.tool-icon__icon{background:#00a3ff;--keybinding-color: #ffffff}.dtanimation .tool-icon .tool-icon_type_radio:checked+.tool-icon__icon svg,.dtanimation .tool-icon .tool-icon_type_checkbox:checked+.tool-icon__icon svg{color:#fff}.dtanimation .tool-icon .tool-icon__keybinding{bottom:4px;right:4px}.dtanimation .tool-icon .tool-icon__icon:hover{background-color:#f5f5f5}.dtanimation .tool-icon .tool-icon__icon:active{background-color:#eee;border:1px solid #00A3FF}.dtanimation .tool-icon .tool-icon__icon:active svg{color:#00a3ff}.dtanimation .tool-icon .tool-icon__icon[aria-disabled=true]{background:initial;border:none}.dtanimation .tool-icon .tool-icon__icon[aria-disabled=true] svg{color:var(--color-disabled)}.dtanimation .tool-icon--plain{background-color:transparent}.dtanimation .tool-icon--plain .tool-icon__icon{width:2rem;height:2rem}.dtanimation .tool-icon_type_radio,.dtanimation .tool-icon_type_checkbox{position:absolute;opacity:0;pointer-events:none}.dtanimation .tool-icon__icon{box-sizing:border-box;width:var(--lg-button-size);height:var(--lg-button-size);color:var(--icon-fill-color);display:flex;justify-content:center;align-items:center;border-radius:var(--border-radius-md)}.dtanimation--mobile .dtanimation .tool-icon__icon{min-width:44px;min-height:44px}@media (max-width: 768px){.dtanimation .tool-icon__icon{min-width:44px;min-height:44px}}.dtanimation .tool-icon__icon+.tool-icon__label{margin-inline-start:0}.dtanimation .tool-icon__icon svg{stroke:currentColor;position:relative;width:var(--lg-icon-size);height:var(--lg-icon-size);outline:none}.dtanimation .tool-icon_type_button{padding:0;border:none;margin:0;font-size:inherit;background-color:initial}.dtanimation .tool-icon_type_button:focus-visible{box-shadow:var(--focus-ring);outline:none}.dtanimation .tool-icon_type_button.tool-icon--selected{background:var(--color-primary)!important;color:#fff!important;box-shadow:var(--shadow-sm);border:1px solid var(--color-primary)}.dtanimation .tool-icon_type_button.tool-icon--selected svg{color:#fff!important}.dtanimation .tool-icon_type_button:hover:not(:disabled):not(.tool-icon--selected){background-color:var(--button-hover-bg);box-shadow:var(--shadow-xs)}.dtanimation .tool-icon_type_button:active:not(:disabled){background-color:var(--button-active-bg);box-shadow:none}.dtanimation .tool-icon_type_button:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dtanimation .tool-icon_type_button:disabled{cursor:default}.dtanimation .tool-icon_type_button:disabled:active,.dtanimation .tool-icon_type_button:disabled:focus-visible,.dtanimation .tool-icon_type_button:disabled:hover{background-color:initial;border:none;box-shadow:none}.dtanimation .tool-icon_type_button:disabled svg{color:var(--color-disabled)}.dtanimation .tool-icon_type_button--show{visibility:visible}.dtanimation .tool-icon_type_button--hide{display:none!important}.dtanimation .tool-icon__label{display:flex;align-items:center;color:var(--color-on-surface);font-family:var(--font-family-base);font-size:var(--font-size-sm);line-height:1.5;margin:0 var(--spacing-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:var(--font-weight-medium)}.dtanimation .tool-icon_size_small .tool-icon__icon{width:2rem;height:2rem;font-size:.8em}.dtanimation .tool-icon_size_small .tool-icon__icon svg{width:var(--default-icon-size);height:var(--default-icon-size)}.dtanimation .tool-icon__keybinding{position:absolute;bottom:2px;right:3px;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1;color:var(--color-gray-60);font-family:var(--font-family-base);-webkit-user-select:none;user-select:none;background:var(--island-bg-color);padding:1px 2px;border-radius:2px}.dtanimation .menu--mobile{left:0;width:100%;row-gap:.75rem}.dtanimation .menu--mobile .menu-container{padding:var(--spacing-xs);box-sizing:border-box;box-shadow:var(--shadow-md);border-radius:var(--border-radius-md);position:relative;transition:box-shadow var(--transition-base)}.dtanimation .menu--mobile .menu-container.zen-mode{box-shadow:none}.dtanimation .menu .menu-container{background-color:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);max-height:calc(100vh - 150px);overflow-y:auto;--gap: 2;padding:var(--spacing-xs);min-width:200px}.dtanimation--mobile .dtanimation .menu .menu-container{max-height:calc(75vh - 56px - env(safe-area-inset-bottom));border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;box-shadow:0 -8px 24px #00000026;position:fixed!important;bottom:calc(56px + env(safe-area-inset-bottom))!important;left:0!important;right:0!important;top:auto!important;width:100%!important;max-width:100%!important;transform:none!important;margin:0!important;padding-bottom:var(--spacing-md)!important}@media (max-width: 768px){.dtanimation .menu .menu-container{max-height:calc(75vh - 56px - env(safe-area-inset-bottom));border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;box-shadow:0 -8px 24px #00000026;position:fixed!important;bottom:calc(56px + env(safe-area-inset-bottom))!important;left:0!important;right:0!important;top:auto!important;width:100%!important;max-width:100%!important;transform:none!important;margin:0!important;padding-bottom:var(--spacing-md)!important}}.dtanimation .menu .menu-item-base{display:flex;padding:0 var(--spacing-sm);column-gap:var(--spacing-sm);font-size:var(--font-size-sm);line-height:1.5;color:var(--color-on-surface);width:100%;box-sizing:border-box;font-weight:var(--font-weight-normal);font-family:var(--font-family-base)}.dtanimation .menu .menu-item{background-color:transparent;border:1px solid transparent;align-items:center;height:2rem;margin-top:2px;margin-bottom:2px;cursor:pointer;border-radius:var(--border-radius-sm);transition:background-color var(--transition-fast),border-color var(--transition-fast);padding:0 var(--spacing-sm);font-size:var(--font-size-sm);line-height:1.5;font-family:var(--font-family-base)}.dtanimation--mobile .dtanimation .menu .menu-item{min-height:44px;height:44px}@media (max-width: 768px){.dtanimation .menu .menu-item{min-height:44px;height:44px}}@media screen and (min-width: 1921px){.dtanimation .menu .menu-item{height:2.25rem}}.dtanimation .menu .menu-item--active{background-color:var(--color-surface-primary-container);text-decoration:none;color:var(--color-on-surface)}.dtanimation .menu .menu-item__text{display:flex;align-items:center;width:100%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;gap:.75rem}.dtanimation .menu .menu-item__shortcut{margin-inline-start:auto;opacity:.6;color:var(--color-gray-60);font-size:var(--font-size-xs);font-family:var(--font-family-base);font-weight:var(--font-weight-medium)}.dtanimation .menu .menu-item__shortcut--orphaned{text-align:right;font-size:var(--font-size-xs);padding:0 var(--spacing-sm)}.dtanimation .menu .menu-item:hover{background-color:var(--color-surface-primary-container);box-shadow:var(--shadow-xs);text-decoration:none}.dtanimation .menu .menu-item:active{background-color:var(--color-surface-primary-container);border-color:var(--color-brand-active);box-shadow:none}.dtanimation .menu .menu-item:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dtanimation .menu .menu-item svg{width:1rem;height:1rem;display:block}.dtanimation .menu .menu-item-bare{align-items:center;height:2rem;justify-content:space-between}@media screen and (min-width: 1921px){.dtanimation .menu .menu-item-bare{height:2.25rem}}.dtanimation .menu .menu-item-bare svg{width:1rem;height:1rem;display:block}.dtanimation .menu .menu-item-custom{margin-top:var(--spacing-sm)}.dtanimation .menu .menu-group-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1.5;text-align:left;margin:var(--spacing-md) 0 var(--spacing-xs);padding:0 var(--spacing-sm);color:var(--color-on-surface);font-family:var(--font-family-base)}.dtanimation .menu-button{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border:none;border-style:none;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--icon-fill-color);font-family:var(--ui-font);width:var(--lg-button-size);height:var(--lg-button-size);border-color:var(--island-border-color);transition:all var(--transition-base)}.dtanimation .menu-button svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.dtanimation .menu-button:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)))}.dtanimation .menu-button:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.dtanimation .menu-button.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.dtanimation .menu-button.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.dtanimation .menu-button.active svg{color:var(--button-color, var(--color-on-primary-container))}.dtanimation .menu-button:hover{box-shadow:var(--shadow-xs)}.dtanimation .menu-button:active{box-shadow:none}.dtanimation.theme--dark.dtanimation .menu-button{--background: var(--color-surface-high)}.dtanimation.theme--dark.dtanimation .menu-button:hover{--background: #363541;box-shadow:var(--shadow-xs)}.dtanimation .menu-button svg{width:var(--lg-icon-size);height:var(--lg-icon-size)}.dtanimation .menu-button--mobile{border:none;margin:0;padding:0;width:var(--default-button-size);height:var(--default-button-size)}.popup-toolbar .property-button{height:var(--lg-button-size);width:var(--lg-button-size);transition:all var(--transition-base)}.dtanimation--mobile .popup-toolbar .property-button{min-height:44px;min-width:44px}@media (max-width: 768px){.popup-toolbar .property-button{min-height:44px;min-width:44px}}.popup-toolbar .property-button:hover{box-shadow:var(--shadow-xs)}.popup-toolbar .property-button .color-label{cursor:pointer}.popup-toolbar .property-button .fill-label{display:inline-block;width:var(--popup-label-size);height:var(--popup-label-size);border-radius:50%}.popup-toolbar .property-button .fill-label.color-white{border:1px solid var(--color-gray-30)}.popup-toolbar .property-button .stroke-label{border-radius:50%;width:calc(var(--popup-label-size) - var(--border-radius-lg));height:calc(var(--popup-label-size) - var(--border-radius-lg));border-width:var(--border-radius-sm);border-style:solid}.popup-toolbar .property-button .tool-icon__icon svg{width:var(--xlg-icon-size);height:var(--xlg-icon-size)}.popup-toolbar .property-button.font-size-button,.popup-toolbar .property-button.font-family-button{display:flex;align-items:center;justify-content:center}.popup-toolbar .property-button.font-size-button .font-size-display,.popup-toolbar .property-button.font-size-button .font-family-display,.popup-toolbar .property-button.font-family-button .font-size-display,.popup-toolbar .property-button.font-family-button .font-family-display{width:100%;height:100%}.popup-toolbar .property-button.font-size-button{min-width:auto;width:auto}.stroke-setting.has-stroke-style{padding-top:var(--spacing-xs)!important}.stroke-setting .stroke-style-picker,.thickness-setting .thickness-picker,.line-ball-flow-setting .line-ball-flow-picker{justify-content:space-between;padding:0 var(--spacing-xs)}.source-arrow-island .property-button,.source-arrow-button{transform:rotateY(180deg)}.color-select-item{width:var(--default-button-size);height:var(--default-button-size);border-radius:50%;display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--color-gray-30);cursor:pointer;padding:0}.color-select-item.active{border-color:var(--color-primary)}.color-select-item.active.no-color .selected-icon{background-color:#fff}.color-select-item .selected-icon{stroke:currentColor;outline:none;position:absolute;width:var(--default-icon-size);height:var(--default-icon-size)}.color-select-item.no-color{border:none}.color-select-item.no-color .no-color-icon{display:block;width:var(-default-button-size);height:var(-default-button-size);color:#0006}.slider-container{padding:10px 0}.slider-container.disabled{opacity:50%;cursor:not-allowed}.slider-container.disabled .slider-track,.slider-container.disabled .slider-thumb{cursor:not-allowed}.slider-container .slider-track{position:relative;height:4px;background-color:var(--color-gray-20);border-radius:2px;cursor:pointer}.slider-container .slider-range{position:absolute;height:100%;background-color:var(--color-primary);border-radius:3px}.slider-container .slider-thumb{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid var(--color-primary);border-radius:50%;top:50%;transform:translate(-50%,-50%);cursor:grab;box-shadow:0 2px 4px #0000001a}.font-size-button{min-width:auto;width:auto;padding:0 8px}.font-size-button .font-size-display-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.font-size-button .font-size-display{font-size:14px;font-weight:500;text-align:center;display:flex;align-items:center;justify-content:center;line-height:1;letter-spacing:0;color:var(--color-gray-90, #1a1a1a);min-width:28px}.font-size-picker .font-size-list{display:flex;flex-direction:column;gap:0;max-height:none;overflow:visible;min-width:70px;padding:4px 0}.font-size-picker .font-size-option{padding:10px 20px;border:none;background:transparent;cursor:pointer;text-align:left;font-size:14px;font-weight:400;border-radius:0;transition:background-color .15s;color:var(--color-gray-90, #1a1a1a);width:100%;line-height:1.4}.font-size-picker .font-size-option:hover{background-color:#0000000d}.font-size-picker .font-size-option.active{background-color:#00000014;font-weight:500}.font-size-picker .font-size-option:first-child{border-radius:6px 6px 0 0}.font-size-picker .font-size-option:last-child{border-radius:0 0 6px 6px}.font-family-button .font-family-display{font-size:12px;font-weight:500;min-width:60px;max-width:80px;text-align:center;display:flex;align-items:center;justify-content:center;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px}.font-family-picker .font-family-list{display:flex;flex-direction:column;gap:4px;max-height:300px;overflow-y:auto}.font-family-picker .font-family-option{padding:8px 12px;border:none;background:transparent;cursor:pointer;text-align:left;font-size:14px;border-radius:4px;transition:background-color .2s}.font-family-picker .font-family-option:hover{background-color:#0000000d}.font-family-picker .font-family-option.active{background-color:#0000001a;font-weight:600}.plait-board-container.pointer-text .board-host-svg{cursor:default}.plait-board-container:not(.pointer-text):not(.pointer-selection):not(.pointer-hand):not(.pointer-vectorLine) .board-host-svg{cursor:crosshair}.plait-board-container.draw-line-resizing .element-active-host .selection-rectangle{display:none}.plait-board-container.line-text-resizing,.plait-board-container.line-text-resizing .slate-editable-container{cursor:move}.plait-board-container g[plait-mind=true] .slate-editable-container,.plait-board-container g[plait-mind-temporary=true] .slate-editable-container{min-width:5px}.plait-board-container g[plait-mind=true] .collapse-button,.plait-board-container g[plait-mind=true] .add-button,.plait-board-container g[plait-mind-temporary=true] .collapse-button,.plait-board-container g[plait-mind-temporary=true] .add-button{transform-origin:center center;transform-box:fill-box;cursor:pointer}.plait-board-container g[plait-mind=true] .collapse-button.animated,.plait-board-container g[plait-mind=true] .add-button.animated,.plait-board-container g[plait-mind-temporary=true] .collapse-button.animated,.plait-board-container g[plait-mind-temporary=true] .add-button.animated{animation:scale-in .15s ease-out forwards}.plait-board-container g[plait-mind=true] .expanded-button,.plait-board-container g[plait-mind-temporary=true] .expanded-button{cursor:pointer}@keyframes scale-in{0%{transform:scale(0)}to{transform:scale(1)}}.plait-board-container g[plait-mind=true] .dragging-node,.plait-board-container g[plait-mind-temporary=true] .dragging-node{opacity:.6}.plait-board-container.pointer-hand .board-host-svg{cursor:grab}.plait-board-container.pointer-mind .board-host-svg{cursor:default!important}.plait-board-container.readonly .mind-node-image{cursor:zoom-in}.plait-board-container.viewport-moving svg{cursor:grabbing}.plait-board-container.abstract-resizing-horizontal{cursor:ns-resize}.plait-board-container.abstract-resizing-vertical{cursor:ew-resize}.plait-board-container .node-emojis-container{display:flex;position:initial;align-items:center;height:100%}.plait-board-container .fake-node.dragging{cursor:pointer;opacity:.6}.plait-board-container .root .plait-text-container{font-size:18px;min-height:25px;line-height:25px}.plait-board-container .mind-node-image{display:block}.plait-board-container.theme-default .plait-text-container,.plait-board-container.theme-soft .plait-text-container{color:#333}.plait-board-container.theme-colorful .root .plait-text-container,.plait-board-container.theme-retro .root .plait-text-container,.plait-board-container.theme-dark .plait-text-container,.plait-board-container.theme-starry .plait-text-container{color:#fff}.plait-board-container.theme-dark .root .plait-text-container,.plait-board-container.theme-starry .root .plait-text-container{color:#333}.dtanimation{--focus-highlight-color: #a5d8ff;--icon-fill-color: var(--color-on-surface);--island-bg-color: #ffffff;--island-border-color: #e5e7eb;--card-bg: #ffffff;--card-border: #e5e7eb;--card-shadow: var(--shadow-md);--editor-bg: #fafafa;--keybinding-color: var(--color-gray-40);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .16);--shadow-island: var(--shadow-md);--dialog-border-color: var(--color-gray-20);--button-hover-bg: #f5f5f5;--button-active-bg: #eeeeee;--button-active-border: var(--color-brand-active);--focus-ring: 0 0 0 2px rgba(0, 0, 0, .1);--focus-ring-offset: 0 0 0 2px #ffffff, 0 0 0 4px rgba(0, 0, 0, .1);--link-color: var(--color-primary);--default-button-size: 2rem;--default-icon-size: 1rem;--lg-button-size: 2.25rem;--lg-icon-size: 1.125rem;--xlg-icon-size: 1.25rem;--popup-label-size: 1.25rem;--editor-container-padding: 1rem;--space-factor: .25rem;--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--text-primary-color: var(--color-on-surface);--color-icon-white: #ffffff;--color-primary: #00A3FF;--color-primary-darker: #0080CC;--color-primary-darkest: #0066B3;--color-primary-light: #f5f5f5;--color-primary-light-darker: #eeeeee;--color-primary-hover: #0099E6;--color-secondary: #6200EE;--color-gray-10: #f5f5f5;--color-gray-20: #ebebeb;--color-gray-30: #d6d6d6;--color-gray-40: #b8b8b8;--color-gray-50: #999999;--color-gray-60: #7a7a7a;--color-gray-70: #5c5c5c;--color-gray-80: #3d3d3d;--color-gray-85: #242424;--color-gray-90: #1e1e1e;--color-gray-100: #121212;--color-disabled: var(--color-gray-40);--color-promo: var(--color-primary);--color-success: #268029;--color-success-lighter: #cafccc;--border-radius-xs: .375rem;--border-radius-sm: .5rem;--border-radius-md: .75rem;--border-radius-lg: 1rem;--border-radius-xl: 1.5rem;--border-radius-full: 9999px;--color-surface-high: #f5f5f5;--color-surface-mid: #eeeeee;--color-surface-low: #e0e0e0;--color-surface-lowest: #ffffff;--color-brand-purple: #6200EE;--color-brand-blue: #00A3FF;--color-slate-950: #020617;--color-on-surface: #020617;--color-brand-hover: #0099E6;--color-on-primary-container: #ffffff;--color-surface-primary-container: rgba(0, 163, 255, .05);--color-brand-active: #00A3FF;--color-border-outline: #767680;--color-border-outline-variant: #c5c5d0;--default-border-color: #e5e7eb;--grid-dot-color: rgba(0, 0, 0, .15);--grid-bg-color: transparent;--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Noto Sans", "Noto Sans CJK SC", "Microsoft Yahei", "Hiragino Sans GB", Arial, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-black: 900;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}@media screen and (min-device-width: 1921px){.dtanimation{--lg-button-size: 2.5rem;--lg-icon-size: 1.25rem;--default-button-size: 2.25rem;--default-icon-size: 1.25rem}}.plait-board-container.theme-dark .dtanimation,.plait-board-container.theme-starry .dtanimation{--grid-dot-color: rgba(255, 255, 255, .12);--grid-bg-color: transparent}.layers-panel{position:fixed;right:16px;top:50%;transform:translateY(-50%);width:240px;background:#fff;border:1px solid #e6e6e6;border-radius:8px;box-shadow:0 6px 18px #0000001f;z-index:1400;overflow:hidden;color:#222;font-size:13px}.layers-panel__header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid #efefef;background:#fafafa;-webkit-user-select:none;user-select:none}.layers-panel__title{font-weight:700}.layers-panel__close{border:none;background:transparent;color:#666;cursor:pointer;width:22px;height:22px;border-radius:4px;line-height:22px;text-align:center;font-size:16px;padding:0}.layers-panel__close:hover{color:#333;background:#f0f0f0}.layers-panel__list{max-height:260px;overflow:auto}.layers-panel__row{display:grid;grid-template-columns:22px 22px 1fr 18px;align-items:center;gap:6px;padding:6px 8px;cursor:pointer}.layers-panel__row:hover{background:#f6f6f6}.layers-panel__row.is-current{background:#eaf2ff}.layers-panel__icon-btn{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:#9aa0a6;cursor:pointer;border-radius:4px;padding:0}.layers-panel__icon-btn:hover{color:#5f6368;background:#0000000a}.layers-panel__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#222}.layers-panel__rename{width:100%;font-size:13px;padding:3px 6px;border:1px solid #d0d0d0;border-radius:6px}.layers-panel__current-indicator{display:flex;justify-content:flex-end}.layers-panel__dot{width:8px;height:8px;border-radius:50%;background:#1a73e8;display:inline-block}.layers-panel__footer{display:flex;justify-content:flex-start;gap:6px;padding:8px 10px;border-top:1px solid #efefef;background:#fafafa;align-items:center}.layers-panel__footer-btn{width:28px;height:28px;border-radius:6px;border:1px solid #e5e5e5;background:#fff;color:#444;cursor:pointer;font-size:16px;line-height:26px;text-align:center;padding:0;display:inline-flex;align-items:center;justify-content:center}.layers-panel__footer-btn:hover{background:#f5f5f5}.layers-panel__footer-btn:disabled{opacity:.5;cursor:not-allowed}.mobile-bottom-toolbar{position:fixed;left:0;right:0;bottom:0;padding:8px 12px calc(env(safe-area-inset-bottom) + 8px);z-index:1200;pointer-events:auto}.mobile-bottom-toolbar__inner{display:flex;justify-content:space-between;align-items:center;gap:6px;background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:16px;box-shadow:var(--shadow-lg);padding:6px 10px}.mobile-bottom-toolbar .tool-button{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:12px}.dtanimation--mobile .mobile-bottom-toolbar{display:block}.app-shell{display:flex;flex-direction:column;height:100dvh;height:100vh;overflow:hidden;max-width:100%;position:relative;background:var(--editor-bg, #fafafa)}.app-canvas{display:flex;flex:1;min-height:0;overflow:hidden;position:relative;margin:0;padding:0;border:none;border-radius:0;box-shadow:none;background:transparent}.dtanimation{height:100%;width:100%;position:relative;overflow:hidden;overflow-x:hidden;max-width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Noto Sans,Noto Sans CJK SC,Microsoft Yahei,Hiragino Sans GB,Arial,sans-serif;background:var(--editor-bg, #fafafa)}.dtanimation.dtanimation--grid-on .plait-board-container .board-host-svg{background-image:radial-gradient(circle,rgba(0,0,0,.15) 1px,transparent 1px);background-size:24px 24px;background-position:0 0}.dtanimation.dtanimation--grid-on .plait-board-container.theme-dark .board-host-svg,.dtanimation.dtanimation--grid-on .plait-board-container.theme-starry .board-host-svg{background-image:radial-gradient(circle,rgba(255,255,255,.15) 1px,transparent 1px);background-size:24px 24px;background-position:0 0}.dtanimation.dtanimation--grid-on .plait-board-container.theme-default .board-host-svg,.dtanimation.dtanimation--grid-on .plait-board-container.theme-colorful .board-host-svg,.dtanimation.dtanimation--grid-on .plait-board-container.theme-soft .board-host-svg,.dtanimation.dtanimation--grid-on .plait-board-container.theme-retro .board-host-svg{background-image:radial-gradient(circle,rgba(0,0,0,.15) 1px,transparent 1px);background-size:24px 24px;background-position:0 0}.dtanimation--mobile .dtanimation{height:100dvh;height:100vh;background:var(--island-bg-color)}@media (max-width: 768px){.dtanimation{height:100dvh;height:100vh;background:var(--island-bg-color)}}.dtanimation .pencil-mode-toolbar{position:absolute;top:82px;left:0}.dtanimation .pencil-mode-toolbar .tool-icon__icon{width:auto;padding:0 8px;background-color:var(--color-surface-mid)}.dtanimation .draw-toolbar{cursor:default;position:fixed;left:var(--spacing-sm);top:50%;transform:translateY(-50%);z-index:1000}.dtanimation .draw-toolbar .tool-button{width:44px;height:44px;min-width:44px;min-height:44px}.dtanimation .dt-topbar{position:fixed;top:calc(env(safe-area-inset-top) + 4px);left:0;right:0;z-index:1100;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:nowrap;padding:12px;gap:12px;pointer-events:none}.dtanimation .dt-topbar__left,.dtanimation .dt-topbar__right{pointer-events:auto}.dtanimation .dt-topbar__left{display:flex;justify-content:flex-start;min-width:0;flex:1 1 auto}.dtanimation .dt-topbar__right{display:flex;justify-content:flex-end;margin-left:auto;flex:0 0 auto;white-space:nowrap}.dtanimation .dt-topbar__left>.island,.dtanimation .dt-topbar__right>.island{display:inline-flex!important;width:auto!important;flex:0 0 auto!important}.dtanimation .dt-topbar__left .app-toolbar .app-brand{flex:0 0 auto}.dtanimation .dt-topbar__left .app-toolbar .file-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dtanimation .history-toolbar{cursor:default;position:fixed;left:var(--spacing-sm);top:calc(50% + 280px);transform:translateY(-50%)}.dtanimation--mobile.dtanimation .history-toolbar{display:none}.dtanimation .history-toolbar .tool-button{width:44px;height:44px;min-width:44px;min-height:44px}.dtanimation .right-toolbar{cursor:default;position:static!important;top:auto!important;left:auto!important;right:auto!important;transform:none!important;z-index:1000;padding:var(--spacing-sm) var(--spacing-md);min-height:52px;border-radius:var(--border-radius-md);border:1px solid var(--island-border-color);box-shadow:var(--shadow-md)}.dtanimation .right-toolbar .stack{height:auto;min-height:44px;gap:var(--spacing-sm)}@media (min-width: 769px) and (max-width: 1200px){.dtanimation .right-toolbar{padding:var(--spacing-sm) var(--spacing-sm)}.dtanimation .right-toolbar .stack{gap:var(--spacing-xs)}.dtanimation .right-toolbar button{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}}.dtanimation--mobile .dtanimation .draw-toolbar,.dtanimation--mobile .dtanimation .creation-toolbar,.dtanimation--mobile .dtanimation .zoom-toolbar,.dtanimation--mobile .dtanimation .theme-toolbar,.dtanimation--mobile .dtanimation .history-toolbar,.dtanimation--mobile .dtanimation .popup-toolbar,.dtanimation--mobile .dtanimation .dt-topbar__right,.dtanimation--mobile .dtanimation .right-toolbar .right-toolbar-share-button,.dtanimation--mobile .dtanimation .right-toolbar .right-toolbar-present-button,.dtanimation--mobile .dtanimation .app-toolbar .upgrade-button{display:none!important}.dtanimation .app-menu-popover .menu .menu-container{background-color:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);padding:6px;max-height:calc(70vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;min-width:200px}.dtanimation .app-menu-popover .menu .menu-item{min-height:36px;height:36px;border-radius:8px;padding:0 8px;font-size:13px}.dtanimation .app-menu-popover .menu .menu-item__icon svg{width:14px;height:14px}.dtanimation .app-menu-popover .menu .menu-item__icon{display:none!important}.dtanimation .app-menu-popover .menu .menu-item__text{gap:6px}.dtanimation--mobile .dtanimation .animation-icons-panel,.dtanimation--mobile .dtanimation .templates-panel,.dtanimation--mobile .dtanimation .layers-panel{position:fixed!important;top:env(safe-area-inset-top);left:0;right:0;bottom:env(safe-area-inset-bottom);width:100vw;height:auto;max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom));z-index:1300;margin:0;border-radius:0;overflow:auto}.dtanimation .zoom-toolbar{cursor:default;position:absolute;bottom:calc(var(--spacing-md) + env(safe-area-inset-bottom));left:var(--spacing-md)}@media (min-width: 769px){.dtanimation .zoom-toolbar{bottom:calc(16px + env(safe-area-inset-bottom));left:16px}}.dtanimation--mobile.dtanimation .zoom-toolbar{display:none}@media (max-width: 768px){.dtanimation .zoom-toolbar{display:none}}.dtanimation .zoom-toolbar .zoom-out-button{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.dtanimation .zoom-toolbar .zoom-menu-trigger{width:56px;display:flex;align-items:center;justify-content:center;color:#00a3ff;font-weight:500;font-size:13px;border-radius:var(--border-radius-sm);cursor:pointer}.dtanimation .zoom-toolbar .zoom-menu-trigger:hover,.dtanimation .zoom-toolbar .zoom-menu-trigger.active{background-color:#f5f5f5}.dtanimation--mobile .dtanimation .zoom-toolbar .zoom-menu-trigger{min-width:44px;min-height:44px}.dtanimation .zoom-toolbar .zoom-in-button{color:var(--color-on-surface);border-top-left-radius:0!important;border-bottom-left-radius:0!important}.dtanimation .app-toolbar{position:static!important;top:auto!important;left:auto!important;right:auto!important;transform:none!important;z-index:1000;padding:var(--spacing-sm) var(--spacing-md);min-height:52px;border-radius:var(--border-radius-md);border:1px solid var(--island-border-color);box-shadow:var(--shadow-md)}.dtanimation .app-toolbar .stack{height:auto;min-height:44px;gap:var(--spacing-sm)}@media (min-width: 769px) and (max-width: 1200px){.dtanimation .app-toolbar{padding:var(--spacing-sm) var(--spacing-sm)}.dtanimation .app-toolbar .app-brand span{font-size:var(--font-size-sm)!important}}@media (max-width: 900px){.dtanimation .upgrade-button,.dtanimation .right-toolbar-button-text{display:none}.dtanimation .file-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (max-width: 520px){.dtanimation .file-name{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dtanimation .dt-topbar__right>.island{padding:var(--spacing-xs) var(--spacing-sm)!important}.dtanimation .dt-topbar__right .stack{gap:var(--spacing-xs)!important}}.dtanimation .theme-toolbar{position:absolute;bottom:calc(var(--spacing-md) + env(safe-area-inset-bottom));right:var(--spacing-md)}@media (min-width: 769px){.dtanimation .theme-toolbar{bottom:calc(16px + env(safe-area-inset-bottom));right:16px}}.dtanimation--mobile.dtanimation .theme-toolbar{display:none}@media (max-width: 768px){.dtanimation .theme-toolbar{bottom:calc(env(safe-area-inset-bottom) + 20px);right:20px}}.dtanimation .theme-toolbar .theme-toggle{background:none;border:none;padding:0;cursor:pointer;outline:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.dtanimation .theme-toolbar .theme-toggle:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--border-radius-sm)}.dtanimation .theme-toolbar .theme-toggle__track{position:relative;width:48px;height:24px;background-color:var(--color-gray-30, #d1d5db);border-radius:12px;transition:background-color var(--transition-base);display:flex;align-items:center;padding:2px}.dtanimation .theme-toolbar .theme-toggle__track--dark{background-color:var(--color-gray-70, #374151)}.dtanimation .theme-toolbar .theme-toggle__thumb{position:absolute;width:20px;height:20px;background-color:#fff;border-radius:50%;box-shadow:var(--shadow-sm);transition:transform var(--transition-base),background-color var(--transition-base);display:flex;align-items:center;justify-content:center;color:var(--color-gray-60, #6b7280);transform:translate(0)}.dtanimation .theme-toolbar .theme-toggle__thumb--dark{transform:translate(24px);background-color:var(--color-gray-80, #1f2937);color:var(--color-gray-40, #9ca3af)}.dtanimation .theme-toolbar .theme-toggle__thumb svg{width:14px;height:14px;flex-shrink:0}.dtanimation .theme-toolbar .theme-toggle:hover .theme-toggle__track{background-color:var(--color-gray-40, #9ca3af)}.dtanimation .theme-toolbar .theme-toggle:hover .theme-toggle__track--dark{background-color:var(--color-gray-60, #6b7280)}.dtanimation .theme-toolbar .theme-toggle:active .theme-toggle__thumb{box-shadow:var(--shadow-xs)}.dtanimation .theme-toolbar select{width:100px;background-color:var(--color-surface-secondary-container);color:var(--color-on-surface);border-radius:var(--border-radius-sm);padding:4px 8px;cursor:pointer;border:none;outline:none;font-size:14px}.dtanimation .theme-toolbar select:hover{background-color:var(--color-surface-primary-container)}.dtanimation .dtanimation-link,.dtanimation a{text-decoration:none;color:var(--link-color);-webkit-user-select:none;user-select:none;cursor:pointer}.dtanimation .dtanimation-link:hover,.dtanimation a:hover{text-decoration:underline}.dtanimation .dtanimation-link:active,.dtanimation a:active{text-decoration:none}.dtanimation .a{font-weight:500;text-decoration:none;color:var(--link-color);-webkit-user-select:none;user-select:none;cursor:pointer}.dtanimation textarea,.dtanimation input[type=text],.dtanimation input[type=email],.dtanimation input[type=password]{outline:none;border-radius:var(--border-radius-sm);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.dtanimation textarea:hover,.dtanimation input[type=text]:hover,.dtanimation input[type=email]:hover,.dtanimation input[type=password]:hover{border-color:var(--island-border-color)}.dtanimation textarea:focus,.dtanimation input[type=text]:focus,.dtanimation input[type=email]:focus,.dtanimation input[type=password]:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.dtanimation .dtanimation-button{display:flex;justify-content:center;align-items:center;padding:.625rem;width:var(--button-width, var(--default-button-size));height:var(--button-height, var(--default-button-size));box-sizing:border-box;border:none;border-style:none;border-color:var(--button-border, var(--default-border-color));border-radius:var(--border-radius-lg);cursor:pointer;background-color:var(--button-bg, var(--island-bg-color));color:var(--icon-fill-color);font-family:var(--ui-font)}.dtanimation .dtanimation-button svg{width:var(--button-width, var(--lg-icon-size));height:var(--button-height, var(--lg-icon-size))}.dtanimation .dtanimation-button:hover{background-color:var(--button-hover-bg, var(--island-bg-color));border-color:var(--button-hover-border, var(--button-border, var(--default-border-color)))}.dtanimation .dtanimation-button:active{background-color:var(--button-active-bg, var(--island-bg-color));border-color:var(--button-active-border, var(--color-primary-darkest))}.dtanimation .dtanimation-button.active{background-color:var(--button-selected-bg, var(--color-surface-primary-container));border-color:var(--button-selected-border, var(--color-surface-primary-container))}.dtanimation .dtanimation-button.active:hover{background-color:var(--button-selected-hover-bg, var(--color-surface-primary-container))}.dtanimation .dtanimation-button.active svg{color:var(--button-color, var(--color-on-primary-container))}.dtanimation [plait-mindmap=true] img.image-origin--focus:hover{cursor:zoom-in}.dtanimation [plait-mindmap=true] .text foreignObject .plait-text-container{text-align:center}.dtanimation [plait-mindmap=true] .text foreignObject .plait-text-container .slate-editable-container{text-align:center}.dtanimation .laser-pointer{background:transparent;position:fixed;left:0;top:0;z-index:2022;width:100vw;width:100dvw;height:100vh;height:100dvh}.dtanimation .laser-pointer.mouse-course-hidden{pointer-events:none}.plait-board-container.pointer-eraser .board-host-svg{cursor:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTAiIGN5PSIxMCIgcj0iNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNjY2IiBzdHJva2Utd2lkdGg9IjEuNSIvPgo8L3N2Zz4=) 10 10,crosshair!important}.plait-board-container .slate-editable-container{cursor:inherit!important}.dtanimation--mobile .plait-board-container{width:100%;height:100%;position:relative}@media (max-width: 768px){.plait-board-container{width:100%;height:100%;position:relative}}.Dialog-overlay{background:#12121233;display:grid;place-items:center}.Dialog{margin:15px;background-color:#fff;padding:15px;border-radius:4px}.dtanimation .dialog-mermaid-title{margin-block:.25rem;font-size:1.25rem;font-weight:700;padding-inline:2.5rem}:export{themeFilter:invert(93%) hue-rotate(180deg);rightSidebarWidth:302px}.dtanimation .Dialog.ttd-dialog{padding:1.25rem;display:flex;flex-direction:column;width:100%;max-width:1024px;height:100%;max-height:540px}.dtanimation .Dialog.ttd-dialog.Dialog--fullscreen{margin-top:0}.dtanimation .Dialog.ttd-dialog .Island{padding-inline:0!important;height:100%;display:flex;flex-direction:column;flex:1 1 auto;box-shadow:none}.dtanimation .Dialog.ttd-dialog .Modal__content{height:auto;max-height:100%}@media screen and (min-width: 861px){.dtanimation .Dialog.ttd-dialog .Modal__content{max-height:750px;height:100%}}.dtanimation .Dialog.ttd-dialog .Dialog__content{flex:1 1 auto}.dtanimation .ttd-dialog-desc{font-size:15px;font-style:italic;font-weight:500;margin-bottom:1.5rem}.dtanimation .ttd-dialog-tabs-root{width:100%;height:100%;display:flex;flex-direction:column}.dtanimation .ttd-dialog-tab-trigger{color:var(--color-on-surface);font-size:.875rem;margin:0;padding:0 1rem;background-color:transparent;border:0;height:2.875rem;font-weight:600;font-family:inherit;letter-spacing:.4px}.dtanimation .ttd-dialog-tab-trigger[data-state=active]{border-bottom:2px solid var(--color-primary)}.dtanimation .ttd-dialog-triggers{border-bottom:1px solid var(--color-surface-high);margin-bottom:1.5rem;padding-inline:2.5rem}.dtanimation .ttd-dialog-content{padding-inline:2.5rem;height:100%;display:flex;flex-direction:column}.dtanimation .ttd-dialog-content[hidden]{display:none}.dtanimation .ttd-dialog-input{width:auto;height:10rem;resize:none;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);white-space:pre-wrap;padding:.85rem;box-sizing:border-box;font-family:monospace}@media screen and (min-width: 861px){.dtanimation .ttd-dialog-input{width:100%;height:100%}}.dtanimation .ttd-dialog-output-wrapper{display:flex;align-items:center;justify-content:center;padding:.85rem;box-sizing:border-box;flex-grow:1;position:relative;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);height:400px;width:auto}@media screen and (min-width: 861px){.dtanimation .ttd-dialog-output-wrapper{width:100%;height:200px}}.dtanimation .ttd-dialog-output-wrapper canvas{max-width:100%;max-height:100%}.dtanimation .ttd-dialog-output-canvas-container{display:flex;width:100%;height:100%;align-items:center;justify-content:center;flex-grow:1;overflow:hidden}.dtanimation .ttd-dialog-output-error{color:red;font-weight:700;font-size:30px;word-break:break-word;overflow:auto;max-height:100%;height:100%;width:100%;text-align:center;position:absolute;z-index:10}.dtanimation .ttd-dialog-output-error p{font-weight:500;font-family:Cascadia;text-align:left;white-space:pre-wrap;font-size:.875rem;padding:0 10px}.dtanimation .ttd-dialog-panels{height:100%}@media screen and (min-width: 861px){.dtanimation .ttd-dialog-panels{display:grid;grid-template-columns:1fr 1fr;gap:4rem}}.dtanimation .ttd-dialog-panel{display:flex;flex-direction:column;width:100%}.dtanimation .ttd-dialog-panel__header{display:flex;margin:0 4px 4px;align-items:center;gap:1rem}.dtanimation .ttd-dialog-panel__header label{font-size:14px;font-style:normal;font-weight:600}.dtanimation .ttd-dialog-panel:first-child .ttd-dialog-panel-button-container:not(.invisible){margin-bottom:4rem}@media screen and (min-width: 861px){.dtanimation .ttd-dialog-panel .ttd-dialog-panel-button-container:not(.invisible){margin-bottom:.5rem!important}}.dtanimation .ttd-dialog-panel textarea{height:100%;resize:none;border-radius:var(--border-radius-lg);border:1px solid var(--dialog-border-color);white-space:pre-wrap;padding:.85rem;box-sizing:border-box;width:100%;font-family:monospace}@media screen and (max-width: 861px){.dtanimation .ttd-dialog-panel textarea{width:auto;height:10rem}}.dtanimation .ttd-dialog-panel-button-container{margin-top:1rem;margin-bottom:.5rem}.dtanimation .ttd-dialog-panel-button-container.invisible .ttd-dialog-panel-button{display:none}@media screen and (min-width: 861px){.dtanimation .ttd-dialog-panel-button-container.invisible .ttd-dialog-panel-button{display:block;visibility:hidden}}.dtanimation .ttd-dialog-panel-button{position:relative}.dtanimation .ttd-dialog-panel-button.dtanimation-button{font-family:inherit;font-weight:600;height:2.5rem;font-size:12px;color:#fff;background-color:var(--color-primary);width:100%}.dtanimation .ttd-dialog-panel-button.dtanimation-button:hover{background-color:var(--color-primary-darker)}.dtanimation .ttd-dialog-panel-button.dtanimation-button:active{background-color:var(--color-primary-darkest)}.dtanimation .ttd-dialog-panel-button.dtanimation-button:disabled{opacity:.5;cursor:not-allowed}.dtanimation .ttd-dialog-panel-button.dtanimation-button:disabled:hover{background-color:var(--color-primary)}@media screen and (min-width: 861px){.dtanimation .ttd-dialog-panel-button.dtanimation-button{width:auto;min-width:7.5rem}}.dtanimation.theme--dark.dtanimation .ttd-dialog-panel-button.dtanimation-button{color:var(--color-gray-100)}.dtanimation .ttd-dialog-panel-button div{display:contents}.dtanimation .ttd-dialog-panel-button div.invisible{visibility:hidden}.dtanimation .ttd-dialog-panel-button div.Spinner{display:flex!important;position:absolute;top:0;right:0;bottom:0;left:0;--spinner-color: white}.dtanimation.theme--dark.dtanimation .ttd-dialog-panel-button div.Spinner{--spinner-color: var(--color-gray-100)}.dtanimation .ttd-dialog-panel-button div span{padding-left:.5rem;display:flex}.dtanimation .ttd-dialog-submit-shortcut{margin-inline-start:.5rem;font-size:.625rem;opacity:.6;display:flex;gap:.125rem}.dtanimation .ttd-dialog-submit-shortcut__key{border:1px solid gray;padding:2px 3px;border-radius:4px}.clean-confirm{background:#fff;border-radius:8px;padding:20px;width:300px}.clean-confirm__title{font-size:18px;font-weight:500;margin:0 0 8px}.clean-confirm__description{color:#666;font-size:14px;margin:0 0 20px}.clean-confirm__actions{display:flex;justify-content:flex-end;gap:8px}.clean-confirm__button{padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;border:none}.clean-confirm__button--cancel{background:#f5f5f5;color:#000}.clean-confirm__button--cancel:hover{background:#e8e8e8}.clean-confirm__button--ok{background:#fff;color:#ff4d4f;border:1px solid #ff4d4f}.clean-confirm__button--ok:hover{color:#fff;background:#ff4d4f}.dtanimation .link-popup{padding-left:8px}.dtanimation .link-popup__link{font-size:14px}.dtanimation .link-popup .link-popup__link{display:inline-block;width:18rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dtanimation .link-popup__input{padding:10px 0;width:328px;border:none;border-radius:4px;font-size:14px;outline:none}.dtanimation-tutorial{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background-color:transparent;z-index:1}.dtanimation-tutorial .tutorial-overlay{position:absolute;width:100%;height:100%;pointer-events:auto;display:flex;justify-content:center;align-items:center;cursor:pointer}.dtanimation-tutorial .tutorial-card{pointer-events:auto;max-width:400px;width:90%;text-align:center}.dtanimation-tutorial .tutorial-card-content{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.dtanimation-tutorial .tutorial-card-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin:0;line-height:1.4}.dtanimation-tutorial .tutorial-card-subtitle{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-gray-60);margin:0;line-height:1.5}.dtanimation-tutorial .tutorial-animation-icon{display:flex;justify-content:center;align-items:center;margin:var(--spacing-xs) 0}.dtanimation-tutorial .tutorial-tips{display:flex;flex-direction:column;gap:var(--spacing-xs);width:100%;margin:var(--spacing-xs) 0}.dtanimation-tutorial .tutorial-tip{display:flex;align-items:center;gap:6px;font-size:var(--font-size-xs);color:var(--color-gray-60);text-align:left}.dtanimation-tutorial .tutorial-tip-key{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;background-color:var(--color-surface-high);border:1px solid var(--island-border-color);border-radius:var(--border-radius-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-on-surface);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,monospace}.dtanimation-tutorial .tutorial-tip-text{flex:1}.dtanimation-tutorial .tutorial-start-button{margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);background-color:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-fast),box-shadow var(--transition-fast);box-shadow:var(--shadow-sm)}.dtanimation-tutorial .tutorial-start-button:hover{background-color:var(--color-primary-hover);box-shadow:var(--shadow-md)}.dtanimation-tutorial .tutorial-start-button:active{background-color:var(--color-primary-darker);box-shadow:var(--shadow-xs)}.dtanimation-tutorial .tutorial-start-button:focus-visible{outline:none;box-shadow:var(--focus-ring-offset)}@media screen and (max-width: 768px){.dtanimation-tutorial .tutorial-card{max-width:90%;width:90%;margin-bottom:calc(56px + env(safe-area-inset-bottom))}.dtanimation-tutorial .tutorial-card-title{font-size:var(--font-size-lg)}.dtanimation-tutorial .tutorial-start-button{min-height:44px;padding:12px 24px}}.dtanimation--mobile .dtanimation-tutorial .tutorial-card{max-width:90%;margin-bottom:calc(56px + env(safe-area-inset-bottom))}@media (max-width: 768px){.dtanimation-tutorial .tutorial-card{max-width:90%;margin-bottom:calc(56px + env(safe-area-inset-bottom))}}.dtanimation .animation-icons-panel{position:fixed;left:calc(var(--spacing-sm, 12px) + 56px + var(--spacing-sm, 12px));top:calc(50% + 12px);transform:translateY(-50%);width:320px;height:80vh;max-height:calc(100vh - 240px);z-index:900;overflow:hidden;display:flex;flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);background-color:var(--island-bg-color);border:1px solid var(--island-border-color);box-shadow:var(--shadow-lg);border-radius:var(--border-radius-md)}@media (min-width: 769px) and (max-width: 1024px){.dtanimation .animation-icons-panel{width:300px;height:75vh;max-height:calc(100vh - 200px)}}.dtanimation .animation-icons-panel.animation-icons-panel--minimized{display:none}.dtanimation .animation-icons-panel .animation-icons-panel-content{display:flex;flex-direction:column;padding:0;height:100%}.dtanimation .animation-icons-panel .animation-icons-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-lg);border-bottom:1px solid var(--island-border-color);background-color:var(--island-bg-color);min-height:48px}.dtanimation .animation-icons-panel .animation-icons-tabs{display:flex;gap:0;padding:0 var(--spacing-lg);border-bottom:1px solid var(--island-border-color);background-color:var(--island-bg-color)}.dtanimation .animation-icons-panel .animation-icons-tabs .animation-icons-tab{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:none;background:none;border-bottom:2px solid transparent;color:var(--color-gray-60);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family-base);cursor:pointer;transition:all var(--transition-base);outline:none}.dtanimation .animation-icons-panel .animation-icons-tabs .animation-icons-tab:hover{color:var(--color-on-surface);background-color:var(--button-hover-bg)}.dtanimation .animation-icons-panel .animation-icons-tabs .animation-icons-tab:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.dtanimation .animation-icons-panel .animation-icons-tabs .animation-icons-tab--active{color:var(--color-on-surface);border-bottom-color:var(--color-primary);font-weight:var(--font-weight-semibold)}.dtanimation .animation-icons-panel .animation-icons-tabs .animation-icons-tab:active{background-color:var(--button-active-bg)}.dtanimation .animation-icons-panel .animation-icons-search{padding:var(--spacing-sm) var(--spacing-lg);border-bottom:1px solid var(--island-border-color)}.dtanimation .animation-icons-panel .animation-icons-search input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-family:var(--font-family-base);background-color:var(--island-bg-color);color:var(--color-on-surface);cursor:text;outline:none;transition:all var(--transition-base);box-sizing:border-box}.dtanimation .animation-icons-panel .animation-icons-search input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.dtanimation .animation-icons-panel .animation-icons-search input::placeholder{color:var(--color-gray-40);font-weight:var(--font-weight-normal)}.dtanimation .animation-icons-panel .animation-icons-search input:hover:not(:focus){border-color:var(--color-gray-30)}.dtanimation .animation-icons-panel .animation-icons-panel-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);line-height:1.4;color:var(--color-on-surface);margin:0;-webkit-user-select:none;user-select:none;white-space:nowrap;font-family:var(--font-family-base);letter-spacing:-.2px}.dtanimation .animation-icons-panel .animation-icons-panel-minimize-btn{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;color:var(--color-gray-60);transition:all var(--transition-base);border-radius:var(--border-radius-sm);min-width:44px;min-height:44px}.dtanimation .animation-icons-panel .animation-icons-panel-minimize-btn:hover{background-color:var(--button-hover-bg);color:var(--color-on-surface);box-shadow:var(--shadow-xs)}.dtanimation .animation-icons-panel .animation-icons-panel-minimize-btn:active{background-color:var(--button-active-bg);box-shadow:none}.dtanimation .animation-icons-panel .animation-icons-panel-minimize-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dtanimation .animation-icons-panel .animation-icons-accordion{overflow-y:auto;flex:1;padding:var(--spacing-xs) 0}.dtanimation .animation-icons-panel .animation-icons-accordion::-webkit-scrollbar{width:6px}.dtanimation .animation-icons-panel .animation-icons-accordion::-webkit-scrollbar-thumb{background:var(--color-gray-30);border-radius:10px}.dtanimation .animation-icons-panel .animation-icons-accordion .no-results-message{padding:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--color-gray-60);text-align:center;font-family:var(--font-family-base);line-height:1.5}.dtanimation .animation-icons-panel .animation-icons-section{margin-bottom:var(--spacing-xs)}.dtanimation .animation-icons-panel .animation-icons-section:last-child{margin-bottom:0}.dtanimation .animation-icons-panel .animation-icons-section-header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-lg);background:var(--island-bg-color);border:none;border-bottom:1px solid var(--island-border-color);cursor:pointer;font-family:var(--font-family-base);text-align:left;transition:background-color var(--transition-base),box-shadow var(--transition-base)}.dtanimation .animation-icons-panel .animation-icons-section-header:hover{background-color:var(--button-hover-bg);box-shadow:var(--shadow-xs)}.dtanimation .animation-icons-panel .animation-icons-section-header .animation-icons-section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:1.5;color:var(--color-on-surface);-webkit-user-select:none;user-select:none}.dtanimation .animation-icons-panel .animation-icons-section-header .animation-icons-section-arrow{display:flex;align-items:center;justify-content:center;color:var(--color-gray-60);transition:transform var(--transition-base);-webkit-user-select:none;user-select:none;width:12px;height:12px;flex-shrink:0}.dtanimation .animation-icons-panel .animation-icons-section-header .animation-icons-section-arrow svg{width:100%;height:100%}.dtanimation .animation-icons-panel .animation-icons-section-header .animation-icons-section-arrow.animation-icons-section-arrow--open{transform:rotate(90deg)}.dtanimation .animation-icons-panel .animation-icons-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg) var(--spacing-lg);background-color:var(--island-bg-color)}.dtanimation .animation-icons-panel .animation-icons-grid--virtualized{display:block!important;position:relative}.dtanimation .animation-icons-panel .animation-icons-load-more{margin:var(--spacing-md) var(--spacing-lg) var(--spacing-lg);width:calc(100% - var(--spacing-lg) * 2);padding:var(--spacing-sm) var(--spacing-md);text-align:center;background-color:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);color:var(--color-on-surface);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family-base);cursor:pointer;transition:all var(--transition-base);outline:none;box-sizing:border-box}.dtanimation .animation-icons-panel .animation-icons-load-more:hover:not(:disabled){background-color:var(--button-hover-bg);border-color:var(--color-primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.dtanimation .animation-icons-panel .animation-icons-load-more:active:not(:disabled){background-color:var(--button-active-bg);transform:translateY(0);box-shadow:none}.dtanimation .animation-icons-panel .animation-icons-load-more:disabled{cursor:not-allowed;opacity:.6}.dtanimation .animation-icons-panel .animation-icons-load-more:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dtanimation .animation-icons-library-grid-container{padding-left:12px!important;padding-right:12px!important}.dtanimation .animation-icons-library-grid-container .animation-icons-grid{display:grid!important;grid-template-columns:repeat(auto-fill,72px)!important;grid-auto-flow:row!important;gap:6px!important;row-gap:6px!important;column-gap:6px!important;padding:12px 0!important;align-items:start!important;justify-content:start!important;width:100%!important}@media (min-width: 1200px){.dtanimation .animation-icons-library-grid-container .animation-icons-grid{grid-template-columns:repeat(auto-fill,72px)!important}}@media (min-width: 768px) and (max-width: 1199px){.dtanimation .animation-icons-library-grid-container .animation-icons-grid{grid-template-columns:repeat(auto-fill,72px)!important}}@media (max-width: 767px){.dtanimation .animation-icons-library-grid-container .animation-icons-grid{grid-template-columns:repeat(auto-fill,72px)!important;gap:6px!important;padding:12px 0!important}}.dtanimation .animation-icons-library-grid-container .animation-icon-tile{padding:4px!important;background-color:#f8f9fa!important;border:1px solid #e5e7eb!important;border-radius:6px!important;min-height:52px!important;height:52px!important;width:52px!important;min-width:52px!important;max-width:52px!important;justify-content:center!important;align-items:center!important;position:relative!important;flex-direction:column!important;margin:0!important;display:flex!important;transition:all .15s ease!important}.dtanimation .animation-icons-library-grid-container .animation-icon-tile:hover{background-color:#f1f3f5!important;border-color:#d1d5db!important;box-shadow:0 2px 4px #00000014!important;transform:translateY(-1px)!important}.dtanimation .animation-icons-library-grid-container .animation-icon-tile:active{background-color:#e9ecef!important;transform:translateY(0)!important}.dtanimation .animation-icons-library-grid-container .animation-icon-tile .animation-icon-image{width:48px;height:48px;min-width:48px;min-height:48px;max-width:48px;max-height:48px;margin:0;flex-shrink:0;display:flex;align-items:center;justify-content:center}.dtanimation .animation-icons-library-grid-container .animation-icon-tile .animation-icon-image img{max-width:48px!important;max-height:48px!important;width:48px!important;height:48px!important;object-fit:contain!important;object-position:center!important}.dtanimation .animation-icons-library-grid-container .animation-icon-tile .animation-icon-image>div{width:48px;height:48px;max-width:48px;max-height:48px;overflow:hidden;display:flex;align-items:center;justify-content:center}.dtanimation .animation-icons-library-grid-container .animation-icon-tile .animation-icon-label{display:none!important}.dtanimation .animation-icons-library-grid-container .animation-icon-tile:hover .animation-icon-label{display:block!important;position:absolute!important;bottom:calc(100% + 8px)!important;left:50%!important;transform:translate(-50%)!important;background-color:#1f2937!important;color:#fff!important;font-size:11px!important;font-weight:500!important;padding:6px 10px!important;border-radius:6px!important;white-space:nowrap!important;opacity:1!important;visibility:visible!important;pointer-events:none!important;z-index:1000!important;box-shadow:0 2px 8px #00000026!important;max-width:200px!important;overflow:hidden!important;text-overflow:ellipsis!important;margin:0!important;width:auto!important;height:auto!important;line-height:1.4!important;text-align:left!important;transition:opacity .2s ease!important}.dtanimation .animation-icons-library-grid-container .animation-icon-tile:hover .animation-icon-label:after{content:""!important;position:absolute!important;top:100%!important;left:50%!important;transform:translate(-50%)!important;border:5px solid transparent!important;border-top-color:#1f2937!important}.dtanimation .animation-icons-library-grid-container .animation-icon-tile:hover .animation-icon-label{opacity:1!important;visibility:visible!important;transform:translate(-50%) translateY(0)!important}.dtanimation .animation-icon-tile{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm) var(--spacing-xs);border-radius:var(--border-radius-sm);background-color:var(--island-bg-color);border:1px solid var(--island-border-color);cursor:grab;transition:all var(--transition-base);-webkit-user-select:none;user-select:none;position:relative}.dtanimation .animation-icon-tile:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);background-color:var(--button-hover-bg);transform:translateY(-2px)}.dtanimation .animation-icon-tile .animation-icon-image{position:relative;width:44px;height:44px;min-width:44px;min-height:44px;max-width:44px;max-height:44px;display:flex;align-items:center;justify-content:center;pointer-events:none;margin-bottom:0;overflow:hidden;flex-shrink:0}.dtanimation .animation-icon-tile .animation-icon-image img{width:44px!important;height:44px!important;max-width:44px!important;max-height:44px!important;object-fit:contain!important;object-position:center!important;display:block}.dtanimation .animation-icon-tile .animation-icon-image>div{width:44px;height:44px;max-width:44px;max-height:44px;display:flex;align-items:center;justify-content:center;overflow:hidden}.dtanimation .animation-icon-tile .animation-icon-label{display:none}.dtanimation .animation-icon-tile:hover .animation-icon-label{display:block!important;position:absolute!important;bottom:calc(100% + 8px)!important;left:50%!important;transform:translate(-50%)!important;background-color:#1f2937!important;color:#fff!important;font-size:11px!important;font-weight:500!important;padding:6px 10px!important;border-radius:6px!important;white-space:nowrap!important;opacity:1!important;visibility:visible!important;pointer-events:none!important;z-index:1000!important;box-shadow:0 2px 8px #00000026!important;max-width:200px!important;overflow:hidden!important;text-overflow:ellipsis!important;margin:0!important;width:auto!important;height:auto!important;line-height:1.4!important;text-align:left!important;font-family:var(--font-family-base)!important;word-break:normal!important}.dtanimation .animation-icon-tile:hover .animation-icon-label:after{content:""!important;position:absolute!important;top:100%!important;left:50%!important;transform:translate(-50%)!important;border:5px solid transparent!important;border-top-color:#1f2937!important}.animation-icons-library-grid-container .dtanimation .animation-icon-tile .animation-icon-label{position:absolute!important;bottom:calc(100% + 8px)!important;left:50%!important;transform:translate(-50%) translateY(-4px)!important;background-color:#1f2937!important;color:#fff!important;font-size:11px!important;font-weight:500!important;padding:6px 10px!important;border-radius:6px!important;white-space:nowrap!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .2s ease,transform .2s ease,visibility .2s ease!important;z-index:1000!important;box-shadow:0 2px 8px #00000026!important;max-width:200px!important;overflow:hidden!important;text-overflow:ellipsis!important;display:block!important;margin:0!important;width:auto!important;height:auto!important;line-height:1.4!important;-webkit-line-clamp:unset!important;-webkit-box-orient:unset!important;word-break:normal!important;text-align:left!important;max-height:none!important}.animation-icons-library-grid-container .dtanimation .animation-icon-tile .animation-icon-label:after{content:""!important;position:absolute!important;top:100%!important;left:50%!important;transform:translate(-50%)!important;border:5px solid transparent!important;border-top-color:#1f2937!important}.animation-icons-library-grid-container .dtanimation .animation-icon-tile .animation-icon-tile:hover .animation-icon-label{opacity:1!important;visibility:visible!important;transform:translate(-50%) translateY(0)!important}.dtanimation .animation-icon-tile--locked{opacity:1;cursor:pointer!important}.dtanimation .animation-icon-tile--locked:hover{border-color:var(--color-gray-40);transform:none}.dtanimation .animation-icon-tile--locked .animation-icon-image{filter:grayscale(.15) contrast(1.05)}.dtanimation .animation-icon-tile--locked .animation-icon-lock-badge{position:absolute;top:6px;right:6px;transform:none;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:4px;background:#0000008c;color:#fff;border-radius:999px;padding:3px 6px;z-index:10;pointer-events:none;font-size:10px;line-height:1}.dtanimation .animation-icon-tile--locked .animation-icon-lock-badge__icon{font-size:11px;line-height:1}.dtanimation .animation-icon-tile--locked .animation-icon-lock-badge__text{font-size:10px;font-weight:700;line-height:1}.dtanimation.dtanimation--mobile .animation-icons-panel{position:fixed;left:0;right:0;top:auto;bottom:calc(56px + env(safe-area-inset-bottom));width:100%;max-width:100%;height:calc(75vh - 56px - env(safe-area-inset-bottom));max-height:calc(75vh - 56px - env(safe-area-inset-bottom));transform:none;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;border-left:none;border-right:none;border-bottom:none;box-shadow:0 -8px 24px #00000026;z-index:999}.dtanimation.dtanimation--mobile .animation-icons-panel-header{padding-top:var(--spacing-md);position:relative}.dtanimation.dtanimation--mobile .animation-icons-panel-header:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:40px;height:4px;background:var(--color-gray-30);border-radius:2px}@media (max-width: 768px){.dtanimation .animation-icons-panel{position:fixed!important;left:0!important;right:0!important;top:auto!important;bottom:calc(56px + env(safe-area-inset-bottom))!important;width:100%!important;max-width:100%!important;height:calc(75vh - 56px - env(safe-area-inset-bottom))!important;max-height:calc(75vh - 56px - env(safe-area-inset-bottom))!important;transform:none!important;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0!important;border-left:none!important;border-right:none!important;border-bottom:none!important;box-shadow:0 -8px 24px #00000026!important;z-index:999!important}.dtanimation .animation-icons-panel-header{position:sticky!important;top:0!important;z-index:10!important;background:var(--island-bg-color)!important;border-bottom:1px solid var(--island-border-color)!important;min-height:56px!important;padding:var(--spacing-sm) var(--spacing-md)!important}.dtanimation .animation-icons-panel-minimize-btn{min-width:44px!important;min-height:44px!important}.dtanimation .animation-icons-accordion{padding:var(--spacing-xs) 0}.dtanimation .animation-icons-grid{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-lg);gap:var(--spacing-sm)}.dtanimation .animation-icons-grid--virtualized{display:block!important;position:relative}.dtanimation .animation-icon-tile{min-height:80px;padding:var(--spacing-sm) var(--spacing-xs)}}@media (max-width: 768px){.dtanimation .animation-icons-panel{position:fixed!important;left:0!important;right:0!important;top:auto!important;bottom:calc(56px + env(safe-area-inset-bottom))!important;width:100%!important;max-width:100%!important;height:calc(75vh - 56px - env(safe-area-inset-bottom))!important;max-height:calc(75vh - 56px - env(safe-area-inset-bottom))!important;transform:none!important;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0!important;border-left:none!important;border-right:none!important;border-bottom:none!important;box-shadow:0 -8px 24px #00000026!important;z-index:999!important}.dtanimation .animation-icons-panel-header{position:sticky!important;top:0!important;z-index:10!important;background:var(--island-bg-color)!important;border-bottom:1px solid var(--island-border-color)!important;min-height:56px!important;padding:var(--spacing-sm) var(--spacing-md)!important}.dtanimation .animation-icons-panel-minimize-btn{min-width:44px!important;min-height:44px!important}}@media (max-width: 768px){.dtanimation.dtanimation--mobile .animation-icons-panel{height:80vh;max-height:80vh}}.flow-animated{stroke-dasharray:8 8!important;animation:flowDash 1s linear infinite!important;stroke-linecap:round!important;pointer-events:none}svg .flow-animated{stroke-dasharray:8 8!important}@keyframes flowDash{0%{stroke-dashoffset:16}to{stroke-dashoffset:0}}.dtanimation .templates-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000}.dtanimation .templates-panel{position:fixed;left:50%;top:calc(env(safe-area-inset-top) + 100px);transform:translate(-50%);width:85%;max-width:1200px;height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 180px);max-height:750px;z-index:1001;background:var(--island-bg-color);border:1px solid var(--island-border-color);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;border-radius:var(--border-radius-lg);overflow:hidden}.dtanimation .templates-panel .templates-panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--island-border-color);background-color:var(--island-bg-color);flex-shrink:0;gap:var(--spacing-md)}.dtanimation .templates-panel .templates-panel-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:1.4;color:var(--color-on-surface);font-family:var(--font-family-base);letter-spacing:-.2px;flex-shrink:0}.dtanimation .templates-panel .templates-panel-header .templates-header-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex:1;justify-content:flex-end}.dtanimation .templates-panel .templates-panel-header .templates-search{position:relative;flex:1;max-width:300px;display:flex;align-items:center}.dtanimation .templates-panel .templates-panel-header .templates-search .templates-search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-right:32px;border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);background:var(--island-bg-color);color:var(--color-on-surface);font-size:var(--font-size-sm);font-family:var(--font-family-base);transition:all var(--transition-base)}.dtanimation .templates-panel .templates-panel-header .templates-search .templates-search-input::placeholder{color:var(--color-gray-50)}.dtanimation .templates-panel .templates-panel-header .templates-search .templates-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.dtanimation .templates-panel .templates-panel-header .templates-search .templates-search-input:hover{border-color:var(--color-gray-40)}.dtanimation .templates-panel .templates-panel-header .templates-search .templates-search-clear{position:absolute;right:8px;background:none;border:none;font-size:18px;cursor:pointer;color:var(--color-gray-50);display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--border-radius-sm);transition:all var(--transition-base)}.dtanimation .templates-panel .templates-panel-header .templates-search .templates-search-clear:hover{color:var(--color-on-surface);background:#300a6e14}.dtanimation .templates-panel .templates-panel-header .templates-search .templates-search-clear:active{background:var(--button-active-bg)}.dtanimation .templates-panel .templates-panel-header .templates-search .templates-search-clear:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dtanimation .templates-panel .templates-panel-header .close-btn{background:none;border:none;font-size:20px;cursor:pointer;color:var(--color-gray-60);display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:var(--border-radius-sm);transition:all var(--transition-base);flex-shrink:0}.dtanimation .templates-panel .templates-panel-header .close-btn:hover{color:var(--color-on-surface);background:var(--button-hover-bg);box-shadow:var(--shadow-xs)}.dtanimation .templates-panel .templates-panel-header .close-btn:active{background:var(--button-active-bg);box-shadow:none}.dtanimation .templates-panel .templates-panel-header .close-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dtanimation .templates-panel .templates-panel-content{display:flex;flex:1;overflow:hidden}.dtanimation .templates-panel .templates-sidebar{width:240px;flex-shrink:0;border-right:1px solid var(--island-border-color);background-color:var(--island-bg-color);padding:var(--spacing-md);overflow-y:auto;-webkit-overflow-scrolling:touch}.dtanimation .templates-panel .templates-sidebar .templates-category{width:100%;padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-xs);text-align:left;background:none;border:none;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-60);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-family-base)}.dtanimation .templates-panel .templates-sidebar .templates-category:hover{background:var(--button-hover-bg);color:var(--color-on-surface)}.dtanimation .templates-panel .templates-sidebar .templates-category:active{background:var(--button-active-bg)}.dtanimation .templates-panel .templates-sidebar .templates-category--active{background:var(--color-primary);color:#fff;font-weight:var(--font-weight-semibold)}.dtanimation .templates-panel .templates-sidebar .templates-category--active:hover{background:var(--color-primary);color:#fff}.dtanimation .templates-panel .templates-sidebar .templates-category:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dtanimation .templates-panel .templates-grid-container{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:var(--spacing-lg)}.dtanimation .templates-panel .templates-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg)}.dtanimation .templates-panel .template-card{cursor:pointer;transition:all var(--transition-base)}.dtanimation .templates-panel .template-card .template-thumbnail{aspect-ratio:1;border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);overflow:hidden;background:var(--color-gray-10);display:block;margin-bottom:var(--spacing-sm);transition:all var(--transition-base);box-shadow:var(--shadow-xs);padding:0;position:relative}.dtanimation .templates-panel .template-card .template-thumbnail img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.dtanimation .templates-panel .template-card .template-thumbnail img.template-svg{object-fit:contain;padding:var(--spacing-xs)}.dtanimation .templates-panel .template-card .template-thumbnail .ach-placeholder,.dtanimation .templates-panel .template-card .template-thumbnail .template-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-primary);color:#fff;font-weight:var(--font-weight-bold);font-size:var(--font-size-xl);font-family:var(--font-family-base);line-height:1.2}.dtanimation .templates-panel .template-card .template-thumbnail .ach-placeholder svg,.dtanimation .templates-panel .template-card .template-thumbnail .template-placeholder svg{color:#fff;opacity:.8}.dtanimation .templates-panel .template-card .template-thumbnail .template-placeholder{background:var(--color-gray-20);color:var(--color-gray-50)}.dtanimation .templates-panel .template-card .template-thumbnail .template-placeholder svg{color:var(--color-gray-50)}.dtanimation .templates-panel .template-card .template-thumbnail .template-pro-badge{position:absolute;top:8px;right:8px;background:#00a3ff;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;display:flex;align-items:center;gap:4px;z-index:2}.dtanimation .templates-panel .template-card .template-thumbnail .template-card-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--transition-base);z-index:1}.dtanimation .templates-panel .template-card .template-thumbnail .template-use-btn{background:var(--color-primary);color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);font-family:var(--font-family-base)}.dtanimation .templates-panel .template-card .template-thumbnail .template-use-btn:hover{background:var(--color-primary);transform:scale(1.05);box-shadow:var(--shadow-md)}.dtanimation .templates-panel .template-card .template-thumbnail .template-use-btn:active{transform:scale(.98)}.dtanimation .templates-panel .template-card .template-thumbnail .template-use-btn:disabled{opacity:.5;cursor:not-allowed}.dtanimation .templates-panel .template-card .template-thumbnail .template-use-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dtanimation .templates-panel .template-card:hover .template-thumbnail{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.dtanimation .templates-panel .template-card:hover .template-thumbnail .template-card-overlay{opacity:1}.dtanimation .templates-panel .template-card:hover .template-name{color:var(--color-on-surface);font-weight:var(--font-weight-semibold)}.dtanimation .templates-panel .template-card--pro-locked{opacity:.6;cursor:not-allowed}.dtanimation .templates-panel .template-card .template-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-60);text-align:left;padding:0 var(--spacing-xs);font-family:var(--font-family-base);transition:all var(--transition-base)}@media (max-width: 1024px){.dtanimation .templates-panel .templates-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.dtanimation .templates-panel{position:fixed;left:0;right:0;top:auto;bottom:calc(56px + env(safe-area-inset-bottom));width:100%;max-width:100%;height:calc(75vh - 56px - env(safe-area-inset-bottom));max-height:calc(75vh - 56px - env(safe-area-inset-bottom));transform:none;border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;border-left:none;border-right:none;border-bottom:none;box-shadow:0 -8px 24px #00000026;z-index:2000}.dtanimation .templates-panel .templates-panel-header{position:sticky;top:0;z-index:10;background:var(--island-bg-color);border-bottom:1px solid var(--island-border-color);padding:var(--spacing-md);min-height:56px;flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.dtanimation .templates-panel .templates-panel-header:before{content:"";position:absolute;top:8px;left:50%;transform:translate(-50%);width:40px;height:4px;background:var(--color-gray-30);border-radius:2px}.dtanimation .templates-panel .templates-panel-header h3{font-size:var(--font-size-md)}.dtanimation .templates-panel .templates-panel-header .templates-header-actions{width:100%;max-width:none}.dtanimation .templates-panel .templates-panel-header .templates-search{max-width:none}.dtanimation .templates-panel .templates-panel-header .close-btn{min-width:44px;min-height:44px}.dtanimation .templates-panel .templates-panel-content{flex-direction:column}.dtanimation .templates-panel .templates-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--island-border-color);padding:var(--spacing-sm) var(--spacing-md);overflow-x:auto;overflow-y:hidden;display:flex;gap:var(--spacing-xs)}.dtanimation .templates-panel .templates-sidebar .templates-category{flex-shrink:0;margin-bottom:0;white-space:nowrap}.dtanimation .templates-panel .templates-grid-container{padding:var(--spacing-md)}.dtanimation .templates-panel .templates-grid{grid-template-columns:repeat(1,1fr);gap:var(--spacing-md)}}.dtanimation.presentation-mode-active{position:fixed!important;top:0!important;left:0!important;width:100vw!important;height:100vh!important;z-index:10000!important;background:#fff!important;margin:0!important;padding:0!important}.dtanimation.presentation-mode-active .app-toolbar,.dtanimation.presentation-mode-active .creation-toolbar,.dtanimation.presentation-mode-active .zoom-toolbar,.dtanimation.presentation-mode-active .theme-toolbar,.dtanimation.presentation-mode-active .history-toolbar,.dtanimation.presentation-mode-active .right-toolbar,.dtanimation.presentation-mode-active .popup-toolbar,.dtanimation.presentation-mode-active .animation-icons-panel,.dtanimation.presentation-mode-active .templates-panel{display:none!important}.dtanimation.presentation-mode-active .plait-board-container{width:100%!important;height:100%!important;position:relative!important}.dtanimation.presentation-mode-active .viewport-container{width:100%!important;height:100%!important;overflow:auto!important}.dtanimation.presentation-mode-active svg.board-host-svg{width:100%!important;height:100%!important}.dtanimation.presentation-mode-active svg.board-active-svg{width:100%!important;height:100%!important}.presentation-mode-controls{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:10001;pointer-events:auto}.presentation-controls{background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);pointer-events:auto}.presentation-controls .presentation-layer-item{background:#f5f5f5;border:1px solid #e0e0e0;border-radius:10px;padding:4px 10px;margin:2px 0;transition:background .15s ease,border-color .15s ease}.presentation-controls .presentation-layer-item:hover{background:#eee;border-color:#d0d0d0}.presentation-controls .presentation-layer-row{width:100%}.presentation-controls .presentation-layer-eye{border-radius:6px}.presentation-controls .presentation-layer-name{font-weight:600;color:#333}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%;background:#fff;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Noto Sans,Noto Sans CJK SC,Microsoft Yahei,Hiragino Sans GB,Arial,sans-serif}.login-container{background:#fff;border-radius:.375rem;padding:48px 40px;box-shadow:0 0 16px #00000014;border:1px solid #eeeeee;max-width:400px;width:100%;text-align:center}.login-title{font-size:32px;font-weight:900;color:#020617;margin:0 0 8px;letter-spacing:-.04em;font-family:inherit}.login-subtitle{font-size:16px;color:#666;margin:0 0 32px;font-family:inherit}.login-tabs{display:flex;gap:0;margin-bottom:24px;border-bottom:1px solid #eeeeee}.login-tab{flex:1;padding:12px 16px;background:none;border:none;font-size:15px;font-weight:500;color:#999;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s ease;font-family:inherit}.login-tab:hover{color:#666}.login-tab.active{color:#6200ee;border-bottom-color:#6200ee}.login-forgot-link{background:none;border:none;padding:0;font-size:13px;color:#666;cursor:pointer;font-family:inherit;font-weight:500;transition:color .2s ease}.login-forgot-link:hover{color:#000;text-decoration:underline}.login-form{text-align:left;margin-bottom:24px}.login-form-group{margin-bottom:20px;text-align:left}.login-form-group label{display:block;font-size:14px;font-weight:500;color:#666;margin-bottom:8px;font-family:inherit}.login-form-group input{width:100%;padding:10px 12px;font-size:15px;border:1px solid #eeeeee;border-radius:.375rem;outline:none;transition:all .2s ease;box-sizing:border-box;background:#fff;color:#333;font-family:inherit}.login-form-group input:focus{border-color:#00a3ff;box-shadow:0 0 0 2px #00a3ff33}.login-form-group input::placeholder{color:#b8b8b8}.login-form-group input:disabled{opacity:.6;cursor:not-allowed;background:#f5f5f5}.login-error-text{display:block;color:#d32f2f;font-size:12px;margin-top:4px;font-family:inherit}.login-divider{display:flex;align-items:center;margin:24px 0;color:#b8b8b8}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:#eee}.login-divider span{padding:0 16px;font-size:13px;font-family:inherit}.login-button{width:100%;padding:12px 24px;font-size:15px;font-weight:500;border:none;border-radius:.375rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:16px;font-family:inherit}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-button-primary{color:#fff;background:#00a3ff;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);transform:translateY(0)}.login-button-primary:hover:not(:disabled){background:#0099e6;transform:translateY(-2px);box-shadow:0 4px 12px #00a3ff4d}.login-button-primary:active:not(:disabled){background:#0080cc;transform:translateY(0)}.login-button-google{color:#333;background:#fff;border:1px solid #eeeeee}.login-button-google:hover:not(:disabled){background:#f5f5f5;border-color:#d6d6d6}.login-button-google:active:not(:disabled){background:#eee}.login-button-google svg{flex-shrink:0}.login-button-secondary{color:#666;background:#fff;border:1px solid #eeeeee}.login-button-secondary:hover:not(:disabled){background:#f5f5f5;border-color:#d6d6d6}.login-button-secondary:active:not(:disabled){background:#eee}.login-button-group{margin-top:8px}.login-verification-message{background:#f9f9f9;border:1px solid #eeeeee;border-radius:.375rem;padding:16px;margin-bottom:24px;text-align:center}.login-verification-message p{margin:0;color:#333;font-size:14px;line-height:1.5;font-family:inherit}.login-error{color:#d32f2f;font-size:14px;margin:0;padding-top:16px;border-top:1px solid #eeeeee;font-family:inherit}.user-menu{position:absolute;top:24px;right:24px;z-index:1000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Noto Sans,Noto Sans CJK SC,Microsoft Yahei,Hiragino Sans GB,Arial,sans-serif}.user-menu-trigger{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #0000001a}.user-menu-trigger:hover{background:#f5f5f5;border-color:#ccc;box-shadow:0 4px 12px #00000026}.user-menu-trigger .user-avatar{width:32px;height:32px;border-radius:50%;background:#000;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0}.user-menu-trigger .user-email{font-size:14px;font-weight:500;color:#333;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-trigger svg{transition:transform .2s ease;color:#666;flex-shrink:0}.user-menu-trigger svg.open{transform:rotate(180deg)}.user-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999}.user-menu-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid #e0e0e0;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:280px;z-index:1001;overflow:hidden}.user-menu-info{display:flex;align-items:center;gap:12px;padding:16px;background:#f9f9f9}.user-menu-info .user-avatar-large{width:48px;height:48px;border-radius:50%;background:#000;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px;flex-shrink:0}.user-menu-info .user-details{flex:1;min-width:0}.user-menu-info .user-details .user-name{font-size:14px;font-weight:500;color:#333;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-info .user-details .user-id{font-size:12px;color:#999}.user-menu-divider{height:1px;background:#e0e0e0;margin:8px 0}.user-menu-item{width:100%;display:flex;align-items:center;gap:12px;padding:12px 16px;background:none;border:none;text-align:left;font-size:14px;color:#333;cursor:pointer;transition:background .2s ease}.user-menu-item:hover{background:#f5f5f5}.user-menu-item svg{flex-shrink:0;color:#666}@media (max-width: 768px){.user-menu{top:20px;right:20px}.user-menu-trigger .user-email{display:none}}.share-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:var(--spacing-md);box-sizing:border-box}.share-modal{background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);width:100%;max-width:560px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box}.share-modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--island-border-color);flex-shrink:0}.share-modal__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin:0;font-family:var(--font-family-base)}.share-modal__close{width:32px;height:32px;border:none;background:transparent;color:var(--color-gray-60);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);transition:all var(--transition-base);padding:0;box-sizing:border-box}.share-modal__close:hover{background:var(--button-hover-bg);color:var(--color-on-surface)}.share-modal__close:focus-visible{outline:none;box-shadow:var(--focus-ring-offset)}.share-modal__tabs{display:flex;border-bottom:1px solid var(--island-border-color);padding:0 var(--spacing-lg);gap:0;flex-shrink:0}.share-modal__tab{padding:var(--spacing-md) var(--spacing-lg);border:none;background:transparent;color:var(--color-gray-60);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family-base);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--transition-base);position:relative}.share-modal__tab:hover{color:var(--color-on-surface)}.share-modal__tab--active{color:var(--color-on-surface);border-bottom-color:var(--color-primary)}.share-modal__tab:focus-visible{outline:none;box-shadow:var(--focus-ring-offset)}.share-modal__content{flex:1;overflow-y:auto;padding:var(--spacing-lg);min-height:0}.share-modal__tab-content{display:flex;flex-direction:column;gap:var(--spacing-lg)}.share-modal__field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.share-modal__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-on-surface);font-family:var(--font-family-base)}.share-modal__input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);font-family:var(--font-family-base);border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);background:var(--island-bg-color);color:var(--color-on-surface);box-sizing:border-box;transition:all var(--transition-base)}.share-modal__input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.share-modal__input::placeholder{color:var(--color-gray-40)}.share-modal__link-section{padding-top:var(--spacing-md);border-top:1px solid var(--island-border-color)}.share-modal__link-row{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.share-modal__link-label{font-size:var(--font-size-sm);color:var(--color-on-surface);font-family:var(--font-family-base);font-weight:var(--font-weight-medium);margin-right:auto}.share-modal__select{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family-base);border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);background:var(--island-bg-color);color:var(--color-on-surface);cursor:pointer;transition:all var(--transition-base);box-sizing:border-box}.share-modal__select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.share-modal__section{padding-top:var(--spacing-md);border-top:1px solid var(--island-border-color)}.share-modal__section-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin-bottom:var(--spacing-md);font-family:var(--font-family-base)}.share-modal__access-row{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}.share-modal__access-label{font-size:var(--font-size-sm);color:var(--color-on-surface);font-family:var(--font-family-base)}.share-modal__info-banner{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-gray-10);border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);color:var(--color-gray-60);font-size:var(--font-size-sm);font-family:var(--font-family-base);line-height:1.5}.share-modal__info-banner svg{flex-shrink:0;margin-top:2px}.share-modal__preview-box{width:100%;height:300px;border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);background:var(--color-gray-10);display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.share-modal__preview-box iframe{width:100%;height:100%;border:0;border-radius:var(--border-radius-sm)}.share-modal__preview-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);color:var(--color-gray-40)}.share-modal__preview-placeholder svg{opacity:.5}.share-modal__preview-placeholder span{font-size:var(--font-size-sm);font-family:var(--font-family-base)}.share-modal__actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.share-modal__btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);background:var(--island-bg-color);color:var(--color-on-surface);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:var(--font-family-base);cursor:pointer;transition:all var(--transition-base);min-height:36px;box-sizing:border-box;white-space:nowrap}.share-modal__btn:hover{background:var(--button-hover-bg);border-color:var(--color-gray-30)}.share-modal__btn:active{background:var(--button-active-bg)}.share-modal__btn:focus-visible{outline:none;box-shadow:var(--focus-ring-offset)}.share-modal__btn--primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.share-modal__btn--primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.share-modal__btn--primary:active{background:var(--color-primary-darkest);border-color:var(--color-primary-darkest)}.share-modal__publish-cards{display:flex;flex-direction:column;gap:var(--spacing-md)}.share-modal__publish-card{padding:var(--spacing-lg);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);background:var(--island-bg-color);display:flex;flex-direction:column;gap:var(--spacing-sm);transition:all var(--transition-base)}.share-modal__publish-card:hover{box-shadow:var(--shadow-sm);border-color:var(--color-gray-30)}.share-modal__publish-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--color-gray-10);border-radius:var(--border-radius-sm);color:var(--color-on-surface);margin-bottom:var(--spacing-xs)}.share-modal__publish-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin:0;font-family:var(--font-family-base)}.share-modal__publish-desc{font-size:var(--font-size-sm);color:var(--color-gray-60);margin:0 0 var(--spacing-md) 0;font-family:var(--font-family-base);line-height:1.5}@media (max-width: 768px){.share-modal{max-width:100%;max-height:100vh;border-radius:0}.share-modal__link-row{flex-direction:column;align-items:stretch}.share-modal__link-row .share-modal__select,.share-modal__link-row .share-modal__btn{width:100%}.share-modal__access-row{flex-direction:column;align-items:stretch}.share-modal__access-row .share-modal__select{width:100%}}.upgrade-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:var(--spacing-md);box-sizing:border-box}.upgrade-modal{background:var(--island-bg-color, #ffffff);border:1px solid var(--island-border-color, #e5e7eb);border-radius:var(--border-radius-md, 12px);box-shadow:var(--shadow-lg, 0 10px 40px rgba(0, 0, 0, .15));padding:var(--spacing-xl, 24px);max-width:480px;width:100%;position:relative;box-sizing:border-box}.upgrade-modal__close{position:absolute;top:var(--spacing-md, 16px);right:var(--spacing-md, 16px);background:none;border:none;font-size:24px;line-height:1;color:var(--color-gray-60, #666666);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm, 8px);transition:all var(--transition-base, .2s ease)}.upgrade-modal__close:hover{background:var(--button-hover-bg, #f5f5f5);color:var(--color-on-surface, #000000)}.upgrade-modal__close:focus-visible{outline:none;box-shadow:var(--focus-ring, 0 0 0 2px rgba(0, 0, 0, .1))}.upgrade-modal__title{font-size:var(--font-size-xl, 20px);font-weight:var(--font-weight-semibold, 600);color:var(--color-on-surface, #000000);margin:0 0 var(--spacing-md, 16px) 0;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.upgrade-modal__message{font-size:var(--font-size-base, 14px);color:var(--color-gray-60, #666666);margin:0 0 var(--spacing-lg, 20px) 0;line-height:1.5;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.upgrade-modal__features{list-style:none;padding:0;margin:0 0 var(--spacing-lg, 20px) 0}.upgrade-modal__features li{font-size:var(--font-size-base, 14px);color:var(--color-on-surface, #000000);padding:var(--spacing-xs, 8px) 0;padding-left:var(--spacing-lg, 20px);position:relative;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.upgrade-modal__features li:before{content:"•";position:absolute;left:var(--spacing-sm, 12px);color:var(--color-primary, #000000);font-weight:700}.upgrade-modal__actions{display:flex;gap:var(--spacing-md, 16px);justify-content:flex-end;margin-top:var(--spacing-lg, 20px)}@media (prefers-color-scheme: dark){.upgrade-modal-overlay{background:#000000b3}.upgrade-modal{background:var(--island-bg-color, #1a1a1a);border-color:var(--island-border-color, #333333);color:var(--color-on-surface, #ffffff)}.upgrade-modal__title{color:var(--color-on-surface, #ffffff)}.upgrade-modal__message{color:var(--color-gray-60, #999999)}.upgrade-modal__features li{color:var(--color-on-surface, #ffffff)}.upgrade-modal__close{color:var(--color-gray-60, #999999)}.upgrade-modal__close:hover{background:var(--button-hover-bg, #2a2a2a);color:var(--color-on-surface, #ffffff)}}.page-tabs-container{position:fixed;bottom:calc(env(safe-area-inset-bottom) + var(--spacing-sm, 8px));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--spacing-xs, 4px);background:var(--island-bg-color, #ffffff);padding:var(--spacing-xs, 4px);border-radius:var(--border-radius-md, 12px);box-shadow:var(--shadow-md, 0 4px 12px rgba(0, 0, 0, .08));border:1px solid var(--island-border-color, #e5e7eb);z-index:1000;max-width:80vw;max-width:min(80vw,100vw - 16px);overflow-x:auto;scrollbar-width:none}@media (min-width: 769px){.page-tabs-container{bottom:calc(16px + env(safe-area-inset-bottom))}}.page-tabs-container::-webkit-scrollbar{display:none}@media (max-width: 768px){.page-tabs-container{bottom:calc(56px + env(safe-area-inset-bottom) + var(--spacing-sm, 8px));max-width:calc(100vw - var(--spacing-md, 16px));padding:var(--spacing-xs, 4px) var(--spacing-sm, 8px)}}.page-tab-wrapper{display:flex;align-items:center;border-radius:6px;transition:all .2s ease;position:relative}.page-tab-wrapper:hover{background:#f5f5f5}.page-tab-wrapper:hover .delete-page-button{opacity:1}.page-tab-wrapper.active{background:#00a3ff}.page-tab-wrapper.active .page-tab{color:#fff}.page-tab-wrapper.active .delete-page-button{opacity:1;color:#fff9}.page-tab-wrapper.active .delete-page-button:hover{color:#fff;background:#fff3}.page-tab{pointer-events:auto}.page-tab{padding:6px 8px 6px 12px;border:none;background:transparent;color:#666;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s ease}.delete-page-button{width:20px;height:20px;min-width:20px;min-height:20px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#999;font-size:18px;line-height:1;cursor:pointer;margin-right:4px;border-radius:4px;opacity:0;transition:all .2s ease;pointer-events:auto;position:relative;z-index:10;flex-shrink:0}.delete-page-button:hover{background:#eee;color:#020617}.add-page-button{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px dashed #cccccc;background:transparent;color:#666;font-size:18px;cursor:pointer;margin-left:4px;transition:all .2s ease}.add-page-button:hover{border-color:#00a3ff;color:#00a3ff;background:#f5f5f5}@media (max-width: 768px){.page-tabs-container{bottom:calc(64px + env(safe-area-inset-bottom));z-index:999}.page-tab,.add-page-button,.delete-page-button{min-height:44px;min-width:44px}}.dtanimation--mobile .page-tabs-container{bottom:calc(64px + env(safe-area-inset-bottom))}.contact-sales-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:var(--spacing-md);box-sizing:border-box}.contact-sales-modal{background:var(--island-bg-color, #ffffff);border:1px solid var(--island-border-color, #e5e7eb);border-radius:var(--border-radius-md, 12px);box-shadow:var(--shadow-lg, 0 10px 40px rgba(0, 0, 0, .15));max-width:1000px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-sizing:border-box}.contact-sales-modal__close{position:absolute;top:var(--spacing-md, 16px);right:var(--spacing-md, 16px);background:none;border:none;font-size:24px;line-height:1;color:var(--color-gray-60, #666666);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm, 8px);transition:all var(--transition-base, .2s ease);z-index:1}.contact-sales-modal__close:hover{background:var(--button-hover-bg, #f5f5f5);color:var(--color-on-surface, #000000)}.contact-sales-modal__close:focus-visible{outline:none;box-shadow:var(--focus-ring, 0 0 0 2px rgba(0, 0, 0, .1))}.contact-sales-modal__content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl, 24px);padding:var(--spacing-xl, 24px)}@media (max-width: 768px){.contact-sales-modal__content{grid-template-columns:1fr;padding:var(--spacing-lg, 20px)}}.contact-sales-modal__left{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-lg, 20px)}.contact-sales-modal__animation{width:100%;max-width:400px;height:400px;display:flex;align-items:center;justify-content:center}.contact-sales-modal__title{font-size:var(--font-size-xl, 20px);font-weight:var(--font-weight-semibold, 600);color:var(--color-on-surface, #000000);margin:0;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.contact-sales-modal__benefits{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-md, 16px)}.contact-sales-modal__benefits li{font-size:var(--font-size-base, 14px);color:var(--color-on-surface, #000000);line-height:1.5;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);padding-left:var(--spacing-lg, 20px);position:relative}.contact-sales-modal__benefits li:before{content:"•";position:absolute;left:0;color:var(--color-primary, #000000)}.contact-sales-modal__trusted{margin-top:var(--spacing-md, 16px)}.contact-sales-modal__trusted p{font-size:var(--font-size-sm, 12px);color:var(--color-gray-60, #666666);margin:0 0 var(--spacing-sm, 12px) 0;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.contact-sales-modal__logos{display:flex;flex-wrap:wrap;gap:var(--spacing-md, 16px);align-items:center}.contact-sales-modal__logos span{font-size:var(--font-size-sm, 12px);color:var(--color-gray-60, #666666);font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);opacity:.7}.contact-sales-modal__right{display:flex;flex-direction:column}.contact-sales-modal__form-title{font-size:var(--font-size-xl, 20px);font-weight:var(--font-weight-semibold, 600);color:var(--color-on-surface, #000000);margin:0 0 var(--spacing-sm, 12px) 0;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.contact-sales-modal__form-subtitle{font-size:var(--font-size-base, 14px);color:var(--color-gray-60, #666666);margin:0 0 var(--spacing-lg, 20px) 0;line-height:1.5;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.contact-sales-modal__form{display:flex;flex-direction:column;gap:var(--spacing-md, 16px)}.contact-sales-modal__form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md, 16px)}.contact-sales-modal__form-field{display:flex;flex-direction:column;gap:var(--spacing-xs, 8px)}.contact-sales-modal__form-field label{font-size:var(--font-size-sm, 12px);font-weight:var(--font-weight-medium, 500);color:var(--color-on-surface, #000000);font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.contact-sales-modal__form-field label .required{color:#dc2626;margin-left:2px}.contact-sales-modal__form-field input,.contact-sales-modal__form-field textarea{padding:var(--spacing-sm, 12px);border:1px solid var(--island-border-color, #e5e7eb);border-radius:var(--border-radius-sm, 8px);font-size:var(--font-size-base, 14px);font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);color:var(--color-on-surface, #000000);background:var(--island-bg-color, #ffffff);transition:border-color var(--transition-base, .2s ease)}.contact-sales-modal__form-field input:focus,.contact-sales-modal__form-field textarea:focus{outline:none;border-color:var(--color-primary, #000000)}.contact-sales-modal__form-field input.error,.contact-sales-modal__form-field textarea.error{border-color:#dc2626}.contact-sales-modal__form-field input::placeholder,.contact-sales-modal__form-field textarea::placeholder{color:var(--color-gray-60, #666666)}.contact-sales-modal__form-field textarea{resize:vertical;min-height:100px}.contact-sales-modal__error{font-size:var(--font-size-xs, 11px);color:#dc2626;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.contact-sales-modal__user-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-xs, 8px);justify-content:center}.contact-sales-modal__user-button{padding:var(--spacing-xs, 8px) var(--spacing-sm, 12px);border:1px solid var(--island-border-color, #e5e7eb);border-radius:var(--border-radius-sm, 8px);background:var(--island-bg-color, #ffffff);color:var(--color-on-surface, #000000);font-size:var(--font-size-sm, 12px);font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);cursor:pointer;transition:all var(--transition-base, .2s ease)}.contact-sales-modal__user-button:hover{border-color:var(--color-primary, #000000);background:var(--button-hover-bg, #f5f5f5)}.contact-sales-modal__user-button.active{background:var(--color-primary, #000000);color:#fff;border-color:var(--color-primary, #000000)}@media (prefers-color-scheme: dark){.contact-sales-modal-overlay{background:#000000b3}.contact-sales-modal{background:var(--island-bg-color, #1a1a1a);border-color:var(--island-border-color, #333333)}.contact-sales-modal__title,.contact-sales-modal__form-title,.contact-sales-modal__benefits li{color:var(--color-on-surface, #ffffff)}.contact-sales-modal__close{color:var(--color-gray-60, #999999)}.contact-sales-modal__close:hover{background:var(--button-hover-bg, #2a2a2a);color:var(--color-on-surface, #ffffff)}.contact-sales-modal__form-field input,.contact-sales-modal__form-field textarea,.contact-sales-modal__user-button{background:var(--island-bg-color, #1a1a1a);border-color:var(--island-border-color, #333333);color:var(--color-on-surface, #ffffff)}.contact-sales-modal__user-button:hover{background:var(--button-hover-bg, #2a2a2a)}.contact-sales-modal__user-button.active{background:var(--color-primary, #000000);color:#fff}}:root{--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Noto Sans", "Noto Sans CJK SC", "Microsoft Yahei", "Hiragino Sans GB", Arial, sans-serif;--color-brand-purple: #6200EE;--color-brand-blue: #00A3FF;--color-slate-950: #020617;--color-on-surface: #020617;--color-gray-10: #f5f5f5;--color-gray-30: #d6d6d6;--color-gray-40: #b8b8b8;--color-gray-50: #999999;--color-gray-60: #7a7a7a;--color-primary: #00A3FF;--color-primary-hover: #0099E6;--color-primary-darkest: #0080CC;--color-secondary: #6200EE;--island-bg-color: #ffffff;--island-border-color: #e5e7eb;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-premium: 0 12px 32px rgba(0, 163, 255, .15);--border-radius-sm: .5rem;--border-radius-md: .75rem;--border-radius-card: 1rem;--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 2rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-black: 900;--transition-base: .2s ease;--transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--focus-ring: 0 0 0 2px rgba(98, 0, 238, .2);--focus-ring-offset: 0 0 0 2px #ffffff, 0 0 0 4px rgba(98, 0, 238, .2);--button-hover-bg: #f5f5f5;--button-active-bg: #eeeeee}.page{font-family:var(--font-family-base);color:var(--color-on-surface);line-height:1.5}h1,h2{font-weight:var(--font-weight-black);letter-spacing:-.04em;color:var(--color-slate-950);font-family:var(--font-family-base)}h1{font-size:var(--font-size-2xl);margin:0 0 var(--spacing-md) 0}h2{font-size:var(--font-size-xl);margin:0 0 var(--spacing-sm) 0}.page__header{margin-bottom:var(--spacing-lg);text-align:center}@media (max-width: 768px){.page__header{margin-bottom:var(--spacing-md)}}.page__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-black);color:var(--color-slate-950);margin:0 0 var(--spacing-xs) 0;letter-spacing:-.04em}@media (max-width: 768px){.page__title{font-size:var(--font-size-lg)}}.page__subtitle{font-size:var(--font-size-base);color:var(--color-gray-60);margin:0;font-weight:var(--font-weight-normal)}.card{background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-card);box-shadow:var(--shadow-premium);padding:var(--spacing-lg);transition:box-shadow var(--transition-smooth),border-color var(--transition-smooth),transform var(--transition-smooth)}.card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-gray-30)}@media (max-width: 768px){.card{padding:var(--spacing-md);border-radius:var(--border-radius-md)}}.card--compact{padding:var(--spacing-md)}.card--empty{text-align:center;padding:var(--spacing-2xl) var(--spacing-lg);color:var(--color-gray-60);background:var(--color-gray-10);border:1px dashed var(--island-border-color)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);font-family:var(--font-family-base);border:1px solid transparent;border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-base);min-height:44px;text-decoration:none;box-sizing:border-box}.btn:disabled{opacity:.6;cursor:not-allowed;pointer-events:none}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring-offset)}@media (max-width: 768px){.btn{min-height:44px;padding:var(--spacing-sm) var(--spacing-md)}}.btn--primary{color:#fff;background:var(--color-brand-blue);border-color:var(--color-brand-blue);font-weight:var(--font-weight-bold);transition:all var(--transition-smooth),transform var(--transition-smooth);transform:translateY(0)}.btn--primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #00a3ff4d}.btn--primary:active:not(:disabled){background:var(--color-primary-darkest);border-color:var(--color-primary-darkest);transform:translateY(0)}.btn--secondary{color:var(--color-on-surface);background:var(--island-bg-color);border-color:var(--island-border-color)}.btn--secondary:hover:not(:disabled){background:var(--button-hover-bg);border-color:var(--color-gray-30)}.btn--secondary:active:not(:disabled){background:var(--button-active-bg);border-color:var(--color-primary)}.btn--ghost{color:var(--color-on-surface);background:transparent;border-color:transparent}.btn--ghost:hover:not(:disabled){background:var(--button-hover-bg)}.btn--ghost:active:not(:disabled){background:var(--button-active-bg)}.btn--danger{color:#d32f2f;background:var(--island-bg-color);border-color:var(--island-border-color)}.btn--danger:hover:not(:disabled){background:#fff5f5;border-color:#d32f2f}.btn--danger:active:not(:disabled){background:#ffe0e0}.btn--full{width:100%}.btn--small{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);min-height:36px}.btn--large{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-lg);min-height:48px}.field{margin-bottom:var(--spacing-md);text-align:left}.field label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-on-surface);margin-bottom:var(--spacing-xs);font-family:var(--font-family-base)}.field input[type=text],.field input[type=email],.field input[type=password],.field input[type=number],.field textarea,.field select{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);font-family:var(--font-family-base);border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);background:var(--island-bg-color);color:var(--color-on-surface);box-sizing:border-box;transition:all var(--transition-base)}.field input[type=text]:focus,.field input[type=email]:focus,.field input[type=password]:focus,.field input[type=number]:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.field input[type=text]::placeholder,.field input[type=email]::placeholder,.field input[type=password]::placeholder,.field input[type=number]::placeholder,.field textarea::placeholder,.field select::placeholder{color:var(--color-gray-40)}.field input[type=text]:disabled,.field input[type=email]:disabled,.field input[type=password]:disabled,.field input[type=number]:disabled,.field textarea:disabled,.field select:disabled{opacity:.6;cursor:not-allowed;background:var(--color-gray-10)}.field textarea{resize:vertical;min-height:100px}.field__error{display:block;color:#d32f2f;font-size:var(--font-size-xs);margin-top:var(--spacing-xs);font-family:var(--font-family-base)}.field__help{display:block;color:var(--color-gray-60);font-size:var(--font-size-xs);margin-top:var(--spacing-xs);font-family:var(--font-family-base)}.page-container{display:flex;align-items:flex-start;justify-content:center;height:100vh;height:100dvh;width:100%;background:var(--island-bg-color);padding:var(--spacing-md);overflow-y:auto;overflow-x:hidden;box-sizing:border-box}@media (max-width: 768px){.page-container{padding:var(--spacing-sm);align-items:flex-start}}.page-container__inner{background:var(--island-bg-color);border-radius:var(--border-radius-md);padding:var(--spacing-2xl) var(--spacing-xl);box-shadow:var(--shadow-md);border:1px solid var(--island-border-color);max-width:480px;width:100%;text-align:center}@media (max-width: 768px){.page-container__inner{padding:var(--spacing-lg) var(--spacing-md);border-radius:var(--border-radius-sm);max-width:100%}}.page-container__wide{max-width:800px}.list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.list-item{border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);padding:var(--spacing-md);background:var(--island-bg-color);transition:all var(--transition-base)}.list-item:hover{border-color:var(--color-gray-30);box-shadow:var(--shadow-sm)}.list-item__content{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md)}@media (max-width: 768px){.list-item__content{flex-direction:column;align-items:flex-start}}.list-item__title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin:0 0 var(--spacing-xs) 0}.list-item__meta{font-size:var(--font-size-sm);color:var(--color-gray-60);margin:0}.list-item__actions{display:flex;gap:var(--spacing-xs);flex-shrink:0}@media (max-width: 768px){.list-item__actions{width:100%;justify-content:flex-end}}.tabs{display:flex;gap:0;margin-bottom:var(--spacing-lg);border-bottom:1px solid var(--island-border-color)}.tab{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:none;border:none;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-gray-50);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--transition-base);font-family:var(--font-family-base);min-height:44px}.tab:hover{color:var(--color-gray-60)}.tab.active{color:var(--color-brand-purple);border-bottom-color:var(--color-brand-purple)}.tab:focus-visible{outline:none;box-shadow:var(--focus-ring)}.divider{display:flex;align-items:center;margin:var(--spacing-lg) 0;color:var(--color-gray-40)}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--island-border-color)}.divider span{padding:0 var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family-base)}.alert{padding:var(--spacing-md);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-family:var(--font-family-base);margin-bottom:var(--spacing-md)}.alert--success{background:#f0f9f4;border:1px solid #4caf50;color:#2e7d32}.alert--error{background:#fff5f5;border:1px solid #d32f2f;color:#c62828}.alert--info{background:var(--color-gray-10);border:1px solid var(--island-border-color);color:var(--color-on-surface)}.empty-state{text-align:center;padding:var(--spacing-2xl) var(--spacing-lg);color:var(--color-gray-60)}.empty-state__icon{font-size:48px;margin-bottom:var(--spacing-md);opacity:.5}.empty-state__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin:0 0 var(--spacing-xs) 0}.empty-state__message{font-size:var(--font-size-base);color:var(--color-gray-60);margin:0 0 var(--spacing-md) 0}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.billing-manage-plan{display:flex;justify-content:center;margin-bottom:var(--spacing-lg)}.billing-manage-plan__card{background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);padding:var(--spacing-xl);max-width:500px;width:100%}@media (max-width: 768px){.billing-manage-plan__card{padding:var(--spacing-lg);max-width:100%}}.billing-manage-plan__header{margin-bottom:var(--spacing-lg);text-align:center}.billing-manage-plan__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin:0;font-family:var(--font-family-base)}.billing-manage-plan__content{margin-bottom:var(--spacing-xl)}.billing-manage-plan__row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 0;border-bottom:1px solid var(--island-border-color)}.billing-manage-plan__row:last-child{border-bottom:none}.billing-manage-plan__label{font-size:var(--font-size-base);color:var(--color-gray-60);font-family:var(--font-family-base)}.billing-manage-plan__value{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);font-family:var(--font-family-base)}.billing-manage-plan__actions{display:flex;flex-direction:column}.page-container{align-items:center}@media (max-width: 768px){.page-container{align-items:flex-start}}.page-container__inner.page-container__wide{max-width:1400px;width:100%;padding:var(--spacing-2xl) var(--spacing-xl);box-sizing:border-box}@media (max-width: 1400px){.page-container__inner.page-container__wide{max-width:95%}}@media (max-width: 768px){.page-container__inner.page-container__wide{padding:var(--spacing-lg) var(--spacing-md)}}@media (max-width: 480px){.page-container__inner.page-container__wide{padding:var(--spacing-md) var(--spacing-sm)}}.billing-plans{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}@media (max-width: 1400px){.billing-plans{grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}}@media (max-width: 768px){.billing-plans{grid-template-columns:1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}}@media (max-width: 480px){.billing-plans{gap:var(--spacing-sm)}}.billing-plan{position:relative;background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-card, 1rem);box-shadow:var(--shadow-premium, 0 12px 32px rgba(0, 163, 255, .15));padding:var(--spacing-lg);transition:box-shadow var(--transition-smooth, .3s cubic-bezier(.4, 0, .2, 1)),border-color var(--transition-smooth, .3s cubic-bezier(.4, 0, .2, 1));display:flex;flex-direction:column}.billing-plan:hover{box-shadow:var(--shadow-lg);border-color:var(--color-gray-30)}.billing-plan--recommended{border-color:var(--color-on-surface);border-width:2px}@media (max-width: 768px){.billing-plan{padding:var(--spacing-md);border-radius:var(--border-radius-sm)}}.billing-plan__badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--color-on-surface);color:var(--island-bg-color);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);font-family:var(--font-family-base);white-space:nowrap}.billing-plan__header{text-align:center;margin-bottom:var(--spacing-lg);padding-top:var(--spacing-sm)}.billing-plan__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin:0 0 var(--spacing-sm) 0;font-family:var(--font-family-base)}.billing-plan__price{margin-bottom:var(--spacing-xs)}.billing-plan__price-amount{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);font-family:var(--font-family-base)}.billing-plan__price-period{font-size:var(--font-size-base);color:var(--color-gray-60);font-family:var(--font-family-base);margin-left:var(--spacing-xs)}.billing-plan__subtitle{font-size:var(--font-size-sm);color:var(--color-gray-60);margin:0;font-family:var(--font-family-base)}.billing-plan__features{list-style:none;padding:0;margin:0 0 var(--spacing-lg) 0;flex:1}.billing-plan__feature{display:flex;align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-on-surface);font-family:var(--font-family-base);line-height:1.5}.billing-plan__feature:last-child{margin-bottom:0}.billing-plan__check{flex-shrink:0;width:20px;height:20px;color:var(--color-on-surface);margin-top:2px}.billing-addons{margin-top:var(--spacing-2xl, 40px);margin-bottom:var(--spacing-lg, 20px);padding-top:var(--spacing-xl, 24px);border-top:1px solid var(--island-border-color, #e5e7eb)}.billing-addons__title{font-size:var(--font-size-lg, 18px);font-weight:var(--font-weight-semibold, 600);color:var(--color-on-surface, #000000);margin:0 0 var(--spacing-lg, 20px) 0;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.billing-addons__list{display:flex;flex-direction:column;gap:var(--spacing-md, 16px)}.billing-addon{display:flex;align-items:flex-start;gap:var(--spacing-md, 16px);padding:var(--spacing-md, 16px);background:var(--island-bg-color, #ffffff);border:1px solid var(--island-border-color, #e5e7eb);border-radius:var(--border-radius-sm, 8px);transition:border-color var(--transition-base, .2s ease)}.billing-addon:hover{border-color:var(--color-gray-30, #d0d0d0)}.billing-addon__icon{font-size:var(--font-size-lg, 18px);font-weight:var(--font-weight-semibold, 600);color:#2563eb;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.billing-addon__content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs, 8px)}.billing-addon__header{display:flex;align-items:center;gap:var(--spacing-sm, 12px);flex-wrap:wrap}.billing-addon__name{font-size:var(--font-size-base, 14px);font-weight:var(--font-weight-medium, 500);color:var(--color-on-surface, #000000);font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.billing-addon__badge{background:#dbeafe;color:#1e40af;padding:2px var(--spacing-xs, 8px);border-radius:var(--border-radius-sm, 8px);font-size:var(--font-size-xs, 11px);font-weight:var(--font-weight-semibold, 600);font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);text-transform:uppercase;letter-spacing:.5px}.billing-addon__description{font-size:var(--font-size-sm, 12px);color:var(--color-gray-60, #666666);margin:0;line-height:1.5;font-family:var(--font-family-base, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}@media (prefers-color-scheme: dark){.billing-addons{border-top-color:var(--island-border-color, #333333)}.billing-addons__title{color:var(--color-on-surface, #ffffff)}.billing-addon{background:var(--island-bg-color, #1a1a1a);border-color:var(--island-border-color, #333333)}.billing-addon__name{color:var(--color-on-surface, #ffffff)}.billing-addon__description{color:var(--color-gray-60, #999999)}}.field__input{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);font-family:var(--font-family-base);border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);background:var(--island-bg-color);color:var(--color-on-surface);box-sizing:border-box;transition:all var(--transition-base)}.field__input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.field__input::placeholder{color:var(--color-gray-40)}.diagrams-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg);gap:var(--spacing-md)}@media (max-width: 768px){.diagrams-header{flex-direction:column;align-items:stretch}}.diagrams-controls{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);align-items:flex-start}@media (max-width: 768px){.diagrams-controls{flex-direction:column}.diagrams-controls .field{max-width:100%!important;width:100%!important}}.view-toggle{display:flex;gap:var(--spacing-xs);background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);padding:2px}.view-toggle__btn{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs);background:transparent;border:none;border-radius:var(--border-radius-sm);cursor:pointer;color:var(--color-gray-60);transition:all var(--transition-base);min-width:32px;min-height:32px}.view-toggle__btn:hover{background:var(--button-hover-bg);color:var(--color-on-surface)}.view-toggle__btn--active{background:var(--color-on-surface);color:var(--island-bg-color)}.diagrams-section{margin-bottom:var(--spacing-2xl)}.diagrams-section__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin:0 0 var(--spacing-md) 0;font-family:var(--font-family-base)}@media (max-width: 768px){.diagrams-section__title{font-size:var(--font-size-base);margin:0 0 var(--spacing-sm) 0}}.templates-scroll{display:flex;gap:var(--spacing-md);overflow-x:auto;overflow-y:hidden;padding-bottom:var(--spacing-sm);margin-bottom:var(--spacing-lg);scrollbar-width:thin;scrollbar-color:var(--color-gray-30) transparent}.templates-scroll::-webkit-scrollbar{height:8px}.templates-scroll::-webkit-scrollbar-track{background:transparent}.templates-scroll::-webkit-scrollbar-thumb{background-color:var(--color-gray-30);border-radius:4px}.templates-scroll::-webkit-scrollbar-thumb:hover{background-color:var(--color-gray-40)}.template-card{flex:0 0 200px;background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);overflow:hidden;transition:box-shadow var(--transition-base),border-color var(--transition-base),transform var(--transition-base);display:flex;flex-direction:column;cursor:pointer}@media (max-width: 768px){.template-card{flex:0 0 160px}}.template-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-gray-30);transform:translateY(-2px)}.template-card--blank .template-card__preview svg{width:64px;height:64px;color:var(--color-gray-40);transition:all var(--transition-base)}.template-card--blank:hover .template-card__preview svg{color:var(--color-primary);transform:scale(1.05)}.template-card--coming-soon{opacity:.6;cursor:not-allowed;pointer-events:none}.template-card__preview{width:100%;height:140px;background:var(--color-gray-10);display:flex;align-items:center;justify-content:center;color:var(--color-gray-40);position:relative;overflow:hidden}@media (max-width: 768px){.template-card__preview{height:120px}}.template-card__icon{font-size:48px;line-height:1}.template-card__thumbnail{width:100%;height:100%;object-fit:cover;display:block}.template-card__ach-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-60);font-family:var(--font-family-base);text-align:center}.template-card__content{padding:var(--spacing-md);text-align:center}.template-card__title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin:0 0 var(--spacing-xs) 0;font-family:var(--font-family-base)}.template-card__badge{font-size:var(--font-size-xs);color:var(--color-gray-60);margin:0;font-family:var(--font-family-base)}.diagrams-grid{display:grid;gap:var(--spacing-lg)}.diagrams-grid--grid{grid-template-columns:repeat(3,1fr)}@media (max-width: 1024px){.diagrams-grid--grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.diagrams-grid--grid{grid-template-columns:1fr;gap:var(--spacing-md)}}.diagrams-grid--list{grid-template-columns:1fr;gap:var(--spacing-sm)}.diagrams-grid--list .diagram-card{flex-direction:row;max-width:100%;padding:var(--spacing-xs) var(--spacing-sm)}.diagrams-grid--list .diagram-card__preview{width:80px;height:80px;flex-shrink:0}.diagrams-grid--list .diagram-card__content{flex:1;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm)}.diagrams-grid--list .diagram-card__title{margin-bottom:0;font-size:var(--font-size-sm)}.diagrams-grid--list .diagram-card__meta{margin-bottom:0;font-size:var(--font-size-xs)}.diagrams-grid--list .diagram-card__actions{margin-top:0;flex-shrink:0}.diagram-card{background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);overflow:hidden;transition:box-shadow var(--transition-base),border-color var(--transition-base);display:flex;flex-direction:column;cursor:pointer}.diagram-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-gray-30)}.diagram-card__preview{width:100%;height:180px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.diagram-card__preview-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);position:relative}.diagram-card__preview-initials{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:48px;font-weight:var(--font-weight-semibold);color:#ffffffe6;font-family:var(--font-family-base);-webkit-user-select:none;user-select:none;pointer-events:none;text-shadow:0 2px 8px rgba(0,0,0,.2)}.diagram-card__preview-placeholder svg{position:relative;z-index:1;opacity:.3}.diagram-card__content{padding:var(--spacing-md);flex:1;display:flex;flex-direction:column}@media (max-width: 768px){.diagram-card__content{padding:var(--spacing-sm) var(--spacing-md)}}.diagram-card__title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-on-surface);margin:0 0 var(--spacing-xs) 0;font-family:var(--font-family-base);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}@media (max-width: 768px){.diagram-card__title{font-size:var(--font-size-sm)}}.diagram-card__meta{font-size:var(--font-size-sm);color:var(--color-gray-60);margin:0 0 var(--spacing-md) 0;font-family:var(--font-family-base);line-height:1.4}@media (max-width: 768px){.diagram-card__meta{font-size:var(--font-size-xs);margin:0 0 var(--spacing-sm) 0}}.diagram-card__actions{display:flex;gap:var(--spacing-xs);margin-top:auto;flex-wrap:wrap;position:relative;z-index:10}.diagram-card__actions button{position:relative;z-index:11;pointer-events:auto;flex:1;min-width:0}@media (max-width: 768px){.diagram-card__actions button{flex:1 1 calc(33.333% - var(--spacing-xs));min-width:70px}}.diagram-card__rename{display:flex;flex-direction:column;gap:var(--spacing-sm)}.diagram-card__rename-actions{display:flex;gap:var(--spacing-xs)}.my-diagrams-layout{display:flex;width:100%;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;background:var(--editor-bg, #fafafa);font-family:var(--font-family-base);overflow:hidden;box-sizing:border-box;position:relative}.my-diagrams-sidebar{width:240px;background:var(--island-bg-color);border-right:1px solid var(--island-border-color);display:flex;flex-direction:column;padding:var(--spacing-md);gap:var(--spacing-lg);overflow-y:auto;flex-shrink:0}@media (max-width: 768px){.my-diagrams-sidebar{display:none}}.sidebar-team-selector{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);cursor:pointer;transition:background var(--transition-base)}.sidebar-team-selector:hover{background:var(--button-hover-bg)}.sidebar-team-selector .team-selector-icon{width:32px;height:32px;background:var(--color-primary);color:#fff;border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);flex-shrink:0}.sidebar-team-selector .team-selector-text{flex:1;display:flex;flex-direction:column;font-size:var(--font-size-sm);color:var(--color-on-surface);line-height:1.2;font-weight:var(--font-weight-medium)}.sidebar-team-selector .team-selector-text span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-team-selector .team-selector-add{width:24px;height:24px;border:none;background:transparent;color:var(--color-gray-60);font-size:var(--font-size-lg);cursor:pointer;border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base)}.sidebar-team-selector .team-selector-add:hover{background:var(--button-hover-bg);color:var(--color-on-surface)}.sidebar-search{position:relative}.sidebar-search__input{width:100%;padding:var(--spacing-sm) var(--spacing-md) var(--spacing-sm) 36px;font-size:var(--font-size-sm);font-family:var(--font-family-base);border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);background:var(--island-bg-color);color:var(--color-on-surface);box-sizing:border-box;transition:all var(--transition-base)}.sidebar-search__input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.sidebar-search__input::placeholder{color:var(--color-gray-40)}.sidebar-search__icon{position:absolute;left:var(--spacing-sm);top:50%;transform:translateY(-50%);color:var(--color-gray-40);pointer-events:none}.sidebar-nav{display:flex;flex-direction:column;gap:var(--spacing-xs)}.sidebar-nav__item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:none;background:transparent;color:var(--color-gray-60);font-size:var(--font-size-sm);font-family:var(--font-family-base);text-align:left;cursor:pointer;border-radius:var(--border-radius-sm);transition:all var(--transition-base)}.sidebar-nav__item svg{flex-shrink:0;width:20px;height:20px}.sidebar-nav__item:hover{background:var(--button-hover-bg);color:var(--color-on-surface)}.sidebar-nav__item--active{background:var(--button-hover-bg);color:var(--color-on-surface);font-weight:var(--font-weight-medium)}.sidebar-spaces{margin-top:auto;padding-top:var(--spacing-lg);border-top:1px solid var(--island-border-color)}.sidebar-spaces__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-gray-60);text-transform:uppercase;letter-spacing:.5px}.sidebar-spaces__add{width:20px;height:20px;border:none;background:transparent;color:var(--color-gray-60);font-size:var(--font-size-base);cursor:pointer;border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base)}.sidebar-spaces__add:hover{background:var(--button-hover-bg);color:var(--color-on-surface)}.my-diagrams-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.my-diagrams-top-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--island-bg-color);border-bottom:1px solid var(--island-border-color);flex-shrink:0}@media (max-width: 1024px){.my-diagrams-top-header{padding:var(--spacing-md)}}@media (max-width: 768px){.my-diagrams-top-header{padding:var(--spacing-sm) var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}}.my-diagrams-top-header__left{flex:1;min-width:0}@media (max-width: 768px){.my-diagrams-top-header__left{width:100%}}.my-diagrams-top-header__right{display:flex;align-items:center;gap:var(--spacing-xs);flex-shrink:0}@media (max-width: 768px){.my-diagrams-top-header__right{width:100%;justify-content:flex-end}}.my-diagrams-top-header__island{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md);box-sizing:border-box;min-height:52px;position:relative}.my-diagrams-top-header__btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid #e5e7eb;border-radius:12px;background:#f5f5f5;color:#333;font-size:13px;font-weight:600;font-family:var(--font-family-base);cursor:pointer;transition:all .2s ease;height:36px;box-sizing:border-box;white-space:nowrap;box-shadow:none}.my-diagrams-top-header__btn svg{flex-shrink:0;width:16px;height:16px;stroke-width:2.5}.my-diagrams-top-header__btn:hover:not(.my-diagrams-top-header__btn--primary){background:#eee;border-color:#d0d0d0}.my-diagrams-top-header__btn:active:not(.my-diagrams-top-header__btn--primary){background:#e0e0e0}.my-diagrams-top-header__btn:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px #0000001a}.my-diagrams-top-header__btn--primary{background:#000!important;color:#fff!important;border-color:#000!important}.my-diagrams-top-header__btn--primary:hover{background:#333!important;border-color:#333!important;color:#fff!important}.my-diagrams-top-header__btn--primary:active{background:#1a1a1a!important;border-color:#1a1a1a!important;color:#fff!important}.my-diagrams-top-header__btn--primary:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px #0003}.my-diagrams-top-header .top-header__upgrade-btn{padding:0 12px!important;font-size:12px!important;height:32px!important;min-height:32px!important;font-weight:600}@media (max-width: 768px){.my-diagrams-top-header .top-header__upgrade-btn{padding:0 10px!important;font-size:11px!important;height:28px!important;min-height:28px!important}}.my-diagrams-top-header__icon-btn{width:36px;height:36px;border:1px solid #e5e7eb;background:#f5f5f5;color:#7a7a7a;border-radius:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;box-sizing:border-box;box-shadow:none}.my-diagrams-top-header__icon-btn svg{width:18px;height:18px;stroke-width:2}.my-diagrams-top-header__icon-btn:hover{background:#eee;border-color:#d0d0d0;color:#000}.my-diagrams-top-header__icon-btn:active{background:#e0e0e0}.my-diagrams-top-header__icon-btn:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px #0000001a}.my-diagrams-top-header__avatar{width:36px;height:36px;border:1px solid #e5e7eb;background:transparent;border-radius:50%;cursor:pointer;padding:0;overflow:hidden;transition:all .2s ease;box-sizing:border-box;box-shadow:none}.my-diagrams-top-header__avatar:hover{border-color:#d6d6d6}.my-diagrams-top-header__avatar:active{opacity:.8}.my-diagrams-top-header__avatar:focus-visible{outline:none;box-shadow:0 0 0 2px #fff,0 0 0 4px #0000001a}.my-diagrams-top-header__avatar-initial{width:100%;height:100%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:50%;line-height:1}.my-diagrams-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:var(--spacing-lg);min-height:0}@media (max-width: 1024px){.my-diagrams-content{padding:var(--spacing-md)}}@media (max-width: 768px){.my-diagrams-content{padding:var(--spacing-md) var(--spacing-sm)}}.diagrams-table{width:100%;background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-md);overflow:visible}.diagrams-table__table{width:100%;border-collapse:collapse}.diagrams-table thead{background:var(--color-gray-10);border-bottom:1px solid var(--island-border-color)}.diagrams-table thead th{padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-gray-60);text-transform:uppercase;letter-spacing:.5px;font-family:var(--font-family-base)}.diagrams-table tbody tr{border-bottom:1px solid var(--island-border-color);cursor:pointer;transition:background var(--transition-base);position:relative}.diagrams-table tbody tr:hover{background:var(--color-gray-10)}.diagrams-table tbody tr:last-child{border-bottom:none}.diagrams-table__row{position:relative}.diagrams-table__row td{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-family:var(--font-family-base);vertical-align:middle}.diagrams-table__name{width:40%}.diagrams-table__name-content{display:flex;align-items:center;gap:var(--spacing-sm)}.diagrams-table__icon{width:32px;height:32px;border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:#fff;flex-shrink:0}.diagrams-table__name-text{flex:1;min-width:0}.diagrams-table__title{margin-bottom:2px}.diagrams-table__title strong{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-on-surface)}.diagrams-table__modified{font-size:var(--font-size-xs);color:var(--color-gray-60);line-height:1.3}.diagrams-table__last-opened,.diagrams-table__owner{width:20%;color:var(--color-on-surface)}.diagrams-table__actions{width:auto;text-align:right;white-space:nowrap;position:relative}.diagrams-table__menu-wrapper{position:relative;display:inline-block}.diagrams-table__menu{position:absolute;top:calc(100% + 4px);right:0;background:var(--island-bg-color);border:1px solid var(--island-border-color);border-radius:var(--border-radius-sm);box-shadow:var(--shadow-lg);min-width:120px;z-index:10000}.diagrams-table__menu-item{width:100%;padding:var(--spacing-sm) var(--spacing-md);text-align:left;background:none;border:none;font-size:var(--font-size-sm);font-family:var(--font-family-base);color:var(--color-on-surface);cursor:pointer;transition:background var(--transition-base);display:block}.diagrams-table__menu-item:hover{background:var(--button-hover-bg)}.diagrams-table__menu-item--danger{color:#d32f2f}.diagrams-table__menu-item--danger:hover{background:#fff5f5}.diagrams-table__action-btn{background:none;border:none;padding:var(--spacing-xs);cursor:pointer;color:var(--color-gray-60);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--border-radius-sm);transition:all var(--transition-base);margin-left:var(--spacing-xs)}.diagrams-table__action-btn:hover{background:var(--button-hover-bg);color:var(--color-on-surface)}.diagrams-table__action-btn svg{display:block}
