:root{--color-bg-app:#141414;--color-bg-panel:#1b1b1b;--color-bg-control:#272727;--color-bg-toolbar:#2a2828;--color-border:#242424;--color-border-subtle:#3d3a3a;--color-text:#fff;--color-text-body:#e8e6e6;--color-text-muted:#ffffff80;--color-text-faint:#fff6;--color-text-dim:#ffffff40;--color-text-soft:#9a9696;--color-accent:#0d9aff;--color-fill-control:#ffffff1a;--color-fill-active:#ffffff80;--color-fill-hover:#ffffff14;--color-fill-pressed:#272727b3;--color-fill-active-btn:#ffffff0d;--color-shadow-panel:#0009;--color-shadow-menu:#00000073;--color-shadow-overlay:#00000080;--color-keyframe:#f0a500;--color-keyframe-hover:#ffc040;--color-keyframe-border:#c88a00;--color-danger:#c44;--color-timeline-block:#1a4a8a;--color-timeline-block-active:#1e56a0;--color-timeline-border:#2060b0;--color-timeline-border-active:#3080cc;--color-timeline-text:#a0c0e8;--font-ui:system-ui, -apple-system, sans-serif;--text-sm:12px;--text-xs:11px;--text-2xs:10px;--leading-sm:16px;--leading-xs:12px;--space-1:4px;--space-2:6px;--space-3:8px;--space-4:12px;--space-5:16px;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--duration-fast:80ms;--duration-base:.15s;--panel-width:260px;--toolbar-height:40px;--control-height:28px;--label-width:60px;--thumb-width:19px}*,:before,:after{box-sizing:border-box}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}html,body,#root{width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{background:var(--color-bg-app);color:var(--color-text-body);font-family:var(--font-ui)}.btn-base{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text);background:var(--color-bg-control);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-base);border:none;outline:none;display:inline-flex}.btn-base:hover{background:var(--color-fill-pressed)}.control-surface{background:var(--color-bg-control);border-radius:var(--radius-sm);overflow:hidden}.layout{flex-direction:column;width:100%;height:100%;display:flex}.top-panel{padding:var(--space-4) var(--space-5);background:var(--color-bg-panel);border-bottom:1px solid var(--color-border);flex-shrink:0;align-items:center;gap:21px;display:flex}.tp-section{flex:1;align-items:center;min-width:0;display:flex}.tp-section--center{justify-content:center}.tp-section--right{justify-content:flex-end;gap:10px}.tp-back{align-items:center;gap:var(--space-2);cursor:pointer;background:0 0;border:none;outline:none;padding:0;display:flex}.tp-back-icon{padding:var(--space-2);background:var(--color-bg-control);border-radius:var(--radius-sm);transition:background var(--duration-base);justify-content:center;align-items:center;display:flex}.tp-back:hover .tp-back-icon{background:var(--color-fill-pressed)}.tp-back-label{font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text)}.tp-name{font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);cursor:text;text-overflow:ellipsis;white-space:nowrap;max-width:100%;transition:background var(--duration-base);background:0 0;border:none;outline:none;overflow:hidden}.tp-name:hover{background:var(--color-fill-hover)}.tp-name-input{font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text);background:var(--color-bg-control);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);text-align:center;border:none;outline:none;max-width:240px}.tp-btn{font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);cursor:pointer;text-align:center;-webkit-user-select:none;user-select:none;vertical-align:middle;border:1px solid #0000;outline:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.tp-btn--secondary{background:var(--color-bg-control);border-color:#0000}.tp-btn--secondary:hover{background:var(--color-fill-pressed)}.tp-btn--primary{background-color:var(--color-accent);border-color:var(--color-accent);background-image:linear-gradient(#ffffff26,#fff0);box-shadow:inset 0 1px #ffffff26,0 1px 1px #0000001a}.tp-btn--primary:hover{background-color:#0080e6;background-image:linear-gradient(#ffffff26,#fff0);border-color:#0080e6}.tp-btn--primary:focus{background-color:#0074cc;border-color:#006bbf;box-shadow:inset 0 1px #ffffff26,0 1px 1px #0000001a,0 0 0 3px #0d9aff73}.tp-btn--primary:active{background-color:#006bbf;background-image:none;border-color:#0062b3;box-shadow:inset 0 3px 5px #00000026}.tp-btn--primary:focus:not(:focus-visible){outline:0}.layout-body{flex:1;min-height:0;display:flex}.layout-left{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.viewport{background:var(--color-bg-app);min-width:480px;min-height:0;padding:var(--space-2);flex:1;justify-content:center;align-items:center;display:flex;position:relative}.canvas-frame{flex-shrink:0;width:100%;height:100%;position:relative;overflow:hidden}.canvas-frame>canvas{position:absolute;inset:0}.bw-root{z-index:10;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.bw-bar{-webkit-backdrop-filter:blur(4px);background:#1b1b1be6;border-radius:16px;align-items:center;gap:5px;padding:8px;display:flex}.bw-icon-btn{color:#ffffffbf;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:6px;transition:background .12s,color .12s;display:flex}.bw-icon-btn:hover,.bw-icon-btn--active{color:#fff;background:#ffffff1a}.bw-divider{background:#ffffff1a;flex-shrink:0;width:1px;height:32px}.bw-size-btn{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:10px;justify-content:space-between;align-items:center;gap:6px;min-width:62px;height:32px;padding:0 8px;transition:background .12s;display:flex}.bw-size-btn:hover{background:#ffffff29}.bw-size-label{font-family:var(--font-ui);color:#fff;font-size:12px;line-height:16px}.bw-size-menu{background:#1b1b1b;border-radius:16px;flex-direction:column;gap:5px;width:158px;padding:10px;display:flex;box-shadow:0 2px 19px #0009}.bw-size-option{color:#fff;width:100%;font-family:var(--font-ui);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;padding:4px 6px;font-size:12px;line-height:16px;transition:background .1s;display:flex}.bw-size-option:hover{background:#ffffff14}.bw-size-option--active{background:#ffffff0d}.bw-size-divider{background:#ffffff1a;flex-shrink:0;height:1px}.bw-size-inputs{gap:5px;display:flex}.bw-size-input-box{background:#272727;border-radius:6px;flex:1;justify-content:space-between;align-items:center;gap:6px;padding:8px 6px;display:flex;overflow:hidden}.bw-size-input-box input{color:#fff;min-width:0;font-family:var(--font-ui);background:0 0;border:none;outline:none;flex:1;font-size:12px;line-height:16px}.bw-size-unit{font-family:var(--font-ui);color:#ffffff80;flex-shrink:0;font-size:10px;line-height:12px}.bw-size-apply{color:#000;font-family:var(--font-ui);cursor:pointer;background:#fff;border:none;border-radius:6px;justify-content:center;align-items:center;padding:8px 12px;font-size:12px;line-height:16px;transition:opacity .12s;display:flex}.bw-size-apply:hover{opacity:.88}.inspector{width:var(--panel-width);background:var(--color-bg-panel);border-left:1px solid var(--color-border);height:100%;font-family:var(--font-ui);font-size:var(--text-sm);color:var(--color-text);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.ip-section{gap:var(--space-5);padding:var(--space-5) var(--space-4);border-bottom:1px solid var(--color-border);flex-direction:column;display:flex}.ip-section-header{justify-content:space-between;align-items:center;display:flex}.ip-section-title{align-items:center;gap:var(--space-2);display:flex}.ip-section-name{font-size:var(--text-sm);color:var(--color-text);font-weight:400;line-height:var(--leading-sm)}.ip-reset-icon{cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.ip-rows{gap:var(--space-2);flex-direction:column;display:flex}.ip-row{align-items:center;gap:var(--space-2);min-width:0;display:flex}.ip-label{width:var(--label-width);font-size:var(--text-sm);color:var(--color-text);line-height:var(--leading-sm);flex-shrink:0}.ip-axes{align-items:center;gap:var(--space-1);flex:1;min-width:0;display:flex}.ip-axis{justify-content:space-between;align-items:center;gap:var(--space-1);background:var(--color-bg-control);border-radius:var(--radius-sm);min-width:0;padding:5px var(--space-2);flex:1;display:flex;overflow:hidden}.ip-axis-label{font-size:var(--text-2xs);color:var(--color-text-muted);line-height:var(--leading-xs);flex-shrink:0}.ip-axis-value{font-size:var(--text-sm);color:var(--color-text);line-height:var(--leading-sm);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ip-axis-drag{cursor:ew-resize;-webkit-user-select:none;user-select:none;touch-action:none}.ip-axis-input-edit{width:100%;font-size:var(--text-sm);color:var(--color-text);text-align:right;line-height:var(--leading-sm);background:0 0;border:none;outline:none;padding:0}.ip-add-btn{justify-content:flex-start;align-items:center;gap:var(--space-2);background:var(--color-bg-control);border-radius:var(--radius-sm);height:30px;padding:var(--space-1);cursor:pointer;border:none;outline:none;flex:1;display:flex;overflow:hidden}.ip-add-check{border-radius:var(--radius-xs);background:var(--color-fill-control);flex-shrink:0;width:20px;height:20px}.ip-add-check--on{background:var(--color-accent);filter:brightness(1.25)}.ip-add-text{font-size:var(--text-sm);color:var(--color-text);line-height:var(--leading-sm);text-align:left;flex:1}.ip-add-remove{border-radius:var(--radius-xs);width:20px;height:20px;color:var(--color-text-faint);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;display:flex}.ip-add-remove:hover{background:var(--color-fill-hover);color:var(--color-text)}.ip-source-content{gap:var(--space-2);flex-direction:column;display:flex}.ip-source-thumb{background:var(--color-bg-control);border-radius:10px;flex-shrink:0;height:163px;overflow:hidden}.ip-source-thumb img,.ip-source-thumb video{object-fit:cover;width:100%;height:100%;display:block}.ip-source-actions{align-items:center;gap:10px;display:flex}.ip-source-action{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2);font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg-control);border-radius:var(--radius-sm);cursor:pointer;line-height:var(--leading-sm);transition:background var(--duration-base);border:none;outline:none;flex:1;display:flex}.ip-source-action:hover{background:var(--color-fill-pressed)}.ip-source-action--icon{flex:0 0 28px;width:28px}.ip-import-btn{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg-control);border-radius:var(--radius-sm);cursor:pointer;outline:1px solid var(--color-fill-control);outline-offset:-1px;border:none}.ip-import-btn:hover{background:var(--color-fill-pressed)}.ip-radius{gap:var(--space-2);flex-direction:column;display:flex}.ip-radius-row{align-items:center;gap:var(--space-2);flex:1;display:flex}.ip-radius-main{height:var(--control-height);background:var(--color-bg-control);border-radius:var(--radius-sm);flex:1;overflow:hidden}.ip-radius-input{width:100%;height:100%;padding:0 var(--space-2);font-size:var(--text-sm);color:var(--color-text);background:0 0;border:none;outline:none}.ip-mode-group{background:var(--color-bg-control);border-radius:var(--radius-sm);flex-shrink:0;align-items:center;gap:2px;padding:2px;display:flex}.ip-mode-btn{border-radius:var(--radius-xs);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.ip-mode-btn--active{background:var(--color-fill-active-btn)}.ip-corners{align-items:center;gap:var(--space-2);flex:1;display:flex}.ip-corner-field{align-items:center;gap:var(--space-1);flex-direction:column;flex:1;display:flex}.ip-corner-input-wrap{background:var(--color-bg-control);border-radius:var(--radius-sm);width:100%;overflow:hidden}.ip-corner-input{width:100%;height:var(--control-height);padding:0 var(--space-1);font-size:var(--text-sm);color:var(--color-text);text-align:center;background:0 0;border:none;outline:none}.ip-corner-label{font-size:var(--text-2xs);color:var(--color-text-muted);line-height:var(--leading-xs)}.ip-bg-tabs{background:var(--color-bg-control);border-radius:var(--radius-sm);gap:2px;padding:2px;display:flex}.ip-bg-tab{padding:var(--space-1) var(--space-2);font-size:var(--text-xs);color:var(--color-text-faint);border-radius:var(--radius-xs);cursor:pointer;transition:background var(--duration-base), color var(--duration-base);background:0 0;border:none;flex:1}.ip-bg-tab:hover{color:var(--color-text-muted);background:var(--color-fill-hover)}.ip-bg-tab--active{color:var(--color-text);background:var(--color-fill-active-btn)}.ip-color-btn{align-items:center;gap:var(--space-2);padding:var(--space-1);background:var(--color-bg-control);border-radius:var(--radius-sm);cursor:pointer;border:none;flex:1;display:flex;position:relative;overflow:hidden}.ip-color-swatch{border-radius:var(--radius-xs);flex-shrink:0;width:20px;height:20px}.ip-color-hex{font-size:var(--text-sm);color:var(--color-text);line-height:var(--leading-sm)}.ip-color-hidden{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ip-gradient-controls{align-items:center;gap:var(--space-2);padding:var(--space-1);background:var(--color-bg-control);border-radius:var(--radius-sm);flex:1;display:flex}.ip-bg-stop-btn{font-size:var(--text-2xs);color:var(--color-text-muted);cursor:pointer;padding:2px var(--space-1);background:var(--color-fill-hover);border-radius:3px}.ip-angle-input{width:38px;font-size:var(--text-xs);color:var(--color-text);text-align:center;background:0 0;border:none;outline:none}.ip-remove-btn{font-size:var(--text-xs);color:var(--color-text-muted);border:1px solid var(--color-border-subtle);cursor:pointer;transition:background var(--duration-base);background:0 0;border-radius:5px;padding:5px 10px}.ip-remove-btn:hover{background:var(--color-fill-hover)}.color-field-input{width:36px;height:var(--control-height);border-radius:var(--radius-xs);background:var(--color-bg-control);cursor:pointer;border:none;padding:2px}.modal-backdrop{z-index:19;position:absolute;inset:0}.fb-panel{top:50%;right:var(--space-4);z-index:20;gap:var(--space-5);width:var(--panel-width);padding:var(--space-5);background:var(--color-bg-panel);border-radius:var(--radius-lg);box-shadow:var(--color-shadow-panel) 0px 2px 19px;font-family:var(--font-ui);flex-direction:column;max-height:900px;transition:max-height .22s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;overflow:hidden;transform:translateY(-50%)}.focus-blur-panel{top:50%;right:var(--space-4);z-index:20;gap:var(--space-5);width:var(--panel-width);padding:var(--space-5);background:var(--color-bg-panel);border-radius:var(--radius-lg);box-shadow:var(--color-shadow-panel) 0px 2px 19px;font-family:var(--font-ui);flex-direction:column;display:flex;position:absolute;overflow:hidden;transform:translateY(-50%)}.focus-blur-panel-header,.fb-header{align-items:flex-start;gap:var(--space-5);display:flex}.focus-blur-panel-title,.fb-title{font-size:var(--text-sm);color:var(--color-text);line-height:var(--leading-sm);flex:1}.focus-blur-panel-close,.fb-close{cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;padding:0;display:flex}.fb-divider{background:var(--color-fill-control);height:1px;margin:calc(var(--space-3) * -1) 0;flex-shrink:0}.fb-type-tabs{background:var(--color-bg-control);border-radius:var(--radius-md);padding:var(--space-1);gap:var(--space-1);display:flex}.fb-type-tab{padding:var(--space-1) var(--space-2);border-radius:calc(var(--radius-md) - 2px);cursor:pointer;font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text-muted);transition:background var(--duration-base), color var(--duration-base);white-space:nowrap;background:0 0;border:none;flex:1}.fb-type-tab:hover{color:var(--color-text)}.fb-type-tab--active{background:var(--color-fill-control);color:var(--color-text)}.fb-field,.focus-blur-field{gap:var(--space-2);flex-direction:column;display:flex}.fb-label,.focus-blur-field-label{font-size:var(--text-sm);color:var(--color-text);line-height:var(--leading-sm)}.fb-slider-row,.focus-blur-slider-row{align-items:flex-start;gap:var(--space-4);display:flex}.fb-track{height:var(--control-height);border-radius:var(--radius-md);background:var(--color-fill-control);cursor:pointer;touch-action:none;flex:1;position:relative;overflow:hidden}.fb-fill{border-radius:var(--radius-md);background:var(--color-fill-active);pointer-events:none;height:100%;position:absolute;top:0;left:0}.fb-thumb{width:var(--thumb-width);height:var(--control-height);background:var(--color-text);pointer-events:none;transition:width var(--duration-fast), height var(--duration-fast), margin-left var(--duration-fast), margin-top var(--duration-fast);border-radius:999px;position:absolute;top:0}.fb-track:active .fb-thumb{width:21px;height:30px;margin-top:-1px;margin-left:-1px}.fb-value,.focus-blur-value{width:48px;padding:var(--space-2);font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg-control);border-radius:var(--radius-sm);line-height:var(--leading-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}.focus-blur-slider{accent-color:var(--color-fill-active);cursor:pointer;height:var(--control-height);flex:1}.fb-color-row{align-items:center;gap:var(--space-2);display:flex}.fb-color-label{width:80px;font-size:var(--text-sm);color:var(--color-text);line-height:var(--leading-sm);flex-shrink:0}.fb-color-pill{align-items:center;gap:var(--space-2);padding:var(--space-1);background:var(--color-bg-control);border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-ui);text-align:left;transition:background var(--duration-base);border:none;outline:none;flex:1;display:flex;position:relative;overflow:hidden}.fb-color-pill:hover{background:var(--color-fill-pressed)}.fb-color-swatch{border-radius:var(--radius-xs);flex-shrink:0;width:20px;height:20px}.fb-color-hex{font-size:var(--text-sm);color:var(--color-text);line-height:var(--leading-sm)}.fb-color-input{opacity:0;cursor:pointer;border:none;width:100%;height:100%;padding:0;position:absolute;inset:0}.cp-header{align-items:center;gap:var(--space-3);display:flex}.cp-back,.cp-close{cursor:pointer;opacity:.85;width:14px;height:14px;transition:opacity var(--duration-base);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.cp-back:hover,.cp-close:hover{opacity:1}.cp-title{text-align:center;font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text);flex:1}.cp-sv{border-radius:var(--radius-md);cursor:crosshair;touch-action:none;width:100%;height:150px;position:relative}.cp-sv-handle{pointer-events:none;border:2px solid #fff;border-radius:999px;width:14px;height:14px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0006}.cp-hue,.cp-alpha{cursor:pointer;touch-action:none;border-radius:999px;width:100%;height:14px;position:relative}.cp-hue{background:linear-gradient(90deg,red 0%,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red 100%)}.cp-alpha{background-color:#888;background-image:linear-gradient(45deg,#555 25%,#0000 25%),linear-gradient(-45deg,#555 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#555 75%),linear-gradient(-45deg,#0000 75%,#555 75%);background-position:0 0,0 4px,4px -4px,-4px 0;background-size:8px 8px;overflow:hidden}.cp-alpha-fill{border-radius:999px;position:absolute;inset:0}.cp-slider-handle{pointer-events:none;background:#fff;border:2px solid #fff;border-radius:999px;width:14px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0006}.cp-inputs{gap:var(--space-2);align-items:flex-start;display:flex}.cp-hex-field{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--color-bg-control);border-radius:var(--radius-sm);flex:1;display:flex}.cp-hex-hash{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-sm);flex-shrink:0}.cp-hex-input{min-width:0;font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text);text-transform:uppercase;background:0 0;border:none;outline:none;flex:1}.cp-opacity-field{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--color-bg-control);border-radius:var(--radius-sm);flex:1;display:flex}.cp-opacity-input{width:0;min-width:0;font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text);text-align:right;background:0 0;border:none;outline:none;flex:1}.cp-opacity-pct{font-size:var(--text-sm);color:var(--color-text-muted);line-height:var(--leading-sm);flex-shrink:0}.cp-tools{gap:var(--space-2);display:flex}.cp-format{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-control);border-radius:var(--radius-sm);cursor:pointer;flex:1;display:flex;position:relative}.cp-format-value{font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text)}.cp-format-select{opacity:0;cursor:pointer;appearance:none;width:100%;height:100%;position:absolute;inset:0}.cp-channel{flex-direction:column;flex:1;align-items:center;gap:3px;min-width:0;display:flex}.cp-channel-input{text-align:center;width:100%;padding:var(--space-2) var(--space-1);background:var(--color-bg-control);border-radius:var(--radius-sm);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text);border:none;outline:none}.cp-channel-label{color:var(--color-text-muted);letter-spacing:.03em;font-size:10px;line-height:1}.cp-eyedropper{width:84px;padding:var(--space-2);background:var(--color-bg-control);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-base);border:none;outline:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.cp-eyedropper:hover{background:var(--color-fill-pressed)}.cp-eyedropper:disabled{opacity:.4;cursor:default}.bf-tabs{align-items:center;gap:var(--space-1);padding:var(--space-1);background:var(--color-bg-control);border-radius:var(--radius-md);display:flex}.bf-tab{border-radius:var(--radius-sm);cursor:pointer;opacity:.55;height:26px;transition:background var(--duration-base), opacity var(--duration-base);background:0 0;border:none;flex:1;justify-content:center;align-items:center;padding:0;display:flex}.bf-tab:hover{opacity:.85}.bf-tab--active{background:var(--color-fill-control);opacity:1}.bf-tab-divider{background:var(--color-fill-control);flex-shrink:0;width:1px;height:16px}.bf-tab--active+.bf-tab-divider{background:0 0}.bf-tab-divider:has(+.bf-tab--active){background:0 0}.bf-gradient-bar{touch-action:none;cursor:copy;border-radius:999px;width:100%;height:16px;position:relative;box-shadow:inset 0 0 0 1px #ffffff1f}.bf-gradient-stop{cursor:grab;border:2px solid #fff;border-radius:999px;width:14px;height:14px;padding:0;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000073}.bf-gradient-stop--active{box-shadow:0 0 0 1px #00000073, 0 0 0 3px var(--color-fill-active)}.bf-body{gap:var(--space-5);flex-direction:column;transition:height .2s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.bf-image-wrap{gap:var(--space-3);flex-direction:column;display:flex}.bf-image-drop{background:var(--color-bg-control);border-radius:var(--radius-md);background-position:50%;background-repeat:no-repeat;background-size:cover;justify-content:center;align-items:center;width:100%;height:160px;display:flex}.bf-image-actions{gap:var(--space-2);display:flex}.bf-image-choose{padding:var(--space-2) var(--space-4);background:var(--color-fill-control);border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text);transition:background var(--duration-base);border:none}.bf-image-choose:hover{background:var(--color-fill-pressed)}.fb-pad{border-radius:var(--radius-lg);background:var(--color-fill-control);cursor:crosshair;touch-action:none;flex-shrink:0;height:120px;position:relative;overflow:hidden}.fb-grid-v{gap:18px;height:100%;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.fb-line-v{background:var(--color-fill-control);width:1px;height:100%}.fb-grid-h{flex-direction:column;gap:18px;width:228px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.fb-line-h{background:var(--color-fill-control);width:100%;height:1px}.fb-handle{border:1px solid var(--color-text);pointer-events:none;background:#ffffff03;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex;position:absolute;overflow:hidden;transform:translate(-50%,-50%)}.fb-handle-dot{width:var(--space-2);height:var(--space-2);background:var(--color-text);border-radius:50%}.fb-reset,.focus-blur-reset{padding:var(--space-2);font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg-control);border-radius:var(--radius-sm);cursor:pointer;line-height:var(--leading-sm);transition:background var(--duration-base);border:none;outline:none;justify-content:center;align-items:center;display:flex}.fb-reset:hover,.focus-blur-reset:hover{background:var(--color-fill-pressed)}.focus-target-ring{border:2px solid var(--color-text);box-shadow:0 0 0 1px var(--color-shadow-overlay), inset 0 0 0 1px var(--color-shadow-overlay);pointer-events:none;z-index:15;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.crop-modal-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.crop-modal{background:var(--color-bg-toolbar);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);padding:var(--space-5);gap:var(--space-4);flex-direction:column;width:90vw;max-width:480px;display:flex}.crop-modal-preview{background:var(--color-bg-app);border-radius:var(--radius-md);max-height:60vh;position:relative;overflow:hidden}.crop-modal-preview img,.crop-modal-preview video{object-fit:contain;width:100%;height:100%;display:block}.crop-modal-rect{border:2px solid var(--color-accent);cursor:move;position:absolute}.crop-modal-handle{background:var(--color-accent);border-radius:2px;width:10px;height:10px;position:absolute}.crop-modal-handle--nw{cursor:nw-resize;top:-5px;left:-5px}.crop-modal-handle--ne{cursor:ne-resize;top:-5px;right:-5px}.crop-modal-handle--sw{cursor:sw-resize;bottom:-5px;left:-5px}.crop-modal-handle--se{cursor:se-resize;bottom:-5px;right:-5px}.crop-modal-footer{justify-content:flex-end;gap:var(--space-3);display:flex}.source-action-button{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--color-text-body);background:var(--color-border-subtle);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--duration-base);border:1px solid #4a4747}.source-action-button:hover{border-color:var(--color-accent)}.source-action-button--primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-text)}.em-overlay{z-index:100;background:var(--color-shadow-overlay);position:fixed;inset:0}.em-panel{z-index:101;gap:var(--space-5);width:340px;padding:var(--space-5);background:var(--color-bg-panel);border-radius:var(--radius-lg);flex-direction:column;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 64px #0009}.em-header{justify-content:space-between;align-items:center;display:flex}.em-title{color:var(--color-text);font-size:15px;font-weight:500;line-height:20px}.em-close{cursor:pointer;border-radius:var(--radius-xs);opacity:.7;width:24px;height:24px;transition:opacity var(--duration-base);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.em-close:hover{opacity:1}.em-preview{background-color:var(--color-bg-control);background-position:50%;background-size:cover;border-radius:10px;flex-shrink:0;height:180px;overflow:hidden}.em-tabs{align-items:flex-start;gap:var(--space-5);border-radius:var(--radius-lg);background:var(--color-bg-control);padding:2px;display:flex}.em-tab{cursor:pointer;font-size:14px;line-height:24px;font-family:var(--font-ui);color:var(--color-text);transition:background var(--duration-base), color var(--duration-base);background:0 0;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;padding:4px 6px;display:flex}.em-tab--active{color:#000;background:#fff}.em-row{align-items:center;gap:var(--space-5);display:flex}.em-row-label{width:96px;color:var(--color-text);flex-shrink:0;font-size:14px;line-height:18px}.em-dropdown{padding:var(--space-3);background:var(--color-bg-control);cursor:pointer;border-radius:10px;flex:1;justify-content:space-between;align-items:center;display:flex;position:relative}.em-dropdown-value{font-size:var(--text-sm);line-height:var(--leading-sm);color:var(--color-text)}.em-dropdown-select{opacity:0;cursor:pointer;appearance:none;width:100%;height:100%;position:absolute;inset:0}.em-divider{background:#ffffff1a;flex-shrink:0;height:1px}.em-output-info{color:var(--color-text-muted);margin:0;font-size:14px;line-height:18px}.em-duration-input{padding:var(--space-3);background:var(--color-bg-control);color:var(--color-text);font-size:var(--text-sm);line-height:var(--leading-sm);border:none;border-radius:10px;flex:1;font-family:inherit}.em-duration-input:focus{outline:1px solid var(--color-accent)}.em-error{color:#ff6b6b;margin:0;font-size:13px;line-height:18px}.em-export-btn{padding:var(--space-3) var(--space-4);cursor:pointer;background:var(--color-accent);color:var(--color-text);font-size:14px;line-height:24px;font-family:var(--font-ui);transition:opacity var(--duration-base);border:none;border-radius:10px;justify-content:center;align-items:center;font-weight:500;display:flex}.em-export-btn:hover{opacity:.88}.em-export-btn:disabled{opacity:.5;cursor:not-allowed}.pv-overlay{z-index:200;-webkit-backdrop-filter:blur(12px)saturate(.8);background:#000000d1;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:48px;animation:.18s cubic-bezier(.16,1,.3,1) pv-fade-in;display:flex;position:fixed;inset:0}@keyframes pv-fade-in{0%{opacity:0}to{opacity:1}}.pv-close{color:#ffffffb3;cursor:pointer;width:32px;height:32px;transition:background var(--duration-base), color var(--duration-base);z-index:201;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;top:16px;right:16px}.pv-close:hover{color:#fff;background:#ffffff2e}.pv-frame{contain:layout;background:#1a1a1a;border-radius:14px;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 120px);animation:.22s cubic-bezier(.16,1,.3,1) pv-scale-in;position:relative;overflow:hidden;box-shadow:inset 0 2px #ffffff0f,0 32px 80px #000000b3,0 0 0 .5px #ffffff1a}@keyframes pv-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.pv-image{object-fit:contain;width:100%;height:100%;max-height:calc(100vh - 120px);display:block}.pv-spinner{justify-content:center;align-items:center;width:320px;height:200px;display:flex}.pv-spinner-ring{border:2.5px solid #ffffff26;border-top-color:#ffffffb3;border-radius:50%;width:32px;height:32px;animation:.7s linear infinite pv-spin;display:inline-block}@keyframes pv-spin{to{transform:rotate(360deg)}}.pv-error{color:#ffffff73;font-size:14px;font-family:var(--font-ui);margin:0;padding:48px}.pv-info{color:#ffffff59;font-size:12px;line-height:16px;font-family:var(--font-ui);letter-spacing:.02em;-webkit-user-select:none;user-select:none;margin:0}.tl-panel{background:var(--color-bg-panel);border-top:1px solid var(--color-border);height:240px;font-family:var(--font-ui);-webkit-user-select:none;user-select:none;flex-direction:column;flex-shrink:0;display:flex}.tl-toolbar{flex-shrink:0;align-items:center;gap:18px;padding:10px 16px;display:flex}.tl-toolbar-left{flex:1;align-items:center;gap:8px;display:flex}.tl-toolbar-right{flex:1;justify-content:flex-end;align-items:center;display:flex}.tl-play-btn{border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-base);background:#ffffff1a;border:none;justify-content:center;align-items:center;padding:6px;display:flex}.tl-play-btn:hover{background:#ffffff29}.tl-field{border-radius:var(--radius-sm);background:var(--color-bg-control);cursor:text;justify-content:space-between;align-items:center;gap:6px;min-width:49px;padding:6px;display:flex}.tl-field-label{color:#ffffff80;font-size:10px;line-height:12px}.tl-field-value{color:var(--color-text);font-size:12px;line-height:16px}.tl-field-input{width:26px;color:var(--color-text);text-align:right;background:0 0;border:none;outline:none;padding:0;font-family:inherit;font-size:12px;line-height:16px}.tl-ease-btn{border-radius:var(--radius-sm);background:var(--color-bg-control);cursor:pointer;transition:background var(--duration-base);border:none;justify-content:center;align-items:center;padding:6px;display:flex}.tl-ease-btn:hover{background:#303030}.tl-animate{position:relative}.tl-animate-btn{border-radius:var(--radius-sm);background:var(--color-bg-control);color:var(--color-text);cursor:pointer;transition:background var(--duration-base);border:none;align-items:center;gap:6px;padding:6px 8px;font-family:inherit;font-size:12px;line-height:16px;display:flex}.tl-animate-btn:hover{background:#303030}.tl-animate-menu{z-index:30;border-radius:var(--radius-md);min-width:160px;box-shadow:0 8px 24px var(--color-shadow-menu);background:#1f1f1f;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;bottom:calc(100% + 6px);left:0}.tl-animate-item{border-radius:var(--radius-sm);color:var(--color-text);text-align:left;cursor:pointer;transition:background var(--duration-base);background:0 0;border:none;justify-content:space-between;align-items:center;padding:7px 8px;font-family:inherit;font-size:12px;line-height:16px;display:flex}.tl-animate-item:hover:not(:disabled){background:#ffffff14}.tl-animate-item:disabled{cursor:default}.tl-animate-item--soon{color:var(--color-text-faint)}.tl-soon-tag{color:var(--color-text-dim);border:1px solid var(--color-border);border-radius:4px;padding:1px 4px;font-size:9px;line-height:12px}.tl-zoom{background:var(--color-bg-control);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;display:flex}.tl-zoom-track{cursor:pointer;background:#fff3;border-radius:999px;width:113px;height:6px;position:relative}.tl-zoom-fill{background:var(--color-accent);pointer-events:none;border-radius:999px;height:6px;position:absolute;top:0;left:0}.tl-zoom-handle{transform-origin:50%;pointer-events:auto;background:#fff;border-radius:999px;width:15px;height:10px;transition:transform .15s;position:absolute;top:50%;transform:translate(-50%,-50%)}.tl-zoom-handle:hover{transform:translate(-50%,-50%)scale(1.15)}.tl-body{flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.tl-body--pan,.tl-body--pan *{cursor:grab!important}.tl-scrollbar{border-top:1px solid var(--color-border);cursor:pointer;flex-shrink:0;height:12px;position:relative}.tl-scrollbar-thumb{background:#ffffff2e;border-radius:3px;min-width:30px;height:6px;transition:background .15s;position:absolute;top:3px}.tl-scrollbar-thumb:hover,.tl-scrollbar:active .tl-scrollbar-thumb{background:#ffffff52}.tl-ruler{border-bottom:1px solid var(--color-border);cursor:pointer;flex-shrink:0;height:34px;position:relative;overflow:hidden}.tl-ruler-group{height:100%;position:absolute;top:0}.tl-ruler-label{color:#868686;white-space:nowrap;font-size:10px;line-height:12px;position:absolute;top:10px;left:0;transform:translate(-50%)}.tl-tick{background:#868686;border-radius:999px;width:2px;height:2px;position:absolute;top:15px;transform:translate(-50%)}.tl-tracks{flex:1;min-height:0;padding-top:16px;position:relative;overflow:hidden auto}.tl-grey{z-index:15;pointer-events:none;background:#ffffff0d;position:absolute;top:0;bottom:0;right:0}.tl-grey-handle{cursor:ew-resize;pointer-events:auto;width:8px;position:absolute;top:0;bottom:0;left:-4px}.tl-grey-handle:before{content:"";background:var(--color-border);width:2px;position:absolute;top:0;bottom:0;left:3px}.tl-grey-handle:hover:before{background:var(--color-text-dim)}.tl-empty{color:var(--color-text-dim);margin:8px 16px;font-size:12px}.tl-track-row{height:36px;margin-bottom:12px;position:relative}.tl-bar{cursor:grab;box-sizing:border-box;background:#97ffa159;border:2px solid #00962959;border-radius:12px;height:36px;transition:background .15s,border-color .15s,opacity .15s;position:absolute;top:0;overflow:clip}.tl-bar--selected{background:#97ffa1}.tl-bar:active{cursor:grabbing}.tl-bar-kf{cursor:ew-resize;transform-origin:0 0;background:#00962980;border-radius:2px;width:14px;height:14px;position:absolute;top:50%}.tl-bar-kf--start{left:0;transform:translate(16.304px,calc(-50% - 2.9px))rotate(45deg)}.tl-bar-kf--end{right:0;transform:translate(-1.9px,calc(-50% - 2.9px))rotate(45deg)}.tl-bar-kf--mid{transform-origin:50%;transform:translate(-50%,-50%)rotate(45deg)}.tl-bar-kf--selected{background:#009629}.tl-playhead{z-index:20;cursor:ew-resize;width:0;position:absolute;top:0;bottom:0}.tl-playhead-pill{transform-origin:50%;background:var(--color-accent);color:#fff;font-variant-numeric:tabular-nums;z-index:1;border-radius:999px;justify-content:center;align-items:center;min-width:32px;height:18px;padding:0 6px;font-size:10px;line-height:12px;transition:transform .15s;display:flex;position:absolute;top:12px;left:0;transform:translate(-50%)}.tl-playhead-pill:hover{transform:translate(-50%)scale(1.15)}.tl-playhead-line{background:var(--color-accent);width:2px;position:absolute;top:30px;bottom:0;left:0;transform:translate(-50%)}.db-root{color:#fff;width:100%;height:100%;font-family:var(--font-ui);background:#141414;display:flex;overflow:hidden}.db-sidebar{border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;gap:24px;width:260px;height:100%;padding:16px;display:flex}.db-sidebar-top{flex-direction:column;align-self:stretch;gap:16px;display:flex}.db-nav{flex-direction:column;gap:5px;display:flex}.db-nav-item{color:#868686;font-family:var(--font-ui);cursor:pointer;text-align:left;width:100%;transition:background var(--duration-base), color var(--duration-base);background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px;font-size:14px;line-height:18px;display:flex}.db-nav-item:hover{color:#fff;background:#ffffff0f}.db-nav-item--active{color:#fff;background:#ffffff0d}.db-collections{flex-direction:column;align-self:stretch;gap:16px;display:flex}.db-collections-label{letter-spacing:.08em;text-transform:uppercase;color:#868686;font-size:12px;line-height:16px}.db-collections-list{flex-direction:column;align-self:stretch;gap:5px;display:flex}.db-collection-item{width:100%;font-family:var(--font-ui);color:#868686;cursor:pointer;text-align:left;transition:background var(--duration-base), color var(--duration-base);background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:8px;font-size:14px;line-height:18px;display:flex}.db-collection-item:hover{background:#ffffff0f}.db-collection-item--active{color:#fff;background:#ffffff0d}.db-collection-name{flex:1;min-width:0}.db-collection-count{color:#868686;flex-shrink:0}.db-dropdown-submenu{flex-direction:column;gap:4px;padding:0 4px 4px;display:flex}.db-dropdown-item--expandable{justify-content:space-between}.db-dropdown-item-content{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.db-dropdown-chevron{opacity:.7;transition:transform var(--duration-base);flex-shrink:0}.db-dropdown-chevron--open{transform:rotate(180deg)}.db-user-menu{position:relative}.db-user-row{width:100%;font-family:var(--font-ui);color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:flex-start;align-items:center;gap:10px;margin:-4px;padding:4px;transition:background .15s,padding .15s;display:flex}.db-user-row:hover{background:#ffffff0f}.db-user-row:hover,.db-user-menu--open .db-user-row{padding-right:6px}.db-user-dropdown{padding-top:var(--space-3);z-index:10;flex-direction:column;display:none;position:absolute;top:100%;left:0;right:0}.db-user-dropdown .db-dropdown-panel{padding-top:var(--space-3)}.db-user-menu--open .db-user-dropdown{display:flex}.db-dropdown-panel{gap:var(--space-3);padding:var(--space-2);background:var(--color-bg-panel);border:1px solid var(--color-border-subtle);border-radius:16px;flex-direction:column;display:flex;overflow:clip}.db-dropdown-item{align-self:stretch;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2);color:var(--color-text);font-family:var(--font-ui);text-align:left;cursor:pointer;transition:background var(--duration-base);background:0 0;border:none;border-radius:10px;font-size:14px;line-height:18px;display:flex}.db-dropdown-item svg{flex-shrink:0}.db-dropdown-item:hover{background:var(--color-bg-control)}.db-user-avatar{border-radius:7px;flex-shrink:0;width:30px;height:30px;overflow:hidden}.db-user-name{color:#fff;text-align:left;flex:1;min-width:0;font-size:14px;line-height:18px}.db-user-row>svg{flex-shrink:0}.db-user-chevron{opacity:.7;flex-shrink:0}.db-divider{background:#ffffff1a;height:1px}.db-main{flex-direction:column;flex:1;gap:24px;min-width:0;height:100%;padding:62px 24px 24px;display:flex;overflow-y:auto}.db-header{align-items:center;gap:24px;display:flex}.db-heading{color:#fff;flex:1;margin:0;font-size:20px;font-weight:400;line-height:24px}.db-header-actions{align-items:center;gap:6px;display:flex}.db-search{background:#272727;border-radius:8px;align-items:center;gap:6px;width:156px;padding:8px 6px;display:flex}.db-search-icon{opacity:.6;flex-shrink:0}.db-search-input{min-width:0;font-family:var(--font-ui);color:#fff;background:0 0;border:none;outline:none;flex:1;font-size:12px;line-height:16px}.db-search-input::placeholder{color:#fff6}.db-grid{grid-template-columns:repeat(4,1fr);align-content:start;gap:24px;display:grid}@media (width<=1200px){.db-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=900px){.db-grid{grid-template-columns:repeat(2,1fr)}}.db-project-card{flex-direction:column;gap:14px;display:flex}.db-project-thumb{aspect-ratio:1;background:#222;border-radius:20px;width:100%;transition:opacity .15s;overflow:hidden}.db-project-thumb-media{object-fit:contain;vertical-align:top;width:100%;height:100%;display:block}.db-project-thumb--template{background:#1c1c1c;border:1px solid #2a2a2a}.db-project-thumb-empty{opacity:.5;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.db-project-meta{justify-content:space-between;align-items:flex-start;gap:8px;padding:0 10px;display:flex}.db-project-meta-text{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.db-project-menu{flex-shrink:0;position:relative}.db-project-menu-btn{color:#868686;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:background .15s,color .15s;display:flex}.db-project-menu-btn:hover{color:#fff;background:#ffffff14}.db-project-menu-dropdown{z-index:20;padding-top:4px;display:none;position:absolute;top:100%;right:0}.db-project-menu--open .db-project-menu-dropdown{display:block}.db-project-menu-dropdown .db-dropdown-panel{width:max-content;min-width:180px}.db-project-name{color:#fff;font-size:14px;line-height:18px}.db-project-date{color:#868686;font-size:12px;line-height:16px}.db-empty{text-align:center;color:#868686;grid-column:1/-1;padding:64px 0;font-size:14px}.db-empty strong{color:#aaa}.db-modal-overlay{z-index:200;background:var(--color-shadow-overlay);animation:.22s ease-out forwards db-modal-overlay-in;position:fixed;inset:0}.db-modal{z-index:201;box-sizing:border-box;background:var(--color-bg-panel);width:256px;font-family:var(--font-ui);border-radius:16px;flex-direction:column;align-items:flex-start;gap:16px;padding:16px;animation:.28s cubic-bezier(.16,1,.3,1) forwards db-modal-in;display:flex;position:fixed;top:50%;left:50%;overflow:clip;transform:translate(-50%,-50%)}@keyframes db-modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes db-modal-in{0%{opacity:0;transform:translate(-50%,calc(8px - 50%))scale(.97)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@media (prefers-reduced-motion:reduce){.db-modal-overlay,.db-modal{animation:none}}.db-modal-title{color:var(--color-text);align-self:stretch;margin:0;font-size:12px;font-weight:400;line-height:16px}.db-modal-divider{background:#ffffff1a;flex-shrink:0;align-self:stretch;height:1px}.db-modal-text{color:#868686;align-self:stretch;margin:0;font-size:12px;line-height:20px}.db-modal-field{box-sizing:border-box;background:var(--color-bg-control);border-radius:10px;align-self:stretch;align-items:center;gap:8px;min-height:30px;padding:6px;display:flex}.db-modal-field svg{flex-shrink:0}.db-modal-field-input{min-width:0;color:var(--color-text);font-family:var(--font-ui);background:0 0;border:none;flex:1;font-size:14px;line-height:18px}.db-modal-field-input:focus{outline:none}.db-modal-select-wrap{align-self:stretch;position:relative}.db-modal-select{background:var(--color-bg-control);width:100%;color:var(--color-text);font-family:var(--font-ui);text-align:left;cursor:pointer;border:none;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:6px;font-size:14px;line-height:18px;display:flex}.db-modal-select-dropdown{z-index:1;position:absolute;top:calc(100% + 4px);left:0;right:0}.db-modal-actions{align-self:stretch;align-items:flex-start;gap:12px;display:flex}.db-modal-btn{box-sizing:border-box;min-height:32px;font-family:var(--font-ui);color:var(--color-text);cursor:pointer;transition:opacity var(--duration-base);border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;padding:8px 16px;font-size:12px;line-height:16px;display:flex}.db-modal-btn:disabled{opacity:.5;cursor:not-allowed}.db-modal-btn--secondary{background:var(--color-bg-control)}.db-modal-btn--primary{background:var(--color-accent)}.db-modal-btn--danger{background:#e6325c}.auth-loading{background:#0f0f0f;min-height:100vh}.auth-root{background:#0f0f0f;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:#161616;border:1px solid #2a2a2a;border-radius:16px;width:100%;max-width:400px;padding:32px}.auth-title{color:#fff;margin:0 0 4px;font-size:24px;font-weight:600}.auth-subtitle{color:#868686;margin:0 0 24px;font-size:14px}.auth-google-btn{color:#f5f5f5;cursor:pointer;background:#1e1e1e;border:1px solid #2a2a2a;border-radius:8px;justify-content:center;align-items:center;gap:10px;width:100%;padding:10px 16px;font-size:14px;font-weight:500;transition:background .15s,border-color .15s;display:flex}.auth-google-btn:hover:not(:disabled){background:#252525;border-color:#3a3a3a}.auth-google-btn:disabled{opacity:.6;cursor:not-allowed}.auth-google-icon{flex-shrink:0}.auth-divider{align-items:center;gap:12px;margin:20px 0;display:flex}.auth-divider-line{background:#2a2a2a;flex:1;height:1px}.auth-divider-text{color:#868686;text-transform:lowercase;font-size:12px}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-label{color:#a3a3a3;flex-direction:column;gap:6px;font-size:12px;display:flex}.auth-input{color:#f5f5f5;background:#1e1e1e;border:1px solid #2a2a2a;border-radius:8px;outline:none;padding:10px 12px;font-size:14px}.auth-input:focus{border-color:var(--color-accent)}.auth-input--otp{letter-spacing:.35em;text-align:center;font-variant-numeric:tabular-nums;font-size:24px}.auth-error{color:#ff6b6b;margin:0;font-size:13px}.auth-message{color:#97ffa1;margin:0;font-size:13px}.auth-submit{width:100%;margin-top:4px}.auth-toggle{color:var(--color-accent);cursor:pointer;background:0 0;border:none;margin-top:20px;padding:0;font-size:13px}.auth-toggle:hover{color:var(--color-accent-hover)}
