.ui-focus:focus-visible,:focus-visible{outline:none;box-shadow:0 0 0 3px var(--ink-blue-tint)}.ui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:var(--font-sans);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:var(--line-height-tight);border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;letter-spacing:-.005em;transition:background-color var(--duration-normal) var(--easing-default),color var(--duration-normal) var(--easing-default),border-color var(--duration-normal) var(--easing-default),box-shadow var(--duration-normal) var(--easing-default)}.ui-btn:disabled{opacity:.4;cursor:not-allowed}.ui-btn--sm{height:28px;padding:0 var(--space-3);font-size:var(--font-size-sm)}.ui-btn--md{height:36px;padding:0 var(--space-4)}.ui-btn--lg{height:44px;padding:0 var(--space-5);font-size:var(--font-size-md)}.ui-btn--primary{background:var(--ink-blue);color:var(--ink-inverse);border-color:var(--ink-blue)}.ui-btn--primary:hover:not(:disabled){background:var(--ink-blue-hover);border-color:var(--ink-blue-hover)}.ui-btn--primary:active:not(:disabled){background:#2a6d7a;border-color:#2a6d7a}.ui-btn--secondary{background:transparent;color:var(--ink-deep);border-color:var(--line-input)}.ui-btn--secondary:hover:not(:disabled){background:var(--canvas-hover)}.ui-btn--secondary:active:not(:disabled){background:var(--canvas-pressed)}.ui-btn--ghost{background:transparent;color:var(--ink-soft);border-color:transparent}.ui-btn--ghost:hover:not(:disabled){background:var(--canvas-hover);color:var(--ink-deep)}.ui-field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-6)}.ui-label{font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--ink-soft);letter-spacing:.005em}.ui-label__required{color:var(--clay);font-size:.6em;vertical-align:super;margin-left:2px;line-height:1}.ui-input,.ui-select{font-family:var(--font-sans);font-size:var(--font-size-md);line-height:var(--line-height-normal);color:var(--ink-deep);background:transparent;border:none;border-bottom:1px solid var(--line-input);border-radius:var(--radius-input);padding:0;height:var(--input-height);width:100%;transition:border-color var(--duration-normal) var(--easing-default),border-bottom-width var(--duration-normal) var(--easing-default)}.ui-input::placeholder{color:var(--ink-faded)}.ui-input:focus,.ui-select:focus{outline:none;border-bottom:2px solid var(--line-input-focus);box-shadow:none}.ui-input--error,.ui-select--error{border-bottom-color:var(--line-input-error)}.ui-input--error:focus,.ui-select--error:focus{border-bottom-color:var(--line-input-error)}textarea.ui-input{height:auto;min-height:96px;resize:vertical;padding:var(--space-2) 0;border:1px solid var(--line-table);border-bottom:1px solid var(--line-input);border-radius:0}textarea.ui-input:focus{border:1px solid var(--line-table);border-bottom:2px solid var(--line-input-focus)}.ui-searchable-select{position:relative}.ui-searchable-select__list{position:absolute;z-index:20;top:calc(100% - var(--space-2));left:0;right:0;margin:0;padding:var(--space-1) 0;list-style:none;max-height:240px;overflow-y:auto;background:var(--canvas-surface, #fff);border:1px solid var(--line-table);border-radius:var(--radius-input, 4px);box-shadow:0 8px 24px #00000014;animation:dropdown-in var(--duration-normal) var(--easing-out)}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ui-searchable-select__option{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);color:var(--ink-deep);cursor:pointer}.ui-searchable-select__option--active,.ui-searchable-select__option:hover{background:var(--canvas-hover)}.ui-searchable-select__empty{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);color:var(--ink-faded)}.ui-error{font-size:var(--font-size-xs);color:var(--err-text);letter-spacing:.005em}.ui-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2 4l4 4 4-4' stroke='%236B5F4F' stroke-width='1.25' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center;padding-right:var(--space-5);cursor:pointer}.ui-section-label{font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin:0 0 var(--space-3)}.ui-badge{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.05em;line-height:var(--line-height-tight);white-space:nowrap}.ui-badge:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}.ui-badge--ready{color:var(--ink-blue-text)}.ui-badge--ready:before{background:var(--ink-blue)}.ui-badge--in-progress{color:var(--warn-text)}.ui-badge--in-progress:before{background:var(--warn-dot)}.ui-badge--completed{color:var(--ok-text)}.ui-badge--completed:before{background:var(--ok-dot)}.ui-badge--overdue{color:var(--err-text)}.ui-badge--overdue:before{background:var(--err-dot)}.ui-badge--neutral{color:var(--neutral-text)}.ui-badge--neutral:before{background:var(--neutral-dot)}.ui-card{background:var(--canvas-raised);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-card)}.ui-table-wrap{overflow:auto}.ui-table{width:100%;border-collapse:collapse;font-size:var(--font-size-md)}.ui-table thead th{position:sticky;top:0;z-index:1;text-align:left;font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);background:var(--canvas-inset);padding:0 var(--space-3);height:var(--table-row-height)}.ui-table tbody td{border-bottom:1px solid var(--line-table);padding:0 var(--space-3);height:var(--table-row-height);color:var(--ink-body);font-size:var(--font-size-md)}.ui-table tbody tr:last-child td{border-bottom:none}.ui-table tbody tr{transition:background-color var(--duration-normal) var(--easing-default)}.ui-table tbody tr:hover{background:var(--canvas-hover)}.ui-table tbody tr[aria-selected=true],.ui-table tbody tr.is-selected{background:var(--canvas-selected);box-shadow:inset 3px 0 0 var(--ink-blue)}.ui-table .cell-patient-name{font-weight:var(--font-weight-semibold);color:var(--ink-deep);letter-spacing:-.01em}.ui-table .cell-money{font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--money-text);text-align:right}.ui-tabs{display:flex;gap:0;border-bottom:1px solid var(--line-hairline);position:relative}.ui-tab{background:none;border:none;border-bottom:2px solid transparent;padding:var(--space-3) var(--space-6);margin-bottom:-1px;font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--ink-soft);cursor:pointer;letter-spacing:-.005em;transition:color var(--duration-normal) var(--easing-default),border-color var(--duration-normal) var(--easing-default)}.ui-tab:hover{color:var(--ink-deep)}.ui-tab--active{color:var(--ink-deep);border-bottom-color:var(--ink-blue)}.ui-toast-viewport{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);max-width:360px;pointer-events:none}.ui-toast{pointer-events:auto;padding:var(--space-3) var(--space-4);font-family:var(--font-sans);font-size:var(--font-size-sm);border:none;border-left:3px solid var(--line-hairline);background:var(--canvas-raised);box-shadow:var(--shadow-toast);border-radius:var(--radius-lg);color:var(--ink-body);animation:toast-in var(--duration-slow) var(--easing-physical)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ui-toast--success{border-left-color:var(--ok-dot)}.ui-toast--error{border-left-color:var(--err-dot)}.ui-toast--info{border-left-color:var(--ink-blue)}.ui-side-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;margin:0;padding:0;border:none;display:block;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#2b4c6a2e;-webkit-backdrop-filter:blur(2px) saturate(1.05);backdrop-filter:blur(2px) saturate(1.05);z-index:var(--z-overlay);animation:fade-in var(--duration-slow) var(--easing-out)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.ui-side-panel{position:fixed;top:0;right:0;bottom:0;z-index:calc(var(--z-overlay) + 1);width:min(var(--side-panel-width),100vw);background:var(--canvas-raised);border-left:1px solid var(--line-hairline);box-shadow:var(--shadow-panel);display:flex;flex-direction:column;animation:panel-in var(--duration-slow) var(--easing-physical)}@keyframes panel-in{0%{transform:translate(100%)}to{transform:translate(0)}}.ui-side-panel-backdrop--closing{animation:fade-out var(--duration-slow) var(--easing-out) forwards}.ui-side-panel--closing{animation:panel-out var(--duration-slow) var(--easing-physical) forwards}@keyframes fade-out{0%{opacity:1}to{opacity:0}}@keyframes panel-out{0%{transform:translate(0)}to{transform:translate(100%)}}.ui-side-panel__header{display:flex;flex-direction:column;padding:var(--space-6) var(--space-6) var(--space-4);border-bottom:1px solid var(--line-hairline);gap:var(--space-1)}.ui-side-panel__header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.ui-side-panel__patient-name{font-family:var(--font-sans);font-size:var(--font-size-display-sm);font-weight:var(--font-weight-bold);color:var(--ink-deep);line-height:var(--line-height-tight);letter-spacing:-.025em;margin:0}.ui-side-panel__patient-rule{display:block;width:40px;height:2px;background:var(--clay);margin:var(--space-2) 0 var(--space-1);flex-shrink:0}.ui-side-panel__title{font-family:var(--font-sans);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--ink-deep);letter-spacing:-.01em;margin:0}.ui-side-panel__body{flex:1;overflow:auto;padding:var(--space-5) var(--space-6)}.ui-skeleton{background:linear-gradient(90deg,var(--canvas-inset) 25%,var(--canvas-hover) 50%,var(--canvas-inset) 75%);background-size:200% 100%;border-radius:var(--radius-sm);animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.font-display{font-family:var(--font-sans);font-weight:var(--font-weight-extrabold);letter-spacing:-.03em}.ui-empty{font-family:var(--font-sans);font-style:italic;font-size:var(--font-size-md);font-weight:var(--font-weight-normal);color:var(--ink-faded);letter-spacing:0;margin:var(--space-10) 0}@media(prefers-reduced-motion:reduce){.ui-skeleton,.ui-toast,.ui-side-panel,.ui-side-panel-backdrop{animation:none}.ui-btn,.ui-input,.ui-select,.ui-tab,.app-nav-item{transition:none}}.app-shell{display:flex;min-height:100vh;width:100%}.app-sidebar{width:var(--sidebar-width);min-height:100vh;background:var(--sidebar-bg);display:flex;flex-direction:column;flex-shrink:0;position:sticky;top:0;height:100vh;overflow-y:auto}.app-sidebar__logo{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-4);border-bottom:1px solid var(--sidebar-line)}.app-sidebar__logo-img{width:40px;height:40px;border-radius:var(--radius-md);object-fit:cover;flex-shrink:0;display:block}.app-sidebar__product-name{font-family:var(--font-sans);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--ink-deep);line-height:var(--line-height-tight);letter-spacing:-.02em}.app-sidebar__nav{flex:1;padding:var(--space-3);display:flex;flex-direction:column;gap:2px}.app-nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-pill);border:none;background:transparent;color:var(--sidebar-text);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;text-decoration:none;transition:background-color var(--duration-normal) var(--easing-default),color var(--duration-normal) var(--easing-default);position:relative;text-align:left;width:100%}.app-nav-item:hover{background:var(--sidebar-bg-hover);color:var(--sidebar-text-active)}.app-nav-item--active{background:var(--sidebar-bg-active);color:var(--sidebar-text-active);font-weight:var(--font-weight-semibold)}.app-nav-item__icon{width:16px;height:16px;flex-shrink:0;opacity:.7;transition:opacity var(--duration-normal) var(--easing-default)}.app-nav-item:hover .app-nav-item__icon,.app-nav-item--active .app-nav-item__icon{opacity:1}.app-sidebar__footer{padding:var(--space-4);border-top:1px solid var(--sidebar-line);display:flex;flex-direction:column;gap:var(--space-2)}.app-sidebar__user-email{font-size:var(--font-size-sm);color:var(--sidebar-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar__logout{display:flex;align-items:center;gap:var(--space-2);background:transparent;border:none;padding:var(--space-1) 0;font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--sidebar-text);cursor:pointer;transition:color var(--duration-normal) var(--easing-default)}.app-sidebar__logout:hover{color:var(--sidebar-text-active)}.app-content{flex:1;min-width:0;background:linear-gradient(to bottom,var(--canvas-base) 60%,#FDF0EC 100%);display:flex;flex-direction:column;overflow-y:auto;scrollbar-gutter:stable}.page-wrap{padding:var(--space-8) var(--space-8);max-width:var(--content-max-width);margin:0 auto;width:100%}.page-wrap--full{max-width:none;padding:var(--space-8) var(--space-8)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6)}.page-title{font-family:var(--font-sans);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--ink-deep);margin:0;line-height:var(--line-height-tight);letter-spacing:-.01em}.page-title--display{font-family:var(--font-sans);font-size:var(--font-size-display-md);font-weight:var(--font-weight-extrabold);color:var(--ink-deep);margin:0;line-height:var(--line-height-tight);letter-spacing:-.035em}.page-subtitle{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--ink-soft);margin:var(--space-1) 0 0;line-height:var(--line-height-normal)}.detail-row{display:grid;grid-template-columns:9rem 1fr;gap:var(--space-2);padding:var(--space-1) 0;font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.detail-row__label{color:var(--ink-soft);font-weight:var(--font-weight-medium)}.detail-row__value{color:var(--ink-deep);word-break:break-word}.section-label{font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin:0 0 var(--space-3)}@media(max-width:1024px){.app-sidebar{width:var(--sidebar-collapsed)}.app-sidebar__product-name,.app-sidebar__user-email,.app-nav-item__label{display:none}.app-sidebar__logo{justify-content:center;padding:var(--space-4) var(--space-3)}.app-nav-item{justify-content:center;padding:var(--space-3)}.app-nav-item--active:before{display:none}.app-sidebar__footer{align-items:center}.app-sidebar__logout span{display:none}.page-wrap,.page-wrap--full{padding:var(--space-6) var(--space-5)}}@media(max-width:768px){.app-sidebar{display:none}.page-wrap,.page-wrap--full{padding:var(--space-5) var(--space-4)}}.access-denied{width:100vw;min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--canvas-base);padding:var(--space-8)}.access-denied__content{max-width:480px;width:100%;text-align:center;background:var(--canvas-raised);border-radius:var(--radius-lg);padding:var(--space-12) var(--space-10);box-shadow:var(--shadow-card)}.access-denied__icon-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;margin-bottom:var(--space-8)}.access-denied__icon-circle{width:128px;height:128px;border-radius:50%;background:var(--err-tint);display:flex;align-items:center;justify-content:center}.access-denied__lock{width:56px;height:62px}.access-denied__err-badge{position:absolute;bottom:2px;right:2px;width:30px;height:30px;border-radius:50%;background:var(--err-dot);color:#fff;font-weight:var(--font-weight-bold);font-size:var(--font-size-md);font-family:var(--font-sans);display:flex;align-items:center;justify-content:center;border:2px solid var(--canvas-raised);line-height:1}.access-denied__title{font-size:var(--font-size-display-sm);font-weight:var(--font-weight-bold);color:var(--ink-deep);margin:0 0 var(--space-5);letter-spacing:-.01em}.access-denied__body{font-size:var(--font-size-base);color:var(--ink-body);line-height:var(--line-height-loose);margin:0 0 var(--space-5)}.access-denied__support{font-size:var(--font-size-base);color:var(--ink-body);margin:0 0 var(--space-10)}.access-denied__support a{color:var(--ink-deep);font-weight:var(--font-weight-semibold);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.access-denied__support a:hover{opacity:.75}.access-denied__logout{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--ink-deep);color:var(--ink-inverse);border:none;border-radius:var(--radius-pill);padding:var(--space-3) var(--space-8);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);font-family:var(--font-sans);cursor:pointer;transition:opacity var(--duration-normal) var(--easing-default)}.access-denied__logout:hover{opacity:.82}.access-denied__logout:active{opacity:.7}.admin-tabs{margin-bottom:var(--space-6)}.admin-tab-panels{width:100%}.admin-tab-panel{display:none}.admin-tab-panel--active{display:block}.admin-tab-panel__inner{animation:admin-tab-in var(--duration-normal) var(--easing-out) forwards}@keyframes admin-tab-in{0%{opacity:0}to{opacity:1}}.admin-users-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap}.admin-users-count{margin:0;font-size:var(--font-size-sm);color:var(--ink-soft)}.admin-users-skeleton{display:grid;gap:var(--space-3)}.admin-users-skeleton__row{display:grid;grid-template-columns:1.4fr 2fr .8fr .7fr 1fr;gap:var(--space-4);align-items:center;padding:var(--space-3) 0;border-bottom:1px solid var(--line-hairline)}.admin-panel-section .form-section__label{font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.admin-panel-section{display:flex;flex-direction:column;gap:var(--space-3)}.admin-panel-section+.admin-panel-section{padding-top:var(--space-5);border-top:1px solid var(--line-hairline)}.admin-panel-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.admin-panel-hint{margin:0;font-size:var(--font-size-sm);color:var(--ink-soft)}.admin-confirm-banner{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--canvas-inset);border-radius:var(--radius-lg);animation:admin-tab-in var(--duration-normal) var(--easing-out) forwards}.admin-confirm-banner p{margin:0;font-size:var(--font-size-sm);color:var(--ink-body)}.dashboard-error{background:var(--err-tint);border-radius:var(--radius-lg);padding:var(--space-5);color:var(--err-text);font-size:var(--font-size-sm)}.earnings-hero{margin-bottom:var(--space-10)}.earnings-hero__context{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.earnings-hero__refresh{color:var(--ink-faded)}.earnings-hero__refresh:hover{color:var(--ink-soft)}.icon-spinning{animation:spin 1s ease-out}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.earnings-hero__lead{font-family:var(--font-sans);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin:0 0 var(--space-2);line-height:var(--line-height-tight)}.earnings-hero__amount{display:flex;align-items:baseline;gap:0;line-height:1}.earnings-hero__currency{font-family:var(--font-mono);font-size:calc(var(--font-size-display-lg) * .5);font-weight:var(--font-weight-medium);color:var(--ink-faded);align-self:flex-start;margin-top:.28em;margin-right:.08em;letter-spacing:-.01em}.earnings-hero__value{font-family:var(--font-mono);font-size:var(--font-size-display-lg);font-weight:var(--font-weight-semibold);color:var(--ink-deep);letter-spacing:-.04em;font-variant-numeric:tabular-nums lining-nums}.earnings-hero__rule{width:60px;height:2px;background:var(--clay);margin:var(--space-3) 0 var(--space-2)}.earnings-hero__caption{font-family:var(--font-sans);font-size:var(--font-size-base);color:var(--ink-soft);margin:0 0 var(--space-4)}.earnings-hero__meta{font-family:var(--font-sans);font-size:var(--font-size-sm);color:var(--ink-soft);margin:0}.earnings-hero__meta-ready{color:var(--ink-blue-text);font-weight:var(--font-weight-medium)}.dashboard-priority{margin-bottom:var(--space-8)}.dashboard-empty{font-family:var(--font-sans);font-style:italic;font-size:var(--font-size-md);font-weight:var(--font-weight-normal);color:var(--ink-soft);margin:var(--space-10) 0}.dashboard-panel-meta{font-size:var(--font-size-sm);color:var(--ink-soft);margin:0;padding-top:var(--space-4);border-top:1px solid var(--line-hairline)}.kpi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-bottom:var(--space-8)}.kpi-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5)}.kpi-card__label{font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin:0;line-height:var(--line-height-tight)}.kpi-card__value{font-family:var(--font-mono);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--ink-deep);letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums lining-nums;margin:0}@media(max-width:540px){.kpi-grid{grid-template-columns:1fr}}@media(max-width:900px){.earnings-hero__value{font-size:calc(var(--font-size-display-lg) * .75)}}.enroll-form{max-width:600px}.form-section{margin-bottom:var(--space-8)}.form-section__label{font-family:var(--font-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft);margin:0 0 var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--line-hairline)}.form-row{display:grid;gap:0 var(--space-5)}.form-row--1{grid-template-columns:1fr}.form-row--2{grid-template-columns:1fr 1fr}.form-row--3{grid-template-columns:repeat(3,max-content);gap:0 var(--space-5)}@media(max-width:560px){.form-row--2,.form-row--3{grid-template-columns:1fr}}.ui-helper{font-size:var(--font-size-xs);color:var(--ink-soft);margin-top:6px;line-height:var(--line-height-loose);display:block}.card-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);min-height:120px;border:1.5px dashed var(--line-input);border-radius:var(--radius-lg);background:var(--canvas-inset);cursor:pointer;padding:var(--space-5);transition:background-color var(--duration-normal) var(--easing-default),border-color var(--duration-normal) var(--easing-default);text-align:center}.card-dropzone:hover{background:var(--canvas-hover);border-style:solid;border-color:var(--line-input)}.card-dropzone--over{background:var(--ink-blue-tint);border-style:solid;border-color:var(--ink-blue)}.card-dropzone__text{font-size:var(--font-size-sm);color:var(--ink-body)}.card-dropzone__link{color:var(--ink-blue-text);text-decoration:underline;text-underline-offset:2px}.card-dropzone__hint{font-size:var(--font-size-xs);color:var(--ink-faded)}.card-preview{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--line-hairline);border-radius:var(--radius-md);background:var(--canvas-raised)}.card-preview__img{width:48px;height:36px;object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0}.card-preview__info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.card-preview__name{font-size:var(--font-size-sm);color:var(--ink-body);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-preview__size{font-size:var(--font-size-xs);color:var(--ink-faded);font-family:var(--font-mono)}.form-checkbox{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;font-size:var(--font-size-sm);color:var(--ink-body);line-height:var(--line-height-loose)}.form-checkbox input[type=checkbox]{width:16px;height:16px;border-radius:var(--radius-sm);border:1.5px solid var(--line-input);flex-shrink:0;margin-top:3px;accent-color:var(--ink-blue);cursor:pointer}.form-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--line-hairline);margin-top:var(--space-8)}:root{--canvas-base: #F4F8FB;--canvas-raised: #FFFFFF;--canvas-inset: #E8F0F5;--canvas-hover: #E2ECF2;--canvas-pressed: #D4E2EB;--canvas-selected: #DBE9F2;--sidebar-bg: #FFFFFF;--sidebar-bg-hover: #F0F5F9;--sidebar-bg-active: #E0F1F5;--sidebar-line: #E2ECF2;--sidebar-text: #4F6070;--sidebar-text-active: #2B4C6A;--sidebar-text-muted: #8FA3B4;--sidebar-accent: #3F92A2;--ink-deep: #2B4C6A;--ink-body: #333333;--ink-soft: #4F4F4F;--ink-faded: #999999;--ink-inverse: #FFFFFF;--ink-blue: #3F92A2;--ink-blue-hover: #357D8B;--ink-blue-tint: #E0F1F5;--ink-blue-text: #2B4C6A;--clay: #EA6B4E;--clay-soft: #F08A72;--clay-tint: #FDE8E3;--money-text: #0D6E47;--money-tint: #E6F1EC;--ok-dot: #2E8757;--ok-text: #1F6B43;--ok-tint: #E8F1EB;--warn-dot: #B8821E;--warn-text: #8B5E10;--warn-tint: #F6EFD9;--err-dot: #B8412F;--err-text: #8E2E22;--err-tint: #F4E1DD;--neutral-dot: #777777;--neutral-text: #4F4F4F;--neutral-tint: #EAF2F5;--line-hairline: #C8DDE6;--line-input: #8FB5C4;--line-input-focus: var(--ink-blue);--line-input-error: var(--err-dot);--line-table: #D4E8EF;--shadow-card: 0 1px 2px rgba(43, 76, 106, .06), 0 0 0 1px rgba(43, 76, 106, .04);--shadow-card-hover: 0 2px 8px rgba(43, 76, 106, .1), 0 0 0 1px rgba(43, 76, 106, .06);--shadow-toast: 0 8px 24px rgba(43, 76, 106, .14), 0 1px 2px rgba(43, 76, 106, .08);--shadow-panel: -8px 0 24px rgba(43, 76, 106, .06);--font-sans: "Open Sans", "Roboto", "Helvetica", "Arial", sans-serif;--font-mono: "Geist Mono", "JetBrains Mono", "SF Mono", ui-monospace, monospace;--font-display: var(--font-sans);--font-size-xs: .9375rem;--font-size-sm: 1rem;--font-size-base: 1.125rem;--font-size-md: 1.1875rem;--font-size-lg: 1.375rem;--font-size-xl: 1.625rem;--font-size-display-sm: 1.625rem;--font-size-display-md: 2.5rem;--font-size-display-lg: 3.75rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.2;--line-height-normal: 1.55;--line-height-loose: 1.7;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-input: 0px;--radius-pill: 999px;--sidebar-width: 224px;--sidebar-collapsed: 56px;--side-panel-width: 440px;--table-row-height: 48px;--input-height: 40px;--input-height-sm: 32px;--content-max-width: 960px;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--duration-fast: 80ms;--duration-normal: .15s;--duration-slow: .22s;--duration-hero: .6s;--easing-default: ease;--easing-out: ease-out;--easing-in: ease-in;--easing-physical: cubic-bezier(.32, .72, 0, 1);--font-family: var(--font-sans);--surface-page: var(--canvas-base);--surface-card: var(--canvas-raised);--surface-inset: var(--canvas-inset);--surface-hover: var(--canvas-hover);--surface-active: var(--canvas-pressed);--surface-selected: var(--canvas-selected);--sidebar-border: var(--sidebar-line);--border-input: var(--line-input);--border-input-focus: var(--ink-blue);--border-table: var(--line-table);--border-divider: var(--line-hairline);--text-primary: var(--ink-deep);--text-body: var(--ink-body);--text-secondary: var(--ink-soft);--text-muted: var(--ink-faded);--text-inverse: var(--ink-inverse);--accent: var(--ink-blue);--accent-hover: var(--ink-blue-hover);--accent-subtle: var(--ink-blue-tint);--accent-text: var(--ink-blue-text);--status-success: var(--ok-dot);--status-success-text: var(--ok-text);--status-success-bg: var(--ok-tint);--status-warning: var(--warn-dot);--status-warning-text: var(--warn-text);--status-warning-bg: var(--warn-tint);--status-danger: var(--err-dot);--status-danger-text: var(--err-text);--status-danger-bg: var(--err-tint);--status-neutral: var(--neutral-dot);--status-neutral-text: var(--neutral-text);--status-neutral-bg: var(--neutral-tint);--color-bg-primary: var(--canvas-raised);--color-bg-secondary: var(--canvas-base);--color-bg-tertiary: var(--canvas-hover);--color-border: var(--line-hairline);--color-border-subtle: var(--line-table);--color-text-primary: var(--ink-deep);--color-text-secondary: var(--ink-soft);--color-text-tertiary: var(--ink-faded);--color-text-inverse: var(--ink-inverse);--color-accent: var(--ink-blue);--color-accent-hover: var(--ink-blue-hover);--color-accent-subtle: var(--ink-blue-tint);--color-success: var(--ok-dot);--color-success-subtle: var(--ok-tint);--color-warning: var(--warn-dot);--color-warning-subtle: var(--warn-tint);--color-error: var(--err-dot);--color-error-subtle: var(--err-tint);--color-danger: var(--err-dot);--color-badge-ready: var(--ink-blue);--color-badge-in-progress: var(--warn-dot);--color-badge-completed: var(--ok-dot);--color-badge-overdue: var(--err-dot)}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--ink-body);background:var(--canvas-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-variant-numeric:tabular-nums}#root{min-height:100vh;display:flex}
