:root{
  --ivory:#f6f1e8;
  --paper:#fffdf9;
  --paper-2:#fbf7f0;
  --sand:#e8ddcf;
  --sand-2:#d8c9b8;
  --gold:#aa8650;
  --gold-deep:#84643a;
  --charcoal:#201f1d;
  --graphite:#4f4b46;
  --muted:#7d756d;
  --line:rgba(32,31,29,.12);
  --line-strong:rgba(32,31,29,.22);
  --success:#34705a;
  --success-bg:#e5f1ec;
  --warning:#a56524;
  --warning-bg:#fbefde;
  --danger:#a9443d;
  --danger-bg:#f8e6e3;
  --info:#47677c;
  --info-bg:#e7eff4;
  --sidebar:270px;
  --header:72px;
  --radius:18px;
  --radius-sm:12px;
  --shadow:0 18px 45px rgba(72,56,35,.08);
  --shadow-sm:0 7px 18px rgba(72,56,35,.07);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color:var(--charcoal);
  background:var(--ivory);
}
*{box-sizing:border-box}
html{min-height:100%;background:var(--ivory);scroll-behavior:smooth}
body{min-height:100vh;margin:0;background:var(--ivory);color:var(--charcoal);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--gold-deep);text-decoration:none}a:hover{color:var(--charcoal)}
button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}
h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.02em}h2{font-size:20px;line-height:1.25;margin-bottom:18px}h3{font-size:16px}
small,.small{font-size:12px}.muted{color:var(--muted)!important}.danger{color:var(--danger)!important}.text-center{text-align:center}.text-uppercase{text-transform:uppercase}.fw-bold{font-weight:700}.w-100{width:100%}.d-none{display:none!important}.d-flex{display:flex}.align-items-center{align-items:center}.ms-auto{margin-left:auto}.mb-3{margin-bottom:16px}.mb-4{margin-bottom:24px}.mt-1{margin-top:4px}.p-3{padding:16px}.p-0{padding:0}.bg-none{background:none!important}.gx-0{column-gap:0}.row-grid,.row{display:grid}.row{grid-template-columns:repeat(3,1fr)}.col-4{min-width:0}.fs-10px{font-size:10px}.fs-11px{font-size:11px}.fs-16px{font-size:16px}.fw-500{font-weight:500}.my-n1{margin-top:-4px;margin-bottom:-4px}.w-130px{width:130px}.w-300px{width:300px}

/* shell */
.sd-shell{min-height:100vh}
.app-header{position:fixed;z-index:50;inset:0 0 auto 0;height:var(--header);display:flex;align-items:center;gap:12px;padding:0 22px;background:rgba(255,253,249,.93);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}
.brand{display:flex;align-items:center;min-width:234px}.brand-logo{display:flex;align-items:center;gap:14px;color:var(--charcoal)}.brand-wordmark{display:block;width:116px;height:auto}.brand-context{display:flex;flex-direction:column;border-left:1px solid var(--line-strong);padding-left:12px;line-height:1.1}.brand-context strong{font-size:11px;letter-spacing:.13em;text-transform:uppercase}.brand-context small{margin-top:5px;color:var(--muted);font-size:9px;letter-spacing:.1em;text-transform:uppercase}
.header-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.icon-btn,.menu-toggler{position:relative;display:inline-grid;place-items:center;width:42px;height:42px;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--graphite)}.icon-btn:hover,.menu-toggler:hover{background:var(--paper-2);border-color:var(--line)}.db-svg{display:inline-flex;width:19px;height:19px}.db-svg svg{width:100%;height:100%;fill:currentColor}
.menu-toggler{gap:4px}.menu-toggler .bar{display:block;width:18px;height:1px;background:currentColor}.mobile-toggler{display:none}.desktop-toggler{display:flex}.header-search{position:relative;max-width:420px;flex:1;margin-left:18px}.header-search input{width:100%;height:42px;padding:0 42px 0 16px;border:1px solid var(--line);border-radius:999px;background:var(--paper-2);outline:none}.header-search input:focus{border-color:rgba(170,134,80,.65);box-shadow:0 0 0 4px rgba(170,134,80,.1)}.header-search button{position:absolute;right:5px;top:5px;width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:var(--gold-deep)}
.profile-trigger{display:flex;align-items:center;gap:10px;height:44px;padding:0 6px 0 10px;border:0;border-radius:999px;background:transparent;color:var(--charcoal)}.profile-trigger:hover{background:var(--paper-2)}.profile-avatar,.db-user-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--charcoal);color:#fff}.profile-copy{display:flex;flex-direction:column;max-width:150px;text-align:left}.profile-copy b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.profile-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px}
.shell-dropdown{position:relative}.dropdown-menu{position:absolute;z-index:80;right:0;top:calc(100% + 10px);display:none;min-width:230px;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:var(--shadow)}.shell-dropdown.is-open>.dropdown-menu{display:block}.dropdown-menu a,.dropdown-item{display:flex;align-items:center;gap:9px;padding:10px 11px;border-radius:9px;color:var(--graphite);font-size:13px}.dropdown-menu a:hover,.dropdown-item:hover{background:var(--paper-2);color:var(--charcoal)}.dropdown-header{padding:8px 11px;color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.dropdown-divider{height:1px;margin:5px 0;background:var(--line)}.app-grid{width:min(360px,calc(100vw - 24px))}.app-grid .row-grid{grid-template-columns:repeat(3,1fr)}.app-grid a{min-height:84px;justify-content:center;flex-direction:column;text-align:center}.db-grid-icon{font-size:22px}
.menu-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;border-radius:20px;background:var(--danger);color:white;font-size:10px;font-weight:800;vertical-align:middle}.header-actions .menu-badge{position:absolute;right:1px;top:0;margin:0}.bg-theme{background:var(--danger)}

.app-sidebar{position:fixed;z-index:45;left:0;top:var(--header);bottom:0;width:var(--sidebar);overflow:hidden;background:#25231f;color:#efe8dd;transition:width .22s ease,transform .22s ease}.app-sidebar-content{height:100%;overflow-y:auto;overscroll-behavior:contain;padding:18px 12px 90px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.menu-header{padding:18px 11px 8px;color:#a99d8e;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.menu-item{margin:2px 0}.menu-link{display:flex;align-items:center;gap:11px;min-height:43px;padding:9px 10px;border-radius:11px;color:#e8ded1;transition:background .18s ease,color .18s ease}.menu-link:hover{background:rgba(255,255,255,.07);color:#fff}.menu-item.active .menu-link{background:rgba(229,211,184,.15);color:#fff}.menu-item.active .menu-link:before{content:"";width:3px;height:22px;margin-left:-10px;border-radius:5px;background:#d4ad72}.menu-icon{display:grid;flex:0 0 19px;place-items:center}.menu-text{min-width:0;font-size:12px;font-weight:600;letter-spacing:.01em}.app-sidebar-mobile-backdrop{display:none}
.app-content{min-height:calc(100vh - 52px);margin-left:var(--sidebar);padding:calc(var(--header) + 28px) 30px 42px;transition:margin-left .22s ease}.sd-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;max-width:1640px;margin:0 auto 22px}.page-kicker,.eyebrow{margin-bottom:7px;color:var(--gold-deep);font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.page-title{margin:0;color:var(--charcoal);font-family:Georgia,"Times New Roman",serif;font-size:36px;font-weight:400;line-height:1.05}.page-subtitle{color:var(--muted)}.sd-live-pill,.db-status-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border:1px solid rgba(52,112,90,.2);border-radius:999px;background:var(--success-bg);color:var(--success);font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.sd-live-pill:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.sd-brand-footer{display:flex;justify-content:space-between;gap:12px;margin-left:var(--sidebar);padding:17px 30px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;letter-spacing:.1em;text-transform:uppercase;transition:margin-left .22s ease}.app.is-sidebar-collapsed{--sidebar:74px}.app.is-sidebar-collapsed .app-sidebar .menu-text,.app.is-sidebar-collapsed .app-sidebar .menu-header{display:none}.app.is-sidebar-collapsed .app-sidebar-content{padding-inline:10px}.app.is-sidebar-collapsed .menu-link{justify-content:center}.app.is-sidebar-collapsed .menu-item.active .menu-link:before{position:absolute;left:10px;margin:0}.app.is-sidebar-collapsed .menu-item{position:relative}

/* core surfaces */
.card{max-width:1640px;margin:0 auto 18px;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,253,249,.9);box-shadow:var(--shadow-sm)}.grid{display:grid;gap:18px;max-width:1640px;margin:0 auto 18px}.grid.cards{grid-template-columns:repeat(5,minmax(0,1fr))}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid .card{margin:0}.dashboard-hero{display:grid;grid-template-columns:1fr auto;gap:24px;padding:28px 30px;background:linear-gradient(130deg,var(--charcoal),#3b342a);color:#fff;border-color:transparent}.dashboard-hero h2{max-width:760px;margin-bottom:9px;font-family:Georgia,"Times New Roman",serif;font-size:29px;font-weight:400}.dashboard-hero .muted{max-width:780px;color:rgba(255,255,255,.65)!important}.hero-kpi{display:flex;min-width:160px;flex-direction:column;align-items:flex-end;justify-content:center;text-align:right}.hero-kpi span,.hero-kpi small{color:rgba(255,255,255,.62);font-size:11px}.hero-kpi b{font-family:Georgia,"Times New Roman",serif;font-size:58px;font-weight:400;line-height:1}.metric{position:relative;overflow:hidden;min-height:116px;padding:18px}.metric:after{content:"";position:absolute;right:-22px;bottom:-25px;width:74px;height:74px;border:1px solid rgba(170,134,80,.25);border-radius:50%}.metric span{display:block;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.metric b{display:block;margin-top:17px;font-family:Georgia,"Times New Roman",serif;font-size:35px;font-weight:400;line-height:1}.danger-card{background:linear-gradient(140deg,var(--paper),var(--danger-bg))}.warn-card{background:linear-gradient(140deg,var(--paper),var(--warning-bg))}.card-head,.split{display:flex;align-items:center;justify-content:space-between;gap:12px}.card-head h2{margin:0}.actions{display:flex;flex-wrap:wrap;gap:9px}.bar-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;overflow:hidden;margin-top:10px;padding:10px 0;border-top:1px solid var(--line);font-size:12px}.bar-row>i:last-child{position:absolute;bottom:0;left:0;height:2px;background:var(--gold);opacity:.6}.bar-row span{position:relative;z-index:1}.bar-row b{position:relative;z-index:1}.dot{display:inline-block;width:8px;height:8px;margin-right:7px;border-radius:50%;background:var(--gold)}.chart-box{position:relative;height:300px;margin:6px 0 20px}.chart-box.compact{height:190px}.report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:1640px;margin:0 auto 18px}.report-grid .card{margin:0}.ticket-mini{display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:12px 0;border-top:1px solid var(--line);color:var(--charcoal)}.ticket-mini:first-of-type{border-top:0}.ticket-mini b{font-size:13px}.ticket-mini span{grid-column:1;color:var(--muted);font-size:11px}.ticket-mini em{grid-row:1/3;grid-column:2;align-self:center}

/* forms */
label{display:flex;flex-direction:column;gap:7px;color:var(--graphite);font-size:12px;font-weight:750;letter-spacing:.01em}input,select,textarea{width:100%;min-height:42px;padding:10px 12px;border:1px solid var(--line-strong);border-radius:10px;background:#fffefa;color:var(--charcoal);outline:none;transition:border-color .18s,box-shadow .18s,background .18s}textarea{resize:vertical}input:focus,select:focus,textarea:focus{border-color:rgba(170,134,80,.8);box-shadow:0 0 0 4px rgba(170,134,80,.11);background:#fff}input[type=checkbox],input[type=radio]{width:16px;min-height:16px;accent-color:var(--gold-deep)}input[type=file]{padding:8px;background:var(--paper-2)}.check{display:flex;flex-direction:row;align-items:center;gap:8px;font-weight:600}.field-hint{color:var(--muted);font-size:11px;font-weight:500}.filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px}.filters input,.filters select{width:auto;min-width:170px}.filters input[name=q]{flex:1;min-width:240px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid .span2{grid-column:1/-1}.mini-form{display:grid;gap:12px}.btn{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:7px;padding:9px 14px;border:1px solid var(--line-strong);border-radius:10px;background:var(--paper);color:var(--graphite);font-size:12px;font-weight:800;letter-spacing:.025em;transition:background .18s,color .18s,border-color .18s,transform .18s}.btn:hover{border-color:rgba(170,134,80,.65);background:var(--paper-2);color:var(--charcoal)}.btn:active{transform:translateY(1px)}.btn.primary,.btn-theme{border-color:var(--charcoal);background:var(--charcoal);color:#fff}.btn.primary:hover,.btn-theme:hover{border-color:#000;background:#000;color:#fff}.btn.small{min-height:32px;padding:6px 9px;font-size:11px}.flash,.alert{max-width:1640px;margin:0 auto 16px;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:var(--paper);font-size:13px}.flash.bad,.alert-danger{border-color:rgba(169,68,61,.23);background:var(--danger-bg);color:var(--danger)}.alert-success{border-color:rgba(52,112,90,.23);background:var(--success-bg);color:var(--success)}.alert-warning{border-color:rgba(165,101,36,.23);background:var(--warning-bg);color:var(--warning)}

/* data table */
.table-wrap{width:100%;overflow:auto;border:1px solid var(--line);border-radius:13px;background:var(--paper)}table{width:100%;border-collapse:collapse;min-width:690px}th,td{padding:12px 13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{background:var(--paper-2);color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}td{font-size:12px}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:rgba(232,221,207,.22)}.ticket-row-link{cursor:pointer}.unread-row{background:rgba(170,134,80,.07)}.empty{padding:26px!important;color:var(--muted);text-align:center}.ticket-title-cell{min-width:255px}.ticket-title-cell b{display:block;color:var(--charcoal);font-size:13px}.ticket-title-cell small{display:block;margin-top:3px;color:var(--muted)}.ticket-no-cell{white-space:nowrap}.ticket-no-cell a{font-weight:850}.tickets-count{color:var(--muted);font-size:12px}.ticket-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;border-radius:999px;background:var(--danger);color:#fff;font-size:10px;font-weight:800}.list-toolbar{display:grid;grid-template-columns:1fr auto;gap:16px;margin-bottom:16px}.list-toolbar .filters{margin:0}.list-toolbar-actions{display:flex;align-items:flex-start;gap:8px}

/* pills */
.pill{display:inline-flex;align-items:center;width:max-content;max-width:100%;gap:5px;padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--paper-2);color:var(--graphite);font-size:10px;font-style:normal;font-weight:850;letter-spacing:.04em;line-height:1.1;text-transform:uppercase}.status-new{border-color:rgba(71,103,124,.22);background:var(--info-bg);color:var(--info)}.status-assigned,.status-accepted,.status-in_work{border-color:rgba(52,112,90,.22);background:var(--success-bg);color:var(--success)}.status-waiting_user,.status-waiting_purchase,.status-waiting_supplier,.status-waiting_approval,.status-done_waiting_confirmation{border-color:rgba(165,101,36,.22);background:var(--warning-bg);color:var(--warning)}.status-reopened,.danger-pill{border-color:rgba(169,68,61,.22);background:var(--danger-bg);color:var(--danger)}.status-closed,.status-cancelled,.muted-pill{background:#f0eee9;color:var(--muted)}.ok-pill{border-color:rgba(52,112,90,.22);background:var(--success-bg);color:var(--success)}.priority-критический,.priority-высокий{border-color:rgba(169,68,61,.22);background:var(--danger-bg);color:var(--danger)}.priority-средний{border-color:rgba(165,101,36,.22);background:var(--warning-bg);color:var(--warning)}

/* ticket detail and chat */
.ticket-layout{grid-template-columns:minmax(0,1fr) 355px;align-items:start}.ticket-main{padding:0;overflow:hidden}.ticket-hero{display:flex;justify-content:space-between;gap:18px;padding:22px 24px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,var(--paper),var(--paper-2))}.ticket-hero h2{margin:12px 0 8px;font-family:Georgia,"Times New Roman",serif;font-size:29px;font-weight:400}.ticket-number{height:max-content;padding:6px 9px;border:1px solid rgba(170,134,80,.3);border-radius:999px;color:var(--gold-deep);font-size:11px;font-weight:850;letter-spacing:.06em}.chat-toolbar{display:flex;justify-content:space-between;gap:15px;padding:12px 20px;border-bottom:1px solid var(--line);background:var(--paper-2)}.chat-toolbar span{font-size:12px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.chat-toolbar small{color:var(--muted);text-align:right}.chat-window{height:470px;overflow-y:auto;padding:20px;background:#f5efe6}.msg-row{display:flex;align-items:flex-start;gap:9px;max-width:82%;margin-bottom:13px}.msg-row.own{margin-left:auto;flex-direction:row-reverse}.msg-avatar{display:grid;flex:0 0 31px;height:31px;place-items:center;border-radius:50%;background:var(--sand);color:var(--gold-deep);font-size:10px;font-weight:850}.msg-bubble{min-width:0;padding:11px 13px;border:1px solid var(--line);border-radius:5px 15px 15px 15px;background:var(--paper);box-shadow:0 4px 12px rgba(72,56,35,.05)}.msg-row.own .msg-bubble{border-radius:15px 5px 15px 15px;background:#eee4d6}.msg-row.internal .msg-bubble{border-color:rgba(165,101,36,.23);background:var(--warning-bg)}.msg-row.system{max-width:92%;margin-inline:auto}.msg-row.system .msg-avatar{display:none}.msg-row.system .msg-bubble{width:100%;border-style:dashed;border-radius:10px;background:rgba(255,253,249,.58);color:var(--muted);text-align:center}.msg-meta{display:flex;flex-wrap:wrap;gap:5px 8px;align-items:center;margin-bottom:5px;color:var(--muted);font-size:10px}.msg-meta b{color:var(--graphite)}.msg-meta em{padding:2px 5px;border-radius:99px;background:rgba(170,134,80,.1);font-size:9px;font-style:normal}.msg-body{font-size:13px;white-space:normal}.msg-attachments{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px}.attachment-wrap{display:flex;align-items:stretch}.attachment,.attachment-download{display:inline-flex;align-items:center;gap:6px;padding:7px 8px;border:1px solid var(--line);background:var(--paper-2);color:var(--graphite);font-size:11px}.attachment{border-radius:8px 0 0 8px}.attachment-download{border-left:0;border-radius:0 8px 8px 0}.reply-box{padding:15px 18px;border-top:1px solid var(--line);background:var(--paper)}.reply-box textarea{min-height:92px}.reply-actions,.quick-replies{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px}.quick-replies{margin:0 0 9px}.quick-replies button{padding:6px 9px;border:1px solid var(--line);border-radius:999px;background:var(--paper-2);color:var(--graphite);font-size:11px}.reply-actions input[type=file]{max-width:280px}.ajax-hint{color:var(--muted);font-size:11px}.side-card{position:sticky;top:calc(var(--header) + 18px)}.details{display:grid;grid-template-columns:116px minmax(0,1fr);gap:9px 12px;margin:0}.details dt{color:var(--muted);font-size:11px}.details dd{margin:0;font-size:12px;font-weight:650;overflow-wrap:anywhere}.action-card{margin-top:17px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--paper-2)}hr{height:1px;margin:18px 0;border:0;background:var(--line)}.timeline-item{position:relative;margin-left:4px;padding:0 0 14px 15px;border-left:1px solid var(--sand-2);font-size:11px}.timeline-item:before{content:"";position:absolute;left:-4px;top:3px;width:7px;height:7px;border-radius:50%;background:var(--gold)}

/* files */
.sd-file-buffer{padding:12px;border:1px dashed var(--sand-2);border-radius:12px;background:var(--paper-2)}.sd-file-buffer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.sd-file-buffer-items{display:flex;flex-wrap:wrap;gap:7px}.sd-file-chip{display:flex;align-items:center;gap:7px;max-width:100%;padding:7px 8px;border:1px solid var(--line);border-radius:9px;background:var(--paper)}.sd-file-chip-name{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-file-chip button{border:0;background:transparent;color:var(--danger);font-size:18px;line-height:1}.sd-file-buffer-empty{color:var(--muted);font-size:12px}

/* navigation helpers and kanban */
.subnav{display:flex;max-width:1640px;gap:7px;margin:0 auto 15px;overflow-x:auto;padding-bottom:2px}.subnav a{flex:0 0 auto;padding:8px 11px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--graphite);font-size:11px;font-weight:750}.kanban{display:flex;gap:15px;max-width:100%;overflow-x:auto;padding:0 0 12px}.kanban-col{flex:0 0 290px;padding:13px;border:1px solid var(--line);border-radius:15px;background:rgba(255,253,249,.65)}.kanban-col h2{display:flex;align-items:center;gap:8px;font-size:13px}.kanban-card{margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--shadow-sm)}.kanban-card p{margin:6px 0}

/* overlays */
.toast-stack{position:fixed;z-index:120;right:15px;bottom:15px;display:grid;gap:8px;width:min(380px,calc(100vw - 30px))}.toast-item{display:grid;gap:3px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--charcoal);color:#fff;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);transition:.22s}.toast-item.show{opacity:1;transform:none}.toast-item span{color:rgba(255,255,255,.7);font-size:12px}.notif-dropdown{position:fixed;z-index:110;max-height:70vh;overflow:auto;padding:8px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:var(--shadow)}.notif-item{display:grid;gap:3px;padding:10px;border-bottom:1px solid var(--line);color:var(--graphite)}.notif-item span,.notif-item small{color:var(--muted);font-size:11px}.notif-empty{padding:14px;color:var(--muted);font-size:12px}.image-modal{position:fixed;z-index:140;inset:0;display:none;align-items:center;justify-content:center;padding:60px 16px 16px;background:rgba(10,10,10,.84)}.image-modal.open{display:flex}.image-modal .btn{position:absolute;right:16px;top:16px}.image-modal img,.image-modal video{max-width:min(1100px,94vw);max-height:86vh;border-radius:12px;background:#000}.btn-scroll-top{position:fixed;right:18px;bottom:18px;display:none}.sd-mobile-create{display:none}

/* login */
.sd-login-body{display:grid;min-height:100vh;background:var(--ivory)}.ab-login-wrap{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr);min-height:100vh}.ab-login-story{position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:54px;background:linear-gradient(145deg,#1e1d1a,#393126);color:#fff}.ab-login-story:after{content:"";position:absolute;right:-120px;bottom:-160px;width:520px;height:520px;border:1px solid rgba(219,191,149,.23);border-radius:50%;box-shadow:0 0 0 62px rgba(219,191,149,.035),0 0 0 124px rgba(219,191,149,.03)}.ab-login-story-wordmark{position:relative;z-index:1;width:165px;filter:brightness(0) invert(1)}.ab-login-story-copy{position:relative;z-index:1;max-width:680px}.ab-login-story-copy span,.ab-login-story-foot{color:rgba(255,255,255,.55);font-size:10px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.ab-login-story-copy h2{margin:13px 0 14px;font-family:Georgia,"Times New Roman",serif;font-size:78px;font-weight:400;line-height:.94}.ab-login-story-copy em{color:#d8b47d;font-style:normal}.ab-login-story-copy p{max-width:570px;color:rgba(255,255,255,.7);font-size:15px}.ab-login-story-foot{position:relative;z-index:1}.ab-login-panel{display:grid;place-items:center;padding:34px}.db-login-card{width:min(440px,100%);margin:0;padding:26px}.db-login-brand{display:flex;align-items:center;gap:13px;margin-bottom:35px}.db-login-brand img{width:145px}.db-login-brand small{padding-left:13px;border-left:1px solid var(--line-strong);color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.db-login-card .page-title{font-size:43px}.db-login-card .btn{min-height:47px}.card-arrow{display:none}

@media (max-width:1350px){.grid.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-layout{grid-template-columns:minmax(0,1fr) 330px}}
@media (max-width:1050px){:root{--sidebar:250px}.header-search{max-width:280px}.profile-copy{display:none}.ticket-layout{grid-template-columns:1fr}.side-card{position:static}.report-grid{grid-template-columns:1fr}.grid.three{grid-template-columns:1fr}.ab-login-story{padding:42px}.ab-login-story-copy h2{font-size:66px}}
@media (max-width:820px){
  :root{--header:62px}.desktop-toggler{display:none}.mobile-toggler{display:flex}.brand{min-width:0}.brand-wordmark{width:103px}.brand-context{display:none}.header-search{display:none}.app-header{padding:0 12px}.profile-trigger{padding:0}.profile-copy{display:none}.app-sidebar{top:0;z-index:90;width:min(294px,85vw);transform:translateX(-105%);box-shadow:var(--shadow)}.app.is-sidebar-mobile-open .app-sidebar{transform:none}.app-sidebar-content{padding-top:78px}.app-sidebar-mobile-backdrop{position:fixed;z-index:85;inset:0;display:none;border:0;background:rgba(20,19,17,.42)}.app.is-sidebar-mobile-open .app-sidebar-mobile-backdrop{display:block}.app-content{margin-left:0;padding:calc(var(--header) + 18px) 13px 72px}.sd-brand-footer{margin-left:0;padding:13px;font-size:9px}.sd-brand-footer span:last-child{display:none}.sd-page-head{align-items:flex-start;margin-bottom:16px}.page-title{font-size:29px}.sd-live-pill{display:none}.card{padding:15px;border-radius:14px}.grid{gap:12px;margin-bottom:12px}.grid.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two{grid-template-columns:1fr}.dashboard-hero{grid-template-columns:1fr;padding:20px}.dashboard-hero h2{font-size:23px}.hero-kpi{align-items:flex-start;text-align:left}.hero-kpi b{font-size:46px}.metric{min-height:96px;padding:14px}.metric b{font-size:30px}.filters{display:grid;grid-template-columns:1fr 1fr}.filters input,.filters select,.filters input[name=q]{width:100%;min-width:0}.filters input[name=q]{grid-column:1/-1}.filters .check{grid-column:1/-1}.filters .btn{width:100%}.list-toolbar{grid-template-columns:1fr;gap:10px}.list-toolbar-actions{display:grid;grid-template-columns:1fr 1fr}.list-toolbar-actions .btn{width:100%}.mobile-card-table{overflow:visible;border:0;background:transparent}.mobile-card-table table{display:block;min-width:0}.mobile-card-table thead{display:none}.mobile-card-table tbody{display:grid;gap:9px}.mobile-card-table tr{display:grid;grid-template-columns:1fr auto;gap:7px 11px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:0 5px 13px rgba(72,56,35,.04)}.mobile-card-table td{display:block;padding:0;border:0;font-size:12px}.mobile-card-table td:before{content:attr(data-label);display:block;margin-bottom:2px;color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.mobile-card-table td[data-label="Тема"],.mobile-card-table td.ticket-title-cell{grid-column:1/-1;grid-row:2}.mobile-card-table td[data-label="№"],.mobile-card-table td.ticket-no-cell{grid-column:1}.mobile-card-table td[data-label="Статус"]{grid-column:2;grid-row:1;text-align:right}.mobile-card-table td[data-label="SLA"],.mobile-card-table td[data-label="SLA решения"]{grid-column:2;text-align:right}.mobile-card-table td[data-label="Бренд"],.mobile-card-table td[data-label="Исполнитель"],.mobile-card-table td[data-label="Автор"]{display:none}.mobile-card-table .empty{grid-column:1/-1;text-align:center}.ticket-hero{display:block;padding:16px}.ticket-hero h2{font-size:24px}.ticket-number{display:inline-flex;margin-top:10px}.chat-toolbar{display:block;padding:10px 14px}.chat-toolbar small{display:block;margin-top:4px;text-align:left}.chat-window{height:420px;padding:13px}.msg-row{max-width:94%}.msg-avatar{display:none}.reply-box{padding:12px}.reply-actions input[type=file]{max-width:100%}.reply-actions .btn{width:100%}.details{grid-template-columns:104px minmax(0,1fr)}.quick-replies{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.quick-replies button{flex:0 0 auto}.sd-mobile-create{position:fixed;z-index:70;right:13px;bottom:14px;display:inline-flex;align-items:center;gap:6px;padding:11px 13px;border-radius:999px;background:var(--charcoal);color:#fff;box-shadow:var(--shadow);font-size:12px;font-weight:800}.sd-mobile-create .db-svg{width:16px;height:16px}.ab-login-wrap{display:block;min-height:100vh}.ab-login-story{display:none}.ab-login-panel{min-height:100vh;padding:18px}.db-login-card{padding:20px}.db-login-card .page-title{font-size:37px}.form-grid{grid-template-columns:1fr}.form-grid .span2{grid-column:auto}.chart-box{height:240px}.app-grid{right:-56px}
}
@media (max-width:480px){.grid.cards{grid-template-columns:1fr 1fr}.metric{min-height:88px}.metric span{font-size:9px}.metric b{font-size:26px}.header-actions{gap:0}.header-actions .app-shortcuts{display:none}.filters{grid-template-columns:1fr}.filters>*{grid-column:1!important}.list-toolbar-actions{grid-template-columns:1fr}.page-title{font-size:27px}.dropdown-menu{right:-6px}.mobile-card-table td[data-label="Отдел"],.mobile-card-table td[data-label="Подразделение"]{grid-column:1}.mobile-card-table td[data-label="Приоритет"]{grid-column:1}.msg-bubble{padding:10px}.sd-file-chip-name{max-width:175px}}
.mobile-nav-actions{display:none}
@media (max-width:820px){.mobile-nav-actions{display:block}}

/* mobile/webview overflow guard */
@media (max-width:820px){
  html,body,.sd-app,.sd-shell{max-width:100%;overflow-x:hidden}
  .app-header,.app-content,.sd-brand-footer,.sd-page-head,.card,.grid,.report-grid,.dashboard-hero,.ticket-layout,.ticket-main,.side-card,.ticket-hero,.chat-toolbar,.reply-box,.filters,.list-toolbar,.list-toolbar-actions,.form-grid,.actions,.card-head,.split,.details,.msg-bubble,.msg-body,.bar-row,.sd-file-buffer,.sd-file-chip{min-width:0;max-width:100%}
  .app-header{width:100vw}
  .brand,.brand-logo{min-width:0;max-width:calc(100vw - 160px);overflow:hidden}
  .brand-wordmark{flex:0 1 103px;max-width:103px}
  .header-actions{min-width:0;flex-shrink:0}
  .card-head,.split,.reply-actions,.sd-file-buffer-head{flex-wrap:wrap;align-items:flex-start}
  .card-head>*{min-width:0;max-width:100%}
  .card-head .btn,.card-head button,.actions .btn,.reply-actions .btn{white-space:normal}
  .dashboard-hero h2,.dashboard-hero .muted,.ticket-hero h2,.ticket-hero p,.bar-row span,.ticket-mini b,.ticket-mini span,.msg-body,.details dd,.notif-item span,.notif-item b{overflow-wrap:anywhere;word-break:break-word}
  .mobile-card-table tr{grid-template-columns:minmax(0,1fr) auto;max-width:100%}
  .mobile-card-table td,.mobile-card-table td>*{min-width:0;max-width:100%}
  .mobile-card-table td[data-label="Статус"],.mobile-card-table td[data-label="SLA"],.mobile-card-table td[data-label="SLA решения"]{justify-self:end;max-width:46vw}
  .mobile-card-table td[data-label="Филиал"],.mobile-card-table td[data-label="Текст"],.mobile-card-table td[data-label="Заявка"],.mobile-card-table td[data-label="Событие"],.mobile-card-table td[data-label="Дата"]{grid-column:1/-1}
  .table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .card>table{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .ticket-title-cell{min-width:0}
  .msg-row{max-width:100%}
  .msg-attachments,.attachment-wrap{min-width:0;max-width:100%}
  .attachment,.attachment-download{min-width:0;max-width:100%}
  .attachment span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .quick-replies{max-width:100%}
  .quick-replies button{white-space:normal;text-align:left}
  .notif-dropdown{max-width:calc(100vw - 24px)}
}
@media (max-width:390px){
  .app-content{padding-left:10px;padding-right:10px}
  .grid.cards{grid-template-columns:1fr}
  .page-title{font-size:24px}
  .metric b{font-size:24px}
  .mobile-card-table td[data-label="Статус"],.mobile-card-table td[data-label="SLA"],.mobile-card-table td[data-label="SLA решения"]{grid-column:1/-1;justify-self:start;max-width:100%;text-align:left}
}

/* task fixes: clickable dashboard cards, filters summary, notification pagination, assignment controls */
.metric-link{display:block;color:var(--charcoal);transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.metric-link:hover{color:var(--charcoal);transform:translateY(-2px);border-color:rgba(170,134,80,.34);box-shadow:var(--shadow)}.metric small{position:relative;z-index:1;display:block;margin-top:10px;color:var(--muted);font-size:11px;font-weight:650}.filter-summary{margin-top:6px;color:var(--gold-deep);font-size:12px;font-weight:750}.pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin-top:16px}.pagination .disabled{pointer-events:none;opacity:.45}.assign-card{display:grid;gap:10px}.take-self-form{margin-bottom:0}
@media (max-width:820px){.pagination{justify-content:flex-start}.pagination .btn{flex:0 0 auto}.metric small{font-size:10px}.assign-card{gap:8px}}
