/* Матовый кабинет: тот же язык поверхностей и движения, что на карте. */
:root{--shadow-btn:0 3px 10px #12063a14;--shadow-card:0 12px 36px #12063a0d;--shadow-sheet:0 18px 54px #09021e30}
body{background:#eeebf8}
.header{border-color:var(--line);box-shadow:0 2px 16px #12063a06;background:var(--paper)}
.header nav{gap:10px}
.header nav a,.header nav button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 14px;border-radius:999px}
.header nav .menu-button,.header nav .tour-replay--account{border-color:var(--line);border-radius:999px;box-shadow:var(--shadow-btn)}
.header nav i{font-size:19px}
.header nav #logout{color:var(--muted)}
.page{max-width:1440px;padding-top:30px}
.topline{border:0;color:var(--muted);padding-bottom:0;letter-spacing:.04em}
.cabinet:not([hidden]){grid-template-columns:250px minmax(0,1fr);gap:28px;margin-top:24px}
.cab-nav{border-color:var(--line);border-radius:28px;background:var(--paper);padding:8px;box-shadow:var(--shadow-card);overflow:hidden}
.cab-user{padding:16px 12px 22px;border-color:var(--line)}
.cab-user .avatar{background:#e8dfff;border:1px solid #c8b5ff;color:var(--ink)}
.cab-links,.cab-extra{padding:10px 0;gap:4px}
.cab-links a,.cab-extra a{min-height:50px;padding:10px 12px;border-radius:16px;font-size:13px}
.cab-links a[aria-current]{background:#f9dff3;color:#a90d64}
.cab-count,.reports-count{border-radius:999px}
.cab-main{padding:30px;background:var(--paper);border:1px solid #e1daf6;border-radius:28px;box-shadow:var(--shadow-card)}
.cab-section .profile-heading{align-items:flex-start;gap:16px;margin-bottom:28px}
.cab-section .profile-heading h1{font-size:clamp(28px,3vw,44px);line-height:1.18;margin:0;letter-spacing:-.065em}
.cab-section .eyebrow{font-size:9px;letter-spacing:.02em;margin:0 0 14px}
.role-badge{margin:0;padding:9px 12px;background:#e9e0ff;border:1px solid #c8b5ff;border-radius:999px;font:800 11px Manrope,sans-serif;white-space:nowrap}
.profile-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px}
.identity,.workspace{min-height:340px;padding:24px;border-radius:24px;overflow:hidden}
.identity{border:1px solid var(--line);background:#fff}
.identity .avatar{margin:24px 0 18px;background:#e8dfff;border:1px solid #c8b5ff;width:64px;height:64px;font-size:18px}
.identity strong{font:800 19px/1.4 Manrope,sans-serif;overflow-wrap:anywhere}
.identity p{margin-bottom:20px}
.workspace{background:var(--ink);box-shadow:0 8px 24px #17084518}
.workspace h2{font-size:clamp(23px,2.2vw,32px);margin:32px 0 12px;line-height:1.25}
.workspace>p{font-size:13px;margin:0 0 24px}
.workspace-line{border-color:#c8b5ff30;font-size:11px}
.label{font-size:8px;letter-spacing:.025em}
.facts div{font-size:12px}
.cab-section .admin-intro{border:0;padding:0}
.cab-section .admin-intro h2{font-size:clamp(28px,3vw,42px);line-height:1.2;letter-spacing:-.065em}
.cab-section .admin-intro p{font-size:13px;line-height:1.7;margin-top:14px}
.admin-summary{border:0;gap:10px;margin-top:26px}
.admin-summary>div{min-height:118px;background:#ebe5fb;border:1px solid var(--line);border-radius:20px;padding:18px}
.admin-summary>div+div{border-left:1px solid var(--line)}
.admin-summary span{font:800 10px/1.4 Manrope,sans-serif}
.admin-summary strong{font-size:36px}
.team-heading,.my-submissions .team-heading{margin:32px 0 18px;align-items:center}
.team-heading h3{font-size:22px;margin-bottom:6px}
.team-heading span{line-height:1.6;display:block}
.users-list{border:0;display:grid;gap:10px}
.user-row,.submission-row,.report-row{padding:18px;border:1px solid var(--line);border-radius:20px;background:#fff;gap:12px}
.team-identity strong{font:800 14px/1.4 Manrope,sans-serif}
.team-controls select{border-color:var(--line);border-radius:14px;background:var(--paper);min-width:130px}
.add-point-link,.save-role,.team-heading button,.notify-test,.queue-buttons button,.submission-fix{border-radius:14px;box-shadow:none}
.team-heading button,.notify-test,.queue-buttons button:not(.do-publish),.submission-fix:not(.is-urgent){border-color:var(--line)}
.notify-test{font:800 11px/1.4 Manrope,sans-serif;padding:12px 14px;text-align:left}
.user-search{border-color:var(--line);border-radius:18px;height:50px}
.user-search:focus-within{box-shadow:0 0 0 3px #c8b5ff66}
.submission-status{border-radius:999px;font:800 10px/1.3 Manrope,sans-serif;padding:7px 10px;background:#f4f2ff}
.submission-status--published{background:#e9e0ff;color:var(--ink);border-color:#c8b5ff}
.admin-message,.queue-warn{border-radius:14px}
.list-state{padding:28px 24px;margin:0;border:1px dashed var(--line);border-radius:20px;line-height:1.7;background:#ffffff66}
.queue-tabs{border:0;margin:24px 0 18px;padding:0;gap:8px}
.queue-tabs button{border-radius:999px;border-color:var(--line);font:800 11px Manrope,sans-serif;min-height:44px}
.queue-tabs button b{border-radius:999px}
.queue-tabs button::after{border-radius:inherit}
.queue-card{border-color:var(--line);border-radius:24px;overflow:hidden;grid-template-columns:minmax(0,1.3fr) minmax(220px,1fr)}
.queue-main{padding:22px}
.queue-head h4{font-size:18px;line-height:1.35}
.queue-side{border-color:var(--line)}
.queue-actions{border-color:var(--line);padding:18px 22px}
.queue-actions textarea{border-radius:14px;border-color:var(--line)}
.queue-photos a,.queue-photos img{border-radius:14px;overflow:hidden}
.queue-facts dt{font:800 10px Manrope,sans-serif}
.history{padding:12px;background:#eeebf8;border-radius:14px}
.footer{border-color:var(--line);color:var(--muted);background:var(--paper)}
.loading{margin:40px 0;padding:32px;background:var(--paper);border-radius:24px;font-size:18px}
/* Меню и обучалка продолжают визуальный язык карты. */
.sm-panel{width:min(350px,calc(100vw - 24px));border-radius:28px;border-color:var(--line);box-shadow:var(--shadow-sheet);padding:6px}
.sm-badge{border-radius:999px}
.sm-head{border-color:var(--line)}
.sm-close{border-radius:50%;border-color:var(--line)}
.sm-links{padding:8px;display:grid;gap:4px}
.sm-links a{border-radius:16px}
.sm-links a[aria-current=page]{box-shadow:none;background:#f9dff3;color:#a90d64}
.sm-telegram{margin:0 6px;border-radius:18px;border:0}
.sm-legal{background:none;border-color:var(--line)}
.sm-legal a{color:var(--muted)}
.tour-card{border-radius:24px;box-shadow:var(--shadow-sheet)}
.tour-next{border-radius:14px}
.tour-progress span{border-radius:999px}
.cab-section.is-active{animation:account-section-in .38s cubic-bezier(.16,1,.3,1) both}
@keyframes account-section-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.profile-grid{grid-template-columns:1fr}.identity,.workspace{min-height:0}.workspace h2{margin-top:24px}.queue-card{grid-template-columns:1fr}.queue-side{border-left:0;border-top:1px solid var(--line)}}
@media(max-width:860px){
 .header{height:70px;padding:10px 16px}.header nav{gap:6px}.header nav #logout{padding:0 8px;font-size:10px}
 .header nav a{display:none}
 .header nav .menu-button,.header nav .tour-replay--account{width:44px;height:44px;padding:0;border-radius:50%}
 .header nav .menu-button span,.header nav .tour-replay--account span{display:none}
 .header nav .menu-button i,.header nav .tour-replay--account i{margin:0}
 .page{padding:22px 12px 110px}.topline{padding:0 8px;font-size:7px}
 .cabinet:not([hidden]){grid-template-columns:minmax(0,1fr);margin-top:20px;gap:0}
 .cab-main{padding:22px 18px;border-radius:24px}
 .cab-nav{border-radius:26px;border-color:#c8b5ff44;background:var(--ink);padding:5px;box-shadow:0 8px 26px #12063a30}
 .cab-links{padding:0;gap:3px}.cab-links a{border-radius:20px;width:54px;padding:0;color:#d8d0ee}
 .cab-links a[aria-current]{background:var(--paper);color:var(--ink)}
 .cab-section .profile-heading{display:flex;flex-direction:column;margin-bottom:22px}
 .cab-section .profile-heading h1{font-size:clamp(27px,7.4vw,40px)}
 .identity,.workspace{padding:20px;border-radius:20px}.profile-grid{gap:12px}
 .cab-section .admin-intro h2{font-size:27px}
 .admin-summary{gap:6px}.admin-summary>div{min-height:100px;padding:12px 10px;border-radius:16px}.admin-summary strong{font-size:27px}.admin-summary span{font-size:9px}
 .team-heading{display:flex;flex-wrap:wrap;gap:14px}.team-heading h3{font-size:20px}.team-heading button,.add-point-link{margin-top:0}
 .user-row{flex-direction:column;align-items:stretch;gap:16px}.team-controls{width:100%}.team-controls select{flex:1;min-width:0}
 .submission-row{grid-template-columns:minmax(0,1fr)}.submission-status{justify-self:start}.submission-row strong{font-size:15px}
 .queue-main,.queue-actions{padding:18px 16px}.queue-head{flex-wrap:wrap}.queue-head h4{font-size:17px}
 .queue-tabs{gap:6px}.queue-tabs button{padding:8px 10px;font-size:10px}.queue-buttons button{font:800 11px Manrope,sans-serif}
 .user-row,.report-row,.submission-row{padding:16px}.notify-test{width:100%;justify-content:center}
 .footer{font-size:7px;padding:20px 20px 100px}
}
@media(prefers-reduced-motion:reduce){.cab-section.is-active{animation:none}}
@media(max-width:820px){.sm-panel{left:auto;right:12px;top:calc(12px + env(safe-area-inset-top));max-height:calc(100dvh - 24px - env(safe-area-inset-top));border:1px solid var(--line)}}
/* Телефон: компактные меню без уменьшения всей страницы масштабированием. */
@media(max-width:700px){
 .cab-nav{padding:4px;border-radius:23px;bottom:calc(12px + env(safe-area-inset-bottom))}
 .cab-links{gap:2px}.cab-links a{width:42px;min-height:44px;border-radius:18px}.cab-links a i{font-size:21px}
 .cab-count{top:1px;right:0;min-width:16px;height:16px;font-size:7px}
 .sm-panel{width:min(320px,calc(100vw - 32px));padding:5px;border-radius:24px;right:16px}
 .sm-head{padding:9px 10px 12px}.sm-title{font-size:10px}.sm-close{width:36px;height:36px;font-size:18px}
 .sm-user{padding:12px 14px;gap:2px}.sm-user strong{font-size:14px}.sm-user span{font-size:8px}
 .sm-links{padding:6px;gap:2px}.sm-links a{min-height:44px;padding:0 12px;gap:10px;border-radius:13px;font-size:13px}.sm-links a i{font-size:19px}
 .sm-telegram{min-height:44px;margin:0 6px;padding:8px 12px;gap:10px;border-radius:14px;font-size:12px}.sm-telegram i{font-size:19px}
 .sm-legal{margin:0 6px;padding:10px 8px;gap:8px 12px;font-size:10px}
}
