:root{--color-blue-50:#f2f7ff;--color-blue-100:#e6f0ff;--color-blue-200:#cfe1ff;--color-blue-300:#a9c8ff;--color-blue-400:#78a8f5;--color-blue-500:#4a90e2;--color-blue-600:#3b7edb;--color-blue-700:#2f6bc2;--color-blue-800:#25549a;--color-blue-900:#1a3d70;--color-gray-0:#fff;--color-gray-25:#fcfcfd;--color-gray-50:#f8f9fb;--color-gray-100:#f1f3f5;--color-gray-200:#e6eaf0;--color-gray-300:#d5dce5;--color-gray-400:#aeb8c5;--color-gray-500:#7e8a9a;--color-gray-600:#5f6b7a;--color-gray-700:#46515e;--color-gray-800:#303a46;--color-gray-900:#1f2730;--color-success-50:#ecfdf3;--color-success-100:#d1fadf;--color-success-500:#12b76a;--color-success-600:#039855;--color-warning-50:#fff7ed;--color-warning-100:#ffedd5;--color-warning-500:#f59e0b;--color-warning-600:#d97706;--color-danger-50:#fef3f2;--color-danger-100:#fee4e2;--color-danger-500:#f04438;--color-danger-600:#d92d20;--color-info-50:#f0f9ff;--color-info-100:#e0f2fe;--color-info-500:#0ea5e9;--color-info-600:#0284c7;--bg-page:var(--color-gray-0);--bg-surface:var(--color-gray-0);--bg-subtle:var(--color-gray-50);--bg-accent:var(--color-blue-50);--bg-brand:var(--color-blue-500);--text-primary:var(--color-gray-900);--text-secondary:var(--color-gray-600);--text-tertiary:var(--color-gray-500);--text-inverse:var(--color-gray-0);--text-brand:var(--color-blue-600);--border-default:var(--color-gray-200);--border-muted:var(--color-gray-100);--border-strong:var(--color-gray-300);--border-brand:var(--color-blue-400);--icon-default:var(--color-gray-500);--icon-subtle:var(--color-gray-400);--icon-brand:var(--color-blue-500);--icon-success:var(--color-success-500);--action-primary-bg:var(--color-blue-500);--action-primary-bg-hover:var(--color-blue-600);--action-primary-text:var(--color-gray-0);--action-secondary-bg:var(--color-gray-0);--action-secondary-border:var(--color-blue-200);--action-secondary-text:var(--color-blue-600);--state-success:var(--color-success-500);--state-warning:var(--color-warning-500);--state-danger:var(--color-danger-500);--state-info:var(--color-info-500);--color-success:var(--color-success-500);--color-warning:var(--color-warning-500);--color-danger:var(--color-danger-500);--color-brand:var(--color-blue-500);--color-border:var(--border-default);--font-sans:"LINE Seed JP", "Hiragino Sans", "Yu Gothic UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--font-size-xs:11px;--font-size-sm:12px;--font-size-md:14px;--font-size-lg:16px;--font-size-xl:20px;--font-size-2xl:24px;--font-size-4xl:32px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.57;--line-height-relaxed:1.7;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--radius-none:0;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;--shadow-xs:0 1px 2px #1018280a;--shadow-sm:0 2px 6px #1018280f;--shadow-md:0 4px 12px #10182814;--shadow-lg:0 8px 24px #1018281f;--border-width-none:0;--border-width-thin:1px;--border-width-thick:2px;--icon-size-xs:12px;--icon-size-sm:16px;--icon-size-md:20px;--icon-size-lg:24px;--layout-sidebar-width:220px;--layout-rail-width:300px;--layout-content-max-width:1440px;--layout-page-padding-x:24px;--layout-page-padding-y:20px;--layout-section-gap:24px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.3s cubic-bezier(.4, 0, .2, 1);--transition-bounce:.5s cubic-bezier(.34, 1.56, .64, 1);--btn-primary-height:40px;--btn-primary-padding-x:16px;--btn-primary-radius:var(--radius-md);--btn-primary-bg:var(--action-primary-bg);--btn-primary-bg-hover:var(--action-primary-bg-hover);--btn-primary-text:var(--action-primary-text);--btn-secondary-height:40px;--btn-secondary-padding-x:16px;--btn-secondary-radius:var(--radius-md);--btn-secondary-bg:var(--action-secondary-bg);--btn-secondary-border:var(--action-secondary-border);--btn-secondary-text:var(--action-secondary-text);--sidebar-item-height:36px;--sidebar-item-padding-x:12px;--sidebar-item-gap:8px;--sidebar-item-radius:var(--radius-md);--sidebar-text-default:var(--text-secondary);--sidebar-text-active:var(--text-inverse);--sidebar-bg-active:var(--bg-brand);--sidebar-icon-default:var(--icon-default);--progress-track-height:4px;--progress-track-color:var(--color-gray-200);--progress-fill-color:var(--color-blue-500);--progress-node-size:8px;--step-row-min-height:64px;--step-row-padding-y:12px;--step-row-padding-x:8px;--step-row-border-color:var(--border-default);--step-active-bg:var(--bg-accent);--help-card-bg:var(--color-blue-500);--help-card-text:var(--text-inverse);--help-card-radius:var(--radius-lg);--help-card-padding:var(--space-4);--help-card-shadow:var(--shadow-sm);--video-card-bg:var(--bg-surface);--video-card-border:var(--border-default);--video-card-radius:var(--radius-lg);--video-card-padding:var(--space-3);--video-card-thumbnail-radius:var(--radius-md)}.dark{--bg-page:var(--color-gray-900);--bg-surface:var(--color-gray-800);--bg-subtle:var(--color-gray-700);--bg-accent:#1a3d70;--text-primary:var(--color-gray-50);--text-secondary:var(--color-gray-400);--text-tertiary:var(--color-gray-500);--border-default:var(--color-gray-700);--border-muted:var(--color-gray-800);--border-strong:var(--color-gray-600)}
.hover-lift{transition:transform var(--transition-normal), box-shadow var(--transition-normal)}.hover-lift:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.hover-lift:active{box-shadow:var(--shadow-xs);transform:translateY(1px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}.animate-slide-up{animation:slideUp .5s var(--transition-bounce) forwards}.animate-scale-in{animation:.3s ease-out forwards scaleIn}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;font-family:var(--font-sans);font-size:var(--font-size-md);line-height:var(--line-height-normal);background-color:var(--bg-page);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}html{scroll-behavior:smooth}a{color:inherit;text-decoration:none}input,button,textarea,select{font:inherit}fieldset{border:0;min-width:0}legend{padding:0}::selection{background-color:var(--color-blue-100);color:var(--color-blue-900)}a:focus-visible,button:focus-visible,[role=button]:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--color-blue-400);outline-offset:2px}
.btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:inherit;font-size:13px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;border:none;line-height:18px;text-decoration:none;display:inline-flex}.btn:focus-visible{outline:2px solid var(--color-blue-400);outline-offset:2px}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{height:var(--btn-primary-height);padding:0 var(--btn-primary-padding-x);border-radius:var(--btn-primary-radius);background:linear-gradient(180deg, var(--color-blue-500) 0%, var(--color-blue-600) 100%);color:var(--btn-primary-text);box-shadow:var(--shadow-xs), inset 0 1px 0 #ffffff1a}.btn-primary:hover{background:linear-gradient(180deg, var(--color-blue-600) 0%, var(--color-blue-700) 100%);box-shadow:var(--shadow-sm), inset 0 1px 0 #ffffff1a;transform:translateY(-1px)}.btn-primary:active{background:var(--color-blue-700);box-shadow:var(--shadow-xs);transform:translateY(0)}.btn-secondary{height:var(--btn-secondary-height);padding:0 var(--btn-secondary-padding-x);border-radius:var(--btn-secondary-radius);background-color:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:var(--border-width-thin) solid var(--border-default);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background-color:var(--bg-subtle);border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-secondary:active{background-color:var(--color-gray-100);transform:translateY(0)}.btn-ghost{height:var(--btn-primary-height);padding:0 var(--btn-primary-padding-x);border-radius:var(--btn-primary-radius);color:var(--text-secondary);background-color:#0000}.btn-ghost:hover{background-color:var(--bg-subtle);color:var(--text-primary)}.btn-danger{height:var(--btn-primary-height);padding:0 var(--btn-primary-padding-x);border-radius:var(--btn-primary-radius);background:linear-gradient(180deg, var(--color-danger-500) 0%, var(--color-danger-600) 100%);color:var(--text-inverse);box-shadow:var(--shadow-xs)}.btn-danger:hover{background:var(--color-danger-600);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-warning{height:var(--btn-primary-height);padding:0 var(--btn-primary-padding-x);border-radius:var(--btn-primary-radius);background:linear-gradient(180deg, var(--color-warning-500) 0%, var(--color-warning-600) 100%);color:var(--text-inverse);box-shadow:var(--shadow-xs)}.btn-warning:hover{background:var(--color-warning-600);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-outline{height:var(--btn-secondary-height);padding:0 var(--btn-secondary-padding-x);border-radius:var(--btn-secondary-radius);color:var(--btn-secondary-text);border:var(--border-width-thin) solid var(--border-default);background-color:#0000}.btn-outline:hover{background-color:var(--bg-subtle);border-color:var(--border-strong);transform:translateY(-1px)}.btn-outline:active{background-color:var(--color-gray-100);transform:translateY(0)}.btn-sm{height:32px;padding:0 var(--space-3);font-size:var(--font-size-sm)}.btn-lg{height:48px;padding:0 var(--space-6);font-size:var(--font-size-lg);border-radius:var(--radius-lg)}.btn-icon{width:var(--btn-primary-height);height:var(--btn-primary-height);border-radius:var(--radius-md);color:var(--icon-default);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-icon:hover{background-color:var(--bg-subtle);color:var(--text-primary)}.btn-loading{color:#0000;position:relative}.btn-loading:after{content:"";border-radius:var(--radius-full);border:2px solid;border-right-color:#0000;width:16px;height:16px;animation:.6s linear infinite btn-spin;position:absolute}.btn-primary.btn-loading:after{border-color:#ffffff4d #0000 #ffffff4d #ffffff4d}@keyframes btn-spin{to{transform:rotate(360deg)}}
.sidebar{width:var(--layout-sidebar-width);background-color:var(--bg-surface);border-right:var(--border-width-thin) solid var(--border-default);height:100vh;padding:var(--space-4) 0;z-index:100;flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.sidebar-brand{padding:var(--space-2) var(--space-4);margin-bottom:var(--space-5);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--text-primary);align-items:center;gap:var(--space-3);letter-spacing:-.02em;display:flex}.sidebar-brand-mark{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--color-blue-500), var(--color-blue-700));color:#fff;width:32px;height:32px;font-size:var(--font-size-md);font-weight:var(--font-weight-bold);flex-shrink:0;justify-content:center;align-items:center;display:flex;box-shadow:0 2px 8px #4a90e24d}.sidebar-nav{padding:0 var(--space-2);flex-direction:column;flex:1;gap:2px;display:flex;overflow-y:auto}.sidebar-section-label{padding:var(--space-4) var(--sidebar-item-padding-x) var(--space-1);font-size:10px;font-weight:var(--font-weight-bold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em}.sidebar-item{align-items:center;gap:var(--space-3);height:var(--sidebar-item-height);padding:0 var(--sidebar-item-padding-x);border-radius:var(--sidebar-item-radius);font-size:13px;font-weight:var(--font-weight-medium);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;width:100%;text-decoration:none;display:flex}.sidebar-item:hover{background-color:var(--bg-subtle);color:var(--text-primary)}.sidebar-item[aria-current=page],.sidebar-item.active{background-color:var(--bg-accent);color:var(--text-brand);font-weight:var(--font-weight-semibold)}.sidebar-item[aria-current=page] .sidebar-item-icon,.sidebar-item.active .sidebar-item-icon{color:var(--text-brand)}.sidebar-item:disabled,.sidebar-item[aria-disabled=true]{opacity:.4;cursor:not-allowed;pointer-events:none}.sidebar-item-icon{width:18px;height:18px;color:var(--icon-subtle);transition:color var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-item:hover .sidebar-item-icon{color:var(--text-primary)}.sidebar-item-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-brand);background-color:var(--bg-accent);border-radius:var(--radius-full);margin-left:auto;padding:2px 6px}.sidebar-footer{padding:var(--space-3) var(--space-2) 0;border-top:var(--border-width-thin) solid var(--border-muted);margin-top:auto}.org-switcher{padding:0 var(--space-2);margin-bottom:var(--space-3)}.org-switcher-btn{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:var(--border-width-thin) solid var(--border-default);background:var(--bg-surface);cursor:pointer;transition:all var(--transition-fast);font-size:13px;font-weight:var(--font-weight-semibold);color:var(--text-primary);text-align:left;display:flex}.org-switcher-btn:hover{background:var(--bg-subtle);border-color:var(--border-strong)}.org-switcher-icon{border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--color-blue-500), var(--color-blue-700));color:#fff;width:24px;height:24px;font-size:11px;font-weight:var(--font-weight-bold);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.org-switcher-icon--favicon{background:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);padding:2px}.org-switcher-icon img{object-fit:contain;width:100%;height:100%}.org-switcher-name{flex:1;min-width:0}.org-switcher-chevron{color:var(--icon-subtle)}.org-switcher-dropdown{top:calc(100% + var(--space-1));background:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:200;padding:var(--space-1);position:absolute;left:0;right:0}.org-switcher-dropdown-label{padding:var(--space-2) var(--space-3) var(--space-1);font-size:10px;font-weight:var(--font-weight-bold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em}.org-switcher-option{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;font-size:13px;font-weight:var(--font-weight-medium);color:var(--text-secondary);text-align:left;transition:all var(--transition-fast);background:0 0;border:none;text-decoration:none;display:flex}.org-switcher-option:hover{background:var(--bg-subtle);color:var(--text-primary)}.org-switcher-option-icon{border-radius:var(--radius-sm);background:var(--bg-subtle);width:22px;height:22px;color:var(--text-secondary);font-size:10px;font-weight:var(--font-weight-bold);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.org-switcher-option-icon--favicon{background:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);padding:2px}.org-switcher-option-icon img{object-fit:contain;width:100%;height:100%}.org-switcher-add{background:var(--bg-accent);color:var(--text-brand);font-size:14px}.org-switcher-divider{background:var(--border-muted);height:1px;margin:var(--space-1) var(--space-2)}
.progress-bar{width:100%;height:var(--progress-track-height);background-color:var(--progress-track-color);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{background-color:var(--progress-fill-color);border-radius:var(--radius-full);height:100%;transition:width var(--transition-normal)}.progress-summary{align-items:center;gap:var(--space-6);padding:var(--space-6);display:flex}.progress-value{font-size:var(--font-size-4xl);line-height:40px;font-weight:var(--font-weight-bold);color:var(--text-primary);flex-shrink:0}.progress-value-suffix{font-size:var(--font-size-xl);color:var(--text-tertiary);font-weight:var(--font-weight-medium)}.progress-track-container{gap:var(--space-2);flex-direction:column;flex:1;display:flex}.progress-milestone-track{width:100%;height:var(--progress-track-height);background-color:var(--progress-track-color);border-radius:var(--radius-full);position:relative}.progress-milestone-fill{background-color:var(--progress-fill-color);border-radius:var(--radius-full);height:100%;transition:width var(--transition-normal);position:absolute;top:0;left:0}.progress-milestone-nodes{margin-top:calc(-1 * (var(--progress-node-size) / 2 + var(--progress-track-height) / 2));justify-content:space-between;display:flex;position:relative}.progress-milestone-node{width:var(--progress-node-size);height:var(--progress-node-size);border-radius:var(--radius-full);background-color:var(--progress-track-color);border:var(--border-width-thick) solid var(--bg-surface);z-index:1;position:relative}.progress-milestone-node.completed{background-color:var(--progress-fill-color)}.progress-milestone-node.current{background-color:var(--progress-fill-color);box-shadow:0 0 0 3px var(--color-blue-100)}.progress-milestone-labels{margin-top:var(--space-2);justify-content:space-between;display:flex}.progress-milestone-label{font-size:var(--font-size-xs);color:var(--text-tertiary);text-align:center}.progress-circle{justify-content:center;align-items:center;display:inline-flex;position:relative}.progress-circle-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);position:absolute}
.step-list{flex-direction:column;display:flex}.step-item{align-items:center;gap:var(--space-3);min-height:var(--step-row-min-height);padding:var(--step-row-padding-y) var(--step-row-padding-x);border-bottom:var(--border-width-thin) solid var(--step-row-border-color);transition:background-color var(--transition-fast);cursor:pointer;display:flex}.step-item:last-child{border-bottom:none}.step-item:hover{background-color:var(--bg-subtle)}.step-item.in-progress,.step-item[aria-current=step]{background-color:var(--step-active-bg)}.step-item.completed{opacity:.85}.step-item.locked{opacity:.45;cursor:not-allowed;pointer-events:none}.step-status{border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.step-status-not-started{border:var(--border-width-thick) solid var(--color-gray-300)}.step-status-in-progress{border:var(--border-width-thick) solid var(--color-blue-500);background-color:var(--color-blue-50)}.step-status-in-progress:after{content:"";border-radius:var(--radius-full);background-color:var(--color-blue-500);width:8px;height:8px}.step-status-completed{background-color:var(--color-success-500);color:var(--text-inverse)}.step-status-locked{border:var(--border-width-thick) solid var(--color-gray-200);background-color:var(--color-gray-100);color:var(--color-gray-400)}.step-index{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-tertiary);text-align:center;flex-shrink:0;min-width:20px}.step-content{flex:1;min-width:0}.step-title{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--text-primary);line-height:22px}.step-item.completed .step-title{color:var(--text-secondary)}.step-subtitle{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-top:2px;line-height:18px}.step-meta{align-items:center;gap:var(--space-3);flex-shrink:0;display:flex}.step-metric{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-brand)}.step-badge-recommended{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-blue-600);background-color:var(--color-blue-50);border-radius:var(--radius-full);padding:2px 8px}.step-help{width:var(--icon-size-sm);height:var(--icon-size-sm);color:var(--icon-subtle);cursor:help;transition:color var(--transition-fast)}.step-help:hover{color:var(--icon-default)}
.card{background-color:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-fast), border-color var(--transition-fast)}.card-header{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);line-height:24px}.card-body{font-size:var(--font-size-md);color:var(--text-secondary);line-height:22px}.card-footer{margin-top:var(--space-4);padding-top:var(--space-3);border-top:var(--border-width-thin) solid var(--border-muted)}.card-help{background:linear-gradient(135deg, var(--color-blue-500), var(--color-blue-700));color:var(--help-card-text);border-radius:var(--help-card-radius);padding:var(--help-card-padding);border:none;box-shadow:0 4px 16px #4a90e240}.card-help .card-title{color:var(--text-inverse)}.card-help .card-body{color:#ffffffd9}.card-help .btn{color:var(--text-inverse);border:var(--border-width-thin) solid #ffffff4d;background-color:#fff3}.card-help .btn:hover{background-color:#ffffff4d}.card-video{background-color:var(--video-card-bg);border:var(--border-width-thin) solid var(--video-card-border);border-radius:var(--video-card-radius);padding:var(--video-card-padding);overflow:hidden}.card-video-thumbnail{aspect-ratio:16/9;border-radius:var(--video-card-thumbnail-radius);background-color:var(--bg-subtle);width:100%;margin-bottom:var(--space-3);overflow:hidden}.card-video-thumbnail img,.card-video-thumbnail video{object-fit:cover;width:100%;height:100%}.card-video-step{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-brand);margin-bottom:var(--space-1)}.card-video-title{font-size:13px;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-1);line-height:18px}.card-video-body{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:18px}.card-stat{background-color:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-lg);padding:var(--space-5);position:relative;overflow:hidden}.card-stat:before{content:"";background:linear-gradient(90deg, var(--color-blue-400), var(--color-blue-200));opacity:0;height:3px;transition:opacity var(--transition-fast);position:absolute;top:0;left:0;right:0}.card-stat:hover:before{opacity:1}.card-stat-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-tertiary);letter-spacing:.01em}.card-stat-value{font-size:28px;font-weight:var(--font-weight-bold);color:var(--text-primary);letter-spacing:-.02em;line-height:36px}.card-stat-delta{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-top:var(--space-1)}.card-stat-delta.positive{color:var(--state-success)}.card-stat-delta.negative{color:var(--state-danger)}.card.border-success{border-color:var(--color-success-100)}.card.border-warning{border-color:var(--color-warning-100)}.card.border-danger{border-color:var(--color-danger-100)}.card.border-info{border-color:var(--color-info-100)}
.app-shell{background-color:var(--bg-subtle);min-height:100vh;display:flex}.app-shell-main{margin-left:var(--layout-sidebar-width);flex-direction:column;flex:1;min-width:0;display:flex}.app-shell-content{max-width:var(--layout-content-max-width);padding:var(--space-8) var(--space-6);flex:1}.app-shell-body{flex:1;min-height:0;display:flex}.app-shell-center{padding:var(--layout-page-padding-y) var(--layout-page-padding-x);flex:1;min-width:0;overflow-y:auto}.app-shell-rail{width:var(--layout-rail-width);border-left:var(--border-width-thin) solid var(--border-default);padding:var(--layout-page-padding-y) var(--layout-page-padding-x);background-color:var(--bg-surface);flex-shrink:0;overflow-y:auto}.app-shell-topbar{height:56px;padding:0 var(--layout-page-padding-x);border-bottom:var(--border-width-thin) solid var(--border-default);background-color:var(--bg-surface);justify-content:space-between;align-items:center;display:flex}.app-shell-topbar-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.section{margin-bottom:var(--layout-section-gap)}.section-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);line-height:24px}.section-subtitle{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-top:var(--space-1)}.sidebar-toggle{display:none}@media (max-width:768px){.sidebar{transition:transform var(--transition-normal);z-index:200;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-toggle{top:var(--space-3);left:var(--space-3);z-index:210;background-color:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-md);width:40px;height:40px;color:var(--text-secondary);box-shadow:var(--shadow-sm);cursor:pointer;justify-content:center;align-items:center;display:flex;position:fixed}.sidebar-backdrop{z-index:190;background-color:#1f273066;position:fixed;inset:0}.app-shell-main{margin-left:0}.app-shell-content{padding:var(--space-4)}.app-shell-main .app-topbar{padding-left:calc(var(--space-3) + 48px)}.app-shell-rail{display:none}}
.badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);white-space:nowrap;letter-spacing:.01em;align-items:center;gap:4px;padding:3px 10px;line-height:16px;display:inline-flex}.badge-default{background-color:var(--color-gray-100);color:var(--color-gray-600)}.badge-brand{background-color:var(--color-blue-50);color:var(--color-blue-700)}.badge-success{background-color:var(--color-success-50);color:var(--color-success-600)}.badge-warning{background-color:var(--color-warning-50);color:var(--color-warning-600)}.badge-danger{background-color:var(--color-danger-50);color:var(--color-danger-600)}.badge-info{background-color:var(--color-info-50);color:var(--color-info-600)}.badge-dot:before{content:"";border-radius:var(--radius-full);background-color:currentColor;width:6px;height:6px}.tag{padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);background-color:var(--color-gray-100);color:var(--text-secondary);align-items:center;gap:4px;line-height:18px;display:inline-flex}.tag-remove{border-radius:var(--radius-sm);cursor:pointer;width:14px;height:14px;color:var(--color-gray-400);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.tag-remove:hover{background-color:var(--color-gray-200);color:var(--text-primary)}.notification-badge{background:var(--color-danger-500);color:#fff;border-radius:9999px;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;line-height:1;display:flex;position:absolute;top:-4px;right:-4px}
.form-label{font-size:13px;font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-1);line-height:18px;display:block}.form-label-optional{font-weight:var(--font-weight-regular);color:var(--text-tertiary)}.form-help{font-size:var(--font-size-sm);color:var(--text-tertiary);margin-top:var(--space-1);line-height:18px}.form-error{font-size:var(--font-size-sm);color:var(--state-danger);margin-top:var(--space-1);line-height:18px}.form-input,.form-textarea,.form-select{width:100%;height:40px;padding:0 var(--space-3);font-family:var(--font-sans);font-size:var(--font-size-md);color:var(--text-primary);background-color:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;line-height:22px}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-tertiary)}.form-input:hover,.form-textarea:hover,.form-select:hover{border-color:var(--border-strong)}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--color-blue-400);box-shadow:0 0 0 3px #4a90e21f}.form-input.error,.form-textarea.error,.form-select.error{border-color:var(--color-danger-500)}.form-input.error:focus,.form-textarea.error:focus,.form-select.error:focus{box-shadow:0 0 0 3px var(--color-danger-100)}.form-input:disabled,.form-textarea:disabled,.form-select:disabled{background-color:var(--bg-subtle);color:var(--text-tertiary);cursor:not-allowed}.form-textarea{height:auto;min-height:80px;padding:var(--space-2) var(--space-3);resize:vertical}.form-select{appearance:none;padding-right:var(--space-8);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%237E8A9A' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 6l3.5 4 3.5-4H4.5z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat}.form-checkbox,.form-radio{align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--font-size-md);color:var(--text-primary);line-height:22px;display:flex}.form-checkbox input[type=checkbox],.form-radio input[type=radio]{width:16px;height:16px;accent-color:var(--color-blue-500);cursor:pointer;margin:0}.form-input-sm,.form-select-sm{height:32px;font-size:var(--font-size-sm);padding:0 var(--space-2)}.form-select-sm{padding-right:var(--space-8)}.form-group{margin-bottom:var(--space-4)}.form-row{gap:var(--space-4);display:flex}.form-row>*{flex:1}.form-input-wrapper{position:relative}.form-input-icon{left:var(--space-3);width:var(--icon-size-sm);height:var(--icon-size-sm);color:var(--icon-default);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.form-input-wrapper .form-input{padding-left:calc(var(--space-3) + var(--icon-size-sm) + var(--space-2))}
.toast-container{top:var(--space-4);right:var(--space-4);z-index:1000;gap:var(--space-2);flex-direction:column;display:flex;position:fixed}.toast{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);background-color:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-lg);min-width:320px;max-width:420px;box-shadow:var(--shadow-lg);animation:.3s ease-out toast-slide-in;display:flex}.toast-icon{width:var(--icon-size-md);height:var(--icon-size-md);flex-shrink:0;margin-top:1px}.toast-content{flex:1;min-width:0}.toast-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--text-primary);line-height:22px}.toast-message{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:2px;line-height:18px}.toast-close{width:20px;height:20px;color:var(--icon-subtle);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.toast-close:hover{background-color:var(--bg-subtle);color:var(--icon-default)}.toast-success{border-left:3px solid var(--state-success)}.toast-success .toast-icon{color:var(--state-success)}.toast-warning{border-left:3px solid var(--state-warning)}.toast-warning .toast-icon{color:var(--state-warning)}.toast-danger{border-left:3px solid var(--state-danger)}.toast-danger .toast-icon{color:var(--state-danger)}.toast-info{border-left:3px solid var(--state-info)}.toast-info .toast-icon{color:var(--state-info)}@keyframes toast-slide-in{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.banner{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--font-size-md);line-height:22px;display:flex}.banner-icon{width:var(--icon-size-md);height:var(--icon-size-md);flex-shrink:0;margin-top:1px}.banner-content{flex:1}.banner-success{background-color:var(--color-success-50);color:var(--color-success-600);border:var(--border-width-thin) solid var(--color-success-100)}.banner-warning{background-color:var(--color-warning-50);color:var(--color-warning-600);border:var(--border-width-thin) solid var(--color-warning-100)}.banner-danger{background-color:var(--color-danger-50);color:var(--color-danger-600);border:var(--border-width-thin) solid var(--color-danger-100)}.banner-info{background-color:var(--color-info-50);color:var(--color-info-600);border:var(--border-width-thin) solid var(--color-info-100)}.tooltip-trigger{cursor:help;position:relative}.tooltip{padding:var(--space-1) var(--space-2);background-color:var(--color-gray-800);color:var(--text-inverse);font-size:var(--font-size-sm);border-radius:var(--radius-md);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-fast);z-index:500;line-height:18px;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.tooltip:after{content:"";border:4px solid #0000;border-top-color:var(--color-gray-800);position:absolute;top:100%;left:50%;transform:translate(-50%)}.tooltip-trigger:hover .tooltip,.tooltip-trigger:focus-visible .tooltip{opacity:1}
.table-container{width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--font-size-md);line-height:22px}.table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-tertiary);background-color:var(--bg-subtle);border-bottom:var(--border-width-thin) solid var(--border-default);white-space:nowrap;letter-spacing:.01em}.table td{padding:var(--space-3) var(--space-4);color:var(--text-primary);border-bottom:var(--border-width-thin) solid var(--border-muted);vertical-align:middle}.table tbody tr{transition:background-color var(--transition-fast)}.table tbody tr:hover{background-color:var(--color-blue-50)}.table tbody tr:last-child td{border-bottom:none}.table-bordered{border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-lg);overflow:hidden}.table-bordered th:not(:last-child),.table-bordered td:not(:last-child){border-right:var(--border-width-thin) solid var(--border-muted)}.table-compact th,.table-compact td{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm)}.table-empty{padding:var(--space-12) var(--space-4);text-align:center}.table-empty-icon{width:48px;height:48px;margin:0 auto var(--space-3);color:var(--icon-subtle)}.table-empty-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.table-empty-description{font-size:var(--font-size-md);color:var(--text-tertiary)}.row-actions-menu{z-index:50;background:var(--bg-surface,#fff);border:1px solid var(--border-default);border-radius:8px;flex-direction:column;gap:2px;min-width:180px;padding:6px;display:flex;box-shadow:0 8px 24px #1018281f}.row-actions-menu>*{text-align:left;border-radius:6px;justify-content:flex-start;width:100%;padding:6px 10px;font-size:13px;display:flex}.row-actions-menu>:hover{background:var(--bg-subtle)}@media (max-width:767px){.table .col-hide-mobile{display:none}}
.modal-overlay{z-index:1000;background-color:#1f273080;justify-content:center;align-items:center;animation:.2s ease-out modal-overlay-in;display:flex;position:fixed;inset:0}.modal{background-color:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);flex-direction:column;width:100%;max-width:480px;max-height:90vh;animation:.2s ease-out modal-scale-in;display:flex}.modal-lg{max-width:640px}.modal-sm{max-width:360px}.modal-header{padding:var(--space-5) var(--space-6);border-bottom:var(--border-width-thin) solid var(--border-muted);justify-content:space-between;align-items:center;display:flex}.modal-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.modal-close{width:32px;height:32px;color:var(--icon-default);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.modal-close:hover{background-color:var(--bg-subtle);color:var(--text-primary)}.modal-body{padding:var(--space-6);font-size:var(--font-size-md);color:var(--text-secondary);line-height:22px;overflow-y:auto}.modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:var(--border-width-thin) solid var(--border-muted);display:flex}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
.breadcrumb{align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);line-height:18px;display:flex}.breadcrumb-item{color:var(--text-tertiary);transition:color var(--transition-fast);text-decoration:none}.breadcrumb-item:hover{color:var(--text-brand)}.breadcrumb-item[aria-current=page]{color:var(--text-primary);font-weight:var(--font-weight-medium);pointer-events:none}.breadcrumb-separator{color:var(--color-gray-300);font-size:var(--font-size-xs)}.tabs{border-bottom:var(--border-width-thin) solid var(--border-default);gap:0;display:flex}.tab{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;display:flex}.tab:hover{color:var(--text-primary)}.tab[aria-selected=true],.tab.active{color:var(--text-brand);border-bottom-color:var(--color-blue-500);font-weight:var(--font-weight-semibold)}.tab:focus-visible{outline:2px solid var(--color-blue-400);outline-offset:-2px;border-radius:var(--radius-sm)}.tab-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-tertiary);background-color:var(--color-gray-100);border-radius:var(--radius-full);padding:1px 6px}.tab.active .tab-badge{color:var(--text-brand);background-color:var(--color-blue-50)}.tab-panel{padding-top:var(--space-4)}.pagination{align-items:center;gap:var(--space-1);display:flex}.pagination-item{min-width:32px;height:32px;padding:0 var(--space-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.pagination-item:hover{background-color:var(--bg-subtle);color:var(--text-primary)}.pagination-item[aria-current=page],.pagination-item.active{background-color:var(--color-blue-500);color:var(--text-inverse)}.pagination-item:disabled,.pagination-item[aria-disabled=true]{opacity:.4;cursor:not-allowed;pointer-events:none}.pagination-ellipsis{min-width:32px;height:32px;font-size:var(--font-size-sm);color:var(--text-tertiary);justify-content:center;align-items:center;display:flex}
.skeleton{background-color:var(--color-gray-100);border-radius:var(--radius-md);animation:1.5s ease-in-out infinite skeleton-pulse;display:block}.skeleton-text{border-radius:var(--radius-sm);height:1em}.skeleton-circle{border-radius:var(--radius-full)}.skeleton-text-group{gap:var(--space-2);flex-direction:column;display:flex}.skeleton-table{flex-direction:column;display:flex}.skeleton-table-row{gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:var(--border-width-thin) solid var(--border-default);grid-auto-columns:1fr;grid-auto-flow:column;align-items:center;display:grid}.skeleton-table-row:last-child{border-bottom:none}.skeleton-table-header{background-color:var(--bg-subtle)}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}
.search-trigger{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);color:var(--text-tertiary);background-color:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:inline-flex}.search-trigger:hover{color:var(--text-secondary);border-color:var(--border-strong,var(--border-default));background-color:var(--bg-subtle)}.search-trigger-kbd{padding:1px var(--space-1);font-size:var(--font-size-xs);color:var(--text-tertiary);background-color:var(--bg-subtle);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-sm);font-family:inherit}.command-palette-overlay{padding:15vh var(--space-4) var(--space-4);z-index:1100;background-color:#1f273066;justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.command-palette{background-color:var(--bg-surface);border-radius:var(--radius-lg);width:100%;max-width:560px;max-height:60vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.command-palette-input-wrap{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:var(--border-width-thin) solid var(--border-default);color:var(--text-tertiary);display:flex}.command-palette-input{font-size:var(--font-size-md);color:var(--text-primary);background:0 0;border:none;outline:none;flex:1}.command-palette-input::placeholder{color:var(--text-tertiary)}.command-palette-close{padding:2px var(--space-2);font-size:var(--font-size-xs);color:var(--text-tertiary);background-color:var(--bg-subtle);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-sm);cursor:pointer}.command-palette-results{padding:var(--space-2);overflow-y:auto}.command-palette-group-label{padding:var(--space-2) var(--space-3) var(--space-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-tertiary)}.command-palette-item{justify-content:space-between;align-items:baseline;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);color:var(--text-primary);text-align:left;border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;display:flex}.command-palette-item.is-active{background-color:var(--bg-subtle)}.command-palette-item-title{font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.command-palette-item-subtitle{font-size:var(--font-size-xs);color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:45%;overflow:hidden}.command-palette-empty{padding:var(--space-8) var(--space-4);text-align:center;font-size:var(--font-size-sm);color:var(--text-tertiary)}@media (max-width:768px){.search-trigger span,.search-trigger-kbd{display:none}.command-palette-overlay{padding-top:var(--space-16)}}
.dolphin-helper{bottom:var(--space-6);right:var(--space-6);z-index:1000;position:fixed}.dolphin-helper-button{cursor:pointer;transition:transform var(--transition-normal);filter:drop-shadow(0 4px 6px #0000001a);background:0 0;border:none;padding:0;display:block}.dolphin-helper-button:hover,.dolphin-helper-button:focus-visible{transform:scale(1.1)}.dolphin-helper-menu{margin-bottom:var(--space-2);min-width:240px;padding:var(--space-2);background-color:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);position:absolute;bottom:100%;right:0}.dolphin-helper-menu-title{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.dolphin-helper-menu-item{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);text-align:left;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast);background:0 0;border:none;flex-direction:column;gap:2px;display:flex}.dolphin-helper-menu-item:hover{background-color:var(--bg-subtle)}.dolphin-helper-menu-note{font-size:var(--font-size-xs);font-weight:var(--font-weight-regular);color:var(--text-tertiary)}
.flex{display:flex}.inline-flex{display:inline-flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-baseline{align-items:baseline}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.self-center{align-self:center}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.grid{display:grid}.grid-cols-1{grid-template-columns:1fr}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.m-0{margin:0}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.ml-1{margin-left:var(--space-1)}.ml-2{margin-left:var(--space-2)}.ml-3{margin-left:var(--space-3)}.mr-2{margin-right:var(--space-2)}.mr-4{margin-right:var(--space-4)}.mx-auto{margin-left:auto;margin-right:auto}.mx-2{margin-left:var(--space-2);margin-right:var(--space-2)}.p-0{padding:0}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.p-12{padding:var(--space-12)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.px-8{padding-left:var(--space-8);padding-right:var(--space-8)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.pt-1{padding-top:var(--space-1)}.pt-3{padding-top:var(--space-3)}.pt-4{padding-top:var(--space-4)}.pt-6{padding-top:var(--space-6)}.pb-1{padding-bottom:var(--space-1)}.pb-2{padding-bottom:var(--space-2)}.w-full{width:100%}.h-full{height:100%}.w-2{width:8px}.h-2{height:8px}.h-3{height:12px}.w-4{width:16px}.h-4{height:16px}.w-10{width:40px}.h-10{height:40px}.h-12{height:48px}.h-16{height:64px}.w-64{width:256px}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.text-display-lg{font-size:var(--font-size-4xl);line-height:40px;font-weight:var(--font-weight-bold)}.text-heading-lg{font-size:var(--font-size-2xl);line-height:32px;font-weight:var(--font-weight-bold)}.text-heading-md{font-size:var(--font-size-xl);line-height:28px;font-weight:var(--font-weight-bold)}.text-heading-sm{font-size:var(--font-size-lg);line-height:24px;font-weight:var(--font-weight-semibold)}.text-body-md{font-size:var(--font-size-md);line-height:22px;font-weight:var(--font-weight-regular)}.text-body-sm{font-size:var(--font-size-sm);line-height:18px;font-weight:var(--font-weight-regular)}.text-label-md{font-size:13px;line-height:18px;font-weight:var(--font-weight-semibold)}.text-label-sm{font-size:var(--font-size-sm);line-height:16px;font-weight:var(--font-weight-semibold)}.text-caption{font-size:var(--font-size-xs);line-height:16px;font-weight:var(--font-weight-regular)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-md)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:30px}.font-regular{font-weight:var(--font-weight-regular)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.font-normal{font-weight:var(--font-weight-regular)}.leading-none{line-height:1}.leading-tight{line-height:var(--line-height-tight)}.leading-normal{line-height:var(--line-height-normal)}.leading-loose{line-height:2}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-inverse{color:var(--text-inverse)}.text-brand{color:var(--text-brand)}.text-success{color:var(--state-success)}.text-warning{color:var(--state-warning)}.text-danger{color:var(--state-danger)}.text-info{color:var(--state-info)}.text-white{color:#fff}.text-main{color:var(--text-primary)}.text-muted{color:var(--text-secondary)}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.uppercase{text-transform:uppercase}.underline{text-decoration:underline}.underline-offset-8{text-underline-offset:8px}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.whitespace-pre-wrap{white-space:pre-wrap}.whitespace-nowrap{white-space:nowrap}.resize-none{resize:none}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.font-sans{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.font-serif{font-family:serif}.bg-page{background-color:var(--bg-page)}.bg-surface{background-color:var(--bg-surface)}.bg-subtle{background-color:var(--bg-subtle)}.bg-accent{background-color:var(--bg-accent)}.bg-brand{background-color:var(--bg-brand)}.bg-primary{background-color:var(--action-primary-bg)}.bg-primary-light{background-color:var(--bg-accent)}.bg-success-subtle{background-color:var(--color-success-50)}.bg-warning-subtle{background-color:var(--color-warning-50)}.bg-danger-subtle{background-color:var(--color-danger-50)}.bg-info-subtle{background-color:var(--color-info-50)}.bg-success{background-color:var(--color-success-500)}.bg-warning{background-color:var(--color-warning-500)}.bg-danger{background-color:var(--color-danger-500)}.bg-info{background-color:var(--color-info-500)}.bg-main{background-color:var(--bg-page)}.border{border:var(--border-width-thin) solid var(--border-default)}.border-strong{border:var(--border-width-thin) solid var(--border-strong)}.border-brand{border:var(--border-width-thin) solid var(--border-brand)}.border-b{border-bottom:var(--border-width-thin) solid var(--border-default)}.border-t{border-top:var(--border-width-thin) solid var(--border-default)}.border-r{border-right:var(--border-width-thin) solid var(--border-default)}.border-l{border-left:var(--border-width-thin) solid var(--border-default)}.border-none{border:none}.border-color{border-color:var(--border-default)}.border-main{border-color:var(--text-primary)}.border-success{border-color:var(--color-success-100)}.border-warning{border-color:var(--color-warning-100)}.border-danger{border-color:var(--color-danger-100)}.border-info{border-color:var(--color-info-100)}.divide-y>*+*{border-top:var(--border-width-thin) solid var(--border-default)}.rounded-none{border-radius:var(--radius-none)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.radius-none{border-radius:var(--radius-none)}.radius-sm{border-radius:var(--radius-sm)}.radius-md{border-radius:var(--radius-md)}.radius-lg{border-radius:var(--radius-lg)}.radius-xl{border-radius:var(--radius-xl)}.radius-2xl{border-radius:var(--radius-2xl)}.radius-full{border-radius:var(--radius-full)}.shadow-xs{box-shadow:var(--shadow-xs)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-none{box-shadow:none}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.list-none{margin:0;padding-left:0;list-style:none}.cursor-pointer{cursor:pointer}.cursor-help{cursor:help}.cursor-not-allowed{cursor:not-allowed}.transition-fast{transition:all var(--transition-fast)}.transition-normal{transition:all var(--transition-normal)}.accent-primary{accent-color:var(--action-primary-bg)}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{left:-9999px;top:var(--space-2);z-index:300;padding:var(--space-2) var(--space-4);background-color:var(--bg-surface);color:var(--text-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-md);font-size:var(--font-size-sm);position:absolute}.skip-link:focus{left:var(--space-2)}.glass{-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #ffffff4d}.login-page{background:linear-gradient(135deg, var(--bg-subtle) 0%, var(--color-blue-50) 100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:var(--bg-surface);border:var(--border-width-thin) solid var(--border-default);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:var(--space-10);text-align:center;width:100%;max-width:400px}.login-brand{justify-content:center;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.login-brand-mark{border-radius:var(--radius-lg);background:linear-gradient(135deg, var(--color-blue-500), var(--color-blue-700));color:#fff;width:40px;height:40px;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);justify-content:center;align-items:center;display:flex;box-shadow:0 4px 12px #4a90e24d}.quick-action-icon{border-radius:var(--radius-lg);width:40px;height:40px;font-size:18px;font-weight:var(--font-weight-bold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-dot{border-radius:var(--radius-full);flex-shrink:0;width:8px;height:8px;margin-top:6px}.hover\:bg-subtle:hover{background-color:var(--bg-subtle)}.hover\:bg-surface:hover{background-color:var(--bg-surface)}.hover\:bg-accent:hover{background-color:var(--bg-accent)}.hover\:text-main:hover{color:var(--text-primary)}.hover\:text-primary:hover,.hover\:text-brand:hover{color:var(--text-brand)}.hover\:text-danger:hover{color:var(--state-danger)}.hover\:border-primary:hover{border-color:var(--border-brand)}.focus\:outline-none:focus{outline:none}.focus\:border-primary:focus{border-color:var(--color-blue-400)}.focus\:ring-1:focus,.focus\:ring-primary:focus{box-shadow:0 0 0 3px var(--color-blue-100)}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:640px){.sm\:inline-block{display:inline-block}}@media (min-width:768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.md\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.md\:grid-cols-4{grid-template-columns:repeat(4,1fr)}.md\:p-8{padding:var(--space-8)}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:items-end{align-items:flex-end}.md\:w-32{width:128px}.md\:w-40{width:160px}.md\:mt-4{margin-top:var(--space-4)}.md\:self-center{align-self:center}}.inline-icon{vertical-align:-.125em;display:inline-block}

