/* Общие стили изолированных страниц учётных записей (/auth, /account).
   Одноколоночная компоновка на токенах tokens.css; style.css viewer не трогается. */
html,body{height:100%}
body{margin:0}
.page{font:14px var(--dsw-font-family);color:var(--dsw-alias-label-primary);background:var(--dsw-alias-bg-module-platform);min-height:100%;padding:24px 16px;box-sizing:border-box}
.page-inner{max-width:440px;margin:0 auto;background:var(--dsw-alias-bg-base);border:1px solid var(--dsw-alias-border-l2);border-radius:10px;padding:24px;box-sizing:border-box;display:flex;flex-direction:column;gap:12px}
.page h1{font-size:22px;margin:0 0 8px;line-height:1.3}
.page h2{font-size:16px;margin:0;line-height:1.3}
.page p{margin:0;line-height:1.5}
.page section{border-top:1px solid var(--dsw-alias-border-l2);padding-top:12px}
.page section:first-of-type{border-top:0;padding-top:0}
.page form{display:flex;flex-direction:column;gap:12px}
.page label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--dsw-alias-label-secondary)}
.page input{font:inherit;color:inherit;border:1px solid var(--dsw-alias-border-l3);border-radius:6px;background:var(--dsw-alias-bg-base);padding:8px 10px;min-height:38px;box-sizing:border-box;width:100%}
.page input:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:2px}
.page button{font:inherit;color:#fff;background:var(--dsw-alias-state-business-primary);border:1px solid transparent;border-radius:6px;padding:8px 16px;min-height:38px;cursor:pointer;box-sizing:border-box}
.page button:focus-visible{outline:2px solid var(--dsw-alias-state-business-primary);outline-offset:2px}
.page button:disabled{opacity:.6;cursor:wait}
.page button.link{color:var(--dsw-alias-state-business-primary);background:none;border:0;padding:0;min-height:auto;font-size:13px;text-align:left;width:max-content}
.page a.link{color:var(--dsw-alias-state-business-primary);text-decoration:none;font-size:13px;width:max-content}
.page a.link:hover{text-decoration:underline}
.page a.button{display:inline-flex;align-items:center;justify-content:center;color:#fff;background:var(--dsw-alias-state-business-primary);border-radius:6px;padding:8px 16px;min-height:38px;text-decoration:none;box-sizing:border-box;width:max-content}
.page .actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.page .message{font-size:13px;min-height:18px}
.page .message[hidden]{display:none}
.page .message-error{color:var(--dsw-alias-state-error-primary)}
.page .message-ok{color:var(--dsw-alias-state-success-primary)}
.page .message-loading{color:var(--dsw-alias-label-secondary)}
.page .hint{background:var(--dsw-alias-state-warn-tertiary);border:1px solid var(--dsw-alias-state-warn-secondary);border-radius:6px;padding:8px 10px;font-size:13px}
.page .hint[hidden]{display:none}
.page .warning{background:var(--dsw-alias-state-warn-tertiary);border-radius:6px;padding:8px 10px;font-size:13px;color:var(--dsw-alias-state-warn-label)}
.page pre{font-family:var(--dsw-font-markdown-code-block-font-family);font-size:12px;background:var(--dsw-alias-markdown-code-block);border:1px solid var(--dsw-alias-border-l2);border-radius:6px;padding:8px 10px;margin:0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all}
.page .account-line{font-weight:600}
.page .account-list{display:flex;flex-direction:column;gap:8px;align-items:stretch;padding:0;margin:0;list-style:none}
.page .account-list button{width:100%;text-align:left;font-weight:600}
.page .step-title{font-weight:600}
.page .students-top,.page .students-map-heading{display:flex;gap:10px;align-items:center;justify-content:space-between}
.page .students-top a{flex:none}
.page .students-map-heading button{color:var(--dsw-alias-state-business-primary);background:none;border:0;padding:0;min-height:auto;font-size:13px;width:max-content}
.page .students-map-list{display:flex;flex-direction:column;gap:8px}
.page .students-map{border:1px solid var(--dsw-alias-border-l2);border-radius:6px;padding:10px;display:flex;flex-direction:column;gap:4px}
.page .students-map a{color:var(--dsw-alias-state-business-primary);font-weight:600;overflow-wrap:anywhere}
.page .students-map p{font-size:13px;color:var(--dsw-alias-label-secondary);overflow-wrap:anywhere}
@media(max-width:360px){.page{padding:12px 8px}.page-inner{padding:16px}.page .students-top,.page .students-map-heading{align-items:flex-start;flex-direction:column}}
