html:has(body.asv-sto-desktop-page){margin-top:0!important}
body.asv-sto-desktop-page{margin:0!important;padding:0!important;min-width:320px;background:#f3f5f8;overflow-x:hidden}
body.asv-sto-desktop-page .asv-sto-desktop-page-main{display:block;min-height:100vh;margin:0;padding:0}
body.asv-sto-desktop-page .asv-desktop-root{min-height:100vh;border-radius:0;box-shadow:none}
:root{--asv-bg:#f3f5f8;--asv-surface:#fff;--asv-border:#dfe4ea;--asv-text:#17212b;--asv-muted:#687381;--asv-accent:#1367d1;--asv-accent-dark:#0e4fa3;--asv-danger:#b42318;--asv-success:#067647;--asv-shadow:0 8px 24px rgba(20,32,48,.08)}

/* Application shell */
.asv-desktop-root{width:100%;min-height:70vh;background:var(--asv-bg);color:var(--asv-text);font:13px/1.35 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;border-radius:12px;overflow:hidden;box-shadow:var(--asv-shadow)}
.asv-desktop-root *{box-sizing:border-box}
.asv-desktop-root a{color:var(--asv-accent)}
.asv-desktop-topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:6px 14px;background:#111923;color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}
.asv-desktop-brand{display:flex;align-items:center;gap:8px}
.asv-desktop-brand strong{display:block;font-size:14px;line-height:1.15}
.asv-desktop-brand small{display:block;margin-top:2px;color:#aab5c2;font-size:10px}
.asv-desktop-mark{display:inline-grid;place-items:center;min-width:40px;height:32px;padding:0 7px;border-radius:7px;background:var(--asv-accent);color:#fff;font-weight:800;letter-spacing:.07em}
.asv-desktop-session-actions{display:flex;align-items:center;gap:8px}
.asv-desktop-logout{display:flex;align-items:center;gap:8px;margin:0}
.asv-desktop-logout span{color:#d5dce5;font-size:12px}
.asv-desktop-logout button,.asv-desktop-nav-toggle,.asv-desktop-admin-link{display:inline-flex;align-items:center;justify-content:center;min-height:30px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff!important;border-radius:6px;padding:4px 9px;font-size:12px;font-weight:600;line-height:1.2;font-family:inherit;text-decoration:none;cursor:pointer}
.asv-desktop-admin-link:hover{background:rgba(255,255,255,.16)}
.asv-desktop-nav-toggle{display:none}

/* Main CRM frame */
.asv-desktop-root .asv-sto-crm{max-width:none!important;margin:0!important;padding:10px 14px 18px!important}
.asv-desktop-root .asv-crm-title{margin:0 0 7px!important;align-items:center!important}
.asv-desktop-root .asv-crm-title h1{font-size:20px!important;line-height:1.15!important}
.asv-desktop-root .asv-crm-title p{margin-top:2px!important;font-size:11px!important}
.asv-desktop-root .asv-crm-user{display:none!important}
.asv-desktop-root .asv-crm-tabs{position:sticky;top:54px;z-index:20;display:flex!important;gap:4px!important;flex-wrap:nowrap!important;overflow-x:auto;margin:0 -14px 10px!important;padding:6px 14px!important;background:rgba(243,245,248,.97);backdrop-filter:blur(8px);border:0!important;scrollbar-width:thin}
.asv-desktop-root .nav-tab{flex:0 0 auto;margin:0!important;padding:6px 9px!important;border:1px solid var(--asv-border)!important;border-radius:6px!important;background:#fff!important;color:#3f4b59!important;text-decoration:none!important;font-size:12px!important;font-weight:600!important;line-height:1.15!important}
.asv-desktop-root .nav-tab-active{background:var(--asv-accent)!important;color:#fff!important;border-color:var(--asv-accent)!important}

/* Dense content primitives */
.asv-desktop-root .asv-card{border-color:var(--asv-border)!important;border-radius:8px!important;padding:9px!important;box-shadow:0 1px 2px rgba(20,32,48,.025)}
.asv-desktop-root .asv-card h2,.asv-desktop-root .asv-card h3{margin-top:0!important}
.asv-desktop-root .asv-grid{gap:7px!important;grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important}
.asv-desktop-root .asv-metric strong{font-size:21px!important;line-height:1.05!important;margin-top:3px!important}
.asv-desktop-root .asv-section{margin-top:8px!important}
.asv-desktop-root .asv-toolbar{gap:6px!important;padding:7px!important;margin:7px 0!important;border-color:var(--asv-border)!important;border-radius:7px!important}
.asv-desktop-root .asv-toolbar label,.asv-desktop-root .asv-form-grid label{gap:2px!important}
.asv-desktop-root .asv-toolbar input,.asv-desktop-root .asv-toolbar select,.asv-desktop-root .asv-form-grid input,.asv-desktop-root .asv-form-grid select,.asv-desktop-root .asv-form-grid textarea{min-width:0!important}
.asv-desktop-root .asv-form-grid{gap:6px!important;grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important}
.asv-desktop-root .asv-form-grid .wide{grid-column:1/-1}
.asv-desktop-root input:not([type=checkbox]):not([type=radio]),.asv-desktop-root select,.asv-desktop-root textarea{width:100%;max-width:100%;min-height:31px;border:1px solid #c9d1dc;border-radius:5px;background:#fff;color:var(--asv-text);padding:4px 7px;font:inherit}
.asv-desktop-root textarea{min-height:58px;resize:vertical;line-height:1.3}
.asv-desktop-root input:focus,.asv-desktop-root select:focus,.asv-desktop-root textarea:focus{outline:2px solid rgba(19,103,209,.18);border-color:var(--asv-accent)}
.asv-desktop-root input[type=checkbox],.asv-desktop-root input[type=radio]{display:inline-block!important;flex:0 0 auto!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;margin:0!important;padding:0!important;vertical-align:middle;accent-color:var(--asv-accent)}
.asv-desktop-root .asv-form-grid label:has(> input[type=checkbox]),.asv-desktop-root .asv-form-grid label:has(> input[type=radio]){display:flex!important;min-height:31px;flex-direction:row!important;align-items:center!important;justify-content:flex-start;gap:6px!important;padding-top:13px}
.asv-desktop-root .button,.asv-desktop-root button.button,.asv-desktop-root input[type=submit]{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:4px 9px;border:1px solid #c7d0db;border-radius:5px;background:#fff;color:#263442;text-decoration:none;font-size:12px;font-weight:600;line-height:1.2;font-family:inherit;cursor:pointer}
.asv-desktop-root .button-primary{background:var(--asv-accent)!important;border-color:var(--asv-accent)!important;color:#fff!important}
.asv-desktop-root .button-primary:hover{background:var(--asv-accent-dark)!important}
.asv-desktop-root .button-link-delete{color:var(--asv-danger);background:transparent;border:0;cursor:pointer}
.asv-desktop-root .widefat{width:100%;border-collapse:separate;border-spacing:0;background:#fff;font-size:12px}
.asv-desktop-root .widefat th{position:sticky;top:0;background:#f7f8fa;color:#52606d;font-size:11px;text-align:left;padding:6px;border-bottom:1px solid var(--asv-border);white-space:nowrap}
.asv-desktop-root .widefat td{padding:6px;border-bottom:1px solid #edf0f4;vertical-align:top}
.asv-desktop-root .striped tbody tr:nth-child(even){background:#fafbfc}
.asv-desktop-root .asv-table-wrap{border:1px solid var(--asv-border);border-radius:7px;background:#fff}
.asv-desktop-root .asv-table-wrap table{min-width:720px!important}
.asv-desktop-root .asv-status{padding:2px 7px!important;font-size:11px!important;line-height:1.35}
.asv-desktop-root .asv-record-tabs{margin:7px 0!important;gap:4px!important}
.asv-desktop-root .asv-record-tabs a{padding:5px 8px!important;font-size:12px}
.asv-desktop-root .asv-record-head{gap:8px!important}
.asv-desktop-root .asv-pre{padding:6px!important}
.asv-desktop-root h2{font-size:17px!important;line-height:1.2;margin:8px 0 6px!important}
.asv-desktop-root h3{font-size:14px!important;line-height:1.25;margin-bottom:5px!important}
.asv-desktop-root p{margin:5px 0}
.asv-desktop-root label{font-size:11px;color:#53606d}
.asv-desktop-root label>span,.asv-desktop-root label{font-weight:600}
.asv-desktop-root .asv-muted{font-size:12px}
.asv-desktop-root .asv-section-intro{max-width:1250px;margin-bottom:7px}
.asv-desktop-root .asv-pagination{gap:4px!important;margin-top:7px!important}
.asv-desktop-root .asv-pagination a,.asv-desktop-root .asv-pagination span{padding:4px 8px!important}
.asv-desktop-root .asv-actions{gap:4px!important}
.asv-desktop-root .asv-mini-form{gap:4px!important}
.asv-desktop-root .asv-two{gap:8px!important;grid-template-columns:minmax(0,2.25fr) minmax(260px,1fr)!important}

/* Compact users screen */
.asv-desktop-root .asv-users-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,760px),1fr));gap:8px;align-items:start}
.asv-desktop-root .asv-user-card{margin:0!important;padding:9px!important}
.asv-desktop-root .asv-user-head{align-items:flex-start!important;padding-bottom:6px;border-bottom:1px solid #edf0f4}
.asv-desktop-root .asv-user-head h3{margin:0 0 2px!important}
.asv-desktop-root .asv-user-head p{margin:0!important;font-size:11px!important;line-height:1.25}
.asv-desktop-root .asv-user-form{margin-top:7px}
.asv-desktop-root .asv-user-main-grid{grid-template-columns:1.05fr 1.3fr 1.15fr .8fr .8fr!important}
.asv-desktop-root .asv-user-days{display:flex;align-items:center;gap:10px;margin-top:7px;padding:6px 0;border-top:1px solid #edf0f4;border-bottom:1px solid #edf0f4}
.asv-desktop-root .asv-user-days>strong{flex:0 0 auto;font-size:11px}
.asv-desktop-root .asv-check-row,.asv-desktop-root .asv-user-flags{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px}
.asv-desktop-root .asv-user-flags{margin-top:7px}
.asv-desktop-root .asv-check-option{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:5px!important;min-height:22px;color:#42505e;font-weight:600;white-space:nowrap}
.asv-desktop-root .asv-check-option span{font-size:11px}
.asv-desktop-root .asv-user-actions{display:flex;justify-content:flex-end;margin-top:7px}

/* Compact settings and controls */
.asv-desktop-root .asv-sto-section-settings textarea{min-height:50px}
.asv-desktop-root .asv-sto-section-settings .asv-form-grid,.asv-desktop-root .asv-sto-section-controls .asv-form-grid{gap:5px!important}
.asv-desktop-root .asv-sto-section-settings .asv-card>h3,.asv-desktop-root .asv-sto-section-controls .asv-card>h3{margin-bottom:6px!important}

/* Notices */
.asv-desktop-root .notice{margin:0 0 7px;padding:7px 9px;border:1px solid var(--asv-border);border-left-width:4px;border-radius:6px;background:#fff}
.asv-desktop-root .notice p{margin:0}
.asv-desktop-root .notice-success{border-left-color:var(--asv-success)}
.asv-desktop-root .notice-error{border-left-color:var(--asv-danger)}
.asv-desktop-root .updated{border-left-color:var(--asv-success)}
.asv-desktop-root .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Login remains deliberately larger than the working interface. */
.asv-desktop-login-shell{min-height:560px;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 10%,rgba(19,103,209,.18),transparent 35%),linear-gradient(135deg,#111923,#243347)}
.asv-desktop-login-card{width:min(440px,100%);padding:24px;border-radius:14px;background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.3)}
.asv-desktop-login-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.asv-desktop-login-brand h1{font-size:24px;line-height:1.1;margin:0}
.asv-desktop-login-brand p{margin:4px 0 0;color:var(--asv-muted)}
.asv-desktop-login-form,.asv-desktop-link-form{display:grid;gap:12px;margin:0}
.asv-desktop-link-form{margin-top:14px;padding-top:14px;border-top:1px solid var(--asv-border)}
.asv-desktop-login-form label,.asv-desktop-link-form label{display:grid;gap:5px;color:#344054;font-weight:700}
.asv-desktop-login-form input,.asv-desktop-link-form input{height:44px;font-size:16px}
.asv-desktop-login-form button,.asv-desktop-link-form button,.asv-desktop-login-card>form button{height:44px;border:0;border-radius:8px;background:var(--asv-accent);color:#fff;font-weight:800;cursor:pointer}
.asv-desktop-login-form button.secondary,.asv-desktop-link-form button.secondary{background:#e9eef5;color:#233142}
.asv-desktop-login-note{margin:16px 0 0;color:var(--asv-muted);font-size:12px}
.asv-desktop-admin-note{padding:10px 12px;border:1px solid #b8d5fb;border-radius:8px;background:#eef6ff;color:#174a82}
.asv-desktop-alert{margin:0 0 14px;padding:10px 12px;border-radius:8px}
.asv-desktop-alert.error{background:#fff1f0;color:var(--asv-danger);border:1px solid #f7c7c3}
.asv-desktop-alert.success{background:#ecfdf3;color:var(--asv-success);border:1px solid #abefc6}

@media(max-width:1500px){
  .asv-desktop-root .asv-users-grid{grid-template-columns:1fr}
}
@media(max-width:1100px){
  .asv-desktop-root .asv-user-main-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .asv-desktop-root .asv-two{grid-template-columns:1fr!important}
}
@media(max-width:900px){
  .asv-desktop-topbar{padding:7px 10px;min-height:56px}
  .asv-desktop-nav-toggle{display:inline-flex}
  .asv-desktop-logout span{display:none}
  .asv-desktop-admin-link{font-size:0;width:34px;padding:0}
  .asv-desktop-admin-link:after{content:"WP";font-size:11px}
  .asv-desktop-root .asv-sto-crm{padding:9px!important}
  .asv-desktop-root .asv-crm-title{display:none!important}
  .asv-desktop-root .asv-crm-tabs{display:none!important;position:fixed;left:10px;right:10px;top:66px;z-index:100;max-height:calc(100vh - 82px);margin:0!important;padding:9px!important;flex-direction:column!important;overflow:auto;border:1px solid var(--asv-border)!important;border-radius:9px;box-shadow:var(--asv-shadow);background:#fff}
  .asv-desktop-root.asv-nav-open .asv-crm-tabs{display:flex!important}
  .asv-desktop-root .nav-tab{width:100%;padding:9px!important;font-size:13px!important}
  .asv-desktop-root .asv-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .asv-desktop-root .asv-table-wrap table{min-width:680px!important}
  .asv-desktop-root .asv-user-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:560px){
  .asv-desktop-root{font-size:14px}
  .asv-desktop-brand small{display:none}
  .asv-desktop-brand strong{font-size:14px}
  .asv-desktop-mark{min-width:38px;height:32px}
  .asv-desktop-session-actions{gap:5px}
  .asv-desktop-logout button{font-size:0;width:44px;padding:0}
  .asv-desktop-logout button:after{content:"Выйти";font-size:10px}
  .asv-desktop-root .asv-grid{grid-template-columns:1fr!important}
  .asv-desktop-root .asv-form-grid,.asv-desktop-root .asv-user-main-grid{grid-template-columns:1fr!important}
  .asv-desktop-root .asv-toolbar{display:grid!important;grid-template-columns:1fr 1fr}
  .asv-desktop-root .asv-toolbar label{grid-column:1/-1}
  .asv-desktop-root .asv-record-head{display:grid!important}
  .asv-desktop-root .asv-actions,.asv-desktop-root .asv-mini-form{display:grid!important;width:100%}
  .asv-desktop-root .asv-mini-form>*{width:100%}
  .asv-desktop-root input:not([type=checkbox]):not([type=radio]),.asv-desktop-root select,.asv-desktop-root textarea{min-height:40px;font-size:16px}
  .asv-desktop-root .button,.asv-desktop-root button.button,.asv-desktop-root input[type=submit]{min-height:38px;font-size:13px}
  .asv-desktop-root .asv-user-days{display:block}
  .asv-desktop-root .asv-user-days>strong{display:block;margin-bottom:6px}
  .asv-desktop-root .asv-check-row,.asv-desktop-root .asv-user-flags{gap:7px 12px}
  .asv-desktop-root .asv-user-actions .button{width:100%}
  .asv-desktop-login-shell{min-height:500px;padding:12px}
  .asv-desktop-login-card{padding:18px}
}


.asv-external-request-card {
    margin: 18px 22px 0;
    padding: 18px 20px;
    border: 1px solid rgba(32, 104, 174, .22);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(20, 42, 70, .08);
}
.asv-external-request-card__text {
    line-height: 1.55;
    white-space: normal;
}
@media (max-width: 720px) {
    .asv-external-request-card { margin: 12px 10px 0; padding: 14px; }
}
