:is(.proj-detail,.client-home,.review-session) .ctx-menu{background:var(--bg-popover);border:.5px solid var(--border-container);border-radius:var(--radius-8);min-width:220px;box-shadow:var(--shadow-12dp);z-index:1500;transform-origin:0 0;padding:6px;position:fixed}:is(.proj-detail,.client-home,.review-session) .ctx-menu.is-open{animation:fbs-pop-in var(--dur-150) var(--ease-primary)}:is(.proj-detail,.client-home,.review-session) .ctx-menu__item{border-radius:var(--radius-4);width:100%;color:var(--text-body);cursor:pointer;text-align:left;transition:background var(--dur-100), color var(--dur-100);background:0 0;border:0;align-items:center;gap:12px;padding:8px 12px;font-family:inherit;font-size:13px;display:flex}:is(.proj-detail,.client-home,.review-session) .ctx-menu__item:hover{background:var(--bg-hover);color:var(--text-primary)}:is(.proj-detail,.client-home,.review-session) .ctx-menu__item svg{color:var(--text-tertiary);flex-shrink:0}:is(.proj-detail,.client-home,.review-session) .ctx-menu__item:hover svg{color:var(--text-body)}:is(.proj-detail,.client-home,.review-session) .ctx-menu__item--destructive,:is(.proj-detail,.client-home,.review-session) .ctx-menu__item--destructive svg{color:var(--alert-error)}:is(.proj-detail,.client-home,.review-session) .ctx-menu__item--destructive:hover{color:var(--alert-error);background:#f433501a}:is(.proj-detail,.client-home,.review-session) .ctx-menu__item--destructive:hover svg{color:var(--alert-error)}:is(.proj-detail,.client-home,.review-session) .ctx-menu__item--disabled,:is(.proj-detail,.client-home,.review-session) .ctx-menu__item--disabled:hover{color:var(--text-tertiary);cursor:default;background:0 0}:is(.proj-detail,.client-home,.review-session) .ctx-menu__item--disabled svg,:is(.proj-detail,.client-home,.review-session) .ctx-menu__item--disabled:hover svg{color:var(--text-tertiary);opacity:.6}:is(.proj-detail,.client-home,.review-session) .ctx-menu__divider{background:var(--border-container);height:1px;margin:6px 0}:is(.proj-detail,.client-home,.review-session) .ctx-menu__shortcut{color:var(--text-tertiary);font-variant-numeric:tabular-nums;letter-spacing:.04em;margin-left:auto;font-size:11px}:is(.proj-detail,.client-home,.review-session) .ctx-menu__group-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary);padding:6px 12px 4px;font-size:10px;font-weight:600}
:is(.proj-detail,.review-session) .version-list{flex-direction:column;gap:6px;display:flex}:is(.proj-detail,.review-session) .version-row{background:var(--bg-card);border:1px solid var(--border-container);border-radius:var(--radius-6);cursor:pointer;transition:background var(--dur-150), border-color var(--dur-150);align-items:center;gap:12px;padding:10px 12px;display:flex}:is(.proj-detail,.review-session) .version-row:hover{background:var(--bg-popover);border-color:var(--border-secondary)}:is(.proj-detail,.review-session) .version-row.is-selected,:is(.proj-detail,.review-session) .version-row.is-selected:hover{border-color:var(--accent-primary);background:#5b53ff1f}:is(.proj-detail,.review-session) .version-row__handle{color:var(--text-tertiary);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;display:inline-flex}:is(.proj-detail,.review-session) .version-row__handle:active{cursor:grabbing}:is(.proj-detail,.review-session) .version-row.is-dragging{opacity:.4}:is(.proj-detail,.review-session) .version-row--drop-target{box-shadow:inset 0 2px 0 0 var(--accent-primary)}:is(.proj-detail,.review-session) .version-row--drop-after{box-shadow:inset 0 -2px 0 0 var(--accent-primary)}:is(.proj-detail,.review-session) .version-row__thumb{border-radius:var(--radius-4);color:#ffffff59;background:linear-gradient(135deg,#1a1d2a,#0a0c14);flex-shrink:0;justify-content:center;align-items:center;width:56px;height:36px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 .5px #ffffff0f}:is(.proj-detail,.review-session) .version-row__thumb>img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}:is(.proj-detail,.review-session) .version-row__thumb--has-image>img{background-color:var(--checker-bg);background-image:var(--checker-image);background-size:var(--checker-size);background-position:var(--checker-pos)}:is(.proj-detail,.review-session) .version-row__dots{border-radius:var(--radius-4);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;transition:background var(--dur-150), color var(--dur-150);background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}:is(.proj-detail,.review-session) .version-row__dots:hover{background:var(--bg-hover);color:var(--text-primary)}:is(.proj-detail,.review-session) .version-row__badge{height:20px;color:var(--text-primary);font-variant-numeric:tabular-nums;letter-spacing:.04em;text-transform:uppercase;background:#5b53ffd9;border-radius:3px;flex-shrink:0;align-items:center;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex}:is(.proj-detail,.review-session) .version-row__meta{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}:is(.proj-detail,.review-session) .version-row__name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}:is(.proj-detail,.review-session) .version-row__info{color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-size:11px}:is(.proj-detail,.review-session) .version-row__name-input{width:100%;color:var(--text-primary);background:var(--bg-input,var(--bg-base));border:1px solid var(--accent-primary);border-radius:var(--radius-4);box-sizing:border-box;outline:none;height:26px;margin:-3px 0;padding:2px 6px;font-size:13px;font-weight:500}:is(.proj-detail,.review-session) .version-foot__selection{align-items:center;gap:4px;margin-right:auto;display:inline-flex}:is(.proj-detail,.review-session) .version-foot__count{color:var(--text-secondary);align-self:center;font-size:13px}
.btn{height:var(--size-button-md);border-radius:var(--radius-6);font-family:inherit;font-size:var(--t-body-medium-size);cursor:pointer;white-space:nowrap;transition:background var(--dur-150) var(--ease-primary), color var(--dur-150) var(--ease-primary), transform var(--dur-100) var(--ease-primary);border:0;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn i{font-size:var(--size-icon-sm)}.btn:focus-visible{outline:2px solid var(--accent-light);outline-offset:2px}.btn:disabled,.btn[disabled]{opacity:.5;cursor:default;pointer-events:none}.btn--primary{background:var(--accent-primary);color:var(--text-primary)}.btn--primary:hover{background:var(--accent-hover)}.btn--primary:active{background:var(--accent-pressed)}.btn--secondary{color:var(--text-primary);background:#55586e66}.btn--secondary:hover{background:#6d718880}.btn--ghost{color:var(--text-body);background:0 0}.btn--ghost:hover{background:var(--bg-hover);color:var(--text-primary)}.btn--destructive{background:var(--alert-error);color:var(--text-primary)}.btn--destructive:hover{background:var(--alert-error-hover)}.btn--compact{height:28px;padding:0 10px;font-size:12px}.btn--compact i{font-size:14px}.btn--lg{height:var(--size-button-lg);font-size:var(--t-body-size);padding:0 18px}.btn--full{width:100%}.btn--icon-leading i{margin-right:2px}
.modal-backdrop{background:var(--scrim-medium);z-index:300;animation:fbs-backdrop-in var(--dur-150) var(--ease-primary);justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.modal-backdrop.is-open{display:flex}.modal-backdrop.is-closing{animation:fbs-backdrop-out var(--dur-200) var(--ease-primary) both;display:flex}.modal{background:var(--bg-modal);border:1px solid var(--border-container);border-radius:var(--radius-10);box-shadow:var(--shadow-24dp);width:100%;max-width:480px;max-height:calc(100vh - 48px);animation:fbs-modal-in var(--dur-200) var(--ease-primary);flex-direction:column;display:flex}.modal-backdrop.is-closing .modal{animation:fbs-modal-out var(--dur-200) var(--ease-primary) both}.modal--pay{max-width:540px}.modal__head{border-bottom:1px solid var(--border-container);flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 16px 12px;display:flex}.modal__title{color:var(--text-primary);margin:0;font-size:14px;font-weight:600}.modal__close{border-radius:var(--radius-6);width:28px;height:28px;color:var(--text-tertiary);cursor:pointer;transition:background var(--dur-150), color var(--dur-150);background:0 0;border:0;justify-content:center;align-items:center;font-size:16px;display:inline-flex}.modal__close:hover{background:var(--bg-hover);color:var(--text-body)}.modal__close svg{width:16px;height:16px}.modal__body{padding:16px;overflow-y:auto}.modal__body p{color:var(--text-body);margin:0;line-height:1.5}.modal__foot{border-top:1px solid var(--border-container);flex-shrink:0;justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}
