.boot-shell,.auth-shell{min-height:100vh;background:radial-gradient(circle at 50% 0,#e9f1ff 0,transparent 42%),#f5f8fc;color:#1d2d45}.boot-shell{display:grid;place-items:center;padding:32px}.boot-shell[hidden]{display:none!important}.boot-card{display:flex;flex-direction:column;align-items:center;gap:20px;color:#506078}.boot-card>strong{font-size:14px}.boot-spinner{width:28px;height:28px;border:3px solid #cddcf1;border-top-color:#2467db;border-radius:50%;animation:boot-spin .8s linear infinite}@keyframes boot-spin{to{transform:rotate(360deg)}}
.auth-shell{display:grid;place-items:center;align-content:center;gap:24px;padding:32px}
.auth-brand{display:flex;align-items:center;gap:12px}.auth-brand .brand-mark{width:48px;height:48px}.auth-brand .brand-wordmark{font-size:26px;font-weight:750;letter-spacing:-1px}.auth-brand .brand-wordmark>span{color:#2467db}.auth-brand small{display:block;margin-top:2px;color:#748091;font-size:9px;font-weight:700;letter-spacing:2.2px}
.auth-card{width:min(480px,calc(100vw - 32px));padding:34px;border:1px solid #dfe7f1;border-radius:16px;background:#fff;box-shadow:0 22px 60px #1d2d4517}.auth-card h1{font-size:30px}.auth-description{margin:8px 0 24px;color:#657080;font-size:14px;line-height:1.55}.auth-card .form-field{margin:16px 0}.auth-card .form-field input{min-height:46px}.auth-submit{width:100%;min-height:46px;margin-top:8px;font-size:14px}.auth-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}.auth-actions:has(>button:only-child){justify-content:center}.auth-actions .text-button{color:#2467db;font-size:13px;font-weight:650}.auth-fields-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-fields-row .form-field{min-width:0}.auth-footnote{margin:0;color:#748091;font-size:12px}.user-menu{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:8px;min-height:40px;padding:7px 9px;border:1px solid transparent;border-radius:9px;background:transparent;color:#34445b}.user-menu-trigger:hover,.user-menu-trigger[aria-expanded="true"]{border-color:#d6e2f1;background:#f4f8fd}.user-menu-trigger:focus-visible{outline:3px solid #1957c2;outline-offset:2px}.user-menu-trigger-icon,.user-menu-chevron{display:grid;place-items:center;color:#657080}.user-menu-trigger-icon svg{width:18px;height:18px}.user-menu-chevron svg{width:14px;height:14px}.user-menu-trigger[aria-expanded="true"] .user-menu-chevron{transform:rotate(180deg)}.session-user{max-width:210px;overflow:hidden;color:#34445b;font-size:13px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.user-menu-popover{position:absolute;z-index:90;top:calc(100% + 8px);right:0;width:min(320px,calc(100vw - 28px));overflow:hidden;border:1px solid #d9e3ef;border-radius:13px;background:#fff;box-shadow:0 20px 55px #172c4d28}.user-menu-profile{display:flex;align-items:center;gap:12px;padding:17px;border-bottom:1px solid #e7edf5}.user-menu-avatar{display:grid;width:42px;height:42px;flex:none;place-items:center;border-radius:12px;background:#eaf1ff;color:#1957c2;font-size:17px;font-weight:800}.user-menu-profile>span:last-child{min-width:0}.user-menu-profile strong{display:block;overflow:hidden;color:#1d2d45;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.user-menu-profile small{display:block;margin-top:3px;color:#657080;font-size:11px}.user-menu-details{display:grid;gap:10px;margin:0;padding:14px 17px;border-bottom:1px solid #e7edf5}.user-menu-details>div{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px}.user-menu-details dt{color:#7a8698;font-size:11px}.user-menu-details dd{margin:0;overflow-wrap:anywhere;color:#34445b;font-size:12px;font-weight:600}.user-menu-actions{padding:7px}.user-menu-action{display:flex;align-items:center;gap:10px;width:100%;min-height:42px;padding:9px 10px;border:0;border-radius:8px;background:transparent;color:#34445b;font-size:12px;font-weight:700;text-align:left}.user-menu-action:hover,.user-menu-action:focus-visible{background:#eef4ff;color:#1957c2}.user-menu-action svg{width:17px;height:17px}.user-menu-action.logout-button{color:#657080}.user-menu-action.logout-button:hover,.user-menu-action.logout-button:focus-visible{background:#fff1f0;color:#b42318}.client-access-badge{display:block;margin-top:7px;color:#657080;font-size:12px;font-weight:500}.client-access-badge.ready{color:#08795b}.client-registration-dialog{width:560px}.client-registration-dialog .form-field{margin:13px 0}.client-registration-dialog .form-field input{min-height:46px}.client-registration-dialog .modal-heading{margin-bottom:18px}
.moysklad-account-dialog{width:570px}.moysklad-account-dialog .modal-heading{margin-bottom:18px}.moysklad-account-dialog .form-field{margin:18px 0 8px}.moysklad-account-dialog input[type=password]{min-height:46px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.moysklad-account-instruction{padding:17px 18px;border:1px solid #d6e4fa;border-radius:10px;background:#f4f8ff;color:#425a7c}.moysklad-account-instruction strong{display:block;color:#243b5d;font-size:14px}.moysklad-account-instruction ol{margin:9px 0 14px;padding-left:21px;font-size:13px;line-height:1.65}.moysklad-account-instruction .button{width:max-content;background:#fff;color:#2059b8}.moysklad-account-dialog .field-help{margin:0 0 8px}.moysklad-account-dialog .connection-buttons{justify-content:flex-end;margin-top:18px}
@media(prefers-reduced-motion:reduce){.boot-spinner{animation:none;border-color:#cddcf1;border-top-color:#2467db}}
@media(max-width:700px){.boot-shell,.auth-shell{padding:18px}.auth-card{padding:25px 21px}.auth-fields-row{grid-template-columns:1fr;gap:0}.user-menu-trigger{padding:7px}.session-user{display:none}.user-menu-popover{position:fixed;top:66px;right:10px}.topbar-right .api-indicator{display:none}}
