*,:after,:before{box-sizing:border-box}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}html{color:var(--text-primary);background:var(--background-grouped);font-family:var(--font-sans);font-size:var(--font-size-base);line-height:1.5;-webkit-font-smoothing:antialiased}body{margin:0;min-height:100vh}a{color:var(--text-link)}:focus-visible{outline:none;box-shadow:var(--focus-ring)}.ds-app{display:flex;min-height:100vh}.ds-sidebar{background:var(--surface-primary);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;flex-shrink:0;height:100vh;left:0;position:fixed;top:0;width:var(--sidebar-width);transition:width var(--motion-normal) var(--ease-default);z-index:10}.ds-sidebar.is-collapsed{width:var(--sidebar-collapsed-width)}.ds-sidebar-brand{align-items:center;border-bottom:1px solid var(--border-subtle);display:flex;gap:var(--space12);min-height:var(--header-height);padding:var(--space12) var(--space16)}.ds-sidebar-brand strong{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-sidebar-brand-icon{align-items:center;background:transparent;border-radius:var(--radius-md);display:flex;flex-shrink:0;height:32px;justify-content:center;overflow:hidden;width:32px}.ds-sidebar-brand-image{display:block;height:100%;object-fit:cover;width:100%}.ds-sidebar-nav{flex:1 1;overflow-y:auto;padding:var(--space12) var(--space8)}.ds-nav-group{margin-bottom:var(--space16)}.ds-nav-group-label{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.04em;padding:var(--space4) var(--space12);text-transform:uppercase}.ds-sidebar.is-collapsed .ds-nav-link-label,.ds-sidebar.is-collapsed .ds-sidebar-brand strong,.ds-sidebar.is-collapsed .ds-sidebar-logout span,.ds-sidebar.is-collapsed .ds-sidebar-toggle span{display:none}.ds-nav-link{align-items:center;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);gap:var(--space12);padding:var(--space8) var(--space12);text-decoration:none;transition:background var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default)}@media (hover:hover){.ds-nav-link:hover{background:var(--surface-pressed);color:var(--text-primary)}}.ds-nav-link:active{background:var(--surface-pressed);opacity:var(--interactive-pressed-opacity)}.ds-nav-link.is-active{background:var(--surface-selected);color:var(--brand-primary);font-weight:var(--font-weight-semibold)}.ds-nav-link-icon{flex-shrink:0;opacity:.85}.ds-sidebar-footer{border-top:1px solid var(--border-subtle);padding:var(--space12)}.ds-main{display:flex;flex:1 1;flex-direction:column;margin-left:var(--sidebar-width);min-width:0;transition:margin-left var(--motion-normal) var(--ease-default)}.ds-app.is-sidebar-collapsed .ds-main{margin-left:var(--sidebar-collapsed-width)}.ds-main-header{align-items:center;background:var(--background-primary);border-bottom:1px solid var(--border-subtle);display:flex;gap:var(--space16);justify-content:space-between;min-height:var(--header-height);padding:var(--space12) var(--page-padding);position:-webkit-sticky;position:sticky;top:0;z-index:5}.ds-page-header{display:grid;grid-gap:var(--space4);gap:var(--space4)}.ds-page-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:1.3;margin:0}.ds-page-description{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.ds-page-actions{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:var(--space8);justify-content:flex-end;max-width:100%}.ds-content{flex:1 1;margin:0 auto;max-width:var(--content-max-width);padding:var(--page-padding);width:100%}.ds-content.is-wide{max-width:none}.ds-btn{align-items:center;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);gap:var(--space8);justify-content:center;line-height:1.2;min-height:44px;padding:var(--space8) var(--space16);text-decoration:none;transition:background var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default),filter var(--motion-fast) var(--ease-default),opacity var(--motion-fast) var(--ease-default);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.ds-btn:disabled{cursor:not-allowed;color:var(--text-tertiary);opacity:1}.ds-btn--destructive:disabled,.ds-btn--primary:disabled{background:var(--surface-pressed);color:var(--text-tertiary)}.ds-btn--ghost:disabled,.ds-btn--secondary:disabled,.ds-btn--tertiary:disabled{background:transparent;border-color:var(--border-subtle);color:var(--text-tertiary)}.ds-btn.is-busy{cursor:wait}.ds-btn:active:not(:disabled){opacity:var(--interactive-pressed-opacity)}.ds-btn--block{width:100%}.ds-btn--primary{background:var(--brand-primary);color:var(--brand-on-primary)}@media (hover:hover){.ds-btn--primary:hover:not(:disabled){filter:brightness(1.06)}}.ds-btn--secondary{background:var(--surface-secondary);color:var(--brand-primary)}@media (hover:hover){.ds-btn--secondary:hover:not(:disabled){background:var(--surface-selected)}}.ds-btn--tertiary{background:transparent;color:var(--text-link);padding-inline:var(--space8)}@media (hover:hover){.ds-btn--tertiary:hover:not(:disabled){background:var(--surface-pressed)}}.ds-btn--ghost{background:transparent;border-color:var(--border-default);color:var(--text-primary)}@media (hover:hover){.ds-btn--ghost:hover:not(:disabled){background:var(--surface-pressed)}}.ds-btn--destructive{background:var(--status-danger);color:var(--text-inverse)}@media (hover:hover){.ds-btn--destructive:hover:not(:disabled){filter:brightness(1.06)}}.ds-btn--sm{font-size:var(--font-size-sm);min-height:44px;padding:var(--space4) var(--space12)}.ds-btn--icon{min-height:44px;min-width:44px;padding:var(--space8)}.ds-field{display:grid;grid-gap:var(--space8);gap:var(--space8)}.ds-field-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.ds-field-label-required:after{color:var(--status-danger);content:" *"}.ds-field-help{color:var(--text-tertiary);font-size:var(--font-size-xs)}.ds-field-error{color:var(--status-danger);font-size:var(--font-size-xs)}.ds-input,.ds-select,.ds-textarea{background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font:inherit;font-size:var(--font-size-md);padding:var(--space8) var(--space12);transition:border-color var(--motion-fast) var(--ease-default),box-shadow var(--motion-fast) var(--ease-default);width:100%}@media (hover:hover){.ds-input:hover:not(:disabled):not(:focus),.ds-select:hover:not(:disabled):not(:focus),.ds-textarea:hover:not(:disabled):not(:focus){border-color:var(--border-focus)}}.ds-input:focus,.ds-select:focus,.ds-textarea:focus{border-color:var(--border-focus);box-shadow:var(--focus-ring);outline:none}.ds-input.is-error,.ds-select.is-error,.ds-textarea.is-error{border-color:var(--border-danger)}.ds-checkbox-row,.ds-toggle-row{align-items:flex-start;cursor:pointer;display:flex;gap:var(--space12)}.ds-checkbox-row input[type=checkbox]{cursor:pointer}.ds-checkbox-row input[type=checkbox],.ds-toggle-row input[type=checkbox]{accent-color:var(--brand-primary);flex-shrink:0;height:18px;margin-top:2px;width:18px}.ds-fieldset{border:1px solid var(--border-default);border-radius:var(--radius-md);display:grid;grid-gap:var(--space8);gap:var(--space8);margin:0;padding:var(--space12)}.ds-fieldset legend{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:0 var(--space4)}.ds-form-section{display:grid;grid-gap:var(--space16);gap:var(--space16)}.ds-form-section-title{border-bottom:1px solid var(--border-subtle);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:0;padding-bottom:var(--space8)}.ds-form-actions{display:flex;flex-wrap:wrap;gap:var(--space8);justify-content:flex-end;padding-top:var(--space16)}.ds-stack{display:grid;grid-gap:var(--space16);gap:var(--space16)}.ds-badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);gap:var(--space4);line-height:1.2;padding:2px var(--space8);white-space:nowrap}.ds-badge--brand{background:var(--brand-subtle);color:var(--brand-primary)}.ds-badge--success{background:var(--status-success-subtle);color:var(--status-success)}.ds-badge--warning{background:var(--status-warning-subtle);color:var(--status-warning)}.ds-badge--danger{background:var(--status-danger-subtle);color:var(--status-danger)}.ds-badge--info{background:var(--status-info-subtle);color:var(--status-info)}.ds-badge--neutral{background:var(--surface-pressed);color:var(--text-secondary)}.ds-chip-group,.ds-segmented{display:flex;flex-wrap:wrap;gap:var(--space8)}.ds-chip{background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-primary);cursor:pointer;font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--space4) var(--space12);transition:background var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default);-webkit-user-select:none;-moz-user-select:none;user-select:none}@media (hover:hover){.ds-chip:hover{background:var(--surface-selected)}}.ds-chip:active{opacity:var(--interactive-pressed-opacity)}.ds-chip.is-active{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--text-inverse)}.ds-segmented{background:var(--surface-subtle);border-radius:var(--radius-md);padding:var(--space4)}.ds-segmented .ds-chip{border:none;border-radius:var(--radius-sm)}.ds-segmented-control{background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:inline-flex;flex-wrap:wrap;gap:var(--space4);max-width:100%;padding:var(--space4);width:-moz-fit-content;width:fit-content}.ds-segmented-control--scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.ds-segmented-control-btn{background:transparent;border:none;border-radius:calc(var(--radius-md) - 2px);color:var(--text-secondary);cursor:pointer;flex:0 0 auto;font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.25;padding:var(--space8) var(--space16);transition:background var(--motion-fast) var(--ease-default),box-shadow var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default);-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}@media (hover:hover){.ds-segmented-control-btn:hover:not(.is-active){color:var(--text-primary)}}.ds-segmented-control-btn:active{opacity:var(--interactive-pressed-opacity)}.ds-segmented-control-btn.is-active{background:var(--surface-primary);box-shadow:var(--shadow-sm);color:var(--brand-primary);font-weight:var(--font-weight-semibold)}.items-filter-stack{display:flex;flex-direction:column;gap:var(--space12);margin-bottom:var(--space20)}.items-filter-group{align-items:flex-start;display:flex;flex-direction:column;gap:var(--space8)}.items-filter-primary{gap:var(--space12) var(--space16)}.items-filter-meta,.items-filter-primary{align-items:center;display:flex;flex-wrap:wrap}.items-filter-meta{gap:var(--space8) var(--space12)}.items-filter-summary{color:var(--text-secondary);font-size:var(--font-size-sm)}.items-row-title{align-items:center;display:flex;gap:var(--space16);min-width:0}.items-row-icon{color:var(--text-tertiary);display:inline-flex;flex-shrink:0;line-height:0}.items-row-sub{color:var(--text-tertiary);font-size:var(--font-size-xs);line-height:1.4;margin-top:2px}.items-detail{gap:var(--space20)}.items-detail-section{display:grid;grid-gap:var(--space12);gap:var(--space12)}.items-detail-section .ds-form-section-title{border-bottom:0;padding-bottom:0}.items-detail-section+.items-detail-section{border-top:1px solid var(--border-subtle);margin-top:0;padding-top:var(--space20)}.items-detail-body{display:grid;grid-gap:var(--space8);gap:var(--space8)}.items-detail-body>.ds-badge{justify-self:start}.items-detail-body>.ds-detail-line,.items-detail-body>.ds-field-help,.items-detail-body>.ds-text-muted{margin:0}.items-detail-body>.items-transfer-row{width:100%}.items-transfer-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--space12);margin-top:var(--space4)}.items-transfer-row .ds-field{flex:1 1;min-width:160px}.items-history-toggle{align-items:center;background:transparent;border:0;color:var(--text-primary);cursor:pointer;display:inline-flex;font:inherit;font-weight:var(--font-weight-semibold);gap:var(--space8);justify-content:space-between;padding:0;text-align:left;width:100%}.items-history-chevron{color:var(--text-tertiary);flex-shrink:0;transition:transform var(--motion-fast) var(--ease-default)}.items-history-toggle[aria-expanded=true] .items-history-chevron{transform:rotate(180deg)}.items-history-toggle:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.items-timeline{list-style:none;margin:0;padding:0;position:relative}.items-timeline:before{background:var(--border-subtle);bottom:4px;content:"";left:5px;position:absolute;top:4px;width:2px}.items-timeline-item{display:flex;gap:var(--space12);padding-bottom:var(--space12);position:relative}.items-timeline-dot{background:var(--brand-primary);border-radius:50%;flex-shrink:0;height:10px;margin-top:6px;width:10px;z-index:1}.items-detail-footer{display:flex;flex-wrap:wrap;gap:var(--space8);justify-content:space-between;width:100%}.items-detail-footer-primary,.items-detail-footer-secondary{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space8)}.items-more-actions{position:relative}.items-more-menu{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);bottom:calc(100% + 4px);box-shadow:var(--shadow-md);min-width:140px;padding:var(--space4);position:absolute;right:0;z-index:2}.ds-toast-viewport{bottom:auto;display:flex;justify-content:center;left:0;padding:var(--space16);pointer-events:none;position:fixed;right:0;top:max(var(--space16),env(safe-area-inset-top,0px));z-index:1400}.ds-toast{align-items:center;background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;gap:var(--space12);max-width:min(420px,calc(100vw - 32px));padding:var(--space12) var(--space16);pointer-events:auto}.ds-toast-message{color:var(--text-primary);flex:1 1;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.4;margin:0;min-width:0}.ds-toast-close{align-items:center;background:transparent;border:0;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:inline-flex;flex-shrink:0;font-size:var(--font-size-sm);gap:var(--space4);padding:var(--space4) var(--space8)}.ds-toast-close:focus-visible,.ds-toast-close:hover{background:var(--surface-pressed);color:var(--text-primary);outline:2px solid var(--brand-primary);outline-offset:2px}.ds-toast--success{border-color:color-mix(in srgb,var(--status-success) 35%,var(--border-subtle));box-shadow:var(--shadow-lg),inset 4px 0 0 var(--status-success)}.ds-toast--danger{border-color:color-mix(in srgb,var(--status-danger) 35%,var(--border-subtle));box-shadow:var(--shadow-lg),inset 4px 0 0 var(--status-danger)}.ds-toast--warning{border-color:color-mix(in srgb,var(--status-warning) 35%,var(--border-subtle));box-shadow:var(--shadow-lg),inset 4px 0 0 var(--status-warning)}.ds-toast--info{border-color:color-mix(in srgb,var(--status-info) 35%,var(--border-subtle));box-shadow:var(--shadow-lg),inset 4px 0 0 var(--status-info)}.ds-sr-only{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.ds-banner-dismiss{background:transparent;border:0;color:inherit;cursor:pointer;font-size:var(--font-size-lg);line-height:1;opacity:.7;padding:0 var(--space4)}.ds-banner-dismiss:focus-visible,.ds-banner-dismiss:hover{opacity:1}.ds-table-shell{display:flex;flex-direction:column;gap:var(--space8)}.ds-table-refreshing{color:var(--text-secondary);font-size:var(--font-size-sm)}.ds-table-wrap.is-refreshing{opacity:.72;pointer-events:none}.ds-table-caption{caption-side:top;clip:rect(0 0 0 0);height:1px;overflow:hidden;position:absolute;width:1px}@media (max-width:720px){.items-detail-footer,.items-filter-primary{align-items:stretch;flex-direction:column}.items-detail-footer-primary,.items-detail-footer-secondary{width:100%}.items-detail-footer-primary>.ds-btn,.items-detail-footer-secondary>.ds-btn{flex:1 1 auto;min-width:0}.items-detail-footer-secondary{justify-content:stretch}.items-more-actions{flex:1 1 auto}.items-more-actions>.ds-btn{width:100%}.ds-modal-footer{align-items:stretch;flex-direction:column;flex-wrap:nowrap}.ds-modal-footer .items-detail-footer{width:100%}.ds-toast-viewport{padding:var(--space12)}}.ds-table-wrap{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);overflow:auto}.ds-table{border-collapse:collapse;font-size:var(--font-size-md);min-width:100%;width:100%}.ds-table td,.ds-table th{border-bottom:1px solid var(--border-subtle);padding:var(--space8) var(--space12);text-align:left;vertical-align:middle}.ds-table th{background:var(--surface-subtle);color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);height:var(--table-row-height);position:-webkit-sticky;position:sticky;top:0;white-space:nowrap;z-index:1}.ds-table tbody tr{height:var(--table-row-height);transition:background var(--motion-fast) var(--ease-default)}@media (hover:hover){.ds-table tbody tr:hover{background:var(--surface-pressed)}}.ds-table tbody tr:last-child td{border-bottom:none}.ds-table-cell-truncate{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-table-actions{display:flex;gap:var(--space4);justify-content:flex-end}.ds-table-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space12);justify-content:space-between;margin-bottom:var(--space16)}.ds-table-toolbar-end,.ds-table-toolbar-start{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space8)}.ds-search-input-wrap{align-items:center;display:flex;gap:var(--space8);position:relative}.ds-search-input-wrap .ds-input{padding-left:36px;width:240px}.ds-search-input-wrap svg{color:var(--text-tertiary);left:10px;position:absolute}.ds-empty,.ds-error,.ds-loading{align-items:center;display:flex;flex-direction:column;gap:var(--space12);justify-content:center;padding:var(--space48) var(--space24);text-align:center}.ds-empty-icon{color:var(--text-tertiary)}.ds-empty-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.ds-empty-description{color:var(--text-secondary);font-size:var(--font-size-md);margin:0;max-width:360px}.ds-spinner{animation:ds-spin .8s linear infinite;border-radius:50%;border:2px solid var(--border-subtle);border-top-color:var(--brand-primary);height:28px;width:28px}@keyframes ds-spin{to{transform:rotate(1turn)}}.ds-skeleton{animation:ds-pulse 1.5s ease-in-out infinite;background:var(--surface-pressed);border-radius:var(--radius-sm)}@keyframes ds-pulse{0%,to{opacity:1}50%{opacity:.5}}.ds-banner{align-items:center;border-radius:var(--radius-md);display:flex;flex-wrap:wrap;font-size:var(--font-size-sm);gap:var(--space12);justify-content:space-between;padding:var(--space12) var(--space16)}.ds-banner-message{flex:1 1;min-width:0}.ds-banner-action{flex-shrink:0}.ds-banner--warning{background:var(--status-warning-subtle);color:var(--status-warning)}.ds-banner--danger{background:var(--status-danger-subtle);color:var(--status-danger)}.ds-banner--info{background:var(--status-info-subtle);color:var(--status-info)}.ds-banner--success{background:var(--status-success-subtle);color:var(--status-success)}.ds-inline-message{font-size:var(--font-size-sm)}.ds-inline-message--error{color:var(--status-danger)}.ds-inline-message--success{color:var(--status-success)}.ds-modal-backdrop{align-items:center;animation:ds-fade-in var(--motion-normal) var(--ease-out);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--overlay-scrim);display:flex;inset:0;justify-content:center;overflow-y:auto;overscroll-behavior:contain;padding:var(--space24);position:fixed;z-index:1200}.ds-modal-backdrop.is-sheet{align-items:stretch;justify-content:flex-end;padding:0}.ds-modal{animation:ds-modal-enter var(--motion-normal) var(--ease-out);background:var(--background-elevated);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;flex-shrink:0;margin:auto;max-height:calc(100vh - 2 * var(--space24));max-width:520px;overflow:hidden;width:min(100%,520px)}.ds-modal.is-sheet{animation:ds-sheet-enter var(--motion-normal) var(--ease-out);border-bottom-left-radius:0;border-bottom-right-radius:0;margin:0;max-height:min(72vh,640px);max-width:none;width:100%}@keyframes ds-sheet-enter{0%{opacity:.96;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.related-tasks-trigger{align-items:center;background:var(--surface-secondary,var(--background-subtle));border:1px solid var(--border-subtle);border-radius:var(--radius-lg);color:var(--text-primary);cursor:pointer;display:flex;gap:var(--space12);justify-content:space-between;min-height:44px;padding:var(--space12) var(--space16);text-align:left;width:100%}.related-tasks-trigger:disabled{cursor:not-allowed;opacity:.55}.related-tasks-trigger-label{flex-shrink:0;font-size:14px;font-weight:600}.related-tasks-trigger-value{color:var(--text-secondary);flex:1 1;font-size:14px;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.related-tasks-sheet-hint{color:var(--text-secondary);font-size:13px;margin:0 0 var(--space12)}.related-tasks-sheet-list{display:flex;flex-direction:column;gap:0;max-height:min(48vh,420px);overflow-y:auto}@keyframes ds-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ds-modal-enter{0%{opacity:0;transform:scale(.97) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.ds-modal.is-wide{max-width:720px;width:min(100%,720px)}.ds-modal-header{align-items:center;border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;padding:var(--space16) var(--space20)}.ds-modal-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.ds-modal-body{flex:1 1;min-height:0;overflow-y:auto;padding:var(--space20)}.ds-modal-footer{border-top:1px solid var(--border-subtle);display:flex;flex-shrink:0;gap:var(--space8);justify-content:flex-end;padding:var(--space16) var(--space20)}.ds-panel{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space20);transition:box-shadow var(--motion-fast) var(--ease-default)}.ds-panel.is-elevated{box-shadow:var(--shadow-sm)}.ds-panel+.ds-panel{margin-top:var(--space16)}.ds-split{display:grid;grid-gap:var(--space24);gap:var(--space24);grid-template-columns:280px 1fr}.ds-metric-grid{display:grid;grid-gap:var(--space16);gap:var(--space16);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.ds-metric-card{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:grid;grid-gap:var(--space8);gap:var(--space8);padding:var(--space16);transition:border-color var(--motion-fast) var(--ease-default),box-shadow var(--motion-fast) var(--ease-default)}.ds-metric-card--link{color:inherit;cursor:pointer;text-decoration:none}@media (hover:hover){.ds-metric-card--link:hover{border-color:var(--border-focus);box-shadow:var(--shadow-sm)}}.ds-metric-card--link:active{opacity:var(--interactive-pressed-opacity)}.ds-metric-card-label{color:var(--text-secondary);font-size:var(--font-size-sm)}.ds-metric-card-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.ds-metric-card.is-warning .ds-metric-card-value{color:var(--status-warning)}.ds-metric-card.is-danger .ds-metric-card-value{color:var(--status-danger)}.ds-dash-metric{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;font:inherit;text-align:left;width:100%}.ds-dash-metric.is-active{border-color:var(--brand-primary);box-shadow:0 0 0 1px var(--brand-primary)}.ds-dash-metric:focus-visible{box-shadow:var(--focus-ring)}@media (hover:hover){.ds-dash-metric:hover{border-color:var(--border-focus);box-shadow:var(--shadow-sm)}}.ds-dash-layout,.ds-dash-two-col{display:grid;grid-gap:var(--space24);gap:var(--space24)}.ds-dash-two-col{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}@media (max-width:1024px){.ds-dash-two-col{grid-template-columns:1fr}}.ds-dash-section{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space16);transition:border-color var(--motion-normal) var(--ease-default),box-shadow var(--motion-normal) var(--ease-default)}.ds-dash-section.is-highlighted{animation:ds-dash-highlight 1.2s var(--ease-default);border-color:var(--brand-primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-primary) 35%,transparent)}.ds-dash-section--compact{padding-bottom:var(--space12);padding-top:var(--space12)}.ds-dash-action-zone{padding:var(--space12) var(--space16)}.ds-dash-guide-empty{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0;padding:var(--space8) var(--space4)}@keyframes ds-dash-highlight{0%,to{box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-primary) 35%,transparent)}50%{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand-primary) 25%,transparent)}}.ds-dash-section-header{align-items:center;display:flex;gap:var(--space12);justify-content:space-between;margin-bottom:var(--space12)}.ds-dash-section-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:0}.ds-dash-section-link{color:var(--text-link);font-size:var(--font-size-sm);text-decoration:none}@media (hover:hover){.ds-dash-section-link:hover{text-decoration:underline}}.ds-dash-list{display:grid;grid-gap:var(--space8);gap:var(--space8);list-style:none;margin:0;padding:0}.ds-dash-row{align-items:center;background:var(--background-grouped);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex;gap:var(--space12);justify-content:space-between;padding:var(--space12) var(--space16);transition:background var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default)}.ds-dash-row--danger{border-color:color-mix(in srgb,var(--status-danger) 30%,var(--border-subtle))}.ds-dash-row--warning{border-color:color-mix(in srgb,var(--status-warning) 30%,var(--border-subtle))}@media (hover:hover){.ds-dash-row.is-link:focus-within,.ds-dash-row.is-link:hover{background:var(--surface-secondary);border-color:var(--border-focus)}}.ds-dash-row-link{align-items:center;color:inherit;display:flex;flex:1 1;gap:var(--space12);justify-content:space-between;min-width:0;text-decoration:none}.ds-dash-row-main{display:grid;grid-gap:var(--space4);gap:var(--space4);min-width:0}.ds-dash-row-title{font-weight:var(--font-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-dash-row-meta{color:var(--text-secondary);font-size:var(--font-size-sm)}.ds-dash-row-side{align-items:center;display:flex;flex-shrink:0;gap:var(--space8)}.ds-dash-row-badge{align-items:center;max-width:12rem}.ds-dash-row-actions,.ds-dash-row-badge{display:flex;flex-wrap:wrap;gap:var(--space8);justify-content:flex-end}.ds-dash-timeline{display:grid;grid-gap:0;gap:0;list-style:none;margin:0;max-width:100%;padding:0;position:relative;width:-moz-fit-content;width:fit-content}.ds-dash-timeline:before{background:var(--border-subtle);bottom:var(--space8);content:"";left:5px;position:absolute;top:var(--space8);width:2px}.ds-dash-timeline-item{display:grid;grid-gap:var(--space8);gap:var(--space8);grid-template-columns:12px 1fr;padding:var(--space8) 0;position:relative}.ds-dash-timeline-dot{background:var(--brand-primary);border-radius:var(--radius-full);height:12px;margin-top:4px;width:12px;z-index:1}.ds-dash-timeline-item.is-danger .ds-dash-timeline-dot{background:var(--status-danger)}.ds-dash-timeline-card{background:var(--background-grouped);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:grid;grid-gap:var(--space4);gap:var(--space4);padding:var(--space12);transition:background var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default)}@media (hover:hover){.ds-dash-timeline-card:hover{background:var(--surface-secondary);border-color:var(--border-focus)}}.ds-dash-timeline-time{color:var(--text-secondary);font-size:var(--font-size-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ds-dash-timeline-title{color:inherit;font-weight:var(--font-weight-medium);text-decoration:none}@media (hover:hover){.ds-dash-timeline-title:hover{color:var(--text-link)}}.ds-dash-action-bar{width:-moz-fit-content;width:fit-content}.ds-btn-group{align-items:center;display:inline-flex;flex-wrap:wrap;gap:var(--space8)}.ds-dash-admin-hint{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.ds-dash-admin-hint.is-warning{color:var(--status-warning)}.ds-dash-admin-hint.is-danger{color:var(--status-danger)}.ds-dash-context-meta{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.ds-dash-alerts{display:grid;grid-gap:var(--space8);gap:var(--space8)}.ds-dash-member-filter{display:flex;flex-wrap:wrap;gap:var(--space8);margin-bottom:var(--space12)}.ds-dash-filter-chip{background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);min-height:32px;padding:0 var(--space12);transition:background-color .15s ease,border-color .15s ease,color .15s ease}.ds-dash-filter-chip:hover{border-color:var(--border-strong);color:var(--text-primary)}.ds-dash-filter-chip.is-active{background:var(--brand-primary-soft);border-color:var(--brand-primary);color:var(--brand-primary)}.ds-dash-lookahead{display:grid;grid-gap:var(--space16);gap:var(--space16);list-style:none;margin:0;padding:0}.ds-dash-lookahead-day{display:grid;grid-gap:var(--space8);gap:var(--space8)}.ds-dash-lookahead-day-label{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.ds-dash-lookahead-items{display:grid;grid-gap:var(--space8);gap:var(--space8);grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.ds-dash-lookahead-task{background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:grid;grid-gap:var(--space4);gap:var(--space4);padding:var(--space12);text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease}.ds-dash-lookahead-task:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm)}.ds-dash-lookahead-task-title{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.ds-dash-lookahead-task-meta{color:var(--text-secondary);font-size:var(--font-size-xs)}.ds-dash-continuity{display:grid;grid-gap:var(--space8);gap:var(--space8);min-width:0}.ds-dash-continuity-toggle{background:transparent;border:none;color:var(--brand-primary);cursor:pointer;font:inherit;font-size:var(--font-size-xs);justify-self:start;padding:0;text-decoration:underline;text-underline-offset:2px}.ds-dash-continuity-others{display:grid;grid-gap:var(--space8);gap:var(--space8);list-style:none;margin:0;min-width:0;padding:0}.ds-dash-longrange{display:grid;grid-gap:var(--space12);gap:var(--space12)}.ds-dash-longrange-month{display:grid;grid-gap:var(--space8);gap:var(--space8)}.ds-dash-longrange-month-header{align-items:baseline;border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);display:flex;gap:var(--space8);justify-content:space-between;padding:var(--space4) 0}.ds-dash-longrange-month-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.ds-dash-longrange-month-count{color:var(--text-tertiary);font-size:var(--font-size-xs)}.ds-dash-longrange-list{display:grid;grid-gap:var(--space4);gap:var(--space4);list-style:none;margin:0;padding:0}.ds-dash-longrange-row{margin:0}.ds-dash-longrange-link{align-items:baseline;color:inherit;display:flex;flex-wrap:wrap;gap:var(--space8);padding:var(--space4) 0;position:relative;text-decoration:none}.ds-dash-longrange-corner{background:color-mix(in srgb,var(--brand-primary) 12%,var(--surface-primary));border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.2;margin-left:auto;padding:2px 6px}.ds-dash-longrange-corner,.ds-dash-longrange-link:hover .ds-dash-longrange-title{color:var(--brand-primary)}.ds-dash-longrange-date{color:var(--text-secondary);flex:0 0 auto;font-size:var(--font-size-xs);min-width:7.5rem}.ds-dash-longrange-title{color:var(--text-primary);flex:1 1 auto;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.ds-dash-conflict-hint{color:var(--status-danger);font-size:var(--font-size-sm);margin:0 0 var(--space12)}.ds-dash-week-header-meta{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space12)}.ds-dash-week-range{color:var(--text-secondary);font-size:var(--font-size-sm)}.ds-dash-week-masonry{align-items:start;display:grid;grid-gap:var(--space12);gap:var(--space12);grid-template-columns:repeat(7,minmax(0,1fr))}@media (max-width:1200px){.ds-dash-week-masonry{grid-auto-columns:minmax(140px,1fr);grid-auto-flow:column;grid-template-columns:none;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:var(--space8);scroll-snap-type:x proximity}}.ds-dash-week-column{background:var(--background-grouped);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex;flex-direction:column;min-width:0;scroll-snap-align:start}@media (max-width:1200px){.ds-dash-week-column{min-width:140px}}.ds-dash-week-column.is-today{border-color:color-mix(in srgb,var(--brand-primary) 45%,var(--border-subtle));box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-primary) 20%,transparent)}.ds-dash-week-column-header{align-items:center;border-bottom:1px solid var(--border-subtle);display:flex;flex-wrap:wrap;gap:var(--space8);padding:var(--space8) var(--space12)}.ds-dash-week-column-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin:0}.ds-dash-week-column-count{color:var(--text-tertiary);font-size:var(--font-size-xs);margin-left:auto}.ds-dash-week-column-body{display:flex;flex:1 1;flex-direction:column;gap:var(--space8);padding:var(--space8)}.ds-dash-week-event{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:inherit;display:grid;grid-gap:var(--space4);gap:var(--space4);padding:var(--space8);position:relative;text-decoration:none;transition:background var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default)}.ds-dash-week-event-corner{background:color-mix(in srgb,var(--brand-primary) 12%,var(--surface-primary));border-bottom-left-radius:var(--radius-sm);border-top-right-radius:var(--radius-sm);color:var(--brand-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:1.2;padding:2px 6px;position:absolute;right:0;top:0}@media (hover:hover){.ds-dash-week-event:hover{background:var(--surface-secondary);border-color:var(--border-focus)}}.ds-dash-week-event.is-danger{border-color:color-mix(in srgb,var(--status-danger) 35%,var(--border-subtle))}.ds-dash-week-event.is-warning{border-color:color-mix(in srgb,var(--status-warning) 35%,var(--border-subtle))}.ds-dash-week-event-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.35}.ds-dash-week-event-title.has-corner{padding-right:2.5rem}.ds-dash-week-event-meta{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.35}.ds-dash-week{display:grid;grid-gap:var(--space16);gap:var(--space16)}.ds-dash-week-day{border-top:1px solid var(--border-subtle);padding-top:var(--space12)}.ds-dash-week-day:first-child{border-top:none;padding-top:0}.ds-dash-week-day-header{margin-bottom:var(--space8)}.ds-dash-week-day-header,.ds-dash-week-day-title{align-items:center;display:flex;gap:var(--space8)}.ds-dash-week-day-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin:0}.ds-dash-task-sections{display:grid;grid-gap:var(--space8);gap:var(--space8)}.ds-dash-task-block{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.ds-dash-task-block-header{align-items:center;background:var(--background-grouped);border:none;cursor:pointer;display:flex;font:inherit;justify-content:space-between;padding:var(--space12) var(--space16);text-align:left;width:100%}@media (hover:hover){.ds-dash-task-block-header:hover{background:var(--surface-secondary)}}.ds-dash-task-block-title{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.ds-dash-task-block-count{color:var(--text-secondary);font-weight:var(--font-weight-normal)}.ds-dash-task-block-toggle{color:var(--text-tertiary);font-size:var(--font-size-sm)}.ds-dash-task-block-body{border-top:1px solid var(--border-subtle);display:grid;grid-gap:var(--space8);gap:var(--space8);padding:var(--space12) var(--space16)}.ds-dash-panorama-grid{display:grid;grid-gap:var(--space16);gap:var(--space16)}.ds-dash-panorama-block-title{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin:0 0 var(--space8)}.ds-dash-empty-inline{color:var(--text-tertiary);font-size:var(--font-size-sm);margin:0}.ds-dash-inline-error{color:var(--status-danger);font-size:var(--font-size-sm);margin:0}.ds-dash-inline-link{color:inherit;font-weight:var(--font-weight-medium);text-decoration:none}@media (hover:hover){.ds-dash-inline-link:hover{color:var(--text-link)}}.ds-dash-task-actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space8)}.ds-day-events li.is-highlighted,.mini-list li.is-highlighted{background:var(--status-warning-subtle);border-radius:var(--radius-sm);outline:1px solid color-mix(in srgb,var(--status-warning) 45%,transparent);padding:var(--space4)}.ds-dash-action-banner{margin-bottom:var(--space16)}.ds-dashboard-section{margin-bottom:var(--space24)}.ds-dashboard-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space12)}.ds-dashboard-section-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin:0}.ds-list-compact{display:grid;grid-gap:var(--space8);gap:var(--space8);list-style:none;margin:0;padding:0}.ds-list-compact li{align-items:center;background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:flex;gap:var(--space12);justify-content:space-between;padding:var(--space12) var(--space16);transition:background var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default)}@media (hover:hover){.ds-list-compact li:hover{background:var(--surface-secondary);border-color:var(--border-default)}}.ds-list-compact li a{color:inherit;font-weight:var(--font-weight-medium);text-decoration:none;transition:color var(--motion-fast) var(--ease-default)}@media (hover:hover){.ds-list-compact li a:hover{color:var(--text-link)}}.ds-selectable-list{display:grid;grid-gap:var(--space8);gap:var(--space8);list-style:none;margin:0;padding:0}.ds-selectable-list-item{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font:inherit;font-size:var(--font-size-sm);padding:var(--space12) var(--space16);text-align:left;transition:background var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default);width:100%}@media (hover:hover){.ds-selectable-list-item:hover{background:var(--surface-secondary)}}.ds-selectable-list-item:active{opacity:var(--interactive-pressed-opacity)}.ds-selectable-list-item.is-active{background:var(--brand-subtle);border-color:var(--brand-primary);color:var(--brand-primary);font-weight:var(--font-weight-semibold)}.ds-file-input{font-size:var(--font-size-sm);max-width:100%}.ds-day-events{display:grid;grid-gap:var(--space8);gap:var(--space8);list-style:none;margin:0;padding:0}.ds-day-events li{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:grid;grid-gap:var(--space4);gap:var(--space4);padding:var(--space12) var(--space16)}.ds-day-events-empty{color:var(--text-tertiary);font-size:var(--font-size-sm);padding:var(--space8) 0}.calendar-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space16);justify-content:space-between;margin-bottom:var(--space24)}.calendar-filters,.calendar-toolbar-actions,.chip-group,.modal-actions{display:flex;flex-wrap:wrap;gap:var(--space8)}.calendar-filters{margin-bottom:var(--space24)}.calendar-filter-group{display:grid;grid-gap:var(--space8);gap:var(--space8)}.calendar-filter-group-label{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.week-grid{grid-gap:var(--space16);grid-template-columns:repeat(7,minmax(0,1fr))}.day-grid,.week-grid{display:grid;gap:var(--space16)}.day-grid{grid-gap:var(--space16)}.day-column h2,.month-cell strong{font-size:var(--font-size-md);margin:0 0 var(--space12)}.month-grid{display:grid;grid-gap:var(--space8);gap:var(--space8);grid-template-columns:repeat(7,minmax(0,1fr))}.month-cell{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);min-height:120px;padding:var(--space12)}.month-cell.muted{opacity:.55}.cal-page{height:calc(100vh - var(--shell-header-height, 0px) - var(--page-padding) * 2);max-height:calc(100vh - var(--shell-header-height, 0px) - var(--page-padding) * 2);min-height:0}.cal-detail-overlay button,.cal-filter-drawer button,.cal-mini-month-popover button,.cal-page button,.cal-page input,.cal-page select,.cal-page textarea,.cal-sidebar-drawer button{font-family:inherit}.cal-shell{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;position:relative}.cal-shell.has-sidebar{grid-template-columns:248px minmax(0,1fr)}.cal-shell.has-sidebar.has-detail:not(.is-detail-overlay){grid-template-columns:248px minmax(600px,1fr) minmax(320px,360px)}.cal-shell.has-detail:not(.has-sidebar):not(.is-detail-overlay){grid-template-columns:minmax(600px,1fr) minmax(320px,360px)}.cal-shell.is-detail-overlay.has-sidebar{grid-template-columns:248px minmax(0,1fr)}.cal-shell.is-detail-overlay:not(.has-sidebar){grid-template-columns:minmax(0,1fr)}.cal-sidebar{border-right:1px solid var(--border-subtle);min-height:0;overflow:auto;padding:var(--space12)}.cal-sidebar,.cal-sidebar-inner{display:flex;flex-direction:column}.cal-sidebar-inner{gap:var(--space16)}.cal-sidebar-actions{display:flex;gap:var(--space8)}.cal-list-heading{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);margin-bottom:var(--space8)}.cal-list-items{display:flex;flex-direction:column;gap:2px;list-style:none;margin:0;padding:0}.cal-list-row{align-items:center;border-radius:var(--radius-sm);display:flex;gap:var(--space4);min-height:44px;padding:0 var(--space4)}.cal-list-row.is-active{background:var(--brand-subtle)}.cal-list-check,.cal-list-check-spacer{flex-shrink:0;height:16px;width:16px}.cal-list-button{align-items:center;background:transparent;border:0;color:var(--text-primary);cursor:pointer;display:flex;flex:1 1;gap:var(--space8);min-height:44px;padding:0;text-align:left}.cal-list-swatch{border-radius:4px;flex-shrink:0;height:12px;width:12px}.cal-list-swatch--none{background:var(--border-strong)}.cal-list-swatch--mine{background:var(--brand-primary)}.cal-list-swatch--household{background:var(--brand-secondary)}.cal-list-swatch--pet{background:var(--brand-accent)}.cal-list-name{font-size:var(--font-size-sm)}.cal-filter-bar{border-bottom:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:var(--space8);padding:var(--space12) var(--space16)}.cal-filter-group{align-items:flex-start;display:flex;gap:var(--space12)}.cal-filter-label{color:var(--text-secondary);flex-shrink:0;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding-top:10px;width:40px}.cal-filter-chips{display:flex;flex-wrap:wrap;gap:var(--space8)}.cal-filter-chip{background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:var(--font-size-xs);min-height:36px;padding:0 var(--space12);transition:background var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default)}.cal-filter-chip:focus-visible{box-shadow:var(--focus-ring);outline:none}.cal-filter-chip.is-selected{background:var(--brand-subtle);border-color:var(--brand-primary);color:var(--brand-primary);font-weight:var(--font-weight-semibold)}.cal-filter-clear{display:flex;justify-content:flex-end}@media (min-width:1024px){.cal-center .cal-filter-bar{align-items:center;column-gap:var(--space20);flex-direction:row;flex-wrap:wrap;row-gap:var(--space8)}.cal-center .cal-filter-bar .cal-filter-group{align-items:center}.cal-center .cal-filter-bar .cal-filter-label{padding-top:0;width:auto}.cal-center .cal-filter-bar .cal-filter-clear{margin-left:auto}}.cal-filter-summary{align-items:center;background:color-mix(in srgb,var(--brand-primary) 8%,var(--surface-primary));border-bottom:1px solid var(--border-subtle);display:flex;flex-wrap:wrap;gap:var(--space8);padding:var(--space8) var(--space16)}.cal-filter-summary-text{color:var(--text-secondary);flex:1 1;font-size:var(--font-size-sm);min-width:0}.cal-filter-summary-clear{background:transparent;border:none;border-radius:var(--radius-sm);color:var(--brand-primary);cursor:pointer;font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);min-height:32px;padding:0 var(--space8)}.cal-filter-summary-clear:focus-visible{box-shadow:var(--focus-ring);outline:none}.cal-empty-state{align-items:center;display:flex;flex-direction:column;gap:var(--space8);padding:var(--space16);text-align:center}.cal-empty-state-overlay{align-items:flex-start;display:flex;inset:0;justify-content:center;padding:var(--space24) var(--space16);pointer-events:none;position:absolute;z-index:5}.cal-empty-state-overlay .cal-empty-state{background:color-mix(in srgb,var(--surface-primary) 92%,transparent);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:360px;pointer-events:auto}.cal-empty-state-title{color:var(--text-primary);font-weight:var(--font-weight-semibold);margin:0}.cal-empty-state-desc{margin:0}.cal-empty-state-desc,.cal-preference-notice{color:var(--text-secondary);font-size:var(--font-size-sm)}.cal-preference-notice{margin:0 var(--space16) var(--space8);padding:var(--space8) var(--space12);border-radius:var(--radius-md,8px);background:color-mix(in srgb,var(--status-warning) 12%,var(--surface-primary))}.cal-conflict-alert{background:color-mix(in srgb,var(--status-danger) 10%,var(--surface-primary));border:1px solid var(--status-danger);border-radius:var(--radius-md);display:grid;grid-gap:var(--space8);gap:var(--space8);padding:var(--space12)}.cal-conflict-alert-title{color:var(--status-danger);font-size:var(--font-size-sm)}.cal-conflict-alert-hint,.cal-conflict-alert-message{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.cal-conflict-alert-list{color:var(--text-primary);font-size:var(--font-size-sm);margin:0;padding-left:var(--space20)}.cal-detail-status-row{display:flex;flex-wrap:wrap;gap:var(--space8)}.cal-center{display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden}.cal-center,.cal-center-body{min-height:0;position:relative}.cal-center-body{flex:1 1;overflow:auto}.cal-center-body.is-refreshing{opacity:1}.cal-center-body.is-refreshing:after{background:color-mix(in srgb,var(--brand-primary) 55%,transparent);content:"";height:2px;left:0;position:-webkit-sticky;position:sticky;right:0;top:0;z-index:6}@keyframes cal-nav-enter-next{0%{opacity:.35;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes cal-nav-enter-prev{0%{opacity:.35;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.cal-center-body.cal-nav-next{animation:cal-nav-enter-next .28s cubic-bezier(.22,1,.36,1)}.cal-center-body.cal-nav-prev{animation:cal-nav-enter-prev .28s cubic-bezier(.22,1,.36,1)}.cal-toolbar{align-items:center;border-bottom:1px solid var(--border-subtle);display:grid;grid-gap:var(--space12);gap:var(--space12);grid-template-columns:auto minmax(0,1fr) auto;padding:var(--space12) var(--space16)}.cal-toolbar-navigation,.cal-toolbar-primary{align-items:center;display:flex;gap:var(--space12);min-width:0}.cal-toolbar-navigation{overflow:hidden}.cal-toolbar-nav{gap:var(--space4)}.cal-toolbar-nav,.cal-toolbar-right{align-items:center;display:flex;flex-shrink:0}.cal-toolbar-right{gap:var(--space8)}.cal-toolbar-today{background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);min-height:44px;padding:var(--space4) var(--space12)}.cal-toolbar-today:focus-visible{box-shadow:var(--focus-ring);outline:none}.cal-toolbar-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.cal-toolbar-title,.cal-toolbar-title-btn{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-toolbar-title-btn{background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font:inherit;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);max-width:100%;min-width:0;padding:var(--space4) var(--space8);text-align:left;transition:background var(--motion-fast) var(--ease-default)}@media (hover:hover){.cal-toolbar-title-btn.is-open,.cal-toolbar-title-btn:hover{background:var(--surface-subtle)}}.cal-toolbar-title-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.cal-mini-month-popover{animation:ds-fade-in var(--motion-fast) var(--ease-out);background:var(--background-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space12);position:fixed;width:280px;z-index:1300}.cal-mini-month{display:grid;grid-gap:var(--space8);gap:var(--space8);min-width:0;width:100%}.cal-view-switch{background:var(--surface-subtle);border-radius:var(--radius-md);padding:2px}.cal-view-switch-btn{background:transparent;border:none;border-radius:calc(var(--radius-md) - 2px);color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);min-height:36px;padding:var(--space4) var(--space12)}.cal-view-switch-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.cal-view-switch-btn.is-active{background:var(--surface-primary);box-shadow:var(--shadow-sm,0 1px 2px rgba(15,23,42,.08));color:var(--text-primary)}.cal-icon-btn{align-items:center;background:transparent;border:1px solid transparent;border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--font-size-md);height:44px;justify-content:center;min-width:44px;padding:0}.cal-icon-btn:hover{background:var(--surface-subtle);color:var(--text-primary)}.cal-icon-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.cal-mini-month-nav{align-items:center;display:flex;justify-content:space-between}.cal-mini-month-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.cal-mini-month-grid,.cal-mini-month-weekdays{display:grid;grid-gap:2px;gap:2px;grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.cal-mini-month-weekdays span{color:var(--text-tertiary);font-size:var(--font-size-xs);text-align:center}.cal-mini-month-day{background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:var(--font-size-xs);min-height:44px;min-width:0;width:100%}.cal-mini-month-day:focus-visible{box-shadow:var(--focus-ring);outline:none}.cal-mini-month-day.is-outside{color:var(--text-disabled)}.cal-mini-month-day.is-today{color:var(--brand-primary);font-weight:var(--font-weight-semibold)}.cal-mini-month-day.is-selected,.cal-mini-month-day:hover{background:var(--brand-subtle)}.cal-mini-month-day.is-selected{background:var(--brand-primary);color:var(--brand-on-primary)}.cal-timegrid{display:flex;flex-direction:column;height:100%;min-height:520px}.cal-allday-row-viewport,.cal-timegrid-header-viewport{flex-shrink:0;overflow:hidden}.cal-timegrid-header{border-bottom:1px solid var(--border-subtle);display:grid;flex-shrink:0;grid-template-columns:56px repeat(var(--cal-day-count,7),minmax(0,1fr))}.cal-timegrid-corner,.cal-timegrid-dayhead{border-right:1px solid var(--border-subtle)}.cal-timegrid-dayhead{align-items:center;display:flex;flex-direction:column;gap:2px;justify-content:center;padding:var(--space8) var(--space4);text-align:center}.cal-timegrid-dayhead.is-today .cal-timegrid-daynum{background:var(--brand-primary);border-radius:999px;color:var(--brand-on-primary);height:28px;line-height:28px;width:28px}.cal-timegrid-weekday{color:var(--text-tertiary);font-size:var(--font-size-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-timegrid-daynum{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-timegrid-today-tag{background:color-mix(in srgb,var(--brand-primary) 12%,transparent);border-radius:999px;color:var(--brand-primary);font-size:10px;font-weight:var(--font-weight-semibold);line-height:1.4;padding:0 var(--space6)}.cal-timegrid-scroll{display:flex;flex:1 1;height:0;min-height:0;overflow:auto}.cal-timegrid-gutter{border-right:1px solid var(--border-subtle);flex-shrink:0;width:56px}.cal-timegrid-hour{color:var(--text-secondary);font-size:var(--font-size-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding-right:var(--space8);position:relative;text-align:right;top:-6px}.cal-timegrid-cols{display:grid;flex:1 1;grid-template-columns:repeat(var(--cal-day-count,7),minmax(0,1fr));min-width:0;position:relative}.cal-timegrid-col{border-right:1px solid var(--border-subtle);position:relative}.cal-timegrid-col.is-today{background:color-mix(in srgb,var(--brand-subtle) 45%,transparent)}.cal-timegrid-slot{border-top:1px solid var(--border-subtle)}.cal-timegrid-nonwork{background:color-mix(in srgb,var(--text-muted) 6%,transparent);border-top:1px solid color-mix(in srgb,var(--border-subtle) 70%,transparent);z-index:0}.cal-timegrid-nonwork,.cal-timegrid-now{left:0;pointer-events:none;position:absolute;right:0}.cal-timegrid-now{background:var(--status-danger);height:2px;z-index:4}.cal-timegrid-now:before{background:var(--status-danger);border-radius:50%;content:"";height:8px;left:-4px;position:absolute;top:-3px;width:8px}.cal-now-line{left:0;pointer-events:none;position:absolute;right:0;z-index:4}.cal-now-line-rule{height:2px;width:100%}.cal-now-line-dot,.cal-now-line-rule{background:var(--status-danger);display:block}.cal-now-line-dot{border-radius:50%;height:8px;left:-4px;position:absolute;top:-3px;width:8px}.cal-allday-row{border-bottom:1px solid var(--border-subtle);display:grid;grid-template-columns:56px 1fr;min-height:36px}.cal-allday-row-label{align-items:flex-start;color:var(--text-tertiary);display:flex;font-size:11px;justify-content:flex-end;padding:var(--space4) var(--space8) 0 0}.cal-allday-row-cols{display:grid;grid-template-columns:repeat(var(--cal-day-count,7),minmax(0,1fr));min-width:0}.cal-allday-row-col{border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:2px;min-width:0;padding:2px}.cal-event-block{min-height:44px}.cal-event-block--compact{min-height:28px}.cal-event-block--positioned{min-height:0}.cal-event-block-status{display:block;font-size:10px;font-weight:var(--font-weight-semibold)}.cal-event-block-status,.cal-event-block.is-conflict .cal-event-block-status{color:var(--status-danger)}.cal-event-block.is-cancelled .cal-event-block-title{text-decoration:line-through}.cal-event-block-conflict{color:var(--status-danger);font-weight:var(--font-weight-bold);position:absolute;right:4px;top:2px}.cal-timegrid-select{background:color-mix(in srgb,var(--brand-primary) 22%,transparent);border:1.5px solid var(--brand-primary);border-radius:var(--radius-sm);box-shadow:0 0 0 1px color-mix(in srgb,var(--brand-primary) 25%,transparent);left:2px;pointer-events:none;position:absolute;right:2px;z-index:2}.cal-timegrid-select.is-active{animation:cal-select-pulse .45s var(--ease-out);background:color-mix(in srgb,var(--brand-primary) 28%,transparent)}.cal-timegrid-hover{background:color-mix(in srgb,var(--brand-primary) 10%,transparent);border:1px dashed color-mix(in srgb,var(--brand-primary) 55%,transparent);border-radius:var(--radius-sm);left:2px;opacity:.9;pointer-events:none;position:absolute;right:2px;transition:top var(--motion-fast) var(--ease-out),height var(--motion-fast) var(--ease-out);z-index:1}@keyframes cal-select-pulse{0%{opacity:.55;transform:scaleY(.96)}to{opacity:1;transform:scaleY(1)}}.cal-allday-chip,.cal-event-chip{border:1px solid color-mix(in srgb,var(--border-subtle) 80%,transparent);border-left-width:3px;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-family:inherit;font-size:var(--font-size-xs);overflow:hidden;padding:2px var(--space6,6px);text-align:left}.cal-allday-chip:focus-visible,.cal-event-chip:focus-visible{box-shadow:var(--focus-ring);outline:none}.cal-event-chip{position:absolute;z-index:3}.cal-allday-chip.is-dimmed,.cal-event-chip.is-dimmed{opacity:.4}.cal-allday-chip.is-selected,.cal-event-chip.is-selected{box-shadow:0 0 0 2px var(--brand-primary)}.cal-allday-chip:active,.cal-event-chip:active,.cal-month-event-chip:active{filter:brightness(.96);transform:scale(.985)}.cal-event-chip.is-highlighted{box-shadow:0 0 0 2px var(--status-warning)}.cal-event-chip.is-conflict{outline:1px solid var(--status-danger)}.cal-event-chip--preview{background:color-mix(in srgb,var(--brand-primary) 20%,var(--surface-primary));border:1px dashed var(--brand-primary);pointer-events:none;z-index:2}.cal-event-chip-title{display:block;font-weight:var(--font-weight-semibold);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-event-chip-time{color:var(--text-secondary);display:block;font-size:var(--font-size-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cal-allday-chip.is-tentative{border-style:dashed}.cal-detail-pane{background:var(--surface-primary);border-left:1px solid var(--border-subtle);display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden;width:100%}.cal-detail-pane.is-embedded{border-left:none;height:auto;max-height:min(72vh,640px)}.cal-detail-pane-accent--embedded{border-radius:var(--radius-sm);flex-shrink:0;height:4px;margin:0 var(--space16);width:auto}.cal-form-pane{min-width:0}.cal-detail-pane-accent{border-left:4px solid var(--brand-primary);height:4px;width:100%}.cal-detail-pane-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;padding:var(--space16) var(--space16) var(--space12)}.cal-detail-pane-header,.cal-detail-pane-title-wrap{align-items:flex-start;display:flex;gap:var(--space8)}.cal-detail-pane-title-wrap{min-width:0}.cal-detail-pane-title-icon{color:var(--brand-primary);flex-shrink:0;margin-top:2px}.cal-detail-pane-title-wrap h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:1.4;margin:0;word-break:break-word}.cal-detail-pane-body{flex:1 1;overflow:auto;padding:var(--space16)}.cal-detail-meta{display:flex;flex-wrap:wrap;gap:var(--space8);margin-bottom:var(--space16)}.cal-detail-list{display:grid;grid-gap:var(--space16);gap:var(--space16);margin:0}.cal-detail-item dt{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.02em;margin-bottom:var(--space4)}.cal-detail-item dd{color:var(--text-primary);font-size:var(--font-size-sm);line-height:1.5;margin:0}.cal-detail-notes{white-space:pre-wrap}.cal-detail-location-link{color:var(--text-brand,var(--brand));text-decoration:none;display:inline-flex;flex-direction:column;gap:2px}.cal-detail-location-link:hover{text-decoration:underline}.cal-detail-location-address{color:var(--text-tertiary);font-size:var(--font-size-xs)}.place-location-field{position:relative;display:grid;grid-gap:var(--space8);gap:var(--space8)}.place-location-hint{margin:0;color:var(--text-tertiary);font-size:var(--font-size-xs)}.place-location-hint.is-ok{color:var(--text-secondary)}.place-location-suggestions{list-style:none;margin:0;padding:var(--space4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-elevated,var(--surface));max-height:220px;overflow:auto;display:grid;grid-gap:2px;gap:2px}.place-location-suggestion{width:100%;text-align:left;border:0;background:transparent;border-radius:var(--radius-sm);padding:var(--space8) var(--space10);cursor:pointer;display:grid;grid-gap:2px;gap:2px}.place-location-suggestion:focus-visible,.place-location-suggestion:hover{background:var(--surface-muted,rgba(0,0,0,.04));outline:none}.place-location-suggestion-name{color:var(--text-primary);font-size:var(--font-size-sm)}.place-location-suggestion-address{color:var(--text-tertiary);font-size:var(--font-size-xs)}.cal-detail-section{margin-top:var(--space20)}.cal-detail-section-title{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.02em;margin:0 0 var(--space8)}.cal-detail-section-empty{color:var(--text-tertiary);font-size:var(--font-size-sm);margin:0}.cal-detail-section-empty--warn{color:var(--status-warning,var(--text-secondary))}.cal-detail-reminder-list,.cal-detail-task-list{display:grid;grid-gap:var(--space8);gap:var(--space8);list-style:none;margin:0;padding:0}.cal-detail-reminder-list li{align-items:center;color:var(--text-primary);display:flex;flex-wrap:wrap;font-size:var(--font-size-sm);gap:var(--space8)}.cal-detail-task-link{border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:inherit;display:grid;grid-gap:var(--space4);gap:var(--space4);padding:var(--space10) var(--space12);text-decoration:none;transition:background-color .12s ease,border-color .12s ease}.cal-detail-task-link:focus-visible,.cal-detail-task-link:hover{background:var(--surface-subtle);border-color:var(--border-strong,var(--brand-primary));outline:none}.cal-detail-task-title{color:var(--brand-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.cal-detail-task-meta{color:var(--text-tertiary);font-size:var(--font-size-xs)}.cal-detail-note{background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:grid;grid-gap:var(--space6);gap:var(--space6);margin-top:var(--space16);padding:var(--space12)}.cal-detail-note--muted{background:transparent;border-style:dashed}.cal-detail-note--workflow{background:color-mix(in srgb,var(--brand-primary) 6%,var(--surface-subtle));border-color:color-mix(in srgb,var(--brand-primary) 18%,var(--border-subtle))}.cal-detail-note-title{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.cal-detail-note-text{color:var(--text-primary);font-size:var(--font-size-sm);line-height:1.5;margin:0}.cal-detail-task-list{display:grid;grid-gap:var(--space8);gap:var(--space8);list-style:none;margin:var(--space8) 0 0;padding:0}.cal-detail-pane-actions{background:var(--surface-primary);border-top:1px solid var(--border-subtle);display:flex;gap:var(--space8);justify-content:flex-end;margin-top:auto;padding:var(--space12) var(--space16)}.cal-item-form{display:grid;grid-gap:var(--space24);gap:var(--space24)}.cal-item-form .ds-form-section{gap:var(--space12)}.cal-item-form .ds-form-section-title{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:.02em;margin-top:var(--space4);padding-bottom:var(--space12)}.cal-item-form .ds-form-section .ds-stack{gap:var(--space20)}.cal-item-form-inline{padding:var(--space4) 0}.cal-edit-scope{border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:grid;grid-gap:var(--space12);gap:var(--space12);margin:0;min-width:0;padding:var(--space12)}.cal-edit-scope-legend{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:1.45;padding:0}.cal-edit-scope-options{display:grid;grid-gap:var(--space8);gap:var(--space8)}.cal-edit-scope-option{align-items:flex-start;border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;display:flex;gap:var(--space8);min-height:44px;padding:var(--space8) var(--space12)}.cal-edit-scope-option.is-selected{background:var(--surface-subtle);border-color:var(--brand-primary)}.cal-edit-scope-option input{margin-top:3px}.cal-edit-scope-option-text{display:grid;grid-gap:2px;gap:2px}.cal-edit-scope-option-label{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.cal-edit-scope-option-desc{color:var(--text-tertiary);font-size:var(--font-size-xs);line-height:1.4}.cal-item-form-time-grid{display:grid;grid-gap:var(--space20);gap:var(--space20);grid-template-columns:1fr 1fr}@media (max-width:560px){.cal-item-form-time-grid{grid-template-columns:1fr}}.cal-item-form-hint{color:var(--text-tertiary);font-size:var(--font-size-xs);line-height:1.5;margin:0}.cal-item-form-feedback,.cal-item-form-members{display:grid;grid-gap:var(--space12);gap:var(--space12)}.cal-item-form-feedback{margin-bottom:var(--space16)}.cal-item-form-advanced{display:grid;grid-gap:var(--space16);gap:var(--space16)}.cal-item-form-conflicts{display:grid;grid-gap:var(--space12);gap:var(--space12)}.cal-item-form-conflict-actions{display:flex;justify-content:flex-end}.cal-find-free--sidebar .cal-find-free-toggle{width:100%}.cal-find-free-toggle{background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);padding:var(--space8) var(--space12);text-align:left}.cal-find-free-panel{display:grid;grid-gap:var(--space12);gap:var(--space12);margin-top:var(--space8)}.cal-find-free-chips,.cal-find-free-slots{display:flex;flex-wrap:wrap;gap:var(--space6,6px)}.cal-availability{margin-top:var(--space12)}.cal-availability,.cal-availability-panel{display:grid;grid-gap:var(--space12);gap:var(--space12)}.cal-availability-panel{padding:var(--space12);background:var(--surface-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md)}.cal-availability-hint{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm);line-height:1.5}.cal-availability-fields{display:grid;grid-gap:var(--space12);gap:var(--space12)}.cal-availability-actions{display:flex;flex-wrap:wrap;gap:var(--space8)}.cal-availability-empty{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm);line-height:1.5}.cal-availability-slots{display:grid;grid-gap:var(--space8);gap:var(--space8);list-style:none;margin:0;padding:0}.cal-availability-slot{display:block;width:100%;min-height:44px;padding:var(--space10) var(--space12);text-align:left;font-size:var(--font-size-sm);color:var(--text-primary);background:var(--surface-raised,var(--surface));border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.cal-availability-slot:hover:not(:disabled){border-color:var(--brand-primary);background:var(--surface-subtle)}.cal-availability-slot:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}.cal-availability-slot:disabled{opacity:.5;cursor:not-allowed}.cal-month{display:flex;flex:1 1;flex-direction:column;min-height:0;padding:var(--space16)}.cal-month-weekdays{background:var(--surface-subtle);border:1px solid var(--border-subtle);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.cal-month-weekday{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:var(--space8) var(--space4);text-align:center}.cal-month-grid{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:0 0 var(--radius-md) var(--radius-md);display:grid;flex:1 1;grid-auto-rows:minmax(116px,1fr);grid-template-columns:repeat(7,minmax(0,1fr));min-height:0;overflow:auto}.cal-month-cell{border-right:1px solid var(--border-subtle);border-top:1px solid var(--border-subtle);container-type:inline-size;display:flex;flex-direction:column;gap:var(--space4);min-width:0;padding:var(--space6) var(--space8) var(--space8)}.cal-month-cell:nth-child(7n){border-right:none}.cal-month-cell:nth-child(-n+7){border-top:none}.cal-month-cell.is-outside{background:color-mix(in srgb,var(--surface-subtle) 70%,var(--surface-primary))}.cal-month-cell.is-today{background:color-mix(in srgb,var(--brand-subtle) 35%,var(--surface-primary))}.cal-month-cell.is-selected:not(.is-today){box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--brand-primary) 35%,transparent)}.cal-month-cell.is-outside .cal-month-day-btn strong:not(.is-today){color:var(--text-tertiary)}.cal-month-day-btn{align-self:flex-start;background:none;border:none;cursor:pointer;font-family:inherit;min-height:44px;min-width:44px;padding:0}.cal-month-day-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.cal-month-day-btn strong{align-items:center;display:inline-flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;height:32px;justify-content:center;line-height:1;min-width:32px}.cal-month-day-btn strong.is-today{background:var(--brand-primary);border-radius:var(--radius-full);color:var(--text-inverse)}.cal-month-events{display:grid;flex:1 1;grid-gap:2px;gap:2px;list-style:none;margin:0;min-height:0;padding:0}.cal-month-event{min-width:0}.cal-month .cal-event-chip{position:static;width:100%;z-index:auto}.cal-month-event-chip{border:none;border-radius:3px;box-shadow:inset 3px 0 0 var(--event-accent,var(--brand-primary));font-family:inherit;line-height:1.25;min-height:32px;padding:6px 6px 6px 8px;transition:background-color var(--motion-fast) var(--ease-default),box-shadow var(--motion-fast) var(--ease-default)}@media (hover:hover){.cal-month-event-chip:hover{background-color:color-mix(in srgb,var(--event-accent,var(--brand-primary)) 20%,var(--surface-primary))!important}}.cal-month-event-chip:active{opacity:var(--interactive-pressed-opacity)}.cal-month-event-chip.is-selected{box-shadow:inset 3px 0 0 var(--event-accent,var(--brand-primary)),0 0 0 1px color-mix(in srgb,var(--event-accent,var(--brand-primary)) 45%,transparent)}.cal-month-event-chip.is-highlighted{box-shadow:inset 3px 0 0 var(--event-accent,var(--brand-primary)),0 0 0 1px var(--status-warning)}.cal-month-event-chip .cal-event-chip-title{align-items:baseline;display:flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);gap:4px;min-width:0}.cal-month-event-prefix{color:var(--event-accent,var(--text-secondary));flex-shrink:0;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-right:0}@container (max-width: 88px){.cal-month-event-prefix{display:none}}.cal-month-event-name{align-items:center;color:var(--text-primary);display:inline-flex;flex:1 1;font-weight:var(--font-weight-medium);gap:2px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-month-event-repeat{color:var(--text-secondary);display:inline-flex;flex-shrink:0;line-height:0}.cal-month-event.is-tentative .cal-month-event-chip{box-shadow:inset 3px 0 0 color-mix(in srgb,var(--event-accent,var(--brand-primary)) 55%,var(--text-tertiary));opacity:.85}.cal-month-event.is-tentative .cal-month-event-name{text-decoration:line-through}.cal-month-more{align-self:flex-start;background:none;border:none;color:var(--text-link);cursor:pointer;font-family:inherit;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);min-height:28px;padding:0 var(--space4)}.cal-month-more:focus-visible{box-shadow:var(--focus-ring);outline:none}.cal-reminder-preview{margin-top:var(--space4)}.cal-template-row{display:grid;grid-gap:var(--space8);gap:var(--space8)}.cal-floating-root{inset:0;pointer-events:none;position:fixed;z-index:1100}.cal-floating-scrim{background:color-mix(in srgb,var(--overlay-scrim) 55%,transparent);border:none;cursor:pointer;inset:0;padding:0;pointer-events:auto;position:absolute}@media (min-width:640px){.cal-floating-root--detail .cal-floating-scrim{background:color-mix(in srgb,var(--overlay-scrim) 20%,transparent)}}.cal-floating-pane{animation:ds-fade-in var(--motion-fast) var(--ease-out);background:var(--background-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:min(80vh,680px);max-width:calc(100vw - 24px);overflow:hidden;pointer-events:auto;position:fixed;width:380px;z-index:2}.cal-floating-root--form .cal-floating-pane{width:480px}.cal-floating-pane-header{align-items:flex-start;border-bottom:1px solid var(--border-subtle);display:flex;flex-shrink:0;gap:var(--space8);justify-content:space-between;padding:var(--space12) var(--space16)}.cal-floating-pane-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:1.35;margin:0;min-width:0;overflow-wrap:anywhere}.cal-floating-pane-body{flex:1 1;min-height:0;overflow:auto;overscroll-behavior:contain}.cal-floating-pane-body .cal-detail-pane.is-embedded{max-height:none}.cal-floating-pane-body .cal-detail-pane-body{overflow:visible;padding-top:var(--space12)}.cal-floating-pane-body .cal-detail-pane-actions{position:-webkit-sticky;position:sticky;bottom:0}.cal-floating-pane-footer{border-top:1px solid var(--border-subtle);display:flex;flex-shrink:0;gap:var(--space8);justify-content:flex-end;padding:var(--space12) var(--space16)}@media (max-width:639px){.cal-floating-pane{max-height:calc(100dvh - 24px);width:min(380px,calc(100vw - 24px))}.cal-floating-root--form .cal-floating-pane{width:min(480px,calc(100vw - 24px))}}@media (prefers-reduced-motion:reduce){.cal-floating-pane,.cal-timegrid-select.is-active{animation:none}.cal-timegrid-hover{transition:none}}.cal-drawer-scrim{background:var(--overlay-scrim);border:none;cursor:pointer;inset:0;padding:0;position:absolute;z-index:1}.cal-detail-overlay,.cal-filter-drawer,.cal-sidebar-drawer{inset:0;position:absolute;z-index:30}.cal-detail-overlay-panel{background:var(--surface-primary);border-left:1px solid var(--border-subtle);bottom:0;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-width:100%;position:absolute;right:0;top:0;width:min(400px,100%);z-index:2}.cal-detail-overlay-panel .cal-detail-pane{border-left:none;height:100%}.cal-sidebar--drawer{border-right:1px solid var(--border-subtle);box-shadow:var(--shadow-lg);max-width:min(320px,92vw);top:0;width:280px}.cal-filter-drawer-panel,.cal-sidebar--drawer{background:var(--surface-primary);bottom:0;left:0;position:absolute;z-index:2}.cal-filter-drawer-panel{border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:var(--shadow-xl);max-height:min(78vh,640px);overflow:hidden;right:0}.cal-filter-drawer-header{align-items:center;border-bottom:1px solid var(--border-subtle);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--space12) var(--space16)}.cal-filter-drawer-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.cal-filter-drawer-panel .cal-filter-bar{border-bottom:none;flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.cal-filter-drawer-panel .cal-filter-clear{background:var(--surface-primary);border-top:1px solid var(--border-subtle);bottom:calc(0px - var(--space12));margin:0 calc(0px - var(--space16));padding:var(--space8) var(--space16) var(--space12);position:-webkit-sticky;position:sticky}@media (max-width:1279px){.cal-detail-overlay,.cal-filter-drawer,.cal-sidebar-drawer{position:fixed;z-index:1000}.cal-detail-overlay-panel,.cal-sidebar--drawer{overscroll-behavior:contain}.cal-filter-drawer-panel{display:flex;flex-direction:column;max-height:calc(100dvh - var(--space32))}}@media (max-width:768px){.cal-toolbar{gap:var(--space8);grid-template-columns:minmax(0,1fr) auto;padding:var(--space8)}.cal-toolbar-primary{gap:var(--space4);grid-column:1;grid-row:1}.cal-toolbar-primary .ds-btn{min-width:0;padding-inline:var(--space8)}.cal-toolbar-right{gap:var(--space4);grid-column:2;grid-row:1}.cal-toolbar-right .ds-btn{min-width:0;padding-inline:var(--space8)}.cal-toolbar-navigation{gap:var(--space8);grid-column:1/-1;grid-row:2}.cal-view-switch-btn{min-height:44px;min-width:36px;padding-inline:var(--space8)}.cal-toolbar-title-btn{flex:1 1}.cal-toolbar-title,.cal-toolbar-title-btn{font-size:var(--font-size-md)}.cal-timegrid.is-multi-day{--cal-mobile-day-width:112px}.cal-timegrid.is-multi-day .cal-allday-row,.cal-timegrid.is-multi-day .cal-timegrid-header{grid-template-columns:56px repeat(var(--cal-day-count),var(--cal-mobile-day-width));width:840px}.cal-timegrid.is-multi-day .cal-timegrid-cols{flex:none;grid-template-columns:repeat(var(--cal-day-count),var(--cal-mobile-day-width));width:784px}.cal-timegrid.is-multi-day .cal-timegrid-gutter{background:var(--surface-primary);left:0;position:-webkit-sticky;position:sticky;z-index:5}.cal-month{overflow-x:auto;overscroll-behavior-x:contain}.cal-month-grid,.cal-month-weekdays{grid-template-columns:repeat(7,minmax(120px,1fr));min-width:840px}.cal-detail-overlay-panel{width:100%}.cal-page{height:calc(100dvh - var(--shell-header-height, 0px) - var(--page-padding) * 2);max-height:calc(100dvh - var(--shell-header-height, 0px) - var(--page-padding) * 2)}}.mini-list{list-style:none;margin:var(--space8) 0 0;padding:0}.mini-list li{font-size:var(--font-size-xs);margin-bottom:var(--space4)}.link-button{background:none;border:0;border-radius:var(--radius-sm);color:var(--text-link);cursor:pointer;font:inherit;font-weight:var(--font-weight-medium);padding:var(--space4) 0;text-align:left;transition:color var(--motion-fast) var(--ease-default),opacity var(--motion-fast) var(--ease-default)}@media (hover:hover){.link-button:hover{color:var(--brand-primary);text-decoration:underline}}.link-button:active{opacity:var(--interactive-pressed-opacity)}.conflict-panel{background:var(--status-danger-subtle);border:1px solid var(--status-danger);border-radius:var(--radius-lg);margin-top:var(--space16);padding:var(--space16)}.event-chip{background:var(--brand-subtle);border-left:3px solid var(--brand-primary);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-xs);margin-bottom:var(--space4);padding:var(--space4) var(--space8);transition:background var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default)}@media (hover:hover){.event-chip:hover{background:var(--surface-selected)}}.event-chip:active{opacity:var(--interactive-pressed-opacity)}.event-chip.is-conflict{border-left-color:var(--status-danger)}.login-shell{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:var(--page-padding)}.login-panel{max-width:var(--form-narrow-width);width:100%}.login-panel .ds-panel{box-shadow:var(--shadow-md)}.login-brand{margin-bottom:var(--space24);text-align:center}.login-brand-icon{align-items:center;background:transparent;border-radius:var(--radius-xl);display:inline-flex;height:48px;justify-content:center;margin-bottom:var(--space16);overflow:hidden;width:48px}.login-brand-image{display:block;height:100%;object-fit:cover;width:100%}.login-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space8)}.login-subtitle{color:var(--text-secondary);font-size:var(--font-size-md);margin:0}.ds-datetime-picker{position:relative;width:100%}.ds-datetime-picker-trigger{align-items:center;background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;font:inherit;font-size:var(--font-size-md);gap:var(--space8);justify-content:space-between;padding:var(--space8) var(--space12);text-align:left;transition:border-color var(--motion-fast) var(--ease-default),box-shadow var(--motion-fast) var(--ease-default);width:100%}.ds-datetime-picker-trigger>span:first-of-type{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (hover:hover){.ds-datetime-picker-trigger:hover:not(:disabled):not(.is-disabled){border-color:var(--border-focus)}}.ds-datetime-picker-trigger:focus-visible{border-color:var(--border-focus);box-shadow:var(--focus-ring);outline:none}.ds-datetime-picker-trigger.is-error{border-color:var(--border-danger)}.ds-datetime-picker-trigger.is-disabled{cursor:not-allowed;opacity:.55}.ds-datetime-picker-trigger .is-placeholder{color:var(--text-tertiary)}.ds-datetime-picker-trigger svg{color:var(--text-tertiary);flex-shrink:0}.ds-datetime-picker-popover{animation:ds-fade-in var(--motion-fast) var(--ease-out);position:fixed;z-index:1300}.ds-datetime-picker-panel{background:var(--background-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;overflow:hidden}.ds-datetime-picker-popover.is-with-time .ds-datetime-picker-panel{width:min(420px,calc(100vw - 32px))}.ds-datetime-picker-calendar{flex:1 1;min-width:0;padding:var(--space12)}.ds-datetime-picker-month-bar{align-items:center;display:flex;gap:var(--space8);justify-content:space-between;margin-bottom:var(--space12)}.ds-datetime-picker-month-label{color:var(--text-primary);flex:1 1;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:center}.ds-datetime-picker-icon-btn{align-items:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:inline-flex;height:44px;justify-content:center;min-width:44px;width:44px}@media (hover:hover){.ds-datetime-picker-icon-btn:hover{background:var(--surface-subtle);color:var(--text-primary)}}.ds-datetime-picker-days,.ds-datetime-picker-weekdays{display:grid;grid-gap:var(--space4);gap:var(--space4);grid-template-columns:repeat(7,1fr)}.ds-datetime-picker-weekday{color:var(--text-tertiary);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-align:center}.ds-datetime-picker-day{aspect-ratio:1;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font:inherit;font-size:var(--font-size-sm);min-height:36px;min-width:36px;transition:background var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default)}@media (hover:hover){.ds-datetime-picker-day:hover:not(.is-selected){background:var(--surface-subtle)}}.ds-datetime-picker-day.is-outside{color:var(--text-tertiary)}.ds-datetime-picker-day.is-today:not(.is-selected){color:var(--brand-primary);font-weight:var(--font-weight-semibold)}.ds-datetime-picker-day.is-selected{background:var(--brand-primary);color:var(--text-inverse);font-weight:var(--font-weight-semibold)}.ds-datetime-picker-footer{border-top:1px solid var(--border-subtle);display:flex;justify-content:space-between;margin-top:var(--space12);padding-top:var(--space8)}.ds-datetime-picker-link{background:none;border:none;color:var(--brand-primary);cursor:pointer;font:inherit;font-size:var(--font-size-sm);padding:var(--space4) var(--space8)}@media (hover:hover){.ds-datetime-picker-link:hover{opacity:.85}}.ds-datetime-picker-time{border-left:1px solid var(--border-subtle);padding:var(--space12) var(--space8);width:132px}.ds-datetime-picker-time-columns{display:grid;grid-gap:var(--space4);gap:var(--space4);grid-template-columns:1fr 1fr;height:100%}.ds-datetime-picker-time-column{display:grid;grid-gap:var(--space2);gap:var(--space2);height:220px;overflow-y:auto;padding:var(--space4) 0;scroll-snap-type:y mandatory;scrollbar-width:thin}.ds-datetime-picker-time-item{background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--font-size-sm);height:32px;scroll-snap-align:center;transition:background var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default)}@media (hover:hover){.ds-datetime-picker-time-item:hover:not(.is-selected){background:var(--surface-subtle);color:var(--text-primary)}}.ds-datetime-picker-time-item.is-selected{background:var(--brand-primary);color:var(--text-inverse);font-weight:var(--font-weight-semibold)}.ds-month-picker{min-width:10rem}.ds-month-picker-panel{width:min(288px,calc(100vw - 32px))}.ds-month-picker-grid{display:grid;grid-gap:var(--space8);gap:var(--space8);grid-template-columns:repeat(3,minmax(0,1fr))}.ds-month-picker-cell{background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font:inherit;font-size:var(--font-size-md);min-height:var(--space48);padding:var(--space8) var(--space4);transition:background var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default)}@media (hover:hover){.ds-month-picker-cell:hover:not(:disabled):not(.is-selected){background:var(--surface-pressed)}}.ds-month-picker-cell.is-selected{background:var(--brand-primary);color:var(--text-inverse);font-weight:var(--font-weight-semibold)}.ds-month-picker-cell.is-disabled,.ds-month-picker-cell:disabled{color:var(--text-tertiary);cursor:not-allowed;opacity:.45}.ds-month-picker-hint{color:var(--text-tertiary);font-size:var(--font-size-xs)}.ds-datetime-picker-icon-btn:disabled{cursor:not-allowed;opacity:.4}.ds-select-menu{min-width:168px;position:relative}.ds-select-menu-trigger{align-items:center;background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:inline-flex;font:inherit;font-size:var(--font-size-sm);gap:var(--space8);justify-content:space-between;min-height:40px;padding:var(--space8) var(--space12);transition:border-color var(--motion-fast) var(--ease-default),box-shadow var(--motion-fast) var(--ease-default),background var(--motion-fast) var(--ease-default);width:100%}@media (hover:hover){.ds-select-menu-trigger:hover:not(:disabled){border-color:var(--border-focus)}}.ds-select-menu-trigger:focus-visible{border-color:var(--border-focus);box-shadow:var(--focus-ring);outline:none}.ds-select-menu.is-open .ds-select-menu-trigger{border-color:var(--border-focus);box-shadow:var(--focus-ring)}.ds-select-menu-trigger:disabled{cursor:not-allowed;opacity:.55}.ds-select-menu-value{flex:1 1;min-width:0;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.ds-select-menu-chevron{color:var(--text-tertiary);flex-shrink:0;transition:transform var(--motion-fast) var(--ease-default)}.ds-select-menu.is-open .ds-select-menu-chevron{transform:rotate(180deg)}.ds-select-menu-panel{animation:ds-fade-in var(--motion-fast) var(--ease-out);background:var(--background-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:grid;grid-gap:2px;gap:2px;left:0;margin:0;min-width:100%;padding:var(--space4);position:absolute;right:0;top:calc(100% + 6px);z-index:60}.ds-select-menu-option{align-items:center;background:transparent;border:0;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;font:inherit;font-size:var(--font-size-sm);gap:var(--space8);padding:var(--space8) var(--space12);text-align:left;transition:background var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default);width:100%}.ds-select-menu-option.is-active:not(.is-selected){background:var(--surface-pressed)}.ds-select-menu-option.is-selected{background:var(--brand-subtle);color:var(--brand-primary);font-weight:var(--font-weight-semibold)}.ds-select-menu-option:active{opacity:var(--interactive-pressed-opacity)}.ds-select-menu-check{align-items:center;color:var(--brand-primary);display:inline-flex;flex-shrink:0;height:16px;justify-content:center;width:16px}.ds-dropdown{position:relative}.ds-dropdown-menu{animation:ds-fade-in var(--motion-fast) var(--ease-out);background:var(--background-elevated);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:none;min-width:160px;padding:var(--space4);position:absolute;right:0;top:calc(100% + 4px);z-index:50}.ds-dropdown.is-open .ds-dropdown-menu{display:grid}.ds-dropdown-menu.is-portaled{display:grid;position:fixed;right:auto;top:auto;z-index:1300}.ds-dropdown-item{background:none;border:none;border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font:inherit;font-size:var(--font-size-sm);padding:var(--space8) var(--space12);text-align:left;transition:background var(--motion-fast) var(--ease-default);width:100%}@media (hover:hover){.ds-dropdown-item:hover{background:var(--surface-pressed)}}.ds-dropdown-item:active{opacity:var(--interactive-pressed-opacity)}.ds-dropdown-item.is-destructive{color:var(--status-danger)}.ds-tabs{border-bottom:1px solid var(--border-subtle);display:flex;flex-wrap:wrap;gap:var(--space4);margin-bottom:var(--space16)}.ds-tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);cursor:pointer;font:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-medium);margin-bottom:-1px;padding:var(--space8) var(--space16);transition:border-color var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default)}@media (hover:hover){.ds-tab:hover{color:var(--text-primary)}}.ds-tab:active{opacity:var(--interactive-pressed-opacity)}.ds-tab.is-active{border-bottom-color:var(--brand-primary);color:var(--brand-primary);font-weight:var(--font-weight-semibold)}.beian-footer{color:var(--text-tertiary);font-size:var(--font-size-xs);padding:var(--space16) var(--page-padding) var(--space24);text-align:center}.beian-footer a{color:var(--text-tertiary);text-decoration:none}.beian-footer a:hover{text-decoration:underline}.beian-sep{margin:0 var(--space8)}@media (max-width:1024px){.ds-sidebar{transition:none;width:var(--sidebar-collapsed-width)}.ds-app.is-sidebar-collapsed .ds-main,.ds-main{margin-left:var(--sidebar-collapsed-width);transition:none}.ds-nav-link-label,.ds-sidebar-brand strong,.ds-sidebar-logout span,.ds-sidebar-toggle span{display:none}.ds-split{grid-template-columns:1fr}}@media (max-width:768px){:root{--page-padding:var(--space16)}.ds-main-header{flex-wrap:wrap}.week-grid{grid-template-columns:1fr}.ds-search-input-wrap .ds-input{width:100%}}.ds-link,.ds-section-link{color:var(--text-link);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-decoration:none;transition:color var(--motion-fast) var(--ease-default)}@media (hover:hover){.ds-link:hover,.ds-section-link:hover{color:var(--brand-primary);text-decoration:underline}}.ds-text-muted,.muted{color:var(--text-secondary);font-size:var(--font-size-md);line-height:1.6;margin:0}.ds-action-row,.ds-badge-row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space8)}.ds-inline-icon{margin-right:var(--space8);vertical-align:middle}.ds-offline-banner{padding:var(--space12) var(--page-padding) 0}.ds-detail-line{color:var(--text-primary);font-size:var(--font-size-md);line-height:1.6;margin:0}.ds-form-narrow{max-width:480px}.ds-sidebar-logout{margin-top:var(--space8);width:100%}.ds-search-input--narrow{width:160px}.ds-selectable-list-item--plain{border:none;width:100%}.month-cell{transition:border-color var(--motion-fast) var(--ease-default),box-shadow var(--motion-fast) var(--ease-default)}@media (hover:hover){.month-cell:not(.muted):hover{border-color:var(--border-default);box-shadow:var(--shadow-sm)}}.list-card{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);cursor:pointer;display:grid;grid-gap:var(--space4);gap:var(--space4);padding:var(--space12);text-align:left;transition:background var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default),box-shadow var(--motion-fast) var(--ease-default);width:100%}@media (hover:hover){.list-card:hover{background:var(--surface-secondary);border-color:var(--border-default)}}.list-card:active{opacity:var(--interactive-pressed-opacity)}.list-card.active{background:var(--brand-subtle);border-color:var(--brand-primary);box-shadow:inset 0 0 0 1px var(--brand-primary)}.chip{background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-primary);cursor:pointer;font:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--space4) var(--space12)}.chip.active{background:var(--brand-primary);border-color:var(--brand-primary);color:var(--text-inverse)}.modal-backdrop{align-items:center;background:var(--overlay-scrim);display:flex;inset:0;justify-content:center;padding:var(--space24);position:fixed;z-index:100}.modal{background:var(--background-elevated);border-radius:var(--radius-xl);max-height:90vh;max-width:520px;overflow:auto;padding:var(--space24);width:100%}.modal.wide{max-width:720px}.content{padding:var(--page-padding)}.panel{max-width:var(--form-max-width)}.panel.narrow{margin:0 auto;max-width:var(--form-narrow-width);width:100%}.stack{display:grid;grid-gap:var(--space16);gap:var(--space16);margin-top:var(--space24)}.error{color:var(--status-danger)}.success{color:var(--status-success)}.list{display:grid;grid-gap:var(--space12);gap:var(--space12);list-style:none;margin:0;padding:0}.list li{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:grid;grid-gap:var(--space8);gap:var(--space8);padding:var(--space16)}.facts{display:grid;grid-gap:var(--space12);gap:var(--space12)}.facts div{display:grid;grid-gap:var(--space4);gap:var(--space4)}.facts dt{color:var(--text-secondary);font-size:var(--font-size-sm)}.facts dd{margin:0}.eyebrow{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);margin:0 0 var(--space12)}h1{font-size:var(--font-size-2xl);line-height:1.2;margin:0 0 var(--space16)}p{font-size:var(--font-size-base);line-height:1.6}.muted{color:var(--text-secondary)}button:not([class]){background:var(--brand-primary);border:0;border-radius:var(--radius-md);color:var(--text-inverse);cursor:pointer;font:inherit;font-weight:var(--font-weight-semibold);padding:var(--space8) var(--space16)}button.secondary:not([class]){background:var(--surface-secondary);color:var(--text-primary)}input:not([class]),select:not([class]),textarea:not([class]){background:var(--surface-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);font:inherit;padding:var(--space8) var(--space12)}label:not([class]){font-weight:var(--font-weight-semibold)}fieldset:not([class]),label:not([class]){display:grid;grid-gap:var(--space8);gap:var(--space8)}fieldset:not([class]){border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--space12)}legend:not([class]){font-weight:var(--font-weight-bold);padding:0 var(--space4)}.field{display:grid;grid-gap:var(--space8);gap:var(--space8)}.field.checkbox{align-items:center;grid-template-columns:auto 1fr}.field.checkbox input{width:auto}.button{background:var(--brand-primary);border:0;border-radius:var(--radius-md);color:var(--text-inverse);cursor:pointer;font:inherit;font-weight:var(--font-weight-semibold);padding:var(--space8) var(--space16)}.calendar-page h1{font-size:var(--font-size-xl);margin:0}.error-text{color:var(--status-danger)}.detail-header{align-items:flex-start;display:flex;gap:var(--space16);justify-content:space-between;margin-bottom:var(--space16)}.pet-avatar{border-radius:var(--radius-lg);object-fit:cover}.shell{align-items:center;display:flex;padding:var(--page-padding)}.app-shell,.shell{min-height:100vh}.nav,.topbar{display:none}.ds-share-list{gap:var(--space12)}.ds-share-list,.ds-share-row{display:flex;flex-direction:column}.ds-share-row{gap:var(--space4)}.ds-share-row-meta{display:flex;flex-wrap:wrap;gap:var(--space8);justify-content:space-between;font-size:var(--font-size-sm)}.ds-share-track{background:var(--surface-secondary,var(--border-subtle));border-radius:999px;height:8px;overflow:hidden;width:100%}.ds-share-fill{background:var(--brand-primary,#2563eb);height:100%;max-width:100%}.ds-allocation-stack-segment.is-deposit,.ds-share-fill.is-deposit{background:#2563eb}.ds-allocation-stack-segment.is-time,.ds-share-fill.is-time{background:#f59e0b}.ds-allocation-stack-segment.is-insurance,.ds-share-fill.is-insurance{background:#10b981}.ds-allocation-stack-segment.is-pension,.ds-share-fill.is-pension{background:#ec4899}.ds-allocation-stack-segment.is-provident,.ds-share-fill.is-provident{background:#8b5cf6}.ds-allocation-stack-segment.is-supplementary-provident,.ds-share-fill.is-supplementary-provident{background:#06b6d4}.ds-allocation-stack-segment.is-mortgage,.ds-share-fill.is-mortgage{background:#d97706}.ds-allocation-stack-segment.is-car-loan,.ds-share-fill.is-car-loan{background:#dc2626}.ds-chart{display:block;height:auto;max-width:100%;width:100%}.ds-chart-legend{color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:var(--space12);font-size:var(--font-size-sm);margin-bottom:var(--space8)}.ds-chart-legend-item{align-items:center;display:inline-flex;gap:var(--space6)}.ds-chart-legend-swatch{border-radius:2px;display:inline-block;height:3px;width:16px}.ds-chart-legend-swatch.is-assets{background:var(--brand-primary,#2563eb)}.ds-chart-legend-swatch.is-liabilities{background:var(--status-danger,#c45c5c)}.ds-chart-legend-swatch.is-net{background:var(--status-success,#059669)}.ds-chart-legend-swatch.is-account{background:var(--brand-primary,#2563eb)}.ds-history-list{display:flex;flex-direction:column;gap:var(--space8)}.ds-history-item{border:1px solid var(--border-subtle);border-radius:var(--radius-md);display:grid;grid-gap:var(--space4) var(--space16);gap:var(--space4) var(--space16);grid-template-columns:minmax(0,1fr) auto;padding:var(--space12) var(--space16)}.ds-history-item-meta{color:var(--text-secondary);font-size:var(--font-size-sm)}.ds-section-heading{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space8);justify-content:space-between}.ds-assets-stack .ds-section-heading .ds-btn--sm{min-height:var(--space32);padding:var(--space4) var(--space12)}.ds-assets-toolbar{align-items:end;display:flex;flex-wrap:wrap;gap:var(--space12);margin-bottom:var(--space16)}.ds-assets-toolbar .ds-field{margin:0;min-width:140px}.ds-account-row{align-items:center;border-bottom:1px solid var(--border-subtle);display:grid;grid-gap:var(--space8) var(--space12);gap:var(--space8) var(--space12);grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr)) auto;padding:var(--space12) 0}.ds-account-row:last-child{border-bottom:none}@media (max-width:768px){.ds-account-row{grid-template-columns:minmax(0,1fr) auto}.ds-account-row>:nth-child(n+2):nth-child(-n+4){grid-column:1/-1}.ds-history-item{grid-template-columns:1fr}}.ds-assets-stack{display:flex;flex-direction:column;gap:var(--space16)}.ds-assets-stack>.ds-panel+.ds-panel{margin-top:0}.ds-assets-chart-section{gap:var(--space8)}.ds-assets-chart-section>h3{margin:0}.ds-assets-chart-section .ds-chart-legend{gap:var(--space24);margin-bottom:var(--space4);margin-top:0}.ds-assets-chart-section .ds-chart-legend-item{gap:var(--space8)}.ds-assets-view-toolbar{justify-content:space-between;margin-bottom:var(--space8)}.ds-assets-view-toolbar,.ds-assets-view-toolbar-main{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space12)}.ds-assets-view-toolbar .ds-field{align-items:center;display:flex;flex-direction:row;gap:var(--space8);margin:0;min-width:0}.ds-assets-view-toolbar .ds-field-label{flex-shrink:0;white-space:nowrap}.ds-assets-view-toolbar .ds-input{min-width:10rem;width:auto}.ds-assets-view-toolbar .ds-month-picker{min-width:11rem}.ds-assets-view-toolbar .ds-tabs{align-self:center;margin:0}.ds-assets-view-toolbar .ds-badge{align-self:center}.ds-metric-grid.is-three-up{align-items:stretch;grid-template-columns:repeat(3,minmax(0,1fr))}.ds-metric-grid.is-three-up .ds-metric-card.is-baseline{align-content:start;grid-template-rows:auto auto var(--space20) var(--space20);height:100%}.ds-metric-grid.is-three-up .ds-metric-card.is-baseline .ds-metric-card-label{min-height:var(--space20)}.ds-metric-grid.is-three-up .ds-metric-card.is-baseline .ds-metric-card-value{min-height:calc(var(--font-size-xl) * 1.3)}.ds-metric-delta-slot{display:flex;align-items:flex-start;min-height:var(--space20)}.ds-metric-delta-slot.is-placeholder{visibility:hidden}.ds-metric-card.is-assets:before,.ds-metric-card.is-liabilities:before,.ds-metric-card.is-net-negative:before,.ds-metric-card.is-net-positive:before{background:var(--brand-primary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;content:"";display:block;height:4px;margin:calc(var(--space16) * -1) calc(var(--space16) * -1) var(--space8);width:calc(100% + var(--space16) * 2)}.ds-metric-card.is-liabilities:before{background:var(--status-warning)}.ds-metric-card.is-net-positive:before{background:var(--status-success)}.ds-metric-card.is-net-negative:before{background:var(--status-danger)}.ds-metric-card.is-net-negative .ds-metric-card-value{color:var(--status-danger)}.ds-metric-card.is-liabilities .ds-metric-card-value{color:var(--status-warning)}.ds-metric-delta{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:1.4}.ds-metric-delta.is-up{color:var(--status-success)}.ds-metric-delta.is-down{color:var(--status-danger)}.ds-split.is-balanced{align-items:stretch;grid-template-columns:repeat(2,minmax(0,1fr))}.ds-split>.ds-panel+.ds-panel{margin-top:0}.ds-allocation-panel{display:flex;flex-direction:column;gap:var(--space12);min-height:100%}.ds-allocation-panel>h3{margin:0}.ds-assets-ledger-section{gap:var(--space20)}.ds-assets-ledger-section .ds-section-heading>h3,.ds-assets-ledger-section>h3{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:-.01em;line-height:1.3;margin:0}.ds-allocation-summary{background:transparent;border:none;border-radius:0;display:flex;flex-direction:column;gap:var(--space16);padding:var(--space4) 0}.ds-allocation-summary-caption{color:var(--text-tertiary,var(--text-secondary));font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.06em;line-height:1.2;margin:0}.ds-allocation-summary-body{display:flex;flex-direction:column;gap:var(--space16)}.ds-allocation-legend{display:grid;grid-gap:var(--space12) var(--space24);gap:var(--space12) var(--space24);grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:0;padding:0}.ds-allocation-legend-item{align-items:center;color:var(--text-secondary);display:grid;font-size:var(--font-size-sm);grid-gap:var(--space8) var(--space12);gap:var(--space8) var(--space12);grid-template-columns:auto minmax(0,1fr) auto auto;line-height:1.45;min-width:0}.ds-allocation-dot{background:var(--border-strong,var(--border-subtle));border-radius:999px;display:inline-block;flex-shrink:0;height:8px;width:8px}.ds-allocation-dot.is-deposit{background:#2563eb}.ds-allocation-dot.is-time{background:#f59e0b}.ds-allocation-dot.is-insurance{background:#10b981}.ds-allocation-dot.is-pension{background:#ec4899}.ds-allocation-dot.is-provident{background:#8b5cf6}.ds-allocation-dot.is-supplementary-provident{background:#06b6d4}.ds-allocation-dot.is-mortgage{background:#d97706}.ds-allocation-dot.is-car-loan{background:#dc2626}.ds-allocation-legend-name{color:var(--text-primary);min-width:0}.ds-allocation-legend-amount{color:var(--text-secondary)}.ds-allocation-legend-amount,.ds-allocation-legend-share{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.ds-allocation-legend-share{color:var(--text-tertiary,var(--text-secondary));font-weight:var(--font-weight-medium);min-width:3.25em}.ds-assets-ledger-section .ds-assets-table-wrap{border-top:1px solid var(--border-subtle);margin-top:var(--space8);padding-top:var(--space20)}.ds-allocation-year-embed{gap:var(--space20)}.ds-allocation-year-embed .ds-allocation-summary{background:var(--surface-secondary,rgba(0,0,0,.02));border-radius:var(--radius-md);padding:var(--space16) var(--space20)}@media (max-width:720px){.ds-allocation-legend{grid-template-columns:1fr}}.ds-allocation-stack{background:var(--surface-secondary,var(--border-subtle));border-radius:999px;display:flex;flex-shrink:0;gap:2px;height:10px;width:100%}.ds-allocation-stack-segment{cursor:pointer;height:100%;min-width:0;position:relative;transform-origin:center bottom;transition:width var(--motion-fast) var(--ease-default),transform var(--motion-fast) var(--ease-default),opacity var(--motion-fast) var(--ease-default),filter var(--motion-fast) var(--ease-default),box-shadow var(--motion-fast) var(--ease-default)}.ds-allocation-stack-segment:first-child{border-bottom-left-radius:999px;border-top-left-radius:999px}.ds-allocation-stack-segment:last-child{border-bottom-right-radius:999px;border-top-right-radius:999px}.ds-allocation-stack-segment.is-empty{display:none}.ds-allocation-stack:focus-within .ds-allocation-stack-segment:not(:hover):not(:focus-visible),.ds-allocation-stack:hover .ds-allocation-stack-segment:not(:hover){opacity:.4}.ds-allocation-stack-segment:focus-visible,.ds-allocation-stack-segment:hover{filter:brightness(1.08);opacity:1;transform:translateY(-2px);box-shadow:0 3px 8px rgba(15,23,42,.28);z-index:3}.ds-allocation-stack-segment:focus-visible{outline:2px solid var(--brand-primary,#2563eb);outline-offset:2px}.ds-allocation-stack-tip{background:#0f172a;border-radius:var(--radius-sm,6px);bottom:calc(100% + 8px);color:#fff;display:flex;flex-direction:column;gap:1px;left:50%;line-height:1.35;opacity:0;padding:5px 8px;pointer-events:none;position:absolute;transform:translate(-50%,4px);transition:opacity var(--motion-fast) var(--ease-default),transform var(--motion-fast) var(--ease-default);white-space:nowrap;z-index:5}.ds-allocation-stack-tip:after{border:4px solid transparent;border-top-color:#0f172a;content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}.ds-allocation-stack-tip-label{font-size:var(--font-size-xs,12px);font-weight:var(--font-weight-medium,500)}.ds-allocation-stack-tip-value{color:rgba(255,255,255,.82);font-size:var(--font-size-xs,12px)}.ds-allocation-stack-segment:focus-visible .ds-allocation-stack-tip,.ds-allocation-stack-segment:hover .ds-allocation-stack-tip{opacity:1;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){.ds-allocation-stack-segment,.ds-allocation-stack-tip{transition:none}.ds-allocation-stack-segment:focus-visible,.ds-allocation-stack-segment:hover{transform:none}}.ds-allocation-empty{align-items:center;color:var(--text-secondary);display:flex;flex:1 1;flex-direction:column;font-size:var(--font-size-sm);gap:var(--space8);justify-content:center;min-height:96px;padding:var(--space16);text-align:center}.ds-allocation-empty.is-compact{align-items:flex-start;min-height:0;padding:var(--space4) 0;text-align:left}.ds-allocation-footer{border-top:1px solid var(--border-subtle);color:var(--text-secondary);font-size:var(--font-size-sm);margin-top:auto;padding-top:var(--space12)}.ds-allocation-footer.is-compact{margin-top:var(--space4);padding-top:var(--space8)}.ds-chart-shell{position:relative;width:100%}.ds-chart-shell .ds-chart{display:block;height:auto;max-height:none;width:100%}.ds-chart-tooltip{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:var(--font-size-sm);left:0;padding:var(--space8) var(--space12);pointer-events:none;position:absolute;top:0;transform:translate(-50%,calc(-100% - 8px));white-space:nowrap;z-index:2}.ds-chart-axis-label{fill:var(--text-secondary);font-size:11px}.ds-chart-grid line{stroke:var(--border-subtle);stroke-width:1}.ds-chart-missing{fill:var(--text-tertiary,var(--text-secondary));font-size:10px}.ds-assets-table-wrap{overflow-x:auto;width:100%}.ds-assets-table{border-collapse:collapse;font-family:inherit;font-size:var(--font-size-md);min-width:640px;width:100%}.ds-assets-table.is-account-ledger{table-layout:fixed}.ds-assets-table.is-account-ledger .ds-assets-col-name{width:22%}.ds-assets-table.is-account-ledger .ds-assets-col-amount,.ds-assets-table.is-account-ledger .ds-assets-col-category,.ds-assets-table.is-account-ledger .ds-assets-col-change{width:16%}.ds-assets-table.is-account-ledger .ds-assets-col-reason{width:22%}.ds-assets-table.is-account-ledger .ds-assets-col-actions{width:52px}.ds-assets-table td,.ds-assets-table th{font-family:inherit;font-size:var(--font-size-md);line-height:1.4;text-align:left;vertical-align:middle}.ds-assets-table th{border-bottom:1px solid var(--border-subtle);color:var(--text-secondary);font-weight:var(--font-weight-medium);padding:var(--space12) var(--space16);white-space:nowrap}.ds-assets-table td.is-numeric,.ds-assets-table th.is-numeric{text-align:left}.ds-assets-table td.is-actions,.ds-assets-table th.is-actions{padding-left:var(--space8);padding-right:var(--space16);text-align:left;width:52px}.ds-assets-table td.is-actions .ds-dropdown{display:inline-flex;justify-content:flex-start;vertical-align:middle}.ds-assets-table td.is-actions .ds-btn--icon{min-height:var(--space32);min-width:var(--space32);padding:var(--space4)}.ds-assets-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);padding:var(--space16) var(--space16)}.ds-assets-table.is-year-months th{padding:var(--space12) var(--space16)}.ds-assets-table.is-year-months td{padding:var(--space16) var(--space16);min-height:var(--space48)}.ds-assets-table tbody tr:hover{background:var(--surface-secondary,rgba(0,0,0,.02))}.ds-assets-table tbody tr:last-child td{border-bottom:none}.ds-assets-table .ds-badge{font-family:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.ds-assets-name-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;color:var(--text-link,var(--brand-primary));cursor:pointer;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;padding:0;text-align:left}.ds-assets-name-btn:hover{text-decoration:underline}.ds-assets-name-btn:focus-visible{border-radius:var(--radius-sm);box-shadow:var(--focus-ring);outline:none}.ds-amount-blank,.ds-assets-empty-mark{color:var(--text-tertiary,var(--text-secondary));font-family:inherit;font-size:inherit}.ds-assets-empty-mark{display:inline-block;line-height:inherit;min-width:1.25em;-webkit-padding-end:var(--space8);padding-inline-end:var(--space8);text-align:left}.ds-year-summary{display:grid;grid-gap:var(--space16);gap:var(--space16);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.ds-year-summary-card{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space8);padding:var(--space16)}.ds-year-summary-change{align-items:center;align-self:center;color:var(--text-secondary);display:flex;flex-direction:column;font-size:var(--font-size-sm);gap:var(--space4);min-width:120px;text-align:center}.ds-year-summary-change strong{color:var(--text-primary);font-size:var(--font-size-lg)}.ds-year-summary-change.is-up strong{color:var(--status-success)}.ds-year-summary-change.is-down strong{color:var(--status-danger)}.ds-assets-entry-groups{display:flex;flex-direction:column;gap:var(--space24)}.ds-assets-entry-group+.ds-assets-entry-group{border-top:1px solid var(--border-subtle);padding-top:var(--space16)}.ds-assets-entry-group>h3{margin:0 0 var(--space12)}.ds-assets-entry-row{align-items:start;border-bottom:1px solid var(--border-subtle);display:grid;grid-gap:var(--space8) var(--space12);gap:var(--space8) var(--space12);grid-template-columns:minmax(140px,1fr) minmax(120px,160px) minmax(140px,1fr) minmax(0,1.2fr);padding:var(--space12) 0}.ds-assets-entry-row:last-child{border-bottom:none}.ds-assets-entry-row>.ds-field{margin:0;min-width:0}.ds-assets-entry-row .ds-textarea{min-height:40px;resize:vertical}.ds-assets-entry-meta{display:flex;flex-direction:column;gap:var(--space4)}.ds-assets-entry-meta strong{display:block}.ds-assets-entry-meta span{color:var(--text-secondary);font-size:var(--font-size-sm)}.ds-assets-liquidity-tag{align-self:flex-start;background:var(--surface-secondary,var(--border-subtle));border:1px solid var(--border-subtle);border-radius:var(--radius-sm,6px);color:var(--text-secondary);display:inline-block;font-size:var(--font-size-xs,12px);line-height:1.3;max-width:100%;padding:1px 6px;white-space:normal;word-break:break-word}.ds-assets-category-cell{align-items:flex-start;display:flex;flex-direction:column;gap:var(--space4);min-width:0}.ds-assets-liquidity-hint{align-items:center;color:var(--text-secondary);display:flex;flex-wrap:wrap;font-size:var(--font-size-sm);gap:var(--space4);margin:var(--space4) 0 0}.ds-allocation-legend-name .ds-assets-liquidity-tag,.ds-share-row-meta .ds-assets-liquidity-tag{margin-left:var(--space4)}.ds-assets-detail-hero{background:var(--surface-secondary,var(--border-subtle));border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space8);padding:var(--space16)}.ds-assets-detail-hero-value{font-size:var(--font-size-2xl,28px);font-weight:var(--font-weight-semibold)}.ds-assets-detail-hero-meta{color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:var(--space8);font-size:var(--font-size-sm)}.ds-assets-modal-scroll{padding-bottom:var(--space8)}@media (max-width:768px){.ds-metric-grid.is-three-up,.ds-year-summary{grid-template-columns:1fr}.ds-year-summary-change{flex-direction:row;justify-content:center;min-width:0}.ds-assets-entry-row,.ds-split.is-balanced{grid-template-columns:1fr}}