.brand-mark{display:inline-block;flex-shrink:0;vertical-align:middle;border-radius:8px}.sidebar{width:248px;flex-shrink:0;overflow-y:auto;background:var(--color-surface);border-right:1px solid var(--color-border-default);display:flex;flex-direction:column;padding:16px 0}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:4px 24px 20px}.sidebar-title{font-size:18px;font-weight:700;color:var(--color-fg-default)}.sidebar-nav{display:flex;flex-direction:column;gap:1px;padding:0 12px}.sidebar-link{display:flex;align-items:center;gap:10px;padding:10px 12px;min-height:44px;border-radius:var(--radius-md);color:var(--color-fg-muted);font-size:var(--font-size-md);font-weight:500;text-decoration:none;transition:background .1s,color .1s}.sidebar-link:hover{background:var(--color-neutral-subtle);color:var(--color-fg-default);text-decoration:none}.sidebar-link--active{background:var(--color-success-subtle);color:var(--color-success);font-weight:600}.sidebar-link--active:hover{background:var(--color-success-subtle)}.sidebar-link-icon{display:flex;flex-shrink:0;width:20px;text-align:center}.sidebar-link-label{flex:1}.sidebar-group-title{margin:20px 12px 8px;color:var(--color-fg-muted);font-size:var(--font-size-sm);font-weight:600}.sidebar-group{position:relative}@media (max-width: 640px){.sidebar{width:100%;flex-shrink:0;padding:8px 0;overflow:visible;border-right:0;border-bottom:1px solid var(--color-border-default)}.sidebar-brand{padding-bottom:8px}.sidebar-nav{flex-direction:row;overflow-x:auto;padding-bottom:4px}.sidebar-link{flex-shrink:0}.sidebar-group{display:flex;flex-shrink:0;gap:4px}.sidebar-group+.sidebar-group{border-left:1px solid var(--color-border-default);padding-left:12px;margin-left:8px}.sidebar-group-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}}.notification-bell{position:relative}.bell-button{position:relative;background:none;border:none;font-size:18px;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .15s}.bell-button:hover{background:var(--color-canvas-inset)}.bell-badge{position:absolute;top:0;right:2px;background:var(--color-danger);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:360px;max-height:460px;background:var(--color-canvas-subtle);border:1px solid var(--color-border-default);border-radius:var(--radius-md);box-shadow:0 8px 24px #0003;z-index:1000;overflow:hidden;display:flex;flex-direction:column}@media (max-width: 640px){.header{position:relative}.notification-bell{position:static}.notification-dropdown{width:calc(100vw - 32px);right:16px}}.notification-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--color-border-muted)}.notification-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-fg-default)}.mark-all-read{background:none;border:none;font-size:var(--font-size-xs);color:var(--color-accent);cursor:pointer;padding:2px 6px;border-radius:4px}.mark-all-read:hover{background:var(--color-canvas-inset)}.notification-list{overflow-y:auto;flex:1}.notification-empty{padding:32px 16px;text-align:center;color:var(--color-fg-muted);font-size:var(--font-size-sm)}.notification-item{display:flex;gap:10px;padding:10px 16px;cursor:pointer;transition:background .1s;border-bottom:1px solid var(--color-border-muted)}.notification-item:hover{background:var(--color-canvas-inset)}.notification-item.unread{background:#58a6ff0d}.notification-dot-wrapper{width:8px;padding-top:6px;flex-shrink:0}.notification-dot{display:block;width:8px;height:8px;border-radius:4px;background:var(--color-accent)}.notification-content{flex:1;min-width:0}.notification-item-title{font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-default);margin:0 0 2px}.notification-item-body{font-size:var(--font-size-xs);color:var(--color-fg-muted);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-time{font-size:11px;color:var(--color-fg-subtle)}.header{display:flex;align-items:center;justify-content:flex-end;min-height:64px;flex-shrink:0;padding:8px 32px;background:var(--color-surface);border-bottom:1px solid var(--color-border-default)}.header-right{display:flex;align-items:center;gap:12px;min-width:0;flex-wrap:wrap}.header-user{display:flex;align-items:center;gap:8px;min-width:0}.header-avatar{width:32px;height:32px;flex-shrink:0;border-radius:8px;background:var(--color-avatar-bg);color:var(--color-avatar-fg);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:600}.header-user-name{font-size:var(--font-size-sm);color:var(--color-fg-default);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}.header-signout{padding:8px 12px;min-height:44px;font-size:var(--font-size-sm);color:var(--color-fg-muted);background:var(--color-btn-bg);border:1px solid var(--color-btn-border);border-radius:var(--radius-md);font-weight:500;transition:background .1s,border-color .1s}.header-signout:hover{background:var(--color-btn-hover-bg);border-color:var(--color-btn-hover-border)}.theme-toggle{width:44px;height:44px;color:var(--color-fg-muted);display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-size:16px;transition:background .1s,border-color .1s}.theme-toggle:hover{background:var(--color-btn-hover-bg);border-color:var(--color-btn-hover-border)}@media (max-width: 640px){.header{padding:4px 16px;min-height:56px}.header-right{gap:8px}.header-user-name{display:none}}.layout{display:flex;height:100vh;height:100dvh;overflow:hidden}.layout-main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:var(--color-page)}.layout-content{flex:1;overflow-y:auto;padding:32px}.layout-content>*{width:100%;max-width:1200px;margin-inline:auto}@media (max-width: 640px){.layout{flex-direction:column}.layout-main{min-height:0}.layout-content{padding:16px}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-canvas);padding:24px}.auth-card{width:100%;max-width:340px;background:var(--color-canvas-subtle);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:32px 24px;box-shadow:var(--shadow-md);overflow-wrap:anywhere}.auth-header{text-align:center;margin-bottom:24px}.auth-logo{font-size:36px;display:block;margin-bottom:8px}.auth-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-fg-default)}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-error{padding:8px 12px;background:var(--color-danger-subtle);border:1px solid var(--color-border-default);border-radius:var(--radius-md);color:var(--color-danger);font-size:var(--font-size-sm)}.auth-footer{text-align:center;margin-top:20px;font-size:var(--font-size-sm);color:var(--color-fg-muted)}.auth-context{font-size:var(--font-size-sm);color:var(--color-fg-muted);line-height:1.5;margin-bottom:20px;overflow-wrap:anywhere}.auth-context p+p{margin-top:10px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-fg-default)}.form-group input,.form-group select,.form-group textarea{padding:5px 12px;border:1px solid var(--color-input-border);border-radius:var(--radius-md);font-size:var(--font-size-md);color:var(--color-fg-default);background:var(--color-input-bg);line-height:20px;transition:border-color .1s,box-shadow .1s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-input-focus-border);box-shadow:0 0 0 3px var(--color-input-focus-shadow)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:5px 16px;font-size:var(--font-size-md);font-weight:500;line-height:20px;border-radius:var(--radius-md);border:1px solid transparent;transition:background .1s;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:#0000001a}.btn-primary:hover:not(:disabled){background:var(--color-btn-primary-hover)}.btn-secondary{background:var(--color-btn-bg);color:var(--color-fg-default);border-color:var(--color-btn-border)}.btn-secondary:hover:not(:disabled){background:var(--color-btn-hover-bg);border-color:var(--color-btn-hover-border)}.btn-full{width:100%}.btn-sm{padding:3px 12px;font-size:var(--font-size-xs)}.first-report-guide{margin-bottom:24px;padding:24px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-surface);line-height:1.6;overflow-wrap:anywhere}.first-report-guide h2{font-size:18px}.first-report-guide h3{font-size:var(--font-size-md)}.first-report-guide p{margin:8px 0}.first-report-guide ol{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:24px;padding-left:20px}.first-report-guide li{margin:16px 0 8px;padding-right:8px}.first-report-guide li::marker{color:var(--color-success);font-weight:600}.first-report-guide p{color:var(--color-fg-muted)}.first-report-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.first-report-actions .btn{white-space:normal}.dashboard{max-width:1200px}.page-header{margin-bottom:24px;padding-bottom:0}.page-title{font-size:var(--font-size-2xl);font-weight:600;color:var(--color-fg-default);margin-bottom:8px}.page-subtitle{font-size:var(--font-size-md);color:var(--color-fg-muted)}.section-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-fg-default)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-count{font-size:var(--font-size-xs);font-weight:600;background:var(--color-neutral-subtle);color:var(--color-fg-muted);padding:0 6px;border-radius:var(--radius-full);line-height:20px}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.stat-card{display:flex;align-items:center;gap:12px;padding:20px;background:var(--color-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-card)}.stat-card-icon{font-size:20px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--color-neutral-subtle)}.stat-card-value{font-size:28px;font-weight:600;color:var(--color-fg-default);line-height:var(--line-height-tight)}.stat-card-label{font-size:var(--font-size-sm);color:var(--color-fg-muted);margin-top:6px}.stat-card--success .stat-card-icon{background:var(--color-success-subtle)}.stat-card--warning .stat-card-icon{background:var(--color-warning-subtle)}.stat-card--info .stat-card-icon{background:var(--color-info-subtle)}.dashboard-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:16px}.dashboard-section{margin-bottom:24px}.section-card{background:var(--color-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:auto;box-shadow:var(--shadow-card)}.dashboard .section-card:not(:has(table)){padding:24px}.dashboard .section-card h2{font-size:18px;margin-bottom:8px}.dashboard .section-card p+p{margin-top:8px}.mini-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.mini-table th{text-align:left;padding:8px 12px;font-size:var(--font-size-xs);font-weight:600;color:var(--color-fg-muted);background:var(--color-canvas-inset);border-bottom:1px solid var(--color-border-default)}.mini-table td{padding:8px 12px;border-bottom:1px solid var(--color-border-muted);color:var(--color-fg-muted)}.mini-table tr:last-child td{border-bottom:none}.mini-table-primary{font-weight:500;color:var(--color-fg-default)}.template-stack{display:flex;flex-direction:column}.template-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--color-border-muted)}.template-row:last-child{border-bottom:none}.template-row-info{display:flex;flex-direction:column;gap:2px}.template-row-name{font-size:var(--font-size-sm);font-weight:500;color:var(--color-fg-default)}.template-row-type,.template-row-fields{font-size:var(--font-size-xs);color:var(--color-fg-subtle)}.badge{display:inline-flex;align-items:center;padding:0 7px;font-size:var(--font-size-xs);font-weight:500;line-height:20px;border-radius:var(--radius-full);white-space:nowrap}.badge-green{background:var(--color-success-subtle);color:var(--color-success)}.badge-blue{background:var(--color-info-subtle);color:var(--color-info)}.badge-yellow{background:var(--color-warning-subtle);color:var(--color-warning)}.badge-red{background:var(--color-danger-subtle);color:var(--color-danger)}.badge-gray{background:var(--color-neutral-subtle);color:var(--color-neutral)}.empty-state{padding:32px;text-align:center;color:var(--color-fg-subtle);font-size:var(--font-size-sm)}@media (max-width: 640px){.dashboard .stats-grid,.dashboard .dashboard-grid{grid-template-columns:minmax(0,1fr)}}.crop-setup{position:relative;min-width:0;overflow-wrap:anywhere;max-width:1200px;margin:0 auto}.crop-tags-list{display:flex;flex-wrap:wrap;gap:12px;padding:0;list-style:none;margin:16px 0}.crop-tags-list li{display:flex;align-items:center;gap:12px;max-width:100%;padding:8px 12px;border:1px solid var(--color-border-default);border-left-width:3px;border-radius:6px}.crop-setup section,.crop-card{border:1px solid var(--color-border-default, #d1d9e0);border-radius:8px;padding:24px;margin:24px 0;background:var(--color-surface);box-shadow:var(--shadow-sm)}.crop-pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}.crop-setup h1{margin-bottom:8px}.crop-setup h2{font-size:18px;line-height:1.4;margin-bottom:8px}.crop-setup h3{font-size:16px;line-height:1.5;margin-bottom:6px}.crop-setup p{margin:8px 0}.crop-setup header>p,.crop-card>p{color:var(--color-fg-muted)}.crop-setup summary{cursor:pointer;padding:12px 0;font-weight:600}.crop-setup details ul{padding-left:20px;line-height:1.8}.crop-setup .crop-pack-grid>.crop-card{margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.crop-pack-grid .crop-card>.btn:last-child{margin-top:auto}.crop-setup .crop-pack-grid>label.crop-card{display:grid;grid-template-columns:20px 1fr;align-content:start;cursor:pointer}.crop-pack-grid label.crop-card p,.crop-pack-grid label.crop-card>span{grid-column:1 / -1}.crop-pack-grid label.crop-card input{margin-top:4px;width:16px;height:16px}.crop-pack-grid label.crop-card:has(:checked){border-color:var(--color-success);box-shadow:inset 0 0 0 1px var(--color-success);background:var(--color-success-subtle)}.crop-pack-grid label.crop-card:focus-within{outline:3px solid var(--color-success);outline-offset:3px}.crop-pack-grid>.crop-card>span{color:var(--color-fg-muted);font-size:13px}.crop-pack-grid{margin:20px 0}.crop-setup label{display:block;margin:12px 0}.crop-setup input:not([type=checkbox]):not([type=radio]),.crop-setup select,.crop-setup textarea{display:block;width:100%;max-width:620px;padding:10px;margin-top:6px;border:1px solid var(--color-border-default, #d1d9e0);border-radius:6px;background:var(--color-input-bg, white);color:inherit}.crop-actions,.crop-field-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0}.crop-setup table{width:100%;border-collapse:collapse}.crop-setup th,.crop-setup td{text-align:left;padding:8px;border-bottom:1px solid var(--border-color, #d1d9e0);vertical-align:top}.crop-table-scroll{overflow-x:auto}.crop-metric-value{font-size:28px;font-weight:600}.crop-setup [role=alert]{border-left:3px solid #cf222e;padding:12px;background:var(--color-danger-subtle);color:var(--color-danger);border-radius:6px}.crop-tabs,.crop-steps{display:flex;flex-wrap:wrap;gap:12px;padding:12px 0;list-style:none;border-bottom:1px solid var(--color-border-default)}.crop-tabs a,.crop-steps li{padding:8px 12px;border-radius:6px}.crop-tabs [aria-current],.crop-steps [aria-current]{background:var(--color-success-subtle);color:var(--color-success);font-weight:600;box-shadow:inset 0 -3px #16a34a}.crop-success{border-left:4px solid #16a34a!important}.crop-success .btn{margin:4px 12px 4px 0}.crop-form-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--color-border-default);padding:16px 0}.crop-card h2,.crop-card h3{margin-top:0}.crop-setup :focus-visible{outline:2px solid #16a34a;outline-offset:3px}.crop-setup h2[tabindex="-1"]:focus{outline:none}.crop-setup .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}@media (max-width: 640px){.crop-setup section,.crop-card{padding:16px}.crop-tabs,.crop-steps{gap:4px}.crop-tabs a,.crop-steps li{display:inline-flex;min-height:44px;align-items:center}}.reports-page{max-width:1200px}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.filter-tabs{display:flex;gap:4px;margin-bottom:16px;padding:4px;background:var(--color-canvas-inset);border-radius:var(--radius-md);width:fit-content}.filter-tab{padding:6px 12px;font-size:var(--font-size-sm);font-weight:500;border:none;border-radius:4px;background:transparent;color:var(--color-fg-muted);cursor:pointer;transition:background .15s,color .15s}.filter-tab:hover{color:var(--color-fg-default)}.filter-tab.active{background:var(--color-canvas-subtle);color:var(--color-fg-default);box-shadow:0 1px 2px #0000001a}.reports-table-wrapper{background:var(--color-canvas-subtle);border:1px solid var(--color-border-default);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-card)}.reports-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.reports-table th{text-align:left;padding:8px 16px;font-size:var(--font-size-xs);font-weight:600;color:var(--color-fg-muted);background:var(--color-canvas-inset);border-bottom:1px solid var(--color-border-default)}.reports-table td{padding:8px 16px;border-bottom:1px solid var(--color-border-muted);color:var(--color-fg-muted)}.reports-table tr:last-child td{border-bottom:none}.reports-table tr:hover td{background:var(--color-canvas-inset)}.report-link{font-weight:600;color:var(--color-accent)}.btn-small{padding:4px 10px;font-size:var(--font-size-xs)}.text-secondary{color:var(--color-fg-subtle)}.empty-state-hint{margin-top:4px;font-size:var(--font-size-sm);color:var(--color-fg-subtle)}.report-detail{max-width:900px}.report-detail-header{margin-bottom:24px}.back-link{display:inline-block;font-size:var(--font-size-sm);color:var(--color-accent);margin-bottom:8px}.back-link:hover{text-decoration:underline}.report-detail-meta{display:flex;align-items:center;gap:12px;margin-top:8px}.meta-item{font-size:var(--font-size-sm);color:var(--color-fg-muted)}.submission-detail-card{background:var(--color-canvas-subtle);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:16px}.submission-field{display:flex;flex-direction:column;gap:4px}.field-label{font-size:var(--font-size-xs);font-weight:600;color:var(--color-fg-muted);text-transform:uppercase;letter-spacing:.5px}.field-value{font-size:var(--font-size-sm);color:var(--color-fg-default);line-height:1.5;margin:0}.submission-photo{max-width:100%;max-height:400px;border-radius:var(--radius-md);border:1px solid var(--color-border-muted);object-fit:contain}.review-section{margin-top:24px;background:var(--color-canvas-subtle);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:20px}.review-notes{width:100%;padding:10px 12px;border:1px solid var(--color-border-default);border-radius:6px;background:var(--color-canvas-default);color:var(--color-fg-default);font-size:var(--font-size-sm);font-family:inherit;resize:vertical;margin-top:8px}.review-notes:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px #58a6ff33}.review-actions{display:flex;gap:10px;margin-top:12px}.btn-success{background:var(--color-success);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-weight:500;cursor:pointer}.btn-success:hover{opacity:.9}.btn-danger{background:var(--color-danger);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-weight:500;cursor:pointer}.btn-danger:hover{opacity:.9}.review-notes-display{margin-top:16px;padding:12px;background:var(--color-canvas-inset);border-radius:var(--radius-md);border:1px solid var(--color-border-muted)}.review-notes-display h3{font-size:var(--font-size-sm);font-weight:600;margin:0 0 6px;color:var(--color-fg-muted)}.review-notes-display p{font-size:var(--font-size-sm);color:var(--color-fg-default);margin:0}.templates-page{max-width:1200px}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:16px}.template-detail-card{background:var(--color-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:24px;display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere;box-shadow:var(--shadow-card);transition:border-color .1s}.template-detail-card:hover{border-color:var(--color-fg-subtle)}.template-detail-card-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:12px}.template-detail-card-name{font-size:var(--font-size-lg);font-weight:600;color:var(--color-fg-default)}.template-detail-card-desc{font-size:var(--font-size-sm);color:var(--color-fg-muted);margin-bottom:12px}.template-detail-card-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-top:auto;font-size:var(--font-size-xs);color:var(--color-fg-subtle);padding-top:12px;border-top:1px solid var(--color-border-muted)}.template-detail-card-type{font-weight:500}.template-detail-page,.create-template-page{max-width:900px}.template-description{color:var(--color-text-secondary);font-size:.9rem;margin-bottom:1.5rem}.template-meta-row{display:flex;gap:1.5rem;flex-wrap:wrap;margin-bottom:2rem;font-size:.85rem;color:var(--color-text-secondary)}.template-section{margin-bottom:2rem}.template-section h2{font-size:1rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}.template-fields-list{display:flex;flex-direction:column;gap:.5rem}.template-field-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:.75rem 1rem}.template-field-card--editable{background:var(--color-bg)}.template-field-header{display:flex;align-items:center;gap:.75rem}.template-field-index{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-primary);color:#fff;font-size:.7rem;font-weight:700;flex-shrink:0}.template-field-label{font-weight:600;font-size:.9rem}.template-field-type{font-size:.75rem;color:var(--color-text-tertiary);background:var(--color-bg-secondary);padding:2px 8px;border-radius:10px}.template-field-placeholder,.template-field-options,.template-field-validation{font-size:.8rem;color:var(--color-text-secondary);margin-top:.375rem;margin-left:2.25rem}.template-field-actions{display:flex;gap:.375rem;margin-top:.5rem;margin-left:2.25rem}.template-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem}.template-setting-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;font-size:.8rem}.template-setting-label{color:var(--color-text-secondary);text-transform:capitalize}.template-setting-value.on{color:var(--color-primary);font-weight:500}.template-setting-value.off{color:var(--color-text-tertiary)}.template-form-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}.template-form-section h2{margin:0 0 1rem;font-size:1rem;border:none;padding:0}.template-form-section .form-group{margin-bottom:.75rem}.template-form-section .form-group label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.25rem}.template-form-section .form-group input,.template-form-section .form-group select,.template-form-section .form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);font-size:.9rem}.template-form-section .form-group textarea{resize:vertical}.checkbox-label{display:flex!important;align-items:center;gap:.5rem;cursor:pointer;padding-top:1.25rem}.checkbox-label input[type=checkbox]{width:auto!important}.add-field-form{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.add-field-form h3{font-size:.9rem;margin-bottom:.75rem}.template-form-actions{padding:1rem 0}.btn-lg{padding:.75rem 2rem;font-size:1rem}.settings-page{max-width:700px}.settings-section{margin-bottom:24px}.settings-card{background:var(--color-canvas-subtle);border:1px solid var(--color-border-default);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-card)}.profile-info{display:flex;align-items:center;gap:16px}.profile-avatar-lg{width:48px;height:48px;border-radius:50%;background:var(--color-avatar-bg);color:var(--color-avatar-fg);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600}.profile-details{display:flex;flex-direction:column;gap:2px}.profile-name{font-size:var(--font-size-lg);font-weight:600;color:var(--color-fg-default)}.profile-email{font-size:var(--font-size-sm);color:var(--color-fg-muted)}.profile-role{margin-top:4px}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0}.setting-label{font-size:var(--font-size-sm);color:var(--color-fg-muted)}.setting-value{font-size:var(--font-size-sm);color:var(--color-fg-default);font-family:var(--font-mono)}.fields-page,.field-detail-page{padding:0}.page-description{color:var(--color-text-secondary);margin-bottom:1.5rem}.fields-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:1rem}.field-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:24px;min-width:0;overflow-wrap:anywhere;cursor:pointer;transition:border-color .2s,box-shadow .2s}.field-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #16a34a1a}.field-card-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.field-card-name{font-size:1rem;font-weight:600;margin:0}.field-card-code{background:var(--color-bg-secondary);padding:2px 6px;border-radius:4px;font-size:.75rem;color:var(--color-text-secondary);font-family:monospace}.field-card-tags{display:flex;flex-wrap:wrap;gap:.375rem;margin-bottom:.75rem}.field-card-footer{display:flex;justify-content:flex-end}.tag-badge{display:inline-flex;align-items:center;gap:.25rem;padding:3px 8px;border-radius:12px;font-size:.75rem;font-weight:500;color:#fff}.tag-badge--removable{padding-right:4px}.tag-badge-category{opacity:.8;font-weight:400}.tag-badge-remove{background:#ffffff4d;border:none;border-radius:50%;width:16px;height:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:12px;color:#fff;margin-left:2px}.tag-badge-remove:hover{background:#ffffff80}.tag-badge--add{background:transparent;border:1px dashed;color:var(--color-text-secondary);cursor:pointer;transition:background .2s}.tag-badge--add:hover{background:var(--color-bg-secondary)}.field-section{margin-top:2rem}.field-section h2{font-size:1rem;font-weight:600;margin-bottom:.75rem}.tags-list{display:flex;flex-wrap:wrap;gap:.5rem}.field-code-badge{background:var(--color-bg-secondary);padding:4px 10px;border-radius:4px;font-size:.85rem;color:var(--color-text-secondary);font-family:monospace;margin-left:1rem}.empty-hint{color:var(--color-text-secondary);font-size:.875rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{max-height:90vh;overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;width:90%;max-width:480px;box-shadow:0 8px 32px #0000004d}.field-details-inputs{border:0;padding:0;margin:0;min-width:0}.field-details-summary dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:.25rem 0 1rem}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.modal-header h2{font-size:1.1rem;margin:0}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary);line-height:1}.modal-body{padding:1.25rem}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.section-header h2{margin:0}.assigned-users-list{display:flex;flex-direction:column;gap:4px}.assigned-user-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;transition:background .15s}.assigned-user-row:hover{background:var(--color-canvas-subtle)}.assigned-user-avatar{width:32px;height:32px;border-radius:50%;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:13px}.assigned-user-info{flex:1;display:flex;flex-direction:column}.assigned-user-name{font-size:14px;font-weight:500}.assigned-user-email{font-size:12px;color:var(--color-fg-muted)}.role-badge{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500}.assign-dropdown{margin-top:8px;border:1px solid #d0d7de;border-radius:8px;overflow:hidden;background:var(--color-surface);box-shadow:0 2px 8px #00000014}.assign-dropdown-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:10px 14px;border:none;background:var(--color-surface);color:var(--color-fg-default);cursor:pointer;font-size:14px;text-align:left}.assign-dropdown-item:hover{background:var(--color-success-subtle)}.assign-dropdown-item:not(:last-child){border-bottom:1px solid #f0f0f0}.assign-dropdown-role{font-size:12px;color:#8b949e}.btn-sm.btn-primary{background:#16a34a;color:#fff;border-color:#16a34a}.btn-sm.btn-danger{color:#cf222e;border-color:#cf222e;background:#fff}.btn-sm.btn-danger:hover{background:#cf222e;color:#fff}.tags-page{padding:0}.create-category-form{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;padding:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.create-category-form input[type=text]{flex:1}.create-category-form input[type=color]{width:36px;height:36px;border:none;border-radius:6px;cursor:pointer;padding:2px}.categories-list{display:flex;flex-direction:column;gap:1rem}.category-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1rem 1.25rem}.category-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.category-card-title{display:flex;align-items:center;gap:.5rem}.category-card-title h3{margin:0;font-size:1rem;font-weight:600}.category-dot{width:12px;height:12px;border-radius:50%;display:inline-block}.category-count{font-size:.8rem;color:var(--color-text-secondary);background:var(--color-bg-secondary);padding:2px 8px;border-radius:10px}.category-tags{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.add-tag-inline{display:flex;align-items:center;gap:.375rem}.add-tag-inline input{width:120px;padding:4px 8px;font-size:.8rem;border-radius:6px;border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text)}.dashboards-page,.dashboard-detail-page{padding:0}.create-dashboard-form{display:flex;align-items:center;gap:.75rem;margin-bottom:2rem;padding:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.create-dashboard-form input{flex:1}.dashboards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.dashboard-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.25rem;cursor:pointer;transition:border-color .2s}.dashboard-card:hover{border-color:var(--color-primary)}.dashboard-card-header{display:flex;justify-content:space-between;align-items:flex-start}.dashboard-card-header h3{margin:0;font-size:1rem;font-weight:600}.dashboard-card-desc{color:var(--color-text-secondary);font-size:.85rem;margin:.5rem 0}.dashboard-card-date{font-size:.75rem;color:var(--color-text-tertiary)}.add-widget-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.add-widget-panel h2{margin:0 0 1rem;font-size:1.1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.5px}.form-group select,.form-group input[type=text]{width:100%;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);font-size:.9rem}.form-row{display:flex;gap:1rem;align-items:flex-end}.suggestions-grid{display:flex;flex-wrap:wrap;gap:.5rem}.suggestion-btn{display:flex;flex-direction:column;align-items:flex-start;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);cursor:pointer;transition:all .2s}.suggestion-btn:hover,.suggestion-btn.active{border-color:var(--color-primary);background:var(--color-primary-subtle)}.suggestion-label{font-size:.85rem;font-weight:500;color:var(--color-text)}.suggestion-types{font-size:.7rem;color:var(--color-text-tertiary);margin-top:2px}.add-widget-submit{align-self:flex-end;white-space:nowrap}.widgets-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.dashboard-widget{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.dashboard-widget.col-span-2{grid-column:span 2}.widget-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--color-border)}.widget-title{margin:0;font-size:.9rem;font-weight:600}.widget-remove{background:none;border:none;color:var(--color-text-tertiary);font-size:1.25rem;cursor:pointer;line-height:1;padding:0 4px}.widget-remove:hover{color:var(--color-danger)}.widget-body{padding:1rem}.widget-loading,.widget-error,.widget-empty{text-align:center;color:var(--color-text-secondary);font-size:.85rem;padding:2rem 1rem}.widget-summary{display:flex;gap:1.5rem;justify-content:center}.summary-stat{text-align:center}.summary-stat--primary .summary-value{color:var(--color-primary)}.summary-value{display:block;font-size:1.75rem;font-weight:700;color:var(--color-text)}.summary-label{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase}.widget-status-dist{padding:.5rem 0}.status-bar{display:flex;height:24px;border-radius:12px;overflow:hidden;margin-bottom:.75rem}.status-bar-segment{transition:width .3s;min-width:2px}.status-legend{display:flex;gap:1rem;flex-wrap:wrap}.status-legend-item{display:flex;align-items:center;gap:.375rem;font-size:.8rem}.status-legend-dot{width:10px;height:10px;border-radius:50%}.status-legend-label{color:var(--color-text-secondary)}.status-legend-value{font-weight:600;color:var(--color-text)}.widget-table-container{overflow-x:auto}.widget-table{width:100%;border-collapse:collapse;font-size:.8rem}.widget-table th{text-align:left;padding:.5rem;border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);font-weight:600;text-transform:uppercase;font-size:.7rem}.widget-table td{padding:.5rem;border-bottom:1px solid var(--color-border);color:var(--color-text)}.widget-table-tags{display:flex;gap:4px;flex-wrap:wrap}.widget-table-tag{padding:2px 6px;border-radius:10px;font-size:.65rem;color:#fff;font-weight:500}.widget-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem}.gallery-item img{width:100%;height:100px;object-fit:cover;border-radius:6px;border:1px solid var(--color-border)}.gallery-item-meta{display:flex;flex-direction:column;margin-top:4px}.gallery-item-field{font-size:.7rem;font-weight:500;color:var(--color-text)}.gallery-item-date{font-size:.65rem;color:var(--color-text-tertiary)}.export-actions{display:flex;gap:.5rem;margin-left:auto}@media print{.sidebar,.add-widget-panel,.export-actions,.widget-remove,.page-header .btn{display:none!important}.dashboard-detail-page{padding:0}.widgets-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.dashboard-widget{break-inside:avoid;border:1px solid #ddd}.widget-header{border-bottom:1px solid #ddd}body{background:#fff;color:#000}}.alerts-page{padding:0}.alert-create-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.alert-create-panel h2{margin:0 0 1rem;font-size:1.1rem}.alert-form-fields{border:0;margin:0;padding:0;min-width:0}.alert-create-panel .form-group{margin-bottom:1rem}.alert-create-panel .form-group label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.5px}.alert-create-panel .form-group input,.alert-create-panel .form-group select{width:100%;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-bg);color:var(--color-text);font-size:.9rem}.form-row{display:flex;gap:1rem}.form-row .form-group{flex:1}.checkbox-row{display:flex;gap:1.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto}.tag-filter-grid{display:flex;flex-wrap:wrap;gap:.4rem}.tag-filter-btn{padding:4px 10px;border-radius:12px;border:1.5px solid;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s}.alerts-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border);margin-bottom:1rem}.alerts-tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--color-text-secondary);font-size:.9rem;font-weight:500;cursor:pointer}.alerts-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.alerts-list{display:flex;flex-direction:column;gap:.75rem}.alert-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:1rem 1.25rem}.alert-card--disabled{opacity:.6}.alert-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.alert-card-title{display:flex;align-items:center;gap:.5rem}.alert-card-title h3{margin:0;font-size:.95rem;font-weight:600}.alert-status-dot{width:10px;height:10px;border-radius:50%}.alert-status-dot.active{background:#3fb950}.alert-status-dot.inactive{background:#6e7681}.alert-card-actions{display:flex;flex-wrap:wrap;gap:.375rem}@media (max-width: 600px){.alert-create-panel .form-row,.alert-create-panel .checkbox-row,.alert-card-header{flex-direction:column;align-items:stretch}}.alert-card-body{display:flex;flex-direction:column;gap:.25rem}.alert-rule{font-size:.85rem;color:var(--color-text)}.alert-meta{font-size:.75rem;color:var(--color-text-tertiary)}.alert-last-triggered{font-size:.75rem;color:var(--color-warning, #d29922);margin-top:.25rem}.alert-card-channels{display:flex;gap:.5rem;margin-top:.5rem}.channel-badge{font-size:.7rem;padding:2px 8px;border-radius:10px;background:var(--color-bg-secondary);color:var(--color-text-secondary)}.alert-history-list{display:flex;flex-direction:column;gap:.5rem}.alert-history-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:.75rem 1rem}.alert-history-header{display:flex;justify-content:space-between;align-items:center}.alert-history-name{font-size:.85rem;font-weight:500}.alert-history-date{font-size:.75rem;color:var(--color-text-tertiary)}.alert-history-value{font-size:.8rem;color:var(--color-text-secondary);margin-top:.25rem}.team-page{padding:32px;max-width:900px}.team-header{margin-bottom:24px}.team-title-row{display:flex;align-items:center;gap:16px;margin-bottom:8px}.team-title-row h1{font-size:24px;font-weight:600;margin:0}.seat-badge{font-size:13px;color:#57606a;background:#f6f8fa;padding:4px 10px;border-radius:12px;border:1px solid #d0d7de}.tenant-info{margin-top:8px}.tenant-name-display{display:flex;align-items:center;gap:8px}.tenant-name{font-size:15px;color:#57606a}.tenant-name-edit{display:flex;align-items:center;gap:8px}.tenant-name-edit input{padding:6px 10px;border:1px solid #d0d7de;border-radius:6px;font-size:14px;width:240px}.invite-form{display:flex;align-items:center;gap:8px;padding:16px;background:#f6f8fa;border:1px solid #d0d7de;border-radius:8px;margin-bottom:20px}.invite-form input[type=email]{flex:1;padding:8px 12px;border:1px solid #d0d7de;border-radius:6px;font-size:14px}.invite-form select{padding:8px 12px;border:1px solid #d0d7de;border-radius:6px;font-size:14px;background:#fff}.seats-full-msg{font-size:12px;color:#cf222e}.invitation-link{display:flex;gap:8px;margin:-12px 0 20px}.invitation-error{margin:-12px 0 20px;color:#cf222e;font-size:13px}.invitation-link input{flex:1;padding:8px 12px;border:1px solid #d0d7de;border-radius:6px;font-size:13px}.upgrade-banner{padding:16px;background:#fff8c5;border:1px solid #d4a72c;border-radius:8px;margin-bottom:20px}.upgrade-banner p{margin:0;font-size:14px;color:#6a5300}.team-tabs{display:flex;gap:0;border-bottom:1px solid #d0d7de;margin-bottom:16px}.team-tabs .tab{padding:10px 16px;font-size:14px;font-weight:500;color:#57606a;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer}.team-tabs .tab.active{color:#16a34a;border-bottom-color:#16a34a}.members-list,.invitations-list{display:flex;flex-direction:column;gap:2px}.member-row,.invitation-row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:8px;transition:background .15s}.member-row:hover,.invitation-row:hover{background:#f6f8fa}.member-info{display:flex;align-items:center;gap:12px}.member-avatar{width:36px;height:36px;border-radius:50%;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;overflow:hidden}.member-avatar img{width:100%;height:100%;object-fit:cover}.member-details{display:flex;flex-direction:column}.member-name{font-size:14px;font-weight:500;color:#1f2328}.member-email{font-size:12px;color:#57606a}.member-actions{display:flex;align-items:center;gap:8px}.role-select{padding:4px 8px;border:1px solid #d0d7de;border-radius:6px;font-size:13px;background:#fff}.role-badge{font-size:12px;padding:4px 10px;border-radius:12px;font-weight:500}.role-superadmin{background:#fef3c7;color:#92400e}.role-admin{background:#dbeafe;color:#1e40af}.role-manager{background:#dcfce7;color:#166534}.role-reporter{background:#f3f4f6;color:#374151}.role-viewer{background:#f3f4f6;color:#6b7280}.you-badge{font-size:11px;padding:2px 8px;border-radius:10px;background:#e0e7ff;color:#4338ca;font-weight:500}.invitation-info{display:flex;align-items:center;gap:12px}.invitation-email{font-size:14px;font-weight:500}.invitation-role{font-size:12px;padding:2px 8px;border-radius:10px;background:#f3f4f6;color:#57606a}.invitation-expires{font-size:12px;color:#8b949e}.empty-state{text-align:center;padding:32px;color:#57606a;font-size:14px}.btn-sm{font-size:12px;padding:4px 10px;border-radius:6px;border:1px solid #d0d7de;cursor:pointer;font-weight:500}.btn-secondary{background:#fff;color:#1f2328}.btn-ghost{background:none;border:none;cursor:pointer;padding:4px}.btn-danger{color:#cf222e;border-color:#cf222e;background:#fff}.btn-danger:hover{background:#cf222e;color:#fff}.production-page{padding:32px;max-width:1000px}.production-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;gap:16px;flex-wrap:wrap}.production-header>div{flex:1;min-width:220px}.production-header p{color:var(--color-fg-muted);line-height:1.5}.production-guide{margin-bottom:24px;padding:20px;border:1px solid var(--color-border-default);border-radius:8px;background:var(--color-panel);line-height:1.5}.production-guide h2,.pipeline-list-heading h2{margin:0 0 12px;font-size:18px}.production-guide p{margin:8px 0}.production-guide ol{padding-left:24px}.production-guide li+li{margin-top:8px}.production-hint{color:var(--color-fg-muted);font-size:13px}.pipeline-list-heading,.production-selected-process{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.production-page .pipeline-choice{display:block;width:100%;text-align:left;color:var(--color-fg-default);background:var(--color-panel);border-color:var(--color-border-default);white-space:normal;overflow-wrap:anywhere;border:0;padding:8px;border-radius:6px;margin-bottom:12px}.pipeline-choice:not(:disabled):hover{background:var(--color-canvas-subtle)}.pipeline-choice .pipeline-desc{display:block;color:var(--color-fg-muted)}.pipeline-use{display:block;margin-top:16px;color:var(--color-success);font-weight:600}.production-create-dialog{width:min(640px,calc(100% - 32px));max-height:85dvh;margin:auto;padding:24px;overflow-y:auto;color:var(--color-fg-default);background:var(--color-panel);border:1px solid var(--color-border-default);border-radius:8px}.production-create-dialog::backdrop{background:#00000080}.production-create-dialog h2{margin:0 0 16px;font-size:20px}.production-create-dialog p{line-height:1.5}.production-create-dialog .template-card,.production-create-dialog input{color:var(--color-fg-default);background:var(--color-input-bg);border-color:var(--color-border-default)}.production-create-dialog .modal-actions{flex-wrap:wrap}.production-error{color:var(--color-danger);background:var(--color-danger-subtle);padding:12px;border-radius:6px}.production-page a.batch-card{display:block;color:inherit;text-decoration:none}.production-page .stage-open{width:100%;border:0;border-radius:6px;background:transparent;color:inherit;text-align:left;gap:12px;white-space:normal}.stage-heading-copy{flex:1}.stage-action{display:block;margin-top:8px;color:var(--color-success);font-weight:600;font-size:14px}.stage-open:disabled .stage-action{color:var(--color-fg-muted)}.production-page .stage-summary{cursor:default}.production-page .stage-form{color:var(--color-fg-default);background:var(--color-panel);border-color:var(--color-border-default)}.production-page .stage-form input,.production-page .stage-form select,.production-page .stage-form textarea{color:var(--color-fg-default);background:var(--color-input-bg)}@media (max-width: 600px){.production-page{padding:0}.production-create-dialog{padding:16px}}.production-header h1{font-size:24px;font-weight:600;margin:0}.subtitle{color:#57606a;font-size:14px;margin:4px 0 0}.production-tabs{display:flex;border-bottom:1px solid #d0d7de;margin-bottom:20px;gap:0}.production-tabs .tab{padding:10px 16px;font-size:14px;font-weight:500;color:#57606a;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer}.production-tabs .tab.active{color:#16a34a;border-bottom-color:#16a34a}.batch-section{margin-bottom:28px}.batch-section h3{font-size:14px;font-weight:600;color:#57606a;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.batch-list{display:flex;flex-direction:column;gap:8px}.batch-card{padding:16px;border:1px solid #d0d7de;border-radius:8px;cursor:pointer;transition:all .15s}.batch-card:hover{border-color:#16a34a;box-shadow:0 1px 4px #16a34a1a}.batch-card.completed{opacity:.7}.batch-card-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.batch-icon{font-size:24px}.batch-info{flex:1;display:flex;flex-direction:column}.batch-name{font-size:15px;font-weight:600}.batch-pipeline{font-size:12px;color:#57606a}.batch-status{font-size:12px;padding:4px 10px;border-radius:12px;font-weight:500}.status-active{background:#dcfce7;color:#166534}.status-completed{background:#dbeafe;color:#1e40af}.status-cancelled{background:#fee2e2;color:#991b1b}.batch-progress{margin-bottom:8px;display:flex;align-items:center;gap:10px}.progress-bar{flex:1;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:#16a34a;border-radius:3px;transition:width .3s}.progress-text{font-size:12px;color:#57606a;white-space:nowrap}.batch-meta{display:flex;gap:16px;font-size:12px;color:#8b949e}.pipeline-list{display:flex;flex-direction:column;gap:12px}.pipeline-card{padding:16px;border:1px solid #d0d7de;border-radius:8px}.pipeline-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.pipeline-icon{font-size:22px}.pipeline-name{font-size:15px;font-weight:600;display:block}.pipeline-desc{font-size:13px;color:#57606a;margin:0 0 10px}.system-badge{font-size:10px;padding:2px 6px;border-radius:8px;background:#f0fdf4;color:#16a34a;font-weight:600}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:#fff;border-radius:12px;padding:24px;width:90%;max-width:560px;max-height:85vh;overflow-y:auto}.modal h2{font-size:18px;margin:0 0 16px}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin-bottom:8px}.template-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;background:#fff;transition:border-color .15s}.template-card:hover{border-color:#16a34a}.template-card.selected{border-color:#16a34a;background:#f0fdf4}.template-icon{font-size:24px}.template-name{font-size:13px;font-weight:500;text-align:center}.template-stages{font-size:11px;color:#8b949e}.field-checkboxes{display:flex;flex-direction:column;gap:4px}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.stages-preview{display:flex;flex-direction:column;gap:4px}.stage-preview-item{border:1px solid var(--color-border-default);border-radius:6px;color:var(--color-fg-default);background:var(--color-panel);overflow-wrap:anywhere;font-size:13px}.stage-preview-item>summary{padding:12px;cursor:pointer;line-height:1.5}.stage-preview-item>summary:focus-visible{outline:3px solid var(--color-success);outline-offset:2px}.stage-preview-item .stage-num{display:inline-flex;margin-right:8px}.stage-preview-action{display:block;color:var(--color-success);margin-top:4px}.stage-preview-content{padding:0 16px 12px;line-height:1.5}.stage-preview-fields{list-style:none;padding:0;margin:12px 0}.stage-preview-fields>li{padding:10px 0;border-top:1px solid var(--color-border-default)}.stage-preview-meta{display:block;color:var(--color-fg-muted)}.stage-preview-options{padding-left:20px;margin:6px 0 0}.stage-content>.stage-preview-item{margin-top:8px}.stage-num{width:22px;height:22px;border-radius:50%;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.back-btn{background:none;border:none;font-size:14px;color:#57606a;cursor:pointer;padding:4px 0;margin-bottom:12px}.back-btn:hover{color:#1f2328}.batch-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.batch-detail-header h1{font-size:22px;font-weight:600;margin:0}.batch-detail-actions{display:flex;align-items:center;gap:10px}.btn-danger-sm{font-size:12px;padding:4px 10px;border:1px solid #cf222e;border-radius:6px;color:#cf222e;background:#fff;cursor:pointer}.btn-danger-sm:hover{background:#cf222e;color:#fff}.source-fields{margin-bottom:20px}.source-fields h3{font-size:14px;font-weight:600;margin-bottom:8px}.source-tags{display:flex;flex-wrap:wrap;gap:6px}.source-tag{font-size:13px;padding:4px 10px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#166534}.yield-tracker{margin-bottom:24px;padding:16px;background:#f6f8fa;border-radius:8px;border:1px solid #e5e7eb}.yield-tracker h3{font-size:14px;font-weight:600;margin:0 0 12px}.yield-bars{display:flex;flex-direction:column;gap:8px}.yield-bar-row{display:flex;align-items:center;gap:10px}.yield-label{width:140px;font-size:12px;color:#57606a;text-align:right}.yield-bar-container{flex:1;height:14px;background:#e5e7eb;border-radius:7px;overflow:hidden}.yield-bar{height:100%;background:linear-gradient(90deg,#16a34a,#22c55e);border-radius:7px;transition:width .4s}.yield-value{width:130px;font-size:12px;font-weight:500}.yield-loss{color:#dc2626;font-weight:400}.stage-timeline{margin-top:8px}.stage-timeline h3{font-size:14px;font-weight:600;margin-bottom:16px}.stage-item{display:flex;gap:16px;padding-bottom:20px;position:relative}.stage-item:not(:last-child):before{content:"";position:absolute;left:15px;top:36px;bottom:0;width:2px;background:#e5e7eb}.stage-item.completed:not(:last-child):before{background:#16a34a}.stage-marker{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0;background:#e5e7eb;color:#57606a}.stage-item.completed .stage-marker{background:#16a34a;color:#fff}.stage-item.current .stage-marker{background:#fff;border:2px solid #16a34a;color:#16a34a}.stage-item.locked .stage-marker{background:#f3f4f6;color:#9ca3af}.stage-content{flex:1;min-width:0}.stage-header{display:flex;justify-content:space-between;align-items:flex-start;cursor:pointer;padding:4px 0}.stage-item.locked .stage-header{cursor:default}.stage-name{font-size:15px;font-weight:500;display:block}.stage-desc{font-size:12px;color:#8b949e;display:block;margin-top:2px}.stage-date{font-size:12px;color:#8b949e}.current-badge{font-size:11px;padding:2px 8px;border-radius:10px;background:#dcfce7;color:#166534;font-weight:600}.locked-badge{font-size:14px}.stage-summary{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;padding:8px 12px;background:#f6f8fa;border-radius:6px;cursor:pointer}.summary-item{font-size:12px;color:#57606a}.summary-item strong{color:#1f2328}.stage-form{margin-top:12px;padding:16px;background:#f6f8fa;border:1px solid #e5e7eb;border-radius:8px}.form-group{margin-bottom:12px}.form-group label{display:block;font-size:13px;font-weight:500;margin-bottom:4px;color:#1f2328}.required{color:#cf222e;margin-left:2px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:8px 10px;border:1px solid #d0d7de;border-radius:6px;font-size:14px;box-sizing:border-box}.form-group textarea{resize:vertical}.stage-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.btn-primary{background:#16a34a;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.btn-primary:hover{background:#15803d}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#fff;color:#1f2328;border:1px solid #d0d7de;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.empty-state{text-align:center;padding:48px 20px;color:#57606a}.empty-state p{margin:4px 0}.pipeline-form{margin-top:20px}.form-section{margin-bottom:20px;padding:16px;background:#f6f8fa;border:1px solid #e5e7eb;border-radius:8px}.form-row{display:flex;gap:12px;align-items:flex-start}.stages-heading{font-size:16px;font-weight:600;margin:24px 0 12px}.stage-builder{border:1px solid #d0d7de;border-radius:8px;padding:16px;margin-bottom:12px;background:#fff}.stage-builder-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.stage-builder-num{width:28px;height:28px;border-radius:50%;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600}.stage-builder-controls{display:flex;gap:4px}.stage-builder-controls button{width:28px;height:28px;border:1px solid #d0d7de;border-radius:6px;background:#fff;cursor:pointer;font-size:13px;display:flex;align-items:center;justify-content:center}.stage-builder-controls button:disabled{opacity:.3;cursor:not-allowed}.stage-builder-controls .remove-btn{color:#cf222e;border-color:#cf222e}.stage-fields{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.fields-label{font-size:13px;font-weight:500;color:#57606a;display:block;margin-bottom:8px}.field-builder-row{display:flex;align-items:center;gap:6px;margin-bottom:6px}.field-label-input{flex:2;padding:6px 8px;border:1px solid #d0d7de;border-radius:6px;font-size:13px}.field-type-select{width:110px;padding:6px 8px;border:1px solid #d0d7de;border-radius:6px;font-size:13px;background:#fff}.field-options-input{flex:2;padding:6px 8px;border:1px solid #d0d7de;border-radius:6px;font-size:13px}.checkbox-label.compact{font-size:12px;gap:4px;white-space:nowrap}.field-move-btn{width:24px;height:24px;border:1px solid #e5e7eb;border-radius:4px;background:#fff;cursor:pointer;font-size:11px;display:flex;align-items:center;justify-content:center}.field-move-btn:disabled{opacity:.3;cursor:not-allowed}.field-remove-btn{width:24px;height:24px;border:1px solid #fecaca;border-radius:4px;background:#fff;color:#cf222e;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center}.field-remove-btn:hover{background:#fee2e2}.add-field-btn{font-size:13px;color:#16a34a;background:none;border:1px dashed #bbf7d0;border-radius:6px;padding:6px 12px;cursor:pointer;width:100%;margin-top:4px}.add-field-btn:hover{background:#f0fdf4}.add-stage-btn{font-size:14px;color:#16a34a;background:none;border:2px dashed #bbf7d0;border-radius:8px;padding:14px;cursor:pointer;width:100%;font-weight:500;margin-bottom:20px}.add-stage-btn:hover{background:#f0fdf4}.pipeline-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:16px;border-top:1px solid #e5e7eb}.marketing{background:var(--color-canvas);color:var(--color-fg-default);font-size:16px;line-height:1.65;min-height:100vh}.marketing-container{width:min(1184px,calc(100% - 48px));margin-inline:auto}.marketing a{color:var(--color-success)}.marketing a:focus-visible,.marketing [tabindex]:focus-visible{outline:3px solid var(--color-success);outline-offset:4px}.marketing-skip{position:absolute;top:-100px;left:16px;z-index:10;padding:12px 20px;background:var(--color-canvas);border:2px solid var(--color-success)}.marketing-skip:focus{top:8px}.marketing-header{border-bottom:1px solid var(--color-border-muted)}.marketing-nav{display:flex;align-items:center;gap:40px;padding-block:22px}.marketing-brand{display:inline-flex;align-items:center;gap:10px;font-size:28px;font-weight:750;letter-spacing:-1px}.marketing nav,.marketing-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.marketing-nav>.marketing-actions{margin-left:auto}.marketing nav a{color:var(--color-fg-default);font-size:14px}.marketing nav a[aria-current=page]{color:var(--color-success);text-decoration:underline;text-underline-offset:6px}.marketing-session{padding-bottom:12px;font-size:13px}.marketing-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--color-border-default);border-radius:var(--radius-md);background:var(--color-canvas);font-size:14px;font-weight:600;text-align:center}.marketing .marketing-button-primary{background:var(--color-btn-primary-bg);color:var(--color-btn-primary-text);border-color:var(--color-btn-primary-bg)}.marketing-button:hover{background:var(--color-canvas-subtle);text-decoration:none}.marketing .marketing-button-primary:hover{background:var(--color-btn-primary-hover)}.marketing-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center;padding-block:80px}.marketing h1{font-size:clamp(34px,4.1vw,52px);line-height:1.12;letter-spacing:-1.6px;max-width:850px;margin-bottom:24px}.marketing h1 span{color:var(--color-success)}.marketing h2{font-size:clamp(27px,3vw,36px);line-height:1.2;letter-spacing:-.8px;margin-bottom:20px}.marketing h3{font-size:19px;line-height:1.35;margin-bottom:10px}.marketing-eyebrow{font-size:13px;font-weight:700;color:var(--color-success);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:16px}.marketing-lead{color:var(--color-fg-muted);font-size:18px;max-width:760px;margin-bottom:28px}.marketing-fineprint{color:var(--color-fg-muted);font-size:13px;margin-top:20px;max-width:900px}.marketing-illustration{border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:28px;background:var(--color-canvas-subtle);box-shadow:var(--shadow-sm)}.marketing-illustration figcaption{font-weight:600;margin-bottom:24px}.marketing-illustration figcaption span{font-size:12px;font-weight:400;color:var(--color-fg-muted)}.marketing-illustration ol{list-style:none;display:grid;gap:16px}.marketing-illustration li{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid var(--color-border-muted);border-radius:var(--radius-md);background:var(--color-canvas)}.marketing-illustration li>span{color:var(--color-success);font-size:13px;font-family:var(--font-mono)}.marketing-illustration li p{font-size:13px;color:var(--color-fg-muted)}.marketing-illustration-note{margin-top:24px;color:var(--color-success);font-size:14px}.marketing-section{padding-block:56px}.marketing-band{background:var(--color-canvas-subtle);border-block:1px solid var(--color-border-muted)}.marketing-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:36px}.marketing-feature-grid p,.marketing-steps p,.marketing-faq p{color:var(--color-fg-muted)}.marketing-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;padding-left:24px;margin-top:36px}.marketing-steps li{padding-left:8px}.marketing-steps li::marker{color:var(--color-success);font-weight:700}.marketing-notice{background:var(--color-success-subtle);border:1px solid var(--color-success);border-radius:var(--radius-lg);padding:20px 24px;margin-block:28px;font-size:14px}.marketing-notice p{margin-top:6px}.marketing-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-block:28px}.marketing-plan{display:flex;flex-direction:column;padding:24px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);background:var(--color-canvas)}.marketing-plan h3{font-size:22px}.marketing-plan>p:not(.marketing-price){color:var(--color-fg-muted);font-size:14px}.marketing-price{margin-top:24px;font-weight:700;font-size:clamp(23px,2.4vw,30px);letter-spacing:-.7px}.marketing-plan ul{list-style:none;margin-block:24px;font-size:14px;display:grid;gap:10px}.marketing-plan-action{margin-top:auto;border-top:1px solid var(--color-border-muted);padding-top:20px;font-size:13px;color:var(--color-fg-muted)}.marketing-plan-action .marketing-button{width:100%;margin-bottom:12px}.marketing-pending{font-weight:600}.marketing-table-scroll{overflow-x:auto;margin-top:24px;border:1px solid var(--color-border-default);border-radius:var(--radius-lg)}.marketing-table{width:100%;min-width:1000px;border-collapse:collapse;font-size:14px;text-align:left}.marketing-table caption{text-align:left;padding:16px;font-size:13px;color:var(--color-fg-muted)}.marketing-table th,.marketing-table td{padding:16px;border-top:1px solid var(--color-border-muted);vertical-align:top}.marketing-table thead{background:var(--color-success-subtle)}.marketing-table th[scope=row]{min-width:230px;font-weight:600}.marketing-table tbody tr:nth-child(2n){background:var(--color-canvas-subtle)}.marketing-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 48px;margin-top:32px}.marketing-footer{margin-top:32px;border-top:1px solid var(--color-border-default);background:var(--color-canvas-subtle);padding-block:36px}.marketing-footer-inner{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:28px}.marketing-footer p{color:var(--color-fg-muted);font-size:13px}@media (max-width: 960px){.marketing-hero{gap:32px;padding-block:52px}.marketing-nav{gap:24px}.marketing-plans,.marketing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.marketing-container{width:calc(100% - 32px)}.marketing-nav{flex-wrap:wrap;gap:16px;padding-block:16px}.marketing-nav nav{margin-left:auto}.marketing-nav>.marketing-actions{margin-left:0;width:100%;justify-content:flex-end}.marketing-hero,.marketing-plans,.marketing-feature-grid,.marketing-steps,.marketing-faq{grid-template-columns:minmax(0,1fr)}.marketing-hero{padding-block:40px;gap:36px}.marketing-section{padding-block:36px}.marketing-illustration{padding:20px}.marketing-plan{padding:22px}.marketing-price{font-size:30px}.marketing-steps{gap:24px}}:root,[data-theme=light]{--color-canvas: #ffffff;--color-canvas-subtle: #f6f8fa;--color-canvas-inset: #eff2f5;--color-page: var(--color-canvas-subtle);--color-panel: var(--color-canvas);--color-border-default: #d0d7de;--color-border-muted: #d8dee4;--color-fg-default: #1f2328;--color-fg-muted: #656d76;--color-fg-subtle: #6e7781;--color-accent: #0969da;--color-success: #1a7f37;--color-success-subtle: #dafbe1;--color-warning: #9a6700;--color-warning-subtle: #fff8c5;--color-danger: #cf222e;--color-danger-subtle: #ffebe9;--color-info: #0969da;--color-info-subtle: #ddf4ff;--color-neutral: #6e7781;--color-neutral-subtle: #eaeef2;--color-btn-primary-bg: #1a7f37;--color-btn-primary-hover: #116329;--color-btn-primary-text: #ffffff;--color-btn-bg: #f6f8fa;--color-btn-border: #d0d7de;--color-btn-hover-bg: #f3f4f6;--color-btn-hover-border: #c9d1d9;--color-input-bg: #ffffff;--color-input-border: #d0d7de;--color-input-focus-border: #0969da;--color-input-focus-shadow: rgba(9, 105, 218, .12);--color-sidebar-bg: #f6f8fa;--color-header-bg: #f6f8fa;--color-avatar-bg: #d0d7de;--color-avatar-fg: #57606a;--shadow-sm: 0 1px 0 rgba(27, 31, 36, .04);--shadow-md: 0 3px 6px rgba(140, 149, 159, .15);--shadow-lg: 0 8px 24px rgba(140, 149, 159, .2);--shadow-card: 0 1px 3px rgba(27, 31, 36, .04), 0 1px 2px rgba(27, 31, 36, .06);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-full: 100px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-md: 14px;--font-size-lg: 16px;--font-size-xl: 20px;--font-size-2xl: 24px;--line-height-tight: 1.25;--line-height-normal: 1.5}[data-theme=dark]{--color-canvas: #0d1117;--color-canvas-subtle: #161b22;--color-canvas-inset: #010409;--color-page: var(--color-canvas);--color-panel: var(--color-canvas-subtle);--color-border-default: #30363d;--color-border-muted: #21262d;--color-fg-default: #e6edf3;--color-fg-muted: #8b949e;--color-fg-subtle: #6e7681;--color-accent: #58a6ff;--color-success: #3fb950;--color-success-subtle: rgba(63, 185, 80, .15);--color-warning: #d29922;--color-warning-subtle: rgba(210, 153, 34, .15);--color-danger: #f85149;--color-danger-subtle: rgba(248, 81, 73, .15);--color-info: #58a6ff;--color-info-subtle: rgba(88, 166, 255, .15);--color-neutral: #6e7681;--color-neutral-subtle: rgba(110, 118, 129, .15);--color-btn-primary-bg: #238636;--color-btn-primary-hover: #2ea043;--color-btn-primary-text: #ffffff;--color-btn-bg: #21262d;--color-btn-border: #30363d;--color-btn-hover-bg: #30363d;--color-btn-hover-border: #8b949e;--color-input-bg: #0d1117;--color-input-border: #30363d;--color-input-focus-border: #58a6ff;--color-input-focus-shadow: rgba(88, 166, 255, .12);--color-sidebar-bg: #161b22;--color-header-bg: #161b22;--color-avatar-bg: #30363d;--color-avatar-fg: #8b949e;--shadow-sm: 0 0 transparent;--shadow-md: 0 3px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .6);--shadow-card: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .4)}:root{--color-surface: var(--color-panel);--color-border: var(--color-border-default);--border-color: var(--color-border-default);--color-primary: var(--color-btn-primary-bg);--color-text: var(--color-fg-default);--color-text-secondary: var(--color-fg-muted);--color-text-tertiary: var(--color-fg-muted);--color-bg: var(--color-input-bg);--color-bg-secondary: var(--color-canvas-subtle)}.layout :focus-visible{outline:3px solid var(--color-success);outline-offset:3px}.layout .btn{min-height:44px;padding:8px 16px;gap:8px;white-space:normal;text-align:center;text-decoration:none}.layout .btn-secondary{background:var(--color-surface)}.layout .btn-secondary:hover:not(:disabled){background:var(--color-btn-hover-bg)}.layout input:not([type=checkbox]):not([type=radio]):not([type=color]),.layout select{min-height:44px}.layout input[type=checkbox],.layout input[type=radio]{accent-color:var(--color-success)}.layout .bell-button{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:var(--color-fg-muted)}.layout .page-header,.layout .section-header,.layout .form-row,.layout .modal-actions{flex-wrap:wrap;gap:12px}.layout .page-title,.crop-setup h1{font-size:28px;line-height:1.25;letter-spacing:-.025em;font-weight:700}@media (prefers-reduced-motion: reduce){.layout *,.layout *:before,.layout *:after{transition:none!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);font-size:var(--font-size-md);color:var(--color-fg-default);background-color:var(--color-canvas);line-height:var(--line-height-normal);transition:background-color .2s,color .2s}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,select,textarea{font-family:inherit;font-size:inherit}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh}.loading-spinner{width:32px;height:32px;border:3px solid var(--color-border-default);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
