:root{--bg:#f4f6f8;--panel:#fff;--text:#15212b;--muted:#667784;--line:#dce3e8;--primary:#126b5b;--primary-dark:#0c5144;--danger:#b73535;--warning:#9b6200;--shadow:0 8px 30px rgba(25,45,56,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}.topbar{height:64px;background:#102a2a;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1400px)/2));box-shadow:0 1px 8px #0003}.brand{font-size:20px;font-weight:800;color:#fff;text-decoration:none;letter-spacing:-.4px}.brand span{color:#58d6b8}.topbar nav{display:flex;align-items:center;gap:24px}.topbar nav>a,.link-button{color:#dcebe7;text-decoration:none}.topbar nav>a:hover,.link-button:hover{color:#fff}.inline-form{display:inline}.link-button{border:0;background:transparent;padding:0;cursor:pointer}.container{max-width:1400px;margin:0 auto;padding:32px 24px 60px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-heading h1{margin:0 0 5px;font-size:28px}.page-heading p,.muted{color:var(--muted);margin:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}.stats article{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;box-shadow:var(--shadow)}.stats strong{font-size:28px;display:block}.stats span{color:var(--muted)}.danger-stat strong{color:var(--danger)}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;margin-bottom:16px}.filters input,.filters select,input,textarea,select{width:100%;border:1px solid #cbd6dc;border-radius:8px;padding:10px 12px;background:#fff;color:var(--text);font:inherit}textarea{resize:vertical;line-height:1.6}.button{display:inline-block;border:1px solid #becbd2;border-radius:8px;padding:9px 16px;background:#fff;color:var(--text);cursor:pointer;font-weight:650;text-decoration:none}.button:hover{background:#f4f8f7}.button.primary{background:var(--primary);color:#fff;border-color:var(--primary)}.button.primary:hover{background:var(--primary-dark)}.button.full{width:100%}.button.small{padding:5px 10px;font-size:12px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:middle}th{background:#f8fafb;color:#596974;font-size:12px;text-transform:uppercase;letter-spacing:.04em}tr:last-child td{border-bottom:0}td small{display:block;color:var(--muted);margin-top:3px}.ticket-link{display:block;color:var(--text);font-weight:700;text-decoration:none}.ticket-link:hover{color:var(--primary)}.badge{display:inline-flex;border-radius:999px;padding:3px 9px;background:#e8edf0;color:#4f606a;font-size:12px;font-weight:700}.badge.large{padding:6px 13px}.badge.success,.status-published,.status-draft_ready{background:#d9f3e9;color:#13624f}.badge.danger,.status-failed{background:#fde3e3;color:#982828}.status-pending,.status-generating{background:#e5edff;color:#31589a}.status-approved,.status-publishing{background:#fff0c9;color:#7e5700}.status-stale{background:#eee8f7;color:#674c82}.empty{text-align:center;color:var(--muted);padding:40px}.back{display:inline-block;color:var(--primary);text-decoration:none;margin-bottom:14px}.ticket-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(380px,.75fr);gap:20px;align-items:start}.conversation,.review{padding:20px}.review{position:sticky;top:20px}.panel-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.panel-title h2,.form-panel h2{margin:0;font-size:18px}.panel-title>span:not(.badge){color:var(--muted)}.message{border:1px solid var(--line);border-radius:10px;padding:14px;margin:12px 0;background:#fafcfd}.message.admin{border-left:4px solid var(--primary);background:#f1f9f7}.message-meta{display:flex;justify-content:space-between;margin-bottom:8px}.message-meta span{color:var(--muted);font-size:12px}.message-body{white-space:pre-wrap;word-break:break-word}.analysis-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.analysis-grid div{background:#f5f8f9;border-radius:8px;padding:10px}.analysis-grid span{display:block;color:var(--muted);font-size:12px}.analysis-grid .wide{grid-column:1/-1}.review label,.form-panel label,.login-card label{display:block;font-weight:650;margin:14px 0}.review label input,.review label textarea,.form-panel label input,.login-card label input{margin-top:6px;font-weight:400}.alert{border-radius:8px;padding:12px 14px;margin:14px 0}.alert.error{background:#fde7e7;color:#842525}.alert.warning{background:#fff1ce;color:#714c00}.alert.info{background:#e5f1ff;color:#28567f}.alert.success{background:#dcf5ea;color:#155c4b}.secret-box code{display:block;background:#fff9;padding:8px;margin-top:8px;border-radius:5px;word-break:break-all}.draft-meta{color:var(--muted);font-size:12px;margin-top:16px}.waiting{text-align:center;padding:50px 10px;color:var(--muted)}.spinner{width:30px;height:30px;border:3px solid #dce5e7;border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin:auto}@keyframes spin{to{transform:rotate(360deg)}}.job-meta{display:grid;grid-template-columns:auto 1fr;gap:6px 14px}.job-meta dt{color:var(--muted)}.job-meta dd{margin:0}.error-text{color:var(--danger)}.two-column{display:grid;grid-template-columns:360px 1fr;gap:20px;align-items:start}.form-panel{padding:20px}.details{display:block;max-width:430px;white-space:normal;word-break:break-all}.login-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#0c2827,#17473e)}.login-card{width:min(400px,calc(100% - 32px));background:#fff;padding:32px;border-radius:16px;box-shadow:0 25px 60px #0005}.login-brand{color:#102a2a}.login-card h1{margin:20px 0 4px}.login-card .button{margin-top:8px}
@media(max-width:900px){.stats{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr 1fr}.ticket-grid,.two-column{grid-template-columns:1fr}.review{position:static}.topbar nav{gap:12px}.topbar{padding:0 16px}.container{padding:24px 14px}}
@media(max-width:600px){.stats{grid-template-columns:1fr 1fr}.filters{grid-template-columns:1fr}.topbar nav>a:nth-child(2),.topbar nav>a:nth-child(3){display:none}.page-heading{align-items:flex-start}.table-wrap{font-size:13px}}
.row-actions{display:flex;align-items:center;gap:8px;white-space:nowrap}.knowledge-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;margin:6px 0 14px}.section-heading h2{margin:0 0 3px}.section-heading p{margin:0;color:var(--muted)}.count-pill{background:#e4efec;color:#245f54;border-radius:999px;padding:5px 10px;white-space:nowrap}.editor-card{margin-bottom:14px;overflow:hidden}.editor-card>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;cursor:pointer;font-weight:750;background:#fbfcfd}.editor-card[open]>summary{border-bottom:1px solid var(--line)}.summary-meta{color:var(--muted);font-size:12px;font-weight:500}.editor-card>form,.editor-card>.subsection,.editor-card>.danger-zone{margin:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label,.stack-form label{font-weight:650}.form-grid label input,.form-grid label textarea,.stack-form label input,.stack-form label textarea{margin-top:5px;font-weight:400}.form-grid .wide{grid-column:1/-1}.stack-form{display:grid;gap:12px}.check-label{display:flex!important;align-items:center;gap:7px;font-weight:500!important}.check-label input{width:auto!important;margin:0!important}.check-label.compact{white-space:nowrap}.subsection{border-top:1px solid var(--line);padding-top:14px}.subsection h3{margin:0 0 10px}.promo-row{display:grid;grid-template-columns:.7fr 1fr 1.5fr auto auto;gap:7px;align-items:center;margin:8px 0}.promo-row.add-row{background:#f4f8f7;padding:10px;border-radius:8px}.delete-line{margin:-4px 0 12px}.danger-zone{border-top:1px dashed #e9baba;padding-top:12px}.danger-button{border:0;background:transparent;color:var(--danger);padding:4px 0;cursor:pointer;font:inherit}.danger-button:hover{text-decoration:underline}
.instance-heading{margin-bottom:16px}.instance-tabs{display:flex;gap:6px;padding:6px;background:#e7ecef;border:1px solid #d4dde2;border-radius:11px;margin-bottom:22px}.instance-tabs a{flex:1;text-align:center;padding:10px 16px;border-radius:7px;color:#53636e;text-decoration:none;font-weight:750}.instance-tabs a:hover{background:#f7f9fa;color:var(--text)}.instance-tabs a.active{background:#fff;color:var(--primary);box-shadow:0 2px 8px #18382f16}.single-section{max-width:1050px;margin:0 auto}.item-grid{display:grid;grid-template-columns:1fr;gap:2px}
.sync-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 16px;margin-bottom:14px}.sync-summary>span:not(.badge){color:var(--muted);margin-right:auto}.readonly-body{padding:16px 18px}.readonly-body small{display:block;color:var(--muted);margin-top:12px}.price-list{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.price-list span{background:#edf5f2;border-radius:7px;padding:6px 10px}.pre-wrap{white-space:pre-wrap}.manual-heading{border-top:1px solid var(--line);padding-top:24px;margin-top:28px}.confirm-card{max-width:680px;margin:40px auto;padding:30px}.confirm-card h1{margin:14px 0 8px}.confirm-card li{margin:8px 0}.confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.knowledge-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;margin:18px 0 12px}.keyword-display{margin:14px 16px 0;padding:10px 12px;background:#f3f7f6;border-radius:8px}.keyword-display code{word-break:break-word;color:#285b50}.summary-question{display:flex;align-items:center;gap:6px}.summary-question input{width:auto}.status-sync_pending{background:#e5edff;color:#31589a}.status-sync_processing{background:#fff0c9;color:#7e5700}.status-sync_completed{background:#d9f3e9;color:#13624f}.status-sync_failed{background:#fde3e3;color:#982828}
@media(max-width:1100px){.knowledge-layout,.knowledge-actions-grid{grid-template-columns:1fr}.promo-row{grid-template-columns:1fr 1fr}.promo-row input:nth-of-type(3){grid-column:1/-1}}
@media(max-width:600px){.form-grid,.promo-row{grid-template-columns:1fr}.form-grid .wide,.promo-row input:nth-of-type(3){grid-column:auto}.editor-card>summary{align-items:flex-start;flex-direction:column}}
.warning-text{color:var(--warning)}.machine-filters{grid-template-columns:2fr 1fr 1fr auto}.operations-form{padding-top:2px}.machine-card>summary{display:grid;grid-template-columns:minmax(220px,1fr) minmax(420px,1.5fr)}.machine-summary-name small{display:block;color:var(--muted);font-weight:500}.machine-summary-meta{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px}.machine-summary-meta strong{font-size:13px}.machine-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px}.machine-facts span{background:#f4f7f8;padding:10px 12px;border-radius:8px}.machine-facts small{display:block;color:var(--muted)}.attachment-list{display:grid;gap:7px;margin:16px;background:#f4f8f7;border-radius:8px;padding:10px 12px}.attachment-list>div{display:flex;align-items:center;gap:10px}.attachment-list a,.attachment-link{color:var(--primary);text-decoration:none;word-break:break-all}.attachment-list span{color:var(--muted);margin-left:auto}.attachment-list form{display:inline}.machine-status-renewal_due{background:#fff0c9;color:#7e5700}.machine-status-renewed{background:#d9f3e9;color:#13624f}.machine-status-termination_due{background:#fde3e3;color:#982828}.machine-status-terminated{background:#e5e8ea;color:#5d666b}.month-toolbar{display:flex;align-items:end;gap:12px;padding:14px 16px;margin-bottom:18px}.month-toolbar label{font-weight:650}.month-toolbar input,.month-toolbar select{margin-top:5px}.operations-columns{display:grid;grid-template-columns:.75fr 1.25fr;gap:14px;align-items:start}.expense-table{margin:18px 0}.expense-table td{white-space:nowrap}.expense-table td:first-child{white-space:normal;min-width:180px}.expense-table .attachment-link{display:block;max-width:180px;overflow:hidden;text-overflow:ellipsis}.editor-heading{font-size:18px;margin-top:28px}
@media(max-width:1100px){.topbar nav{gap:12px;font-size:13px}.operations-columns{grid-template-columns:1fr}.machine-card>summary{grid-template-columns:1fr}.machine-summary-meta{grid-template-columns:auto 1fr auto}}
@media(max-width:760px){.topbar{height:auto;min-height:64px}.topbar nav>a:nth-child(2),.topbar nav>a:last-of-type{display:none}.machine-filters{grid-template-columns:1fr}.machine-summary-meta{grid-template-columns:1fr}.machine-facts{grid-template-columns:1fr}.attachment-list>div{align-items:flex-start;flex-direction:column}.attachment-list span{margin-left:0}.month-toolbar{align-items:stretch;flex-direction:column}.expense-stats,.machine-stats{grid-template-columns:1fr 1fr}}

/* 2026 dashboard layout */
.app-body{background:#f6f8fa}.app-frame{min-height:100vh;margin-left:224px;display:flex;flex-direction:column}.sidebar{position:fixed;z-index:50;inset:0 auto 0 0;width:224px;display:flex;flex-direction:column;background:linear-gradient(180deg,#0b3535 0%,#0b2e2f 58%,#092829 100%);color:#dceceb;box-shadow:12px 0 32px rgba(13,39,42,.08)}.sidebar-brand{height:72px;display:flex;align-items:center;padding:0 26px;border-bottom:1px solid rgba(255,255,255,.1);color:#fff;text-decoration:none;font-size:20px;font-weight:850;letter-spacing:-.5px}.sidebar-brand span{color:#55d1ad;margin-left:5px}.sidebar-nav{display:grid;gap:6px;padding:24px 12px}.sidebar-link{min-height:46px;display:flex;align-items:center;gap:13px;padding:0 14px;border-radius:9px;color:#d5e4e3;text-decoration:none;font-weight:650;transition:.18s ease}.sidebar-link svg,.sidebar-logout svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}.sidebar-link:hover{background:rgba(255,255,255,.07);color:#fff}.sidebar-link.active{background:rgba(42,172,139,.16);color:#65dbb8}.sidebar-subnav{display:none;margin:2px 0 4px 47px;border-left:1px solid rgba(255,255,255,.14);padding:2px 0 2px 14px}.sidebar-group.active .sidebar-subnav{display:grid}.sidebar-subnav a{padding:7px 4px;color:#9fb8b6;text-decoration:none;font-size:13px}.sidebar-subnav a:hover,.sidebar-subnav a.active{color:#60d9b5}.sidebar-logout{margin:auto 20px 20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12)}.sidebar-logout button{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:#d5e4e3;padding:9px 2px;cursor:pointer;font:inherit}.sidebar-logout button:hover{color:#fff}.sidebar-backdrop{display:none}.workspace-topbar{height:72px;display:flex;align-items:center;padding:0 34px;background:rgba(255,255,255,.96);border-bottom:1px solid #e2e7ea;position:sticky;top:0;z-index:30;backdrop-filter:blur(14px)}.workspace-spacer{flex:1}.admin-chip{display:flex;align-items:center;gap:9px;font-weight:650}.admin-chip svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.admin-chevron{color:#7e8b93;margin-left:3px}.mobile-menu{display:none;border:0;background:transparent;padding:8px}.mobile-menu span{display:block;width:21px;height:2px;background:#23343e;margin:4px 0}.workspace-content{width:100%;max-width:1280px;flex:1;padding:36px 32px 64px}.workspace-footer{padding:18px 24px;text-align:center;color:#94a1a9;border-top:1px solid #e4e9ec;background:#fff;font-size:12px}.compact-heading{align-items:flex-end}.compact-heading .button{flex:none}.create-expense-button span{font-size:17px;margin-right:4px}.subpage-tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin:-4px 0 20px}.subpage-tabs a{position:relative;padding:10px 2px 12px;color:#718089;text-decoration:none;font-weight:700}.subpage-tabs a.active{color:var(--primary)}.subpage-tabs a.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--primary);border-radius:2px}.filter-panel{display:flex;align-items:flex-end;gap:24px;padding:20px;margin-bottom:24px}.filter-panel label{min-width:220px;font-weight:700}.filter-panel input,.filter-panel select{margin-top:7px}.filter-submit{height:42px;border-color:#29957d;color:#16705e}.redesigned-stats{gap:20px;margin-bottom:26px}.redesigned-stats article{min-height:168px;padding:22px;border-color:#e1e7ea;box-shadow:0 8px 24px rgba(31,54,67,.055)}.redesigned-stats .stat-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;margin-bottom:16px;font-size:20px;font-weight:800}.stat-icon.green{background:#e5f7f1;color:#07846a}.stat-icon.blue{background:#e7f1ff;color:#2576d4}.redesigned-stats strong{font-size:30px;letter-spacing:.2px}.redesigned-stats>article>span:last-child{display:block;margin-top:4px}.records-panel,.fund-history{overflow:hidden;margin-bottom:24px}.panel-section-heading{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid var(--line)}.panel-section-heading h2{margin:0;font-size:18px}.panel-section-heading p{margin:3px 0 0;color:var(--muted);font-size:12px}.text-link{color:var(--primary);text-decoration:none;font-weight:700}.records-panel .expense-table{margin:0}.records-panel th{height:46px}.records-panel td{height:64px}.category-tag{display:inline-flex;padding:3px 9px;border-radius:999px;background:#eef4f2;color:#47665e;font-size:12px}.expense-edit-list .editor-card>summary{display:grid;grid-template-columns:auto 1fr auto}.record-summary-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:6px;background:#edf4f3;color:var(--primary)}.modal-dialog{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 40px);border:0;border-radius:15px;padding:0;box-shadow:0 28px 90px rgba(5,26,31,.3);color:var(--text)}.modal-dialog::backdrop{background:rgba(7,25,30,.52);backdrop-filter:blur(3px)}.modal-card{background:#fff}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--line)}.modal-header h2{margin:0;font-size:20px}.modal-header p{margin:4px 0 0;color:var(--muted)}.modal-close{width:34px;height:34px;border:0;border-radius:8px;background:#f1f4f5;color:#52636d;font-size:23px;line-height:1;cursor:pointer}.modal-form{padding:22px 24px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding-top:18px;margin-top:5px}.fund-filter{max-width:520px}.fund-stats{grid-template-columns:repeat(3,1fr)}.fund-management-grid{display:grid;grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr);gap:20px;margin-bottom:24px}.fund-editor form{padding:20px}.usage-card{overflow:hidden}.usage-card>.panel-section-heading>strong{font-size:18px;color:var(--primary)}.progress-track{display:block;width:calc(100% - 40px);height:9px;margin:24px 20px 14px;border:0;border-radius:999px;overflow:hidden;background:#edf1f2}.progress-track::-webkit-progress-bar{background:#edf1f2;border-radius:999px}.progress-track::-webkit-progress-value{background:linear-gradient(90deg,#27b386,#61d0aa);border-radius:999px}.progress-track::-moz-progress-bar{background:linear-gradient(90deg,#27b386,#61d0aa);border-radius:999px}.usage-card dl{margin:0 20px 20px;border:1px solid var(--line);border-radius:10px;padding:0 14px}.usage-card dl div{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}.usage-card dl div:last-child{border-bottom:0}.usage-card dt{color:var(--muted)}.usage-card dd{margin:0}.fund-history{margin-top:4px}
@media(max-width:1050px){.sidebar{width:205px}.app-frame{margin-left:205px}.redesigned-stats{grid-template-columns:repeat(2,1fr)}.fund-management-grid{grid-template-columns:1fr}.workspace-content{padding:28px 22px 55px}}
@media(max-width:760px){.sidebar{width:250px;transform:translateX(-102%);transition:transform .2s ease}.app-frame{margin-left:0}.sidebar-open .sidebar{transform:translateX(0)}.sidebar-backdrop{position:fixed;z-index:45;inset:0;border:0;background:rgba(4,22,27,.46)}.sidebar-open .sidebar-backdrop{display:block}.workspace-topbar{height:60px;padding:0 16px}.mobile-menu{display:block}.workspace-content{padding:22px 14px 46px}.compact-heading{align-items:flex-start;gap:14px}.filter-panel{align-items:stretch;flex-direction:column;gap:12px}.filter-panel label{min-width:0}.redesigned-stats,.fund-stats{grid-template-columns:1fr 1fr}.redesigned-stats article{min-height:145px;padding:18px}.redesigned-stats strong{font-size:24px}.expense-edit-list .editor-card>summary{grid-template-columns:auto 1fr}.expense-edit-list .summary-meta{grid-column:2}.modal-form{grid-template-columns:1fr}.modal-form .wide{grid-column:auto}.sidebar-nav{padding-top:14px}}
@media(max-width:480px){.redesigned-stats,.fund-stats{grid-template-columns:1fr}.compact-heading{display:grid}.create-expense-button{width:100%;text-align:center}.subpage-tabs{gap:18px}}
.fund-usage-single{width:100%;margin-bottom:24px;overflow:hidden}.fund-usage-single dl{display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin-bottom:22px}.fund-usage-single dl div{display:block;text-align:center;border-bottom:0;border-right:1px solid var(--line);padding:12px}.fund-usage-single dl div:last-child{border-right:0}.fund-usage-single dt{margin-bottom:7px}.fund-usage-single dd{font-size:18px}.fund-entry-history{margin-top:0}.standalone-form-card{max-width:720px;margin:0 auto;overflow:hidden}.standalone-form-card>form{padding:24px}.fund-entry-history form{display:inline}
@media(max-width:700px){.fund-usage-single dl{grid-template-columns:1fr}.fund-usage-single dl div{border-right:0;border-bottom:1px solid var(--line);text-align:left}.fund-usage-single dl div:last-child{border-bottom:0}}
.heading-actions{display:flex;align-items:center;gap:10px}.deduction-button{border-color:#d98f8f;color:#a12e2e;background:#fff}.deduction-button:hover{background:#fff1f1}.reimbursement-stats{grid-template-columns:repeat(2,minmax(220px,1fr));max-width:620px}.fund-usage-single dl{grid-template-columns:repeat(4,1fr)}.fund-deduction-history{margin-top:20px}
@media(max-width:760px){.heading-actions{width:100%;align-items:stretch;flex-direction:column}.heading-actions .button{text-align:center}.reimbursement-stats{grid-template-columns:1fr 1fr}.fund-usage-single dl{grid-template-columns:1fr}}
.modal-dialog{overflow:auto}.machine-create-dialog{width:min(860px,calc(100vw - 32px))}
.instance-list-panel{overflow-x:auto}.instance-list-panel table{min-width:850px}.instance-list-panel td:first-child small{display:block;margin-top:4px;color:var(--muted);word-break:break-all}.instance-delete-button{border-color:#e2aaaa;color:#a12e2e;background:#fff}.delete-instance-dialog{width:min(680px,calc(100vw - 32px))}.delete-choice{display:block;border:1px solid var(--line);border-radius:10px;padding:15px 16px}.delete-choice p,.delete-choice small{display:block;margin:6px 0 0;color:var(--muted);line-height:1.55}.safe-choice{background:#f5faf8}.danger-choice{align-items:flex-start!important;background:#fff8f8;border-color:#edc6c6}.danger-choice input{margin-top:3px!important}.danger-choice strong{color:#982828}.danger-solid{border-color:#a72d2d;background:#a72d2d;color:#fff}.danger-solid:hover{background:#8d2020}
.reimbursement-stats{grid-template-columns:repeat(3,minmax(220px,1fr));max-width:940px}@media(max-width:760px){.reimbursement-stats{grid-template-columns:1fr 1fr}}@media(max-width:480px){.reimbursement-stats{grid-template-columns:1fr}}
.is-hidden{display:none!important}.sidebar-link .nav-notification-count{margin-left:auto;min-width:22px;height:22px;display:grid;place-items:center;padding:0 6px;border-radius:999px;background:#e45252;color:#fff;font-size:11px}.ticket-instance-subnav a{display:flex;align-items:center;justify-content:space-between;gap:8px}.ticket-instance-subnav a>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.instance-new-count{min-width:20px;height:20px;display:grid;place-items:center;padding:0 5px;border-radius:999px;background:#e05252;color:#fff;font-size:11px;font-weight:800}.topbar-ticket-alert{display:flex;align-items:center;gap:8px;margin-right:20px;padding:7px 11px;border-radius:999px;background:#fff0d9;color:#8a4d00;text-decoration:none;font-weight:750}.topbar-ticket-alert strong{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#e05252;color:#fff;font-size:11px}.workbench-stats{grid-template-columns:repeat(5,1fr)}.new-ticket-stat strong{color:#d04b32}.new-ticket-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px;padding:16px 18px;border:1px solid #f0c690;border-radius:12px;background:linear-gradient(135deg,#fff8e9,#fff2dc);box-shadow:var(--shadow)}.new-ticket-banner strong,.new-ticket-banner span{display:block}.new-ticket-banner strong{font-size:16px;color:#8a4d00}.new-ticket-banner span{margin-top:2px;color:#8b6b42}.active-filter-note{margin:-2px 0 16px;color:#8a5a16}.ticket-notification-toast{position:fixed;z-index:100;right:24px;bottom:24px;width:min(360px,calc(100vw - 32px));padding:16px 18px;border-radius:12px;background:#113b38;color:#fff;text-decoration:none;box-shadow:0 18px 45px rgba(5,31,34,.3);animation:ticket-toast-in .22s ease}.ticket-notification-toast strong,.ticket-notification-toast span{display:block}.ticket-notification-toast span{margin-top:3px;color:#cce4df}@keyframes ticket-toast-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1050px){.workbench-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.topbar-ticket-alert span{display:none}.topbar-ticket-alert{margin-right:10px}.workbench-stats{grid-template-columns:1fr 1fr}.new-ticket-banner{align-items:flex-start;flex-direction:column}}
.database-stats{grid-template-columns:repeat(3,1fr)}.database-backup-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.backup-card{overflow:hidden}.backup-card-body,.backup-import-form{padding:22px}.backup-card-body>p{margin-top:0}.backup-notes{padding-left:20px;color:var(--muted);margin:16px 0 22px}.backup-notes li{margin:7px 0}.backup-import-form{display:grid;gap:15px}.backup-import-form label{font-weight:700}.backup-import-form label input,.backup-import-form label select{margin-top:6px;font-weight:400}.backup-import-form>small{color:var(--muted);margin-top:-9px}.backup-import-form .alert{margin:0}.backup-security-panel{margin-top:22px;padding:22px}.backup-security-panel h2{margin:0 0 16px}.backup-rule-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.backup-rule-grid>div{padding:14px;border-radius:9px;background:#f4f8f7}.backup-rule-grid strong,.backup-rule-grid span{display:block}.backup-rule-grid span{margin-top:4px;color:var(--muted)}@media(max-width:900px){.database-backup-grid,.backup-rule-grid{grid-template-columns:1fr}}@media(max-width:600px){.database-stats{grid-template-columns:1fr}}
.connection-steps{margin:12px 0 2px;padding-left:22px}.connection-steps li{margin:5px 0}.connection-policy{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:13px 16px;color:var(--muted)}.connection-policy strong{color:var(--text);white-space:nowrap}.connection-badge,.log-severity{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.connection-pending{background:#e8edf0;color:#53636d}.connection-connected,.log-info{background:#d9f3e9;color:#13624f}.connection-degraded,.log-warning{background:#fff0c9;color:#7e5700}.connection-offline,.log-critical{background:#fde3e3;color:#982828}.topbar-connection-alert{display:flex;align-items:center;gap:8px;margin-right:10px;padding:7px 11px;border-radius:999px;background:#fff0c9;color:#7e5700;text-decoration:none;font-weight:750}.topbar-connection-alert.critical{background:#fde3e3;color:#982828}.topbar-connection-alert strong{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#d08700;color:#fff;font-size:11px}.topbar-connection-alert.critical strong{background:#c53d3d}.audit-severity-stats{grid-template-columns:repeat(3,1fr)}.warning-log-stat strong{color:#b56f00}.audit-level-filter{display:flex;gap:9px;margin-bottom:16px}.warning-button{background:#fff0c9;border-color:#e3b75c;color:#7e5700}.connection-alert-toast{position:fixed;z-index:101;right:24px;bottom:24px;width:min(380px,calc(100vw - 32px));padding:16px 18px;border-radius:12px;background:#8f2727;color:#fff;text-decoration:none;box-shadow:0 18px 45px rgba(80,10,10,.32);animation:ticket-toast-in .22s ease}.connection-alert-toast strong,.connection-alert-toast span{display:block}.connection-alert-toast span{margin-top:3px;color:#f5dada}@media(max-width:760px){.topbar-connection-alert span{display:none}.connection-policy{align-items:flex-start;flex-direction:column}.audit-level-filter{overflow-x:auto}.audit-severity-stats{grid-template-columns:1fr 1fr}}
.ai-model-stats{grid-template-columns:repeat(4,1fr)}.ai-model-stats article{min-height:148px}.ai-model-stats .stat-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:12px;border-radius:50%;font-size:15px;font-weight:850}.ai-model-safety-note code{padding:2px 5px;border-radius:4px;background:#fff8}.ai-model-dialog{width:min(820px,calc(100vw - 32px))}.ai-model-list{display:grid;gap:15px}.ai-model-card{overflow:hidden;border-left:4px solid transparent}.ai-model-card.default-model{border-left-color:#1b9d7b}.ai-model-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px 22px}.ai-model-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:13px;background:linear-gradient(145deg,#dff6ef,#dcecff);color:#126b5b;font-weight:900}.ai-model-identity{min-width:0}.ai-model-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ai-model-title-row h2{margin:0;font-size:18px}.ai-model-identity p{margin:4px 0;color:var(--muted)}.ai-model-identity code{display:block;max-width:700px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#46616a}.default-badge{background:#d9f3e9;color:#13624f}.ai-model-test-state{text-align:right}.ai-model-test-state small{display:block;margin-top:5px;color:var(--muted)}.model-test-badge{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:800}.test-untested{background:#e8edf0;color:#53636d}.test-passed{background:#d9f3e9;color:#13624f}.test-failed{background:#fde3e3;color:#982828}.ai-model-meta{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:12px 22px;border-top:1px solid var(--line);background:#f8fafb;color:var(--muted);font-size:12px}.ai-model-meta .model-error{flex-basis:100%;word-break:break-word}.ai-model-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:14px 22px;border-top:1px solid var(--line)}.ai-model-empty{margin-top:12px}.button:disabled{opacity:.45;cursor:not-allowed}@media(max-width:900px){.ai-model-stats{grid-template-columns:1fr 1fr}.ai-model-main{grid-template-columns:auto 1fr}.ai-model-test-state{grid-column:2;text-align:left}}@media(max-width:600px){.ai-model-stats{grid-template-columns:1fr 1fr}.ai-model-main{grid-template-columns:1fr}.ai-model-icon{width:42px;height:42px}.ai-model-test-state{grid-column:auto}.ai-model-actions form,.ai-model-actions .button{flex:1}.ai-model-actions .button{width:100%;text-align:center}}
.bot-stats{grid-template-columns:repeat(4,1fr)}.bot-stats article{min-height:148px}.bot-stats .stat-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:12px;border-radius:50%;font-size:12px;font-weight:900}.stat-icon.red{background:#fde8e8;color:#b73535}.bot-dialog{width:min(820px,calc(100vw - 32px))}.subscription-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin:0;padding:14px 16px;border:1px solid var(--line);border-radius:10px}.subscription-fields legend{padding:0 7px;font-weight:750}.bot-list{display:grid;gap:15px;margin-bottom:24px}.bot-card{overflow:hidden}.bot-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px 22px}.bot-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;font-weight:900}.bot-icon.telegram{background:#e3f3ff;color:#168ac2}.bot-icon.wecom{background:#e3f7ed;color:#15845d}.bot-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bot-title-row h2{margin:0;font-size:18px}.bot-identity p{margin:4px 0;color:var(--muted)}.bot-identity code{color:#46616a}.bot-test-state{text-align:right}.bot-test-state small{display:block;margin-top:5px;color:var(--muted)}.bot-subscriptions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 22px;border-top:1px solid var(--line);background:#f8fafb}.bot-subscriptions>span:not(.muted){padding:3px 9px;border-radius:999px;background:#e8f3ef;color:#286856;font-size:12px}.bot-subscriptions strong{flex-basis:100%;font-size:12px}.bot-actions{display:flex;gap:8px;flex-wrap:wrap;padding:14px 22px;border-top:1px solid var(--line)}.bot-history{overflow:hidden}.notification-status{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:750}.notification-status.status-sent{background:#d9f3e9;color:#13624f}.notification-status.status-failed{background:#fde3e3;color:#982828}.notification-status.status-pending,.notification-status.status-sending{background:#fff0c9;color:#7e5700}.notification-status.status-skipped{background:#e8edf0;color:#53636d}@media(max-width:900px){.bot-stats{grid-template-columns:1fr 1fr}.bot-main{grid-template-columns:auto 1fr}.bot-test-state{grid-column:2;text-align:left}}@media(max-width:600px){.bot-stats,.subscription-fields{grid-template-columns:1fr}.bot-main{grid-template-columns:1fr}.bot-test-state{grid-column:auto}.bot-actions form,.bot-actions .button{flex:1}.bot-actions .button{width:100%;text-align:center}}
