:root{--color-grey-dark:#373f47;--color-primary:#373f47;--color-red:#e4002b;--color-accent:#e4002b;--color-accent-hover:#c4001f;--color-red-50:#fef2f2;--color-red-100:#fee2e2;--color-red-200:#fec5c5;--color-red-300:#fda4a4;--color-red-400:#fb7171;--color-red-500:#e4002b;--color-red-600:#c50024;--color-red-700:#a6001e;--color-red-800:#870018;--color-red-900:#680012;--color-grey-light:#d9d9d6;--color-white:#fff;--color-grey-1:#63666a;--color-grey-2:#a7a8aa;--color-grey-3:#b7b8ba;--color-grey-4:#d1d2d3;--color-grey-5:#e6e7e8;--color-grey-6:#f2f2f2;--color-grey-7:#f9f9f9;--color-background:#fff;--color-background-alt:#f9f9f9;--color-background-dark:#373f47;--color-surface:#fff;--color-surface-hover:#f9f9f9;--color-text-primary:#373f47;--color-text-secondary:#63666a;--color-text-tertiary:#a7a8aa;--color-text-inverse:#fff;--color-border:#e6e7e8;--color-border-light:#f2f2f2;--color-border-dark:#b7b8ba;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#e4002b;--color-info:#3b82f6;--color-success-bg:#f0fdf4;--color-warning-bg:#fffbeb;--color-error-bg:#fff1f2;--color-info-bg:#eff6ff;--font-family-primary:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-family-mono:"SF Mono", "Monaco", "Inconsolata", "Roboto Mono", "Courier New", monospace;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.025em;--spacing-xs:.25rem;--spacing-sm:.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--border-width:1px;--border-width-thick:2px;--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-2xl:32px;--radius-full:9999px;--glass-background:#ffffffb3;--glass-background-dark:#373f47b3;--glass-border:#fff3;--glass-blur:blur(10px);--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 12px 24px #0000001f;--shadow-xl:0 20px 40px #00000026;--shadow-2xl:0 25px 50px #00000040;--shadow-accent:0 8px 16px #e4002b4d;--shadow-inner:inset 0 2px 4px 0 #0000000f;--gradient-red:linear-gradient(135deg, #e4002b 0%, #ff4458 100%);--gradient-grey:linear-gradient(135deg, #373f47 0%, #4a5460 100%);--gradient-subtle:linear-gradient(180deg, #fff0 0%, #0000000d 100%);--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.2s cubic-bezier(.4, 0, .2, 1);--transition-slow:.3s cubic-bezier(.4, 0, .2, 1);--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070}.text-primary{color:var(--color-primary)}.text-muted{color:var(--color-text-secondary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-error{color:var(--color-error)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-lg{font-size:var(--font-size-lg)}.text-center{text-align:center}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.uppercase{text-transform:uppercase;letter-spacing:.05em}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nowrap{white-space:nowrap}.mono{font-family:var(--font-family-mono)}.m-0{margin:0}.p-0{padding:0}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.ml-sm{margin-left:var(--spacing-sm)}.ml-auto{margin-left:auto}.mr-sm{margin-right:var(--spacing-sm)}.py-sm{padding-block:var(--spacing-sm)}.py-md{padding-block:var(--spacing-md)}.py-lg{padding-block:var(--spacing-lg)}.pt-md{padding-top:var(--spacing-md)}.pt-lg{padding-top:var(--spacing-lg)}.px-sm{padding-inline:var(--spacing-sm)}.px-md{padding-inline:var(--spacing-md)}.pb-xs{padding-bottom:var(--spacing-xs)}.flex{display:flex}.inline-flex{display:inline-flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.shrink-0{flex-shrink:0}.min-w-0{min-width:0}.w-full{width:100%}.clickable{cursor:pointer}.border-t{border-top:1px solid var(--color-border)}.border-b{border-bottom:1px solid var(--color-border)}.rounded{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-full{border-radius:var(--radius-full)}.gradient-text{background:var(--gradient-red);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.relative{position:relative}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.bg-surface{background:var(--color-surface)}.bg-muted{background:var(--color-background-alt)}.border{border:1px solid var(--color-border)}.border-dashed{border:1px dashed var(--color-border)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.stack{flex-direction:column;display:flex}.stack-xs{gap:var(--spacing-xs)}.stack-sm{gap:var(--spacing-sm)}.stack-md{gap:var(--spacing-md)}.stack-lg{gap:var(--spacing-lg)}.row{align-items:center;display:flex}.row-xs{gap:var(--spacing-xs)}.row-sm{gap:var(--spacing-sm)}.row-md{gap:var(--spacing-md)}.row-lg{gap:var(--spacing-lg)}.spread{justify-content:space-between;align-items:center;display:flex}.center{justify-content:center;align-items:center;display:flex}.btn{justify-content:center;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;border:none;line-height:1.5;text-decoration:none;display:inline-flex}.btn>svg{flex-shrink:0;display:block}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--gradient-red);color:var(--color-white);box-shadow:var(--shadow-sm)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-accent)}.btn-secondary{background:var(--color-grey-dark);color:var(--color-white);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){background:var(--color-grey-1)}.btn-ghost{color:var(--color-text-primary);border:1px solid var(--color-border);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-border-dark)}.btn-danger{background-color:var(--color-red);color:var(--color-white)}.btn-danger:hover:not(:disabled){background-color:var(--color-red-700)}.btn-success{background-color:var(--color-success);color:var(--color-white)}.btn-success:hover:not(:disabled){background-color:#059669}.btn-warning{color:var(--color-white);background-color:#ff9800}.btn-warning:hover:not(:disabled){background-color:#f57c00}.btn-outline{color:var(--color-primary);border:1px solid var(--color-primary);background-color:#0000}.btn-outline:hover:not(:disabled){background-color:var(--color-primary);color:#fff}.btn-accent{background-color:var(--color-red);color:var(--color-white)}.btn-accent:hover:not(:disabled){background-color:var(--color-accent-hover)}.btn-primary:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn-danger:hover:not(:disabled),.btn-success:hover:not(:disabled),.btn-warning:hover:not(:disabled),.btn-accent:hover:not(:disabled){transform:translateY(-1px)}.btn-secondary:hover:not(:disabled),.btn-danger:hover:not(:disabled),.btn-success:hover:not(:disabled),.btn-warning:hover:not(:disabled),.btn-accent:hover:not(:disabled){box-shadow:var(--shadow-md)}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-danger:active:not(:disabled),.btn-success:active:not(:disabled),.btn-warning:active:not(:disabled),.btn-accent:active:not(:disabled){transform:translateY(0)}.btn-danger-text{color:var(--color-error)}.btn-danger-text:hover:not(:disabled){color:var(--color-red-700)}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-xs);min-height:32px}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--font-size-base);min-height:48px}.btn-icon{padding:var(--spacing-sm);min-width:36px;min-height:36px}.btn-xs{font-size:var(--font-size-xs);border-radius:var(--radius-sm);padding:2px 8px}.icon-btn{cursor:pointer;padding:var(--spacing-xs);color:var(--color-text-secondary);border-radius:var(--radius-sm);background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover:not(:disabled){color:var(--color-accent);background:var(--color-background)}.icon-btn:disabled{opacity:.3;cursor:default}.icon-btn.danger:hover:not(:disabled){color:var(--color-error);background:var(--color-error-bg)}.btn-add{align-items:center;gap:var(--spacing-xs);border:1px dashed var(--color-border);border-radius:var(--radius-sm);padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-accent);cursor:pointer;background:0 0;display:inline-flex}.btn-add:hover{background:color-mix(in srgb, var(--color-accent) 6%, transparent);border-color:var(--color-accent)}.card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md);transition:box-shadow var(--transition-base)}.card:hover{box-shadow:var(--shadow-lg)}.card-glass{background:var(--glass-background);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg)}.card-header{align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border);display:flex}.card-header h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.card-header p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.card-icon{border-radius:var(--radius-md);background:var(--gradient-red);width:48px;height:48px;color:var(--color-white);flex-shrink:0;justify-content:center;align-items:center;display:flex}.card-actions{gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);margin-top:var(--spacing-lg);justify-content:flex-end;display:flex}.card-grid{gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.card-grid.sm{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.card-grid.lg{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}.tag{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);white-space:nowrap;background:var(--color-grey-6);color:var(--color-text-secondary);padding:.15rem .5rem;display:inline-flex}.tag.pill{border-radius:var(--radius-full)}.tag.sm{padding:.1rem .35rem;font-size:.65rem}.tag.outline{background:0 0;border:1px solid}.meta-tag{background:var(--color-grey-5);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);align-items:center;padding:3px 10px;display:inline-flex}.labeled-select{align-items:center;gap:var(--spacing-sm);display:flex}.labeled-select label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap}.labeled-select .select-wrapper{align-items:center;display:flex;position:relative}.labeled-select .select-wrapper svg{pointer-events:none;color:var(--color-text-secondary);position:absolute;right:8px}.labeled-select .form-select{min-width:180px;padding-right:28px}.list-card{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-base), box-shadow var(--transition-base);display:flex}.list-card:hover{border-color:var(--color-accent);box-shadow:0 2px 8px #0000000f}.list-card-main{justify-content:space-between;align-items:center;gap:var(--spacing-md);flex:1;display:flex}.list-card-info{align-items:center;gap:var(--spacing-sm);display:flex}.list-card-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.tag.success{background:var(--color-success-bg);color:var(--color-success)}.tag.warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.tag.error{background:var(--color-error-bg);color:var(--color-error)}.tag.info{background:var(--color-info-bg);color:var(--color-info)}.tag.primary{background:color-mix(in srgb, var(--color-primary) 15%, transparent);color:var(--color-primary);border:1px solid color-mix(in srgb, var(--color-primary) 30%, transparent)}.tag.muted{background:var(--color-grey-6);color:var(--color-text-secondary)}.tag.type{text-transform:uppercase;letter-spacing:.03em;font-weight:var(--font-weight-semibold);background:var(--color-background);border:1px solid var(--color-border)}.tag.count{background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--radius-full);font-weight:var(--font-weight-semibold);padding:.1rem .45rem}.tag.count.subtle{border:none}.tag.draft{background:var(--color-warning-bg);color:var(--color-warning-text)}.tag.published,.tag.active{background:var(--color-success-bg);color:var(--color-success-text)}.tag.attention{background:var(--color-warning-bg);color:var(--color-warning-text)}.tag.attention.circle{border-radius:var(--radius-full);justify-content:center;width:24px;height:24px;padding:0}.form-group{margin-bottom:var(--spacing-lg)}.form-label{margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);display:block}.form-label.required:after,.form-label-required:after{content:" *";color:var(--color-error)}.input,.textarea,.select{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);font-family:var(--font-family-primary);color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all var(--transition-base)}.input:focus,.textarea:focus,.select:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #e4002b1a}.input:disabled,.textarea:disabled,.select:disabled{background:var(--color-background-alt);cursor:not-allowed;opacity:.6}.input.error,.input-error{border-color:var(--color-error)}.input.error:focus,.input-error:focus{box-shadow:0 0 0 3px #e4002b1a}.input-group{position:relative}.input-group-icon{left:var(--spacing-md);color:var(--color-text-secondary);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.input-group .input{padding-left:calc(var(--spacing-md) * 2 + 24px)}.form-help{margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:block}.form-error{margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-error);display:block}.form-grid{gap:var(--spacing-md);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=640px){.form-grid{grid-template-columns:1fr}}.table-container{overflow-x:auto}.table-fixed{table-layout:fixed}.table{border-collapse:separate;border-spacing:0;width:100%}.table thead{background:var(--color-background-alt)}.table th{padding:var(--spacing-md);text-align:left;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border)}.table td{padding:var(--spacing-md);border-bottom:1px solid var(--color-border)}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover{background:var(--color-surface-hover)}.table tbody tr:last-child td{border-bottom:none}.table-edit-wrap{border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow-x:auto}.table-edit{border-collapse:collapse;width:100%;font-size:var(--font-size-sm)}.table-edit th{text-align:left;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-background-alt);border-bottom:1px solid var(--color-border);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);white-space:nowrap;font-size:var(--font-size-xs);z-index:1;position:sticky;top:0}.table-edit td{border-bottom:1px solid var(--color-border);vertical-align:middle;padding:.2rem}.table-edit tr:last-child td{border-bottom:none}.table-edit tbody tr:hover td{background:color-mix(in srgb, var(--color-background-alt) 60%, transparent)}.table-edit .col-center{width:44px;text-align:center!important}.table-edit .col-action{text-align:center;width:32px}.table-edit .empty-row{text-align:center;color:var(--color-text-secondary);font-style:italic;padding:var(--spacing-md)!important}.cell-input{box-sizing:border-box;width:100%;font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);color:var(--color-text-primary);background:0 0;border:1px solid #0000;outline:none;font-family:inherit}.cell-input:hover,.cell-input:focus{border-color:var(--color-border);background:var(--color-surface)}.cell-input.mono{font-family:var(--font-family-mono);resize:vertical}.cell-select{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);color:var(--color-text-primary);background:0 0;border:1px solid #0000;width:100%}.cell-select:hover,.cell-select:focus{border-color:var(--color-border);background:var(--color-surface);outline:none}.cell-text{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);color:var(--color-text-primary);display:block}.cell-text.mono{font-family:var(--font-family-mono);color:var(--color-text-secondary)}.table-scroll{border:1px solid var(--color-border);border-radius:var(--radius-sm);max-height:560px;overflow:auto}.alert{align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:var(--line-height-normal);border:1px solid #0000;display:flex}.alert svg{flex-shrink:0;margin-top:2px}.alert-error{background:var(--color-error-bg);border-color:var(--color-error);color:var(--color-error)}.alert-warning{background:var(--color-warning-bg);border-color:var(--color-warning);color:var(--color-warning-text)}.alert-info{background:var(--color-info-bg);border-color:var(--color-info);color:var(--color-info-text)}.alert-success{background:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success-text)}.error-message{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-error-bg);border:1px solid var(--color-error);border-radius:var(--radius-sm);color:var(--color-error);font-size:var(--font-size-sm);display:flex}.avatar{border-radius:var(--radius-full);background:var(--gradient-grey);width:40px;height:40px;color:var(--color-white);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.avatar.sm{width:32px;height:32px;font-size:var(--font-size-xs)}.avatar.lg{width:48px;height:48px;font-size:var(--font-size-base)}.skeleton{background:linear-gradient(90deg, var(--color-grey-6) 0%, var(--color-grey-5) 50%, var(--color-grey-6) 100%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s infinite shimmer}.skeleton-line{height:16px;margin-bottom:var(--spacing-sm)}.skeleton-line.short{width:60%}.skeleton-line--md{height:48px}.skeleton-line--lg{height:64px}.skeleton-circle{border-radius:var(--radius-full);width:40px;height:40px}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);transition:box-shadow var(--transition-base);overflow:hidden}.panel:hover{box-shadow:0 2px 8px #0000000a}.panel.attention,.panel.unsaved{border-left:3px solid var(--color-warning)}.panel.collapsed>.panel-header,.panel.collapsed>.panel-header-btn{border-bottom:none}.panel-header{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background-alt);border-bottom:1px solid var(--color-border);cursor:pointer;display:flex}.panel-header-btn{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);cursor:pointer;text-align:left;border:none;border-bottom:1px solid var(--color-border);transition:background var(--transition-base);display:flex}.panel-header-btn:hover{background:var(--color-background-alt)}.panel-header-btn svg:first-child{color:var(--color-text-secondary);transition:color var(--transition-base);flex-shrink:0}.panel-header-btn:hover svg:first-child{color:var(--color-text-primary)}.panel-title{min-width:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.panel-actions{align-items:center;gap:var(--spacing-xs);flex-shrink:0;margin-left:auto;display:flex}.panel-collapse{cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;flex-shrink:0;align-items:center;padding:.2rem;display:flex}.panel-collapse:hover{color:var(--color-text-primary)}.panel-body{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface);flex-direction:column;display:flex}.panel-body.flush{padding:0}.panel-section{padding:var(--spacing-md) var(--spacing-lg)}.panel-section+.panel-section{border-top:1px solid var(--color-border)}.panel-section-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.panel-section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-secondary);align-items:center;gap:var(--spacing-xs);display:flex}.panel-section-hint{padding:var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;font-style:italic}.expand-card{padding:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);cursor:pointer;transition:box-shadow var(--transition-base), border-color var(--transition-base);justify-content:space-between;align-items:center;gap:var(--spacing-sm);display:flex}.expand-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-sm)}.expand-card.expanded{cursor:default;flex-direction:column;grid-column:1/-1;align-items:stretch}.expand-card-header{cursor:pointer;justify-content:space-between;align-items:center;gap:var(--spacing-sm);width:100%;display:flex}.expand-card.expanded .expand-card-header:hover{background:var(--color-surface-hover);margin:calc(-1 * var(--spacing-md));padding:var(--spacing-md);width:calc(100% + 2 * var(--spacing-md));border-radius:var(--radius-sm) var(--radius-sm) 0 0}.expand-card-body{gap:var(--spacing-xs);flex-direction:column;flex:1;min-width:0;display:flex}.expand-card-title{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.expand-card-title-input{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);max-width:300px}.expand-card-title-row{align-items:center;gap:var(--spacing-xs);display:flex}.expand-card-title-row strong{white-space:nowrap;flex-shrink:0}.expand-card-subtitle{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-style:italic}.expand-card-tags{gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.expand-card-actions{align-items:center;gap:var(--spacing-xs);flex-shrink:0;display:flex}.expand-card-chevron{color:var(--color-text-secondary)}.expand-card-content{border-top:1px solid var(--color-border);padding-top:var(--spacing-lg);margin-top:var(--spacing-md);gap:var(--spacing-lg);flex-direction:column;display:flex}.expand-card-section{gap:var(--spacing-sm);flex-direction:column;display:flex}.expand-card-section h3{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.expand-card-section-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.expand-card-section-header h3{margin:0}.expand-card-section-actions{align-items:center;gap:var(--spacing-sm);display:flex}.expand-card-section-count{font-size:var(--font-size-xs);color:var(--color-text-secondary);background:var(--color-background-alt);padding:.125rem var(--spacing-xs);border-radius:var(--radius-sm)}.list{gap:var(--spacing-sm);flex-direction:column;display:flex}.list-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex}.list-item-content{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;flex:1;min-width:0;display:flex}.list-item-content.stacked{align-items:flex-start;gap:var(--spacing-xs);flex-direction:column}.list-item-actions{gap:var(--spacing-xs);flex-shrink:0;display:flex}.list-item-breadcrumb{align-items:center;gap:var(--spacing-sm);display:flex}.select-list{gap:var(--spacing-xs);flex-direction:column;max-height:340px;padding-right:2px;display:flex;overflow-y:auto}.select-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);display:flex}.select-item input[type=radio],.select-item input[type=checkbox]{accent-color:var(--color-grey-dark)}.select-item:hover{border-color:var(--color-border-dark)}.select-item.selected{border-color:var(--color-secondary);border-left:3px solid var(--color-grey-dark);background:color-mix(in srgb, var(--color-secondary) 6%, var(--color-surface))}.select-item:disabled{opacity:.5;pointer-events:none;cursor:not-allowed}.select-item-body{text-align:left;flex:1;min-width:0}.select-item-name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);color:var(--color-text-primary)}.select-item.selected .select-item-name{color:var(--color-primary)}.select-item-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:2px;line-height:1.4;display:block}.checkbox-row{align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;display:flex}.checkbox-row:hover{background:var(--color-surface-hover)}.checkbox-row input{cursor:pointer;flex-shrink:0;margin-top:3px}.checkbox-row label{font-size:var(--font-size-sm);cursor:pointer}.checkbox-label{align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:auto}.page{max-width:1200px;padding:var(--spacing-xl);margin:0 auto}.page.narrow{max-width:800px}.page-header{align-items:flex-start;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);flex-direction:column;display:flex}.page-header-row{align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.page-header-actions{align-items:center;gap:var(--spacing-sm);display:flex}.section-header{justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);display:flex}.section-title{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0;display:flex}.section-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:4px 0 0}.tab-bar{gap:var(--spacing-xs);border-bottom:2px solid var(--color-border);padding-bottom:0;display:flex}.tab-btn{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;transition:color .15s,border-color .15s;display:inline-flex}.tab-btn:hover{color:var(--color-text-primary)}.tab-btn-active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--font-weight-semibold)}.tab-badge{min-width:18px;height:18px;font-size:.65rem;font-weight:var(--font-weight-bold);background:var(--color-surface-raised);color:var(--color-text-secondary);border-radius:var(--radius-full);justify-content:center;align-items:center;padding:0 5px;display:inline-flex}.tab-btn-active .tab-badge{background:color-mix(in srgb, var(--color-primary) 15%, transparent);color:var(--color-primary)}.empty{justify-content:center;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary);flex-direction:column;display:flex}.empty p{font-size:var(--font-size-sm);margin:0}.empty-hint{color:var(--color-text-secondary);font-size:var(--font-size-sm);padding:var(--spacing-md) 0;font-style:italic}.content-stack{gap:var(--spacing-xl);margin-bottom:var(--spacing-xl);flex-direction:column;display:flex}.content-stack.sm{gap:var(--spacing-md)}.content-stack.lg{gap:var(--spacing-2xl)}.import-progress{justify-content:center;align-items:center;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl);display:flex}.progress-step{align-items:center;gap:var(--spacing-sm);flex-direction:column;display:flex}.progress-number{border-radius:var(--radius-full);background:var(--color-surface-hover);width:32px;height:32px;color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);justify-content:center;align-items:center;display:flex}.progress-step.active .progress-number{background:var(--color-primary);color:#fff}.progress-step.completed .progress-number{background:var(--color-success);color:#fff}.progress-step span{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.progress-step.active span{color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.progress-bar-section{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.progress-bar{background:var(--color-grey-6,#0000000f);height:6px;margin-bottom:var(--spacing-xs);border-radius:3px;overflow:hidden}.progress-bar__fill{background:#6366f1;border-radius:3px;height:100%;transition:width .3s}.progress-bar-summary{justify-content:space-between;align-items:center;font-size:.8rem;display:flex}.schema-import-step{max-width:100%}.step-header{margin-bottom:var(--spacing-lg)}.step-header h3{margin:0 0 var(--spacing-xs) 0}.step-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.upload-zone{border:2px dashed var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-2xl);text-align:center;transition:border-color .15s,background .15s}.upload-zone.drag-active{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 6%, transparent)}.upload-prompt{align-items:center;gap:var(--spacing-md);color:var(--color-text-secondary);flex-direction:column;display:flex}.selected-files{text-align:left}.file-list{gap:var(--spacing-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.file-item{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-surface-hover);border-radius:var(--radius-sm);display:flex}.file-item .file-name{font-size:var(--font-size-sm);flex:1}.file-item .file-size{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.step-actions{justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);display:flex}.cell-input.cell-invalid{border-color:var(--color-error);background:var(--color-error-bg)}.loading-state,.success-content{align-items:center;gap:var(--spacing-md);text-align:center;padding:var(--spacing-2xl) 0;flex-direction:column;display:flex}.filter-bar{background:var(--color-background-alt,#f8fafc);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md)}.filter-bar-label{padding:var(--spacing-xs) var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-secondary)}.filter-bar-pills{gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);flex-wrap:wrap;align-items:center;display:flex}.pill{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-surface,#fff);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);padding:3px 10px}.pill:hover{border-color:var(--color-border-dark);color:var(--color-text-primary)}.pill.active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-white,#fff);font-weight:var(--font-weight-semibold)}.pill.scope{background:var(--color-primary-subtle,#eff6ff);color:var(--color-primary)}.pill.scope.active{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-white,#fff)}.pill.muted{background:var(--color-grey-6,#f1f5f9);color:var(--color-text-secondary);cursor:default;border-color:#0000}.pill.muted:hover{color:var(--color-text-secondary)}.search-wrap{flex:1;align-items:center;display:flex;position:relative}.search-wrap .search-icon{color:var(--color-text-secondary);pointer-events:none;z-index:1;position:absolute;left:10px}.search-wrap .form-input{width:100%;padding-left:32px;padding-right:8px}.search-wrap.has-clear .form-input{padding-right:32px}.search-clear{cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;align-items:center;padding:2px;display:flex;position:absolute;right:8px}.search-clear:hover{color:var(--color-text-primary)}.search-count{font-size:var(--font-size-xs);color:var(--color-text-secondary);pointer-events:none;position:absolute;right:32px}.toolbar{align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md);display:flex}.toolbar.sticky{z-index:10;position:sticky;top:0;box-shadow:0 2px 4px #00000005}.toolbar-actions{align-items:center;gap:var(--spacing-sm);margin-left:auto;display:flex}.toolbar-status{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.toolbar-status.saved{color:var(--color-success)}.inline-add{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);display:flex}.inline-add .input{flex:1}.audit-entry{padding:var(--spacing-md);background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .15s}.audit-entry.expandable{cursor:pointer}.audit-entry.expandable:hover{border-color:var(--color-info)}.attention-row td{background:color-mix(in srgb, var(--color-warning-bg) 35%, transparent)!important}.attention-icon{color:var(--color-warning-text);align-items:center;display:inline-flex}.mono-key{font-family:var(--font-family-mono);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.mono-value{font-family:var(--font-family-mono);font-size:var(--font-size-sm);color:var(--color-text-secondary)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes slideInFromRight{0%{transform:translate(100%)}to{transform:translate(0)}}.badge{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);white-space:nowrap;--badge-color:var(--color-text-secondary);background:color-mix(in srgb, var(--badge-color) 12%, transparent);color:var(--badge-color);display:inline-flex}.badge-success{--badge-color:var(--color-success)}.badge-warning{--badge-color:var(--color-warning)}.badge-error{--badge-color:var(--color-error)}.badge-info{--badge-color:var(--color-info)}.badge-neutral{background:var(--color-grey-6);color:var(--color-text-secondary)}.badge-secondary{background:var(--color-grey-6);color:var(--color-text-primary)}.badge-sm{padding:1px 6px;font-size:.7rem}.status-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);white-space:nowrap;align-items:center;padding:.2rem .6rem;display:inline-flex}.status-badge.draft,.status-badge--draft{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-badge.published,.status-badge--published{background:var(--color-success-bg);color:var(--color-success-text)}.count-badge{font-size:var(--font-size-xs);background:var(--color-background-alt);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);padding:.1rem .45rem}.type-badge{border-radius:var(--radius-sm);font-size:.65rem;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary);background:var(--color-background);border:1px solid var(--color-border);padding:.05rem .35rem;display:inline-block}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family-primary);font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-background);line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin-bottom:var(--spacing-md);font-weight:600;line-height:1.25}h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg)}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit;font-size:inherit;cursor:pointer}.container{max-width:1200px;padding:0 var(--spacing-lg);margin:0 auto}.error{color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.success{color:var(--color-success);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.loading{opacity:0;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 80px);animation:0s 1s forwards fadeIn;display:flex}.spinner{border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.layout{--env-banner-height:20px;--env-banner-offset:0px;--header-modern-height:calc(44px + (var(--spacing-md) * 2));flex-direction:column;min-height:100vh;display:flex}.layout--has-env-banner{--env-banner-offset:var(--env-banner-height)}.header{background-color:var(--color-primary);color:#fff;padding:var(--spacing-lg);box-shadow:var(--shadow-md)}.header-content{justify-content:space-between;align-items:center;gap:var(--spacing-lg);display:flex}.nav{gap:var(--spacing-lg);align-items:center;display:flex}.nav a{color:#fff;font-weight:500;text-decoration:none}.env-banner{color:#1c1917;text-align:center;letter-spacing:.08em;text-transform:uppercase;min-height:var(--env-banner-height);padding:3px var(--spacing-md);z-index:calc(var(--z-sticky) + 1);white-space:nowrap;background:repeating-linear-gradient(-45deg,#f59e0b,#f59e0b 10px,#fbbf24 10px 20px);justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex;position:sticky;top:0;overflow:hidden}.env-banner span{text-overflow:ellipsis;overflow:hidden}.header-modern{background:var(--gradient-grey);color:#fff;padding:var(--spacing-md) var(--spacing-2xl);box-shadow:var(--shadow-lg);top:var(--env-banner-offset);z-index:var(--z-sticky);position:sticky}.brand-section{align-items:center;gap:var(--spacing-lg);min-width:0;display:flex}.brand{align-items:center;gap:var(--spacing-md);cursor:pointer;transition:var(--transition-base);display:flex}.brand:hover{opacity:.9;transform:translateY(-1px)}.brand img{display:block}.brand-logo-wrapper{border-radius:var(--radius-md);width:44px;height:44px;transition:all var(--transition-base);background:#fffffff2;justify-content:center;align-items:center;padding:4px;display:flex}.brand-logo-wrapper:hover{background:#fff;box-shadow:0 2px 8px #0000001a}.brand-logo{width:36px;height:36px;display:block}.brand-title{font-weight:var(--font-weight-semibold);letter-spacing:.5px;white-space:nowrap;padding:0;line-height:1;font-size:var(--font-size-lg)!important;color:#fff!important;margin:0!important}.nav-main{gap:var(--spacing-sm);min-width:0;display:flex}.nav-item{align-items:center;gap:var(--spacing-sm);height:36px;padding:0 var(--spacing-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#ffffffe6;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;background:0 0;border:none;display:inline-flex}.nav-item:hover{color:#fff;background:#ffffff1a;transform:translateY(-1px)}.nav-item:active{transform:translateY(0)}.nav-dropdown{position:relative}.nav-dropdown-menu{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:180px;z-index:var(--z-dropdown);margin-top:4px;position:absolute;top:100%;left:0;overflow:hidden}.nav-dropdown-menu button{align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-base);background:0 0;border:none;display:flex}.nav-dropdown-menu button:hover{background:var(--color-background)}.header-actions{align-items:center;gap:var(--spacing-sm);display:flex}.user-section{align-items:center;gap:var(--spacing-sm);height:36px;padding:0 var(--spacing-md);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-base);background:#ffffff1a;border:none;display:flex}.user-section:hover{background:#fff3}.user-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#fff}.main-modern{background:var(--color-background);padding:var(--spacing-2xl);flex:1;width:100%;max-width:1400px;margin:0 auto}.main-modern--wide{max-width:none;padding:1rem}.nav a:hover{text-decoration:underline}.main{padding:var(--spacing-2xl) 0;flex:1}.grid{gap:var(--spacing-lg);display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.language-switcher{align-items:center;display:flex}.language-select{color:#fff;border-radius:var(--radius-md);height:36px;padding:0 var(--spacing-sm);font-size:var(--font-size-lg);cursor:pointer;background-color:#ffffff1a;border:1px solid #fff3;transition:all .2s}.language-select:hover{background-color:#ffffff26;border-color:#ffffff4d}.language-select:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 2px #e4002b33}.language-select option{background-color:var(--color-surface);color:var(--color-text-primary);padding:var(--spacing-sm)}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.collaboration-notification{border-radius:var(--radius-md);width:min(400px,100vw - 40px);padding:var(--spacing-md);gap:var(--spacing-sm);z-index:calc(var(--z-tooltip) + 10);background-color:#fff;border:1px solid #e5e7eb;align-items:flex-start;animation:.3s ease-out slideInRight;display:flex;position:fixed;right:20px;overflow-y:auto;box-shadow:0 4px 12px #00000024}.collaboration-notification__content{flex:1;min-width:0}.collaboration-notification__title{margin-bottom:4px;font-weight:500}.collaboration-notification__message{color:var(--color-text-secondary);overflow-wrap:anywhere;font-size:.875rem}.collaboration-notification__dismiss{cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;align-items:center;padding:4px;display:flex}.spin{animation:1s linear infinite spin}.mobile-menu-toggle{color:#ffffffe6;padding:var(--spacing-sm);cursor:pointer;border-radius:var(--radius-md);transition:background var(--transition-base);background:0 0;border:none;justify-content:center;align-items:center;display:none}.mobile-menu-toggle:hover{color:#fff;background:#ffffff1a}@media (width<=1024px){.layout{--header-modern-height:calc(44px + (var(--spacing-sm) * 2))}.header-modern{padding:var(--spacing-sm) var(--spacing-md)}.header-content{flex-wrap:wrap}.brand-section{flex:1;justify-content:space-between;overflow:visible}.mobile-menu-toggle{display:flex}.nav-main{gap:var(--spacing-xs);width:100%;padding:var(--spacing-sm) 0;border-top:1px solid #ffffff26;flex-direction:column;order:10;display:none;overflow:visible}.nav-main.open{display:flex}.nav-main .nav-item{justify-content:flex-start;width:100%}.header-actions{justify-content:flex-start;gap:var(--spacing-sm);width:100%;padding-top:var(--spacing-sm);border-top:1px solid #ffffff1a;order:11;display:none}.header-actions.open{display:flex}.user-name{display:none}.main-modern{padding:var(--spacing-md)}}.module-tiles-grid{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.module-tile{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-xl);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:left;flex-direction:column;width:100%;transition:border-color .15s,box-shadow .15s,transform .1s;display:flex;position:relative}.module-tile:hover:not(:disabled){border-color:var(--color-accent);transform:translateY(-2px);box-shadow:0 4px 20px #e4002b1f}.module-tile-locked{opacity:.5;cursor:not-allowed}.module-tile-icon{border-radius:var(--radius-md);background:var(--gradient-red);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.module-tile-locked .module-tile-icon{background:var(--gradient-grey)}.module-tile-body{flex:1}.module-tile-title{font-size:var(--font-size-xl);color:var(--color-text-primary);margin-bottom:var(--spacing-xs);font-weight:600}.module-tile-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0;line-height:1.6}.module-tile-arrow{top:var(--spacing-lg);right:var(--spacing-lg);color:var(--color-text-secondary);position:absolute}.module-tile:hover:not(:disabled) .module-tile-arrow{color:var(--color-accent)}.nav-item-active{background:#ffffff26!important}.placeholder-page{max-width:600px;margin:var(--spacing-3xl) auto;padding:var(--spacing-2xl);text-align:center}.placeholder-icon{border-radius:var(--radius-md);background:var(--gradient-grey);color:#fff;width:80px;height:80px;margin:0 auto var(--spacing-xl);justify-content:center;align-items:center;display:flex}.placeholder-title{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-md);font-weight:700}.placeholder-description{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--spacing-xl);line-height:1.7}.placeholder-features{gap:var(--spacing-sm);text-align:left;margin-bottom:var(--spacing-xl);flex-direction:column;display:flex}.placeholder-feature{align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex}.placeholder-feature svg{color:var(--color-accent);flex-shrink:0}.placeholder-coming-soon{align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);background:var(--color-grey-6);font-size:var(--font-size-sm);color:var(--color-text-secondary);border-radius:999px;font-weight:500;display:inline-flex}.icon-btn{border-radius:var(--radius-sm);cursor:pointer;width:28px;height:28px;color:var(--color-text-secondary);background:0 0;border:none;justify-content:center;align-items:center;transition:background .1s,color .1s;display:flex}.icon-btn:hover{background:var(--color-grey-6);color:var(--color-text-primary)}.icon-btn-danger:hover{color:var(--color-error);background:#fee2e2}.icon-btn-success:hover{color:var(--color-success);background:#dcfce7}.nav-subnav-divider{padding:0 var(--spacing-sm);align-items:center;gap:6px;margin:4px 0 2px;display:flex}.nav-subnav-divider:before{content:"";background:#ffffff40;flex:0 0 12px;height:1px}.nav-subnav-divider:after{content:"";background:#ffffff40;flex:1;height:1px}.nav-subnav-label{letter-spacing:.08em;text-transform:uppercase;color:#ffffff73;white-space:nowrap;font-size:10px;font-weight:700}.nav-main .nav-subnav-divider~button,.nav-main .nav-subnav-divider~div{padding-left:calc(var(--spacing-sm) + 12px);font-size:var(--font-size-sm);opacity:.9}.subnav-platform{padding:0 var(--spacing-2xl);background:#2c3e50eb;border-bottom:1px solid #ffffff14}.subnav-mapping{padding:0 var(--spacing-2xl);top:calc(var(--env-banner-offset) + var(--header-modern-height));z-index:calc(var(--z-sticky) - 1);background:#2c3e50eb;border-bottom:1px solid #ffffff14;position:sticky}.subnav-mapping-inner{align-items:center;gap:var(--spacing-xs);height:36px;display:flex}.subnav-item{border-radius:var(--radius-sm);color:#ffffffbf;font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-base), color var(--transition-base);white-space:nowrap;background:0 0;border:none;align-items:center;gap:6px;padding:4px 10px;font-weight:500;display:inline-flex}.subnav-item:hover{color:#fff;background:#ffffff1a}.subnav-item-active{color:#fff!important;background:#ffffff26!important}.subnav-dropdown{position:relative}.subnav-dropdown .nav-dropdown-menu{top:calc(100% + 4px)}@media (width<=1024px){.subnav-platform,.subnav-mapping{padding:0 var(--spacing-md);overflow-x:auto}}.form-input,.form-select,.form-textarea,.input{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-surface);transition:border-color var(--transition-base), box-shadow var(--transition-base);box-sizing:border-box;padding:7px 10px;font-family:inherit}.form-input:focus,.form-select:focus,.form-textarea:focus,.input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px rgba(var(--color-accent-rgb,228, 0, 43), .08);outline:none}.form-select,select.input{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;padding-right:28px}.form-textarea{resize:vertical;min-height:80px}.form-group{gap:var(--spacing-xs);margin-bottom:var(--spacing-md);flex-direction:column;display:flex}.form-group label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500}.scope-toggle-group{flex-wrap:wrap;gap:.375rem;display:flex}.scope-toggle{border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;background:0 0;border-radius:999px;padding:.25rem .625rem;font-size:.8rem;font-weight:500;transition:border-color .15s,background .15s,color .15s}.scope-toggle:hover{border-color:var(--color-accent);color:var(--color-accent)}.scope-toggle.active{border-color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent)}.scope-toggle.disabled{cursor:default;opacity:.7}.scope-toggle.disabled:hover{border-color:var(--color-border);color:var(--color-text-secondary)}.scope-toggle.disabled.active:hover{border-color:var(--color-accent);color:var(--color-accent)}.scope-tags{flex-wrap:wrap;gap:.375rem;display:flex}.scope-tag{background:color-mix(in srgb, var(--color-accent) 12%, transparent);color:var(--color-accent);border-radius:999px;align-items:center;gap:.25rem;padding:.2rem .5rem;font-size:.8rem;font-weight:500;display:inline-flex}.scope-tag button{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;margin-left:.1rem;padding:0;font-size:1rem;line-height:1}.scope-tag button:hover{opacity:1}.scope-chips{flex-wrap:wrap;gap:.25rem;display:flex}.scope-chip{background:var(--color-surface-raised,#f0f0f0);border:1px solid var(--color-border);color:var(--color-text-secondary);letter-spacing:.03em;border-radius:4px;padding:.1rem .4rem;font-size:.7rem;font-weight:600;display:inline-block}.scope-chip-more{color:var(--color-text-muted);border-style:dashed}
