:root{color-scheme:light;--bg: #f6f7fa;--surface: #ffffff;--surface-2: #f2f4f8;--surface-hover: #f8f9fc;--input-bg: #ffffff;--border: #e4e7ee;--border-strong: #cfd5e1;--text: #171c2b;--text-2: #4b5266;--muted: #646b80;--placeholder: #6f7689;--primary: #3457d5;--primary-hover: #2a48b8;--primary-soft: #e9eefc;--primary-faint: #f5f7fe;--on-accent: #ffffff;--danger: #b32f2f;--danger-soft: #fdeaea;--danger-border: #f2c5c5;--success: #166f45;--success-soft: #e4f6ec;--warning: #8a5a12;--warning-soft: #fff3d9;--warning-border: #f0dfb5;--info-soft: #e7f0fb;--info-border: #cfdcf2;--focus: var(--primary);--focus-ring: rgba(52, 87, 213, .16);--warning-ring: rgba(138, 90, 18, .18);--shadow: 0 1px 2px rgba(20, 24, 40, .06);--shadow-lg: 0 12px 32px rgba(20, 24, 40, .16);--shade: rgba(20, 24, 40, .12);--shade-strong: rgba(20, 24, 40, .3);--backdrop: rgba(15, 18, 30, .45);--media-bg: #0f1220;--toast-bg: #1c2130;--toast-text: #ffffff;--toast-muted: rgba(255, 255, 255, .6);--toast-success: #5ad48f;--toast-error: #ff8a8a;--toast-info: #8fb4ff;--step-message-bg: #e6edfd;--step-message-fg: #2b4fc4;--step-menu-bg: #efe6fb;--step-menu-fg: #6b32b3;--step-input-bg: #fff1d9;--step-input-fg: #8f5b00;--step-action-bg: #e2f5ea;--step-action-fg: #1a6e45;--phone-frame: #1b1f2b;--tg-bg: #e3e8ee;--tg-out: #e2f7cb;--tg-in: #ffffff;--tg-header: #ffffff;--tg-border: #dfe3e8;--tg-keyboard: #eaedf1;--tg-key: #ffffff;--tg-key-hover: #f4f7fb;--tg-icon: #8a94a6;--tg-muted: #6b7590;--tg-system: rgba(40, 50, 70, .28);--tg-shadow: rgba(0, 0, 0, .08);--tg-accent: #2678c9;--radius: 10px;--radius-sm: 7px;--sidebar-w: 232px;--z-topbar: 30;--z-backdrop: 35;--z-drawer: 36;--z-modal: 40;--z-toast: 50;--z-skip: 60;--fs-xs: 11px;--fs-sm: 12px;--fs-md: 13px;--fs-base: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 26px;--fs-3xl: 32px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #12151d;--surface: #1a1e28;--surface-2: #232837;--surface-hover: #20242f;--input-bg: #14171f;--border: #2b3140;--border-strong: #3a4154;--text: #e8eaf1;--text-2: #b4bac9;--muted: #8f96a8;--placeholder: #7f879a;--primary: #7b98ff;--primary-hover: #93aaff;--primary-soft: #263056;--primary-faint: #1f2640;--on-accent: #0f1320;--danger: #ff8a8a;--danger-soft: #3a2224;--danger-border: #5a2e31;--success: #5ac48a;--success-soft: #1e3a2c;--warning: #e6b45a;--warning-soft: #3a2f1a;--warning-border: #5a4728;--info-soft: #1f2a3d;--info-border: #2d3d5a;--focus-ring: rgba(123, 152, 255, .25);--warning-ring: rgba(230, 180, 90, .2);--shadow: 0 1px 2px rgba(0, 0, 0, .4);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .6);--shade: rgba(0, 0, 0, .45);--shade-strong: rgba(0, 0, 0, .7);--backdrop: rgba(0, 0, 0, .6);--media-bg: #0b0d14;--toast-bg: #e9ecf3;--toast-text: #171c2b;--toast-muted: rgba(23, 28, 43, .6);--toast-success: #166f45;--toast-error: #b32f2f;--toast-info: #3457d5;--step-message-bg: #24304f;--step-message-fg: #a9bbff;--step-menu-bg: #33274a;--step-menu-fg: #cfaef7;--step-input-bg: #3d3220;--step-input-fg: #f0c078;--step-action-bg: #1f3a2d;--step-action-fg: #86d9aa;--phone-frame: #000000;--tg-bg: #0e1621;--tg-out: #2b5278;--tg-in: #182533;--tg-header: #17212b;--tg-border: #0b1119;--tg-keyboard: #17212b;--tg-key: #232e3c;--tg-key-hover: #2b3847;--tg-icon: #8a97a6;--tg-muted: #8a97a6;--tg-system: rgba(0, 0, 0, .45);--tg-shadow: rgba(0, 0, 0, .3);--tg-accent: #6ab3f3}}:root[data-theme=dark]{color-scheme:dark;--bg: #12151d;--surface: #1a1e28;--surface-2: #232837;--surface-hover: #20242f;--input-bg: #14171f;--border: #2b3140;--border-strong: #3a4154;--text: #e8eaf1;--text-2: #b4bac9;--muted: #8f96a8;--placeholder: #7f879a;--primary: #7b98ff;--primary-hover: #93aaff;--primary-soft: #263056;--primary-faint: #1f2640;--on-accent: #0f1320;--danger: #ff8a8a;--danger-soft: #3a2224;--danger-border: #5a2e31;--success: #5ac48a;--success-soft: #1e3a2c;--warning: #e6b45a;--warning-soft: #3a2f1a;--warning-border: #5a4728;--info-soft: #1f2a3d;--info-border: #2d3d5a;--focus-ring: rgba(123, 152, 255, .25);--warning-ring: rgba(230, 180, 90, .2);--shadow: 0 1px 2px rgba(0, 0, 0, .4);--shadow-lg: 0 12px 32px rgba(0, 0, 0, .6);--shade: rgba(0, 0, 0, .45);--shade-strong: rgba(0, 0, 0, .7);--backdrop: rgba(0, 0, 0, .6);--media-bg: #0b0d14;--toast-bg: #e9ecf3;--toast-text: #171c2b;--toast-muted: rgba(23, 28, 43, .6);--toast-success: #166f45;--toast-error: #b32f2f;--toast-info: #3457d5;--step-message-bg: #24304f;--step-message-fg: #a9bbff;--step-menu-bg: #33274a;--step-menu-fg: #cfaef7;--step-input-bg: #3d3220;--step-input-fg: #f0c078;--step-action-bg: #1f3a2d;--step-action-fg: #86d9aa;--phone-frame: #000000;--tg-bg: #0e1621;--tg-out: #2b5278;--tg-in: #182533;--tg-header: #17212b;--tg-border: #0b1119;--tg-keyboard: #17212b;--tg-key: #232e3c;--tg-key-hover: #2b3847;--tg-icon: #8a97a6;--tg-muted: #8a97a6;--tg-system: rgba(0, 0, 0, .45);--tg-shadow: rgba(0, 0, 0, .3);--tg-accent: #6ab3f3}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238f96a8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}}:root[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238f96a8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E")}*{box-sizing:border-box}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}.modal:focus,.content:focus,.sidebar:focus{outline:none}html,body,#root{height:100%;margin:0}body{font:14px/1.5 -apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,Helvetica,Arial,sans-serif;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}a.plain,a.plain:hover{color:inherit;text-decoration:none}h1{font-size:22px;font-weight:650;letter-spacing:-.01em;margin:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}h2{font-size:var(--fs-base);font-weight:650;margin:0}h3{font-size:var(--fs-md);font-weight:650;margin:0 0 8px;color:var(--text-2)}p{margin:0 0 10px}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-sm);background:var(--surface-2);padding:1px 5px;border-radius:4px}.muted{color:var(--muted)}.text-2{color:var(--text-2)}.small{font-size:var(--fs-sm)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-sm)}.num{text-align:right;font-variant-numeric:tabular-nums}.pos{color:var(--success);font-weight:600}.neg{color:var(--danger);font-weight:600}.center{display:flex;align-items:center;justify-content:center;height:100%}.icon{flex-shrink:0;vertical-align:-3px}.row{display:flex;align-items:center;gap:8px}.row.between{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:16px}.grow{flex:1}.mt{margin-top:16px}.shell{display:flex;min-height:100vh}.topbar,.btn.sidebar-close,.sidebar-backdrop{display:none}.sidebar{width:var(--sidebar-w);flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:16px 12px;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:9px;padding:4px 8px 18px;font-weight:650;font-size:15px}.brand-mark{width:28px;height:28px;flex-shrink:0;border-radius:8px;background:var(--primary);color:var(--on-accent);display:inline-flex;align-items:center;justify-content:center}.brand-text{display:flex;flex-direction:column;min-width:0;line-height:1.2}.brand-sub{color:var(--muted);font-weight:500;font-size:var(--fs-sm)}.sidebar nav{display:flex;flex-direction:column;gap:2px}.sidebar nav a{color:var(--text-2);padding:8px 10px;border-radius:var(--radius-sm);display:flex;align-items:center;gap:10px;font-weight:500}.sidebar nav a:hover{background:var(--surface-2);text-decoration:none;color:var(--text)}.sidebar nav a.active{background:var(--primary-soft);color:var(--primary)}.pill{margin-left:auto;background:var(--danger);color:var(--on-accent);border-radius:99px;font-size:var(--fs-xs);padding:1px 7px;font-weight:600;line-height:16px}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:10px}.bot-status{display:flex;align-items:flex-start;gap:9px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.bot-status>div{min-width:0;overflow-wrap:anywhere}.bot-status .dot{width:8px;height:8px;border-radius:50%;margin-top:6px;background:var(--muted);flex-shrink:0}.bot-status.on .dot{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.bot-status.off .dot{background:var(--warning);box-shadow:0 0 0 3px var(--warning-soft)}.bot-status-title{font-weight:600;font-size:var(--fs-md)}.lang-switch{display:flex;align-items:center;gap:8px;color:var(--muted);padding:0 4px}.lang-switch select{min-height:30px;padding:4px 26px 4px 8px;font-size:var(--fs-md);background-position:right 6px center}.me{display:flex;flex-direction:column;gap:4px;padding:4px 4px 0}.me-id{display:flex;align-items:center;gap:8px;min-width:0}.me-actions{display:flex;gap:2px;margin-left:30px}.me-name{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2;font-weight:500;font-size:var(--fs-md)}.me-user{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.me-role{font-size:var(--fs-xs);font-weight:400;color:var(--muted)}.content{flex:1;padding:28px 36px 48px;min-width:0;overflow-x:clip;outline:none}.skip-link{position:absolute;left:12px;top:-100px;z-index:var(--z-skip);padding:8px 12px;background:var(--surface);color:var(--primary);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);font-weight:600}.skip-link:focus{top:12px;text-decoration:none}.page-narrow,.page-wide,.page-builder,.settings-form{margin-left:auto;margin-right:auto}.page-narrow{max-width:1200px}.page-wide{max-width:1440px}.page-builder{max-width:1720px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;gap:16px}.page-header .subtitle{color:var(--muted);margin:4px 0 0}.page-header .actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.back-link{display:inline-flex;align-items:center;gap:4px;color:var(--muted);font-size:var(--fs-md);margin-bottom:6px}.back-link:hover{color:var(--text);text-decoration:none}.title-meta{font-weight:500;color:var(--muted);font-size:var(--fs-base);margin-left:2px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px;box-shadow:var(--shadow)}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.card.flush{padding:0;overflow:hidden}.card.flush>.loading{padding:20px}.card.flush>table,.card.flush>.table-scroll>table,.card.flush>.table-scroll-wrap>.table-scroll>table{margin:0}.table-scroll-wrap{position:relative;max-width:100%}.table-scroll-wrap:after{content:"";position:absolute;top:0;right:0;bottom:0;width:28px;pointer-events:none;opacity:0;transition:opacity .15s;background:linear-gradient(to left,var(--shade),transparent)}.table-scroll-wrap.can-scroll:after{opacity:1}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.table-scroll>table{min-width:100%}td.num,td.cell-date,.nowrap{white-space:nowrap}td.cell-summary{min-width:200px;max-width:360px;white-space:normal}.row-actions{white-space:nowrap;text-align:right;position:sticky;right:0;background:var(--surface)}tr.clickable:hover td.row-actions{background:var(--surface-2)}.table-scroll-wrap.can-scroll .row-actions{box-shadow:inset 10px 0 10px -10px var(--shade-strong)}.table-scroll-wrap:has(.row-actions):after{display:none}.row-actions .btn+.btn{margin-left:2px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat{display:flex;flex-direction:column;gap:6px}.stat-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-height:38px;color:var(--muted);font-size:var(--fs-md);font-weight:500}.stat-top .icon{margin-top:1px}.stat-top .icon{color:var(--muted)}.stat-value{font-size:var(--fs-2xl);font-weight:650;letter-spacing:-.02em;line-height:1.1}.stat-sub{color:var(--muted);font-size:var(--fs-sm)}.stat.attention{border-color:var(--warning)}.stat.attention .stat-top .icon{color:var(--warning)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.grid-2>*{min-width:0}.recent-list{display:flex;flex-direction:column}.recent-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--border);color:inherit}.recent-item:first-child{padding-top:0}.recent-item:last-child{border-bottom:0;padding-bottom:0}.recent-main{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.recent-main>div{min-width:0}.recent-title{font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-title .id{color:var(--primary);margin-right:6px}a.recent-item:hover .recent-title{color:var(--primary)}.recent-side{display:flex;align-items:center;gap:10px;flex-shrink:0;white-space:nowrap;font-variant-numeric:tabular-nums}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--border);vertical-align:middle}th{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600;white-space:nowrap;background:var(--surface)}tbody tr:last-child td{border-bottom:0}tr.clickable{cursor:pointer}tr.clickable:hover td{background:var(--surface-hover)}td .avatar{margin-right:8px}a.cell-link{color:inherit}a.cell-link:hover,tr.clickable:hover a.cell-link{color:var(--primary);text-decoration:none}.log-toggle{background:none;border:0;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer;overflow-wrap:anywhere}.log-toggle:hover{color:var(--text)}.cell-primary{display:flex;align-items:center;gap:10px;font-weight:550}.cell-sub{color:var(--muted);font-size:var(--fs-sm);font-weight:400}.table-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:10px 14px;border-top:1px solid var(--border);color:var(--muted);font-size:var(--fs-md)}.badge{display:inline-flex;align-items:center;gap:6px;padding:2px 9px 2px 7px;border-radius:99px;font-size:var(--fs-sm);font-weight:550;background:var(--surface-2);color:var(--text-2);white-space:nowrap}.badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.85}.badge.pending,.badge.unregistered{background:var(--warning-soft);color:var(--warning)}.badge.approved,.badge.active,.badge.registered,.badge.purchase,.badge.bonus{background:var(--success-soft);color:var(--success)}.badge.rejected,.badge.blocked,.badge.spend{background:var(--danger-soft);color:var(--danger)}.badge.adjustment{background:var(--info-soft);color:var(--primary)}.badge.inactive{background:var(--surface-2);color:var(--muted)}.chip{display:inline-flex;align-items:center;gap:5px;padding:1px 8px;border-radius:6px;font-size:var(--fs-sm);font-weight:550;background:var(--surface-2);color:var(--text-2);border:1px solid var(--border);white-space:nowrap}.chip+.chip{margin-left:4px}.field{display:flex;flex-direction:column;gap:5px}.field-label{font-size:var(--fs-md);color:var(--text-2);font-weight:550}.field.inline{flex-direction:row;align-items:center;gap:8px}.field.inline .field-label{font-weight:500;color:var(--text)}.hint{font-size:var(--fs-sm);color:var(--muted);font-weight:400;line-height:1.4}input,select,textarea{font:inherit;color:var(--text);padding:7px 10px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--input-bg);width:100%;min-height:34px;transition:border-color .12s,box-shadow .12s}input::placeholder,textarea::placeholder{color:var(--placeholder)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}input:disabled,select:disabled,textarea:disabled{background:var(--surface-2);color:var(--muted)}textarea{min-height:88px;resize:vertical;line-height:1.45}input[type=checkbox]{width:16px;height:16px;min-height:0;padding:0;margin:0;accent-color:var(--primary)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23646b80' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:30px}.form{display:flex;flex-direction:column;gap:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-row.three{grid-template-columns:1fr 1fr 1fr}.form-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.form-actions.end{justify-content:flex-end}.input-icon{position:relative}.input-icon .icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}.input-icon input{padding-left:32px}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.toolbar input,.toolbar select{width:auto}.toolbar>select{min-width:160px;flex:0 1 180px}.toolbar-search{flex:1 1 200px;max-width:360px;min-width:0}.toolbar-search input{width:100%}.date-range{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto}.date-range input{width:132px;min-width:0}.date-range .sep{color:var(--muted)}.segmented{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px;gap:2px}.segmented button{border:0;background:none;font:inherit;font-size:var(--fs-md);font-weight:500;padding:5px 12px;border-radius:5px;color:var(--text-2);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.segmented button:hover{color:var(--text)}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.segmented .count{font-size:var(--fs-xs);background:var(--border);border-radius:99px;padding:0 6px;color:var(--text-2)}.segmented button.active .count{background:var(--primary-soft);color:var(--primary)}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:16px;flex-wrap:wrap}.tabs button{white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;gap:6px}.tabs button{background:none;border:0;padding:8px 12px;cursor:pointer;color:var(--muted);font:inherit;font-weight:500;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button:hover{color:var(--text)}.tabs button.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.tabs .count{font-size:var(--fs-xs);background:var(--border);border-radius:99px;padding:0 6px;color:var(--text-2);font-weight:500}.tabs button.active .count{background:var(--primary-soft);color:var(--primary)}.notice{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:var(--radius-sm);font-size:var(--fs-md);border:1px solid}.notice.error{color:var(--danger);background:var(--danger-soft);border-color:var(--danger-border)}.notice.info{color:var(--text-2);background:var(--info-soft);border-color:var(--info-border)}.notice.warning{color:var(--warning);background:var(--warning-soft);border-color:var(--warning-border)}.btn{font:inherit;font-weight:550;font-size:var(--fs-base);padding:0 13px;height:34px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:background .12s,border-color .12s,color .12s}.btn:hover{background:var(--surface-2)}.btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-accent)}.btn.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.btn.success{background:var(--success);border-color:var(--success);color:var(--on-accent)}.btn.success:hover{filter:brightness(.95)}.btn.danger{color:var(--danger);border-color:var(--danger-border)}.btn.danger:hover{background:var(--danger-soft)}.btn.danger-solid{background:var(--danger);border-color:var(--danger);color:var(--on-accent)}.btn.danger-solid:hover{filter:brightness(.95)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn.ghost:hover{background:var(--surface-2);color:var(--text)}.btn.small{height:28px;padding:0 10px;font-size:var(--fs-md);gap:5px}.btn.icon{width:34px;padding:0}.btn.icon.small{width:28px}.btn-link{background:none;border:0;color:var(--primary);cursor:pointer;font:inherit;padding:0}.btn-link:hover{text-decoration:underline}.avatar{--avatar-h: 225;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-weight:650;flex-shrink:0;background:hsl(var(--avatar-h) 55% 92%);color:hsl(var(--avatar-h) 45% 32%)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .avatar{background:hsl(var(--avatar-h) 30% 26%);color:hsl(var(--avatar-h) 70% 82%)}}:root[data-theme=dark] .avatar{background:hsl(var(--avatar-h) 30% 26%);color:hsl(var(--avatar-h) 70% 82%)}.avatar.small{width:26px;height:26px;font-size:var(--fs-xs);background:var(--primary-soft);color:var(--primary)}.empty{text-align:center;padding:40px 20px;color:var(--muted)}.empty-icon{width:44px;height:44px;border-radius:12px;background:var(--surface-2);display:inline-flex;align-items:center;justify-content:center;color:var(--muted);margin-bottom:10px}.empty-title{font-weight:600;color:var(--text-2)}.empty-hint{font-size:var(--fs-md);margin-top:2px}.loading{color:var(--muted);display:flex;align-items:center;gap:8px;padding:20px 0}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--primary);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toasts{position:fixed;right:20px;bottom:20px;display:flex;flex-direction:column;gap:8px;z-index:var(--z-toast)}.toast{display:flex;align-items:center;gap:10px;background:var(--toast-bg);color:var(--toast-text);padding:10px 12px 10px 14px;border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);font-size:var(--fs-md);min-width:260px;max-width:420px;animation:toast-in .18s ease-out}.toast .icon{flex-shrink:0}.toast.success .icon{color:var(--toast-success)}.toast.error .icon{color:var(--toast-error)}.toast.info .icon{color:var(--toast-info)}.toast span{flex:1}.toast-close{background:none;border:0;color:var(--toast-muted);cursor:pointer;padding:2px;display:inline-flex}.toast-close:hover{color:var(--toast-text)}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop);display:flex;align-items:center;justify-content:center;padding:16px;z-index:var(--z-modal);animation:fade .12s ease-out}.modal{background:var(--surface);border-radius:12px;width:420px;max-width:100%;max-height:calc(100dvh - 32px);overflow-y:auto;overscroll-behavior:contain;padding:22px 22px 18px;box-shadow:var(--shadow-lg)}.modal{position:relative}.modal h2{font-size:var(--fs-lg);margin-bottom:8px;padding-right:40px}.modal-close{position:absolute;top:12px;right:12px}.modal-body{color:var(--text-2);font-size:var(--fs-base);line-height:1.5}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}@keyframes fade{0%{opacity:0}to{opacity:1}}.login-wrap{min-height:100vh;padding:16px;display:flex;align-items:center;justify-content:center;background:var(--bg)}.login-card{width:100%;max-width:380px;display:flex;flex-direction:column;gap:14px;padding:28px}.login-brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:650;margin-bottom:4px}.kv{display:grid;grid-template-columns:130px 1fr;gap:8px 14px;margin:0;font-size:var(--fs-base)}.kv dt{color:var(--muted)}.kv dd{margin:0;min-width:0;overflow-wrap:anywhere}.balance{font-size:var(--fs-3xl);font-weight:650;letter-spacing:-.02em;line-height:1}.balance small{font-size:var(--fs-base);font-weight:500;color:var(--muted);margin-left:6px;letter-spacing:0}.uploads{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.upload{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.upload-preview{display:block;height:180px;background:var(--surface-2);position:relative}.upload-preview img{width:100%;height:100%;object-fit:cover;display:block}.upload-preview .file-icon{height:100%;display:flex;align-items:center;justify-content:center;color:var(--muted)}.upload-meta{padding:10px 12px;font-size:var(--fs-md)}.upload-meta .name{font-weight:550;overflow-wrap:anywhere;margin:6px 0 2px}.upload-links{display:flex;gap:12px;margin-top:6px}.upload-links a{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-md)}.upload.large{grid-column:1 / -1}.upload.large .upload-preview{height:min(420px,45vh);background:var(--media-bg)}.upload.large .upload-preview img{object-fit:contain}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:16px;align-items:start}.review-layout>*{min-width:0}.review-layout .sticky{position:sticky;top:24px}.doc-group+.doc-group{margin-top:18px}.doc-group h3{display:flex;align-items:center;gap:7px}.builder{display:grid;grid-template-columns:1fr;gap:16px;align-items:start}.builder>*{min-width:0}.builder .card{margin:0}.builder-nav{padding:16px}.builder-editor{scroll-margin-top:64px}.flow-form{max-width:560px;width:100%;margin-bottom:20px}.nav-section>h2{display:flex;align-items:center;margin-bottom:4px}.nav-section>.hint{margin:0 0 10px}.nav-section+.nav-section{margin-top:18px;padding-top:16px;border-top:1px solid var(--border)}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:7px;border-radius:99px;background:var(--surface-2);color:var(--text-2);font-size:var(--fs-sm);font-weight:600}.add-step-btn{margin-top:2px;width:100%;border:1px dashed var(--border-strong);background:none;color:var(--primary);font:inherit;font-weight:550;font-size:var(--fs-md);padding:9px;border-radius:var(--radius-sm);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:background .12s,border-color .12s}.add-step-btn:hover{background:var(--primary-soft);border-color:var(--primary)}.builder-editor{min-height:320px}.preview-col{position:static}.preview-card{padding:12px}.preview-head{padding:4px 4px 0;margin-bottom:10px}.preview-head .hint{margin:2px 0 0}.list-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;gap:6px;flex-wrap:wrap}.flow-list{display:flex;flex-direction:column;gap:2px}.flow-list button{text-align:left;background:none;border:0;font:inherit;font-weight:500;padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;color:var(--text-2);display:flex;align-items:center;flex-wrap:wrap;gap:2px 8px;width:100%}.flow-list button:hover{background:var(--surface-2);color:var(--text)}.flow-list button.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.flow-list .flow-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flow-tag{display:inline-flex;align-items:center;gap:4px;flex:0 0 100%;font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);white-space:nowrap}.flow-list button.active .flow-tag{color:var(--primary);opacity:.8}.problem-dot{min-width:18px;height:18px;padding:0 5px;border-radius:99px;background:var(--warning);color:var(--on-accent);font-size:var(--fs-xs);font-weight:700;display:inline-flex;align-items:center;justify-content:center}.step-list{display:flex;flex-direction:column;gap:6px}.step-item{display:flex;align-items:center;gap:8px;padding:7px 6px 7px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:var(--surface);position:relative}.step-item:hover{border-color:var(--border-strong)}.step-item:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.step-item.active{border-color:var(--primary);background:var(--primary-faint)}.step-item .idx{color:var(--muted);font-size:var(--fs-xs);width:14px;font-variant-numeric:tabular-nums;text-align:right}.step-item .step-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.step-item .step-title{font-weight:550;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;overflow-wrap:anywhere;font-size:var(--fs-md);line-height:1.3}.step-item .step-sub{font-size:var(--fs-sm);color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.step-item .step-warn{color:var(--warning);display:inline-flex}.step-item .order{display:flex;flex-direction:column;opacity:0;transition:opacity .12s}.step-item:hover .order,.step-item:focus-within .order,.step-item.active .order,.order.always{opacity:1}.order button{border:0;background:none;cursor:pointer;line-height:0;padding:1px 2px;color:var(--muted);border-radius:3px}.order button:hover{color:var(--primary);background:var(--primary-soft)}.order button:disabled{opacity:.3;cursor:default;background:none;color:var(--muted)}.step-icon{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--surface-2);color:var(--text-2)}.step-icon.big{width:38px;height:38px;border-radius:10px}.step-icon.message{background:var(--step-message-bg);color:var(--step-message-fg)}.step-icon.menu{background:var(--step-menu-bg);color:var(--step-menu-fg)}.step-icon.input_text,.step-icon.input_phone,.step-icon.input_file{background:var(--step-input-bg);color:var(--step-input-fg)}.step-icon.action{background:var(--step-action-bg);color:var(--step-action-fg)}.step-icon.flow{background:var(--primary-soft);color:var(--primary)}.editor-section{padding-top:16px;margin-top:16px;border-top:1px solid var(--border)}.editor-section h3{margin-bottom:8px;display:flex;align-items:center;gap:6px}.insert-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:-6px}.chip.clickable{cursor:pointer;font:inherit;font-size:var(--fs-sm);font-weight:550}.chip.clickable:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.buttons-editor{display:flex;flex-direction:column;gap:8px}.button-row{display:flex;align-items:flex-start;gap:8px;padding:10px 10px 10px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2)}.button-row .idx{color:var(--muted);font-size:var(--fs-xs);width:14px;text-align:right;padding-top:10px;font-variant-numeric:tabular-nums}.button-fields{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.button-fields input{background:var(--input-bg);font-weight:550}.inline-select{display:grid;grid-template-columns:96px 1fr;align-items:center;gap:8px;font-size:var(--fs-md);color:var(--text-2)}.inline-select select{min-height:32px;padding-top:5px;padding-bottom:5px;font-size:var(--fs-md)}.button-row .order{padding-top:4px}.button-row .btn.icon{margin-top:2px}select.invalid{border-color:var(--warning);box-shadow:0 0 0 3px var(--warning-ring)}.unsaved{display:inline-flex;align-items:center;gap:5px;color:var(--warning);font-size:var(--fs-sm);font-weight:600}.unsaved:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.help-steps{margin:0;padding-left:20px;color:var(--text-2);font-size:var(--fs-md);display:flex;flex-direction:column;gap:6px}.help-steps li::marker{color:var(--primary);font-weight:600}.role-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.role-card{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted)}.role-card>div{flex:1 1 150px;min-width:0}.role-card .btn{margin-left:auto}.role-card.on{border-color:var(--success);background:var(--success-soft);color:var(--success)}.role-title{font-weight:600;font-size:var(--fs-md);color:var(--text)}.role-card .btn{flex-shrink:0}.problem-list{margin-bottom:14px}.problem-list ul{margin:4px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:3px}.problem-list .btn-link{color:inherit;text-align:left;text-decoration:underline}details.advanced summary{cursor:pointer;font-size:var(--fs-md);font-weight:600;color:var(--text-2);list-style:none;display:flex;align-items:center;gap:6px}details.advanced summary:before{content:"";width:6px;height:6px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(-45deg);transition:transform .12s;margin-left:2px}details.advanced[open] summary:before{transform:rotate(45deg)}details.advanced summary::-webkit-details-marker{display:none}details.advanced>:not(summary){margin-top:12px}.editor-footer{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:20px -20px -18px;padding:12px 20px 14px;border-top:1px solid var(--border);border-radius:0 0 var(--radius) var(--radius);position:sticky;bottom:0;z-index:1;background:var(--surface);box-shadow:0 -10px 18px -12px var(--shade-strong)}.editor-footer .editor-actions{display:flex;align-items:center;gap:8px;flex:1 1 auto;flex-wrap:wrap;min-width:0}.editor-footer .btn.ghost.danger{border-color:transparent;margin-left:auto}.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.type-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;text-align:left;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);cursor:pointer;font:inherit;color:var(--text);transition:border-color .12s,box-shadow .12s}.type-card:hover{border-color:var(--primary);box-shadow:0 0 0 3px var(--focus-ring)}.type-card-title{font-weight:600;font-size:var(--fs-base)}.type-card-help{font-size:var(--fs-sm);color:var(--muted);line-height:1.4}.modal.wide{width:640px}.step-editor .card-head>.row{flex-wrap:nowrap}.step-editor .card-head>.row:first-child{min-width:0}.step-editor .card-head>.row:first-child>div{min-width:0}.preview-tools{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px;padding:0 4px}.preview-note{color:var(--muted);font-size:var(--fs-sm);text-align:center;margin:10px 0 2px}.modal-backdrop.sheet{align-items:flex-end;padding:0}.modal.sheet{width:100%;max-width:560px;border-radius:16px 16px 0 0;max-height:calc(100dvh - 24px);padding:16px 16px 12px}.modal.sheet .phone{height:min(600px,62dvh);min-height:340px}@media(max-width:1099px){.toasts{top:16px;bottom:auto}}.phone{width:100%;max-width:380px;margin:0 auto;border:8px solid var(--phone-frame);border-radius:30px;background:var(--tg-bg);overflow:hidden;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;height:min(600px,calc(100vh - 260px));min-height:360px}.tg-header{background:var(--tg-header);border-bottom:1px solid var(--tg-border);padding:10px 14px;display:flex;align-items:center;gap:10px}.tg-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#5aa8ff,#3390ec);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:650;font-size:15px}.tg-header .name{font-weight:600;font-size:var(--fs-base);line-height:1.2}.tg-header .sub{font-size:var(--fs-sm);color:var(--tg-accent)}.tg-chat{flex:1;min-height:0;overflow-y:auto;padding:12px 10px;display:flex;flex-direction:column;gap:5px}.bubble{max-width:84%;padding:6px 10px 7px;border-radius:12px;font-size:var(--fs-base);line-height:1.4;white-space:pre-wrap;word-break:break-word;box-shadow:0 1px 1px var(--tg-shadow)}.bubble.bot{align-self:flex-start;background:var(--tg-in);border-bottom-left-radius:4px}.bubble.user{align-self:flex-end;background:var(--tg-out);border-bottom-right-radius:4px}.bubble.system{align-self:center;background:var(--tg-system);color:#fff;font-size:var(--fs-sm);border-radius:99px;padding:2px 10px;box-shadow:none;max-width:95%;text-align:center}.bubble.placeholder{align-self:center;background:none;box-shadow:none;color:var(--tg-muted);font-size:var(--fs-md);margin-top:auto;margin-bottom:auto}.tg-keyboard{background:var(--tg-keyboard);padding:6px;display:flex;flex-direction:column;gap:5px;border-top:1px solid var(--tg-border)}.tg-keyboard .krow{display:flex;gap:5px}.tg-keyboard button{flex:1;background:var(--tg-key);border:0;border-radius:8px;padding:9px 8px;font:inherit;font-size:var(--fs-base);cursor:pointer;box-shadow:0 1px 1px var(--tg-shadow);color:var(--text)}.tg-keyboard button:hover{background:var(--tg-key-hover)}.tg-input{display:flex;gap:4px;padding:6px 8px;background:var(--tg-header);border-top:1px solid var(--tg-border);align-items:center}.tg-input input{border:0;box-shadow:none;padding:6px 4px;min-height:0}.tg-input input:focus{box-shadow:none}.tg-input button{background:none;border:0;cursor:pointer;color:var(--tg-icon);padding:6px;border-radius:50%;display:inline-flex}.tg-input button:hover{color:var(--tg-accent);background:var(--tg-key-hover)}.tg-input button.send{color:var(--tg-accent)}.tg-input button:disabled{opacity:.35;cursor:default;background:none}@media(min-width:1100px){.builder{grid-template-columns:minmax(0,1fr) minmax(300px,340px)}.builder .preview-col{grid-column:2;grid-row:1 / span 2;position:sticky;top:20px}.preview-card .phone{height:clamp(320px,calc(100vh - 300px),600px)}.builder-nav{grid-column:1;grid-row:1;padding:12px 16px;display:flex;flex-direction:column;gap:10px}.builder-editor{grid-column:1;grid-row:2}.nav-section{display:flex;align-items:center;gap:10px;min-width:0}.nav-section>h2{margin:0;flex-shrink:0}.nav-section>.hint{display:none}.nav-section+.nav-section{margin-top:0;padding-top:10px;border-top:1px solid var(--border)}.flow-list{flex-direction:row;flex-wrap:wrap;gap:4px;min-width:0}.flow-list button{width:auto;padding:5px 10px;font-size:var(--fs-md)}.flow-list .flow-name{flex:0 1 auto}.flow-list .flow-tag{flex-basis:auto}.step-list{flex-direction:row;flex:1;min-width:0;overflow-x:auto;gap:8px;padding:2px 2px 6px;scroll-snap-type:x proximity;scrollbar-width:thin}.step-item{flex:0 0 clamp(240px,40%,320px);min-width:0;scroll-snap-align:start}.step-item .order{flex-direction:row}.step-item .order .icon{transform:rotate(-90deg)}.step-list .add-step-btn{flex:0 0 auto;width:auto;margin-top:0;align-self:stretch;padding:0 14px}}@media(min-width:1600px){.builder{grid-template-columns:minmax(260px,300px) minmax(0,1fr) minmax(320px,380px)}.builder .preview-col{grid-column:3;grid-row:1}.builder-nav{grid-column:1;grid-row:1;display:block;position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto;padding:16px}.builder-editor{grid-column:2;grid-row:1}.nav-section{display:block}.nav-section>h2{margin-bottom:4px}.nav-section>.hint{display:block;margin:0 0 10px}.nav-section+.nav-section{margin-top:18px;padding-top:16px}.flow-list{flex-direction:column;flex-wrap:nowrap;gap:2px}.flow-list button{width:100%;padding:8px 10px;font-size:inherit}.flow-list .flow-name{flex:1}.flow-list .flow-tag{flex-basis:100%}.step-list{flex-direction:column;flex:none;overflow-x:visible;gap:6px;padding:0;scroll-snap-type:none}.step-item{flex:none}.step-item .order{flex-direction:column}.step-item .order .icon{transform:none}.step-list .add-step-btn{width:100%;margin-top:2px;padding:9px;align-self:auto}}@media(max-width:1599px){.step-editor .card-head .btn-label{display:none}.step-editor .card-head .btn:not(.icon){width:28px;padding:0}.type-grid{grid-template-columns:1fr 1fr}}@media(max-width:1439px){.review-layout{grid-template-columns:minmax(0,1fr) minmax(300px,340px)}.tabs button{padding:8px 10px}.row-actions .btn-label{display:none}.row-actions .btn{width:28px;padding:0}}@media(max-width:1279px){.col-secondary{display:none}.stats{grid-template-columns:1fr 1fr}.grid-2.dashboard{grid-template-columns:1fr}}@media(max-width:1099px){.review-layout{grid-template-columns:1fr}.review-layout .sticky{position:static}.review-layout .review-side{order:-1}.step-item .order{opacity:1}}@media(max-width:960px){.grid-2,.form-row,.form-row.three{grid-template-columns:1fr}.content{padding:20px}}@media(max-width:840px){.shell{flex-direction:column}.topbar{display:flex;align-items:center;gap:4px;position:sticky;top:0;z-index:var(--z-topbar);padding:8px 10px;background:var(--surface);border-bottom:1px solid var(--border)}.topbar .brand{padding:0 4px}.sidebar{position:fixed;top:0;left:0;bottom:0;height:100dvh;width:min(var(--sidebar-w),85vw);z-index:var(--z-drawer);transform:translate(-100%);transition:transform .18s ease;border-right:0}.sidebar.open{transform:none;box-shadow:var(--shadow-lg)}.sidebar .brand{padding-right:0}.btn.sidebar-close{display:inline-flex;margin-left:auto}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop);z-index:var(--z-backdrop);animation:fade .12s ease-out}.content{padding:16px;max-width:none}.toolbar>input,.toolbar>select,.toolbar .input-icon{flex:1 1 180px;min-width:0}.toolbar .input-icon input{width:100%}.toolbar .segmented{max-width:100%;overflow-x:auto;scrollbar-width:thin}.segmented button{flex-shrink:0}.toolbar-search{max-width:none}.date-range{flex:1 1 260px}.date-range input{flex:1;width:auto;min-width:0}.btn,.btn.small{height:auto;min-height:44px}.btn.icon,.btn.icon.small,.row-actions .btn,.step-editor .card-head .btn:not(.icon){width:44px}.segmented button,.tabs button,.flow-list button,.sidebar nav a,.lang-switch select,.add-step-btn,.chip.clickable{min-height:44px}.toast-close{padding:10px}.tg-input button{padding:13px}.tg-keyboard button{min-height:44px}input[type=checkbox]{width:22px;height:22px}.perm input{margin-top:0}.upload-links a,.card-head>a,.back-link{min-height:44px;display:inline-flex;align-items:center}.card-head>a{margin:-12px 0}.step-item .order{flex-direction:row;gap:2px}.order button{width:36px;height:36px;padding:0;display:inline-flex;align-items:center;justify-content:center}.button-row .order{padding-top:0}.btn-link{min-height:44px}}@media(max-width:640px){h1{font-size:var(--fs-xl)}.content{padding:14px 12px 32px}.card{padding:14px}.page-header{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:16px}.page-header .actions{flex-wrap:wrap}.role-cards{grid-template-columns:1fr}.phone{height:min(660px,78dvh);border-width:6px;border-radius:24px}.upload.large .upload-preview{height:auto;aspect-ratio:4 / 3;max-height:60vh}.toasts{left:12px;right:12px;top:60px}.toast{min-width:0;max-width:none}.modal{padding:18px 16px 14px}.editor-footer{margin:16px -14px -14px;padding:10px 14px 12px;flex-wrap:nowrap}.editor-footer .editor-actions{flex-wrap:nowrap}.editor-footer .editor-actions .btn.primary{flex:1 1 auto;min-width:0}.editor-footer .btn-label{display:none}.editor-footer .btn:not(.primary){width:44px;padding:0;flex-shrink:0}.modal-actions{flex-wrap:wrap}.log-details,.log-explain{max-width:none;min-width:0}.tabs{flex-wrap:nowrap;overflow-x:auto}th,td{padding:8px 10px}.table-scroll td{white-space:nowrap}.table-scroll td.cell-summary{white-space:normal}.col-tertiary{display:none}.table-scroll .log-table td{white-space:normal}.log-table thead{display:none}.log-table,.log-table tbody,.log-table tr,.log-table td{display:block}.log-table tr{padding:10px 12px;border-bottom:1px solid var(--border)}.log-table tr:last-child{border-bottom:0}.log-table td{padding:2px 0;border:0}.log-table td.col-secondary{display:none}.log-table td.log-details,.log-table td.log-explain{max-width:none;min-width:0}}@media(max-width:480px){.stats{grid-template-columns:1fr}.kv{grid-template-columns:1fr;gap:0}.kv dt{margin-top:8px}.kv dt:first-child{margin-top:0}.inline-select{grid-template-columns:1fr;gap:4px}.type-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.spinner{animation-duration:.8s!important;animation-iteration-count:infinite!important}}.badge.super_admin{background:var(--primary-soft);color:var(--primary)}.badge.admin{background:var(--success-soft);color:var(--success)}.badge.operator{background:var(--surface-2);color:var(--text-2)}.perm-group{margin-top:10px}.perm-group h3{margin-bottom:4px}.perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px 16px}.perm{display:flex;align-items:flex-start;gap:8px;font-size:var(--fs-md);cursor:pointer;padding:3px 0}.perm input{margin-top:3px}.perm.disabled{color:var(--muted);cursor:not-allowed}.settings-form{max-width:680px;width:100%}.save-bar{position:sticky;bottom:12px;z-index:2;display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.log-table td{vertical-align:top}.log-explain{font-size:var(--fs-md);color:var(--text);overflow-wrap:anywhere;min-width:260px;max-width:640px}.log-explain .log-toggle{display:block;width:100%}.log-explain .log-more{display:block;margin-top:2px}.log-explain mark,.log-details mark,.log-table mark{background:var(--warning-soft);color:inherit;border-radius:3px;padding:0 1px}.log-details{font-size:var(--fs-md);color:var(--text-2);overflow-wrap:anywhere;max-width:340px}@media(max-width:1599px){.log-table .col-details{display:none}}.log-kv b{font-weight:550;color:var(--text)}.log-json{margin:6px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-sm);background:var(--surface-2);padding:10px 12px;border-radius:var(--radius-sm);white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;overflow:auto;color:var(--text)}.login-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:var(--fs-sm)}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--border)}.passkeys-modal{width:520px}.passkey-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.passkey-list li{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm)}.passkey-list li>.icon{color:var(--text-2);flex-shrink:0}.passkey-info{flex:1;min-width:0}.passkey-name{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:550}.passkey-add{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.release-bar{display:grid;grid-template-columns:1fr;gap:14px;margin:16px 0 0;padding:12px 14px}.release-side{display:flex;gap:10px;align-items:flex-start;min-width:0}.release-dot{width:10px;height:10px;border-radius:50%;margin-top:5px;flex-shrink:0;background:var(--border-strong)}.release-dot.ok{background:var(--success)}.release-dot.pending{background:var(--warning)}.release-dot.bad{background:var(--danger)}.release-body{flex:1;min-width:0}.release-body h3{margin:0;font-size:var(--fs-md);color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.02em}.release-status{margin:3px 0 0;font-weight:600;overflow-wrap:anywhere}.release-meta{margin:2px 0 0;overflow-wrap:anywhere}.release-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.change-list{margin:10px 0 0;padding-left:18px}.change-list li{margin:4px 0}.change-list .muted{margin-left:4px}.release-history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:min(60vh,480px);overflow-y:auto}.release-history li{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-sm)}.release-history li>div{flex:1 1 200px;min-width:0}.release-history .btn{margin-left:auto}@media(min-width:800px){.release-bar{grid-template-columns:1fr 1fr}.release-side+.release-side{border-left:1px solid var(--border);padding-left:14px}}
