:root{--hwy-bg-canvas: #F7F8F6;--hwy-bg-surface: #FFFFFF;--hwy-bg-subtle: #F0F4F1;--hwy-text-primary: #18211E;--hwy-text-secondary: #68736F;--hwy-text-tertiary: #6D7774;--hwy-text-inverse: #FFFFFF;--hwy-interaction-hover-surface: #ECEFF0;--hwy-interaction-selected-surface: #E8EEEB;--hwy-border-default: #E2E7E4;--hwy-border-strong: #CDD6D1;--hwy-border-control: #78867D;--hwy-border-control-hover: #61766A;--hwy-border-control-focus: #2E6051;--hwy-focus-ring-color: #789687;--hwy-disabled-background: #F1F3F1;--hwy-disabled-text: #7B8680;--hwy-disabled-border: #BCC7C0;--hwy-action-primary: #173F37;--hwy-action-primary-hover: #365547;--hwy-action-primary-pressed: #192B23;--hwy-action-primary-text: #FFFFFF;--hwy-action-secondary: #EEF3F0;--hwy-status-success: #3E7B5C;--hwy-status-success-surface: #EEF7F1;--hwy-status-warning: #B57924;--hwy-status-warning-text: #8A5700;--hwy-status-warning-surface: #FFF6E5;--hwy-status-danger: #B84C3E;--hwy-status-danger-surface: #FFF1F0;--hwy-status-info: #4B6FAE;--hwy-status-info-surface: #EFF4FB;--hwy-business-quality: #4566B4;--hwy-business-quality-text: #345594;--hwy-business-safety: #D9673B;--hwy-business-safety-text: #A34B25;--hwy-business-civilization: #557651;--hwy-business-civilization-text: #3D6340;--hwy-space-0: 0px;--hwy-space-1: 4px;--hwy-space-2: 8px;--hwy-space-3: 12px;--hwy-space-4: 16px;--hwy-space-5: 20px;--hwy-space-6: 24px;--hwy-space-8: 32px;--hwy-space-10: 40px;--hwy-space-12: 48px;--hwy-space-16: 64px;--hwy-font-size-caption: 12px;--hwy-font-size-small: 13px;--hwy-font-size-body: 14px;--hwy-font-size-body-large: 16px;--hwy-font-size-title3: 18px;--hwy-font-size-title2: 24px;--hwy-font-size-title1: 32px;--hwy-font-weight-regular: 400;--hwy-font-weight-medium: 500;--hwy-font-weight-semibold: 600;--hwy-font-weight-bold: 700;--hwy-border-width-hairline: 1px;--hwy-border-width-strong: 2px;--hwy-opacity-disabled: .45;--hwy-opacity-secondary: .68;--hwy-opacity-overlay: .28;--hwy-radius-small: 6px;--hwy-radius-control: 8px;--hwy-radius-card: 12px;--hwy-radius-card-emphasis: 12px;--hwy-radius-panel: 14px;--hwy-radius-modal: 16px;--hwy-radius-pill: 999px;--hwy-radius-circle: 50%;--hwy-focus-ring-width: 2px;--hwy-focus-ring-offset: 2px;--hwy-motion-press: 80ms;--hwy-motion-hover: .14s;--hwy-motion-tab: .18s;--hwy-motion-card-expand: .2s;--hwy-motion-panel: .24s;--hwy-motion-swipe-settle: .2s;--hwy-motion-easing-standard: cubic-bezier(.2,0,0,1);--hwy-motion-easing-emphasized: cubic-bezier(.2,.8,.2,1);--hwy-motion-press-scale: .985;--hwy-button-height: 40px;--hwy-button-compact-height: 34px;--hwy-button-font-size: 14px;--hwy-icon-action-size: 36px;--hwy-action-narrow-touch-target: 44px;--hwy-input-height: 40px;--hwy-input-font-size: 14px;--hwy-tab-text-default: #68736F;--hwy-tab-text-selected: #173F37;--hwy-tab-text-hover: #173F37;--hwy-tab-text-disabled: #7B8680;--hwy-tab-focus-ring: #789687;--hwy-tab-indicator-color: #173F37;--hwy-tab-height: 36px;--hwy-tab-horizontal-padding: 12px;--hwy-tab-gutter: 8px;--hwy-tab-font-size: 14px;--hwy-tab-indicator-height: 2px;--hwy-tab-indicator-radius: 1px;--hwy-tab-font-weight: 500;--hwy-tab-radius: var(--hwy-radius-control);--hwy-tab-indicator-duration: var(--hwy-motion-tab);--hwy-card-background: #FFFFFF;--hwy-card-border: #E2E7E4;--hwy-card-hover-border: #CDD6D1;--hwy-card-selected-background: #E8EEEB;--hwy-card-selected-border: #61766A;--hwy-panel-background: #FFFFFF;--hwy-panel-border: #E2E7E4;--hwy-card-radius: var(--hwy-radius-card);--hwy-card-padding: 20px;--hwy-card-compact-padding: 12px;--hwy-card-border-width: 1px;--hwy-card-floating-shadow: 0 10px 30px rgba(20,40,34,.08);--hwy-card-expand-duration: var(--hwy-motion-card-expand);--hwy-panel-radius: var(--hwy-radius-panel);--hwy-panel-width: 420px;--hwy-panel-min-width: 360px;--hwy-panel-max-width: 440px;--hwy-panel-padding: 22px;--hwy-panel-min-main-width: 640px;--hwy-panel-duration: var(--hwy-motion-panel);--hwy-action-control-height: 40px;--hwy-action-group-gap: 8px;--hwy-action-section-gap: 16px;--hwy-header-height: 64px}:root[data-hwy-shape=square]{--hwy-radius-small: 4px;--hwy-radius-control: 4px;--hwy-radius-card: 6px;--hwy-radius-card-emphasis: 6px;--hwy-radius-panel: 8px;--hwy-radius-modal: 8px}:root{--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-caption: 12px;--font-body: 14px;--font-section: 16px;--font-title: 24px;--font-stat: 28px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--radius-sm: 6px;--radius-control: 8px;--radius-panel: 12px;--bg: #f7f8f9;--surface: #fff;--surface-subtle: #f1f3f4;--hover: var(--hwy-interaction-hover-surface);--selected: var(--hwy-interaction-selected-surface);--text: #202a29;--text-secondary: #616c6a;--text-muted: var(--hwy-text-tertiary);--border: #e5e9e7;--input-border: #bac3bf;--primary: #263e35;--focus: var(--hwy-focus-ring-color);--success: var(--hwy-status-success);--success-bg: var(--hwy-status-success-surface);--warning: var(--hwy-status-warning-text);--warning-bg: var(--hwy-status-warning-surface);--error: var(--hwy-status-danger);--error-bg: var(--hwy-status-danger-surface);--info: var(--hwy-status-info);--info-bg: var(--hwy-status-info-surface);--shadow-float: 0 8px 24px rgb(15 23 42 / 8%);--duration-fast: var(--hwy-motion-hover);--duration-base: var(--hwy-motion-tab);--duration-panel: var(--hwy-motion-panel);--control-height: 36px;--nav-width: 196px;--header-height: var(--hwy-header-height);--hwy-progress-task-column-width: 280px;--hwy-progress-min-timeline-width: 600px;--hwy-progress-task-row-height: 58px}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);color:var(--text);background:var(--bg);font-size:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}button,a{transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}:focus-visible{outline:var(--hwy-focus-ring-width) solid var(--focus)!important;outline-offset:var(--hwy-focus-ring-offset)}h1,h2,h3,p{margin:0}h1{font-size:var(--font-title);line-height:1.4;font-weight:600;letter-spacing:-.6px}h2{font-size:var(--font-section);font-weight:600}h3{font-size:15px;font-weight:600}svg{flex-shrink:0;stroke-width:1.65;vertical-align:middle}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-60px;left:16px;z-index:2000;background:#fff;padding:8px 16px}.skip-link:focus{top:8px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:var(--text-muted);margin-bottom:8px;font-weight:600}.ui-note{color:var(--text-secondary);font-size:12px;line-height:1.8}.ui-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-panel);padding:var(--space-6)}.ui-icon-button{width:var(--hwy-icon-action-size);height:var(--hwy-icon-action-size);padding:0;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center}.ui-stat{display:flex;flex-direction:column;gap:5px}.ui-stat>span{color:var(--text-secondary);font-size:13px}.ui-stat strong{font-size:var(--font-stat);font-weight:600;line-height:1.35;font-variant-numeric:tabular-nums}.ui-stat small{color:var(--text-muted)}.ui-status{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:var(--radius-sm);font-size:12px;line-height:18px;background:var(--surface-subtle);color:var(--text-secondary);white-space:nowrap}.ui-status>span{height:5px;width:5px;border-radius:50%;background:currentColor}.ui-status--success{color:var(--success);background:var(--success-bg)}.ui-status--warning{color:var(--warning);background:var(--warning-bg)}.ui-status--error{color:var(--error);background:var(--error-bg)}.ui-status--info{color:var(--info);background:var(--info-bg)}.ui-empty{padding:72px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}.ui-empty-icon{width:56px;height:56px;background:var(--surface-subtle);border-radius:var(--radius-panel);display:grid;place-items:center;color:var(--text-muted);margin-bottom:6px}.ui-empty p{color:var(--text-secondary);max-width:390px;font-size:13px}.ui-empty h3{font-size:16px}.ui-empty .button-row{margin-top:10px}.ui-loading{padding:24px;display:flex;justify-content:center;align-items:center;gap:10px;color:var(--text-secondary);font-size:13px}.ui-spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ui-table-scroll{overflow-x:auto;max-width:100%}.ui-table{border-collapse:collapse;width:100%;text-align:left;white-space:nowrap;font-size:13px}.ui-table th{font-weight:500;color:var(--text-secondary);background:var(--bg)}.ui-table td,.ui-table th{padding:12px 16px;border-bottom:1px solid var(--border)}.ui-table tbody tr:hover{background:var(--bg)}.ui-table tr:last-child td{border-bottom:0}.page-container{max-width:1200px;margin:0 auto}.dev-ui-kit{padding:40px 24px 64px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}.page-heading p{color:var(--text-secondary);margin-top:10px;font-size:13px}.placeholder-surface{background:#fff;border:1px solid var(--border);border-radius:var(--radius-panel);margin-bottom:20px;min-height:380px;display:grid;place-items:center}.button-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ui-action-layout{display:flex;align-items:center;justify-content:space-between;gap:var(--hwy-action-section-gap);min-width:0}.ui-action-group{display:flex;align-items:center;gap:var(--hwy-action-group-gap);min-width:0;flex-wrap:wrap}.ui-action-group--end{margin-left:auto;justify-content:flex-end}.ui-action-group>.ant-btn{min-height:var(--hwy-action-control-height);height:var(--hwy-action-control-height)}@media(max-width:767px){.ui-action-layout{align-items:stretch;flex-direction:column}.ui-action-group--end{margin-left:0;justify-content:flex-start}}.route-error{padding:60px}.route-error p{margin:16px 0}.route-error a{text-decoration:underline}.ant-drawer-body{padding:24px!important}.ant-modal .ant-modal-title,.ant-drawer .ant-drawer-title{font-size:16px!important}.ant-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background-color var(--hwy-motion-hover) var(--hwy-motion-easing-standard),color var(--hwy-motion-hover) var(--hwy-motion-easing-standard),border-color var(--hwy-motion-hover) var(--hwy-motion-easing-standard),transform var(--hwy-motion-press) var(--hwy-motion-easing-standard)}.ant-btn:not(:disabled):active{transform:scale(var(--hwy-motion-press-scale))}.ant-btn:focus-visible,.ant-input:focus-visible,.ant-input-affix-wrapper:focus-within{outline:var(--hwy-focus-ring-width) solid var(--hwy-focus-ring-color)!important;outline-offset:var(--hwy-focus-ring-offset)!important}.ant-input::placeholder{color:var(--text-muted)}.ant-input-affix-wrapper .ant-input:focus-visible{outline:none!important}.hwy-tabs.ant-tabs .ant-tabs-nav .ant-tabs-tab{height:var(--hwy-tab-height);padding:0 var(--hwy-tab-horizontal-padding);border-radius:var(--hwy-tab-radius);font-size:var(--hwy-tab-font-size);font-weight:var(--hwy-tab-font-weight)}.hwy-tabs.ant-tabs .ant-tabs-tab-btn{transition:color var(--hwy-motion-hover) var(--hwy-motion-easing-standard)}.hwy-tabs.ant-tabs .ant-tabs-tab.ant-tabs-tab-disabled{color:var(--hwy-tab-text-disabled)}.hwy-tabs.ant-tabs .ant-tabs-tab:has(.ant-tabs-tab-btn:focus-visible){outline:var(--hwy-focus-ring-width) solid var(--hwy-tab-focus-ring)!important;outline-offset:calc(-1 * var(--hwy-focus-ring-offset))!important}.hwy-tabs.ant-tabs .ant-tabs-tab-btn:focus-visible{outline:none!important}.hwy-tabs.ant-tabs .ant-tabs-ink-bar{height:var(--hwy-tab-indicator-height);border-radius:var(--hwy-tab-indicator-radius);background:var(--hwy-tab-indicator-color)}.hwy-tabs.ant-tabs .ant-tabs-ink-bar.ant-tabs-ink-bar-animated{transition:width var(--hwy-tab-indicator-duration) var(--hwy-motion-easing-standard),left var(--hwy-tab-indicator-duration) var(--hwy-motion-easing-standard),right var(--hwy-tab-indicator-duration) var(--hwy-motion-easing-standard)}.preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.preview-grid h2{margin-bottom:20px}.preview-wide{grid-column:1/-1}.preview-stack{display:flex;flex-direction:column;gap:18px}.preview-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.preview-grid label{font-size:13px;color:var(--text-secondary)}.preview-grid label>.ant-input,.preview-grid label>.ant-input-affix-wrapper{margin-top:8px}.preview-grid .ui-empty{padding:28px 20px}.preview-grid .ui-table-scroll{margin-top:16px}.preview-section-note{margin:-12px 0 18px;font-size:12px;color:var(--text-muted)}@media(max-width:767px){.dev-ui-kit{padding:28px 20px 48px}.preview-grid{grid-template-columns:1fr}.page-heading{gap:12px;align-items:flex-start}.page-heading h1{font-size:22px}.ant-btn,.ui-icon-button{min-height:var(--hwy-action-narrow-touch-target)}.ui-action-group>.ant-btn{min-height:var(--hwy-action-narrow-touch-target);height:var(--hwy-action-narrow-touch-target)}.ui-icon-button{width:var(--hwy-action-narrow-touch-target)}.ant-input-affix-wrapper{min-height:var(--hwy-action-narrow-touch-target)}.ui-stat strong{font-size:24px}.preview-stats{gap:12px}.ui-card{padding:20px}.ant-drawer-content-wrapper{max-width:100vw!important}.ui-empty{padding:48px 16px}.page-heading p{max-width:32ch}}@media(prefers-reduced-motion:reduce){.hwy-tabs.ant-tabs .ant-tabs-ink-bar.ant-tabs-ink-bar-animated,.hwy-tabs.ant-tabs .ant-tabs-tab-btn{transition:none!important}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.ui-tooltip-target{display:inline-flex;align-items:center;justify-content:center;background:none;border:0;color:var(--text-secondary);width:var(--hwy-icon-action-size);height:var(--hwy-icon-action-size);border-radius:var(--hwy-radius-control)}.ui-tooltip-target:hover{background:var(--hover)}.initial-loading{min-height:100dvh;display:grid;place-items:center;color:var(--text-muted);font-size:13px}.preview-grid>*{min-width:0}.preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:767px){.preview-grid{grid-template-columns:minmax(0,1fr)}}
