/* StudentSOS v12 — final mobile navigation, SEO surfaces and layout hardening */
:root{--s12-blue:#1769ff;--s12-ink:#111827;--s12-muted:#667085;--s12-line:#e3e9f2;--s12-soft:#f6f8fc}

/* Native mobile navigation: deliberately independent from app.js. */
/* Header stays above the fixed native menu; older release rules had changed it to position:relative. */
.s12-header{position:sticky!important;top:0!important;z-index:12000!important}
.s12-mobile-nav{display:none;position:relative;flex:0 0 auto}
.s12-mobile-nav>summary{list-style:none;-webkit-tap-highlight-color:transparent}
.s12-mobile-nav>summary::-webkit-details-marker{display:none}
.s12-mobile-nav-toggle{width:46px;height:46px;border:0;border-radius:15px;background:#f3f6fb;color:#1488c5;display:grid;place-items:center;cursor:pointer;user-select:none;touch-action:manipulation}
.s12-mobile-nav-toggle .sos-icon{width:25px;height:25px}
.s12-cross{display:none;font-family:Arial,sans-serif;font-size:31px;line-height:1;font-weight:400;color:#263247}
.s12-mobile-nav[open] .s12-hamburger{display:none}.s12-mobile-nav[open] .s12-cross{display:block}
.s12-mobile-nav[open] .s12-mobile-nav-toggle{background:#eef4ff;color:var(--s12-blue)}
.s12-mobile-panel{display:none}
.s12-mobile-nav[open]>.s12-mobile-panel{display:block!important;position:fixed;left:0;right:0;top:68px;bottom:0;z-index:12050;background:#fff;border-top:1px solid #edf1f6;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;box-shadow:0 24px 60px rgba(25,45,78,.14)}
.s12-mobile-panel-inner{min-height:100%;padding-top:16px!important;padding-bottom:calc(28px + env(safe-area-inset-bottom))!important}
.s12-mobile-panel-head{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 14px;border-bottom:1px solid #edf1f6;margin-bottom:10px}
.s12-mobile-panel-head>div{display:flex;align-items:center;gap:10px}.s12-mobile-panel-head small{font-size:12px!important;color:#7b8799}
.s12-mobile-links{display:grid;gap:8px;margin-top:10px}
.s12-mobile-links>a{display:grid;grid-template-columns:40px minmax(0,1fr) 20px;align-items:center;gap:10px;padding:12px 13px;border:1px solid #e5ebf3;border-radius:16px;background:#fff;color:#263247;text-decoration:none;min-width:0}
.s12-mobile-links>a>.sos-icon:first-child{width:21px;height:21px;color:var(--s12-blue);justify-self:center}.s12-mobile-links>a>.sos-icon:last-child{width:17px;height:17px;color:#98a2b3}
.s12-mobile-links>a>span{display:grid;gap:2px;min-width:0}.s12-mobile-links b{font-size:16px;line-height:1.25}.s12-mobile-links small{font-size:12px!important;line-height:1.35;color:#7b8799;overflow-wrap:anywhere}
.s12-mobile-work-details{margin-top:11px;border:1px solid #e5ebf3;border-radius:16px;background:#fafcff;overflow:hidden}
.s12-mobile-work-details>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:14px 15px;font-size:15px;font-weight:850;cursor:pointer}.s12-mobile-work-details>summary::-webkit-details-marker{display:none}.s12-mobile-work-details>summary span{font-size:22px;line-height:1;color:#1769ff;transition:transform .15s}.s12-mobile-work-details[open]>summary span{transform:rotate(45deg)}
.s12-mobile-work-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px 20px!important;padding:4px 15px 16px!important;border-top:1px solid #e8edf4;min-width:0}
.s12-mobile-work-grid section{min-width:0;padding:12px 0 0!important;border:0!important}.s12-mobile-work-grid section>b{display:block;margin-bottom:5px;color:#1769ff!important;font-size:12px!important;line-height:1.3;text-transform:uppercase;letter-spacing:.04em}.s12-mobile-work-grid section a{display:block!important;padding:6px 0!important;color:#344054!important;font-size:14px!important;line-height:1.35!important;font-weight:650!important;overflow-wrap:anywhere;text-decoration:none}
.s12-mobile-auth{position:sticky;bottom:-1px;display:grid!important;grid-template-columns:.7fr 1.4fr!important;gap:8px!important;align-items:center;margin-top:14px!important;padding:13px 0 calc(7px + env(safe-area-inset-bottom))!important;background:linear-gradient(to bottom,rgba(255,255,255,.82),#fff 20%)}.s12-mobile-auth>a:first-child{text-align:center;color:#344054;font-size:14px;font-weight:800}.s12-mobile-auth .btn,.s12-mobile-app{display:inline-flex!important;min-height:46px!important;font-size:13px!important;padding:10px 12px!important}
html:has(.s12-mobile-nav[open]),body:has(.s12-mobile-nav[open]){overflow:hidden}

/* Header survives narrow iPhones without squeezing the menu away. */
@media(max-width:1000px){
 .s12-mobile-nav{display:block!important}.s12-header .desktop-nav{display:none!important}.s12-header .header-inner{gap:8px!important}
 .s12-header .header-actions{display:flex!important;margin-left:auto!important;gap:7px!important;align-items:center!important;min-width:0}
 .s12-header .header-actions>.login-link{display:none!important}
 .s12-header .header-actions>.btn{display:inline-flex!important;white-space:nowrap!important;font-size:12px!important;line-height:1.15!important;padding:10px 11px!important;border-radius:13px!important;min-height:44px!important}
}
@media(max-width:700px){
 .s12-header .header-inner{height:64px!important;min-height:64px!important;width:calc(100% - 20px)!important;padding-left:0!important;padding-right:0!important}
 .s12-header .brand{min-width:0!important;max-width:43vw!important}.s12-header .brand svg,.s12-header .brand .sos-logo{max-width:100%!important}
 .s12-header .header-actions>.btn{font-size:11.5px!important;padding:9px 9px!important;max-width:170px!important}
 .s12-mobile-nav-toggle{width:44px;height:44px;border-radius:14px}
 .s12-mobile-nav[open]>.s12-mobile-panel{top:64px}
 .s12-mobile-panel-inner{width:100%!important;padding-left:16px!important;padding-right:16px!important}
}
@media(max-width:390px){
 .s12-header .brand{max-width:39vw!important}.s12-header .header-actions>.btn{font-size:10.5px!important;padding:9px 8px!important;max-width:145px!important}
 .s12-mobile-work-grid{grid-template-columns:1fr!important}.s12-mobile-panel-head small{display:none!important}
}
@media(max-width:350px){.s12-header .header-actions>.btn{display:none!important}.s12-header .brand{max-width:65vw!important}}

/* Homepage SEO intent chips and animated query bubbles. */
.s12-hero-query-chips{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0 2px}.s12-hero-query-chips span{display:inline-flex;padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #dfe7f2;color:#43516a;font-size:12px;line-height:1.2;font-weight:750;box-shadow:0 5px 18px rgba(35,55,85,.04)}
.s11-seo-hero .s11-bubble-stage{position:relative;overflow:hidden}
.s11-seo-bubble{will-change:transform;animation:s12Float 5.8s ease-in-out infinite}.s11-seo-bubble:nth-child(2n){animation-delay:-1.6s;animation-duration:6.8s}.s11-seo-bubble:nth-child(3n){animation-delay:-3.1s;animation-duration:7.4s}
@keyframes s12Float{0%,100%{transform:translate3d(0,0,0) rotate(-.4deg)}50%{transform:translate3d(0,-9px,0) rotate(.7deg)}}
@media(prefers-reduced-motion:reduce){.s11-seo-bubble{animation:none!important}}

.s12-search-intents{padding:74px 0;background:linear-gradient(180deg,#fff,#f8fbff)}.s12-search-intents-head{max-width:820px;margin-bottom:26px}.s12-search-intents-head>span,.s12-hub-seo-head>span,.s12-tool-seo-head>span{display:block;margin-bottom:8px;color:#1769ff;font-size:12px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.s12-search-intents-head h2,.s12-hub-seo-head h2,.s12-tool-seo-head h2{margin:0;color:#111827;font-size:clamp(30px,4vw,48px);line-height:1.08;letter-spacing:-.045em}.s12-search-intents-head p,.s12-hub-seo-head p,.s12-tool-seo-head p{margin:13px 0 0;color:#667085;font-size:17px;line-height:1.7}
.s12-search-intent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.s12-search-intent-grid>a{display:grid;gap:7px;min-width:0;padding:20px;border:1px solid #e1e8f2;border-radius:19px;background:#fff;color:#222c3d;text-decoration:none;box-shadow:0 9px 28px rgba(34,52,82,.035);transition:transform .18s,border-color .18s,box-shadow .18s}.s12-search-intent-grid>a:hover{transform:translateY(-2px);border-color:#bfd2ff;box-shadow:0 16px 36px rgba(23,105,255,.09)}.s12-search-intent-grid b{font-size:17px;line-height:1.32;color:#172033}.s12-search-intent-grid span{font-size:14px;line-height:1.55;color:#6b7486}

/* Site-wide hub and generic tool SEO blocks. */
.s12-hub-seo,.s12-tool-seo{padding:70px 0;background:#fff}.s12-hub-seo>.shell,.s12-tool-seo>.shell{max-width:1120px}.s12-hub-seo-head,.s12-tool-seo-head{max-width:860px}.s12-tool-seo-grid,.s12-hub-seo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}.s12-tool-seo-grid article,.s12-hub-seo-grid article{min-width:0;padding:19px;border:1px solid #e2e8f0;border-radius:18px;background:#fbfcfe}.s12-tool-seo-grid h3,.s12-hub-seo-grid h3{font-size:17px;line-height:1.35;margin:0 0 7px}.s12-tool-seo-grid p,.s12-hub-seo-grid p{font-size:14px;line-height:1.6;color:#697386;margin:0}.s11-intent-chips{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin-top:17px!important}.s11-intent-chips span{display:inline-flex!important;width:auto!important;max-width:100%!important;padding:7px 10px!important;border-radius:999px!important;background:#edf4ff!important;color:#1769ff!important;font-size:12px!important;line-height:1.25!important;font-weight:800!important;white-space:normal!important;overflow-wrap:anywhere!important}
.s12-wordstat-note{margin-top:18px;padding:14px 16px;border:1px solid #dbe7ff;border-radius:14px;background:#f6f9ff;color:#59677e;font-size:13px;line-height:1.6}.s12-wordstat-note strong{color:#25324a}

/* Remove the ugly decorative gradient/header strip above all work-type forms for good. */
.seo5-generator-card:before,.s6-ai-card:before,.s7-tool-ai-card:before{content:none!important;display:none!important;background:none!important;height:0!important}.seo5-generator-card,.s6-ai-card,.s7-tool-ai-card{overflow:visible!important}.seo5-generator-card{border-top:1px solid #e2e8f0!important}

/* Work-directory groups and “Показать ещё” stay compact on every phone width. */
.s9-work-directory .s6-work-directory-grid,.s9-work-directory .s6-work-group,.s9-work-directory .s10-work-links{min-width:0!important}.s9-work-directory .s10-work-links>a{display:grid!important;grid-template-columns:34px minmax(0,1fr) 18px!important;min-width:0!important}.s9-work-directory .s10-work-links>a b{min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important}.s9-work-directory .s10-work-more{display:inline-flex!important;width:max-content!important;max-width:100%!important;min-height:0!important;padding:7px 10px!important;border-radius:999px!important;font-size:12px!important;line-height:1.2!important;align-items:center!important;gap:4px!important}

/* SOSик gets an obvious speech invitation, but stays compact. */
.s12-sosik-speech{position:absolute;right:3px;bottom:69px;width:max-content;max-width:210px;padding:8px 11px;border:1px solid #dfe7f2;border-radius:12px 12px 3px 12px;background:#fff;color:#43516a;font-size:12px;font-weight:750;line-height:1.3;box-shadow:0 11px 28px rgba(30,50,82,.12);pointer-events:none;animation:s12Speech 4.5s ease-in-out infinite}.s11-sosik[open] .s12-sosik-speech{display:none}@keyframes s12Speech{0%,100%{transform:translateY(0);opacity:.9}50%{transform:translateY(-4px);opacity:1}}@media(prefers-reduced-motion:reduce){.s12-sosik-speech{animation:none}}

/* Admin integrations: never leak outside the card. */
.admin-v11-sms,.admin-v11-sms-form,.admin-v11-provider-grid,.admin-v11-chain-card,.admin-v11-provider-card,.admin-v11-sms-test{min-width:0!important;max-width:100%!important}.admin-v11-provider-card input,.admin-v11-provider-card select,.admin-v11-provider-card textarea,.admin-v11-chain-card input,.admin-v11-chain-card select,.admin-v11-sms-test input{width:100%!important;min-width:0!important;box-sizing:border-box!important}.admin-v11-provider-card p,.admin-v11-provider-card code,.admin-v9-dns-note span{overflow-wrap:anywhere!important;word-break:normal!important}.admin-v11-test-buttons{display:flex!important;flex-wrap:wrap!important}.admin-v11-test-buttons button{flex:0 1 auto!important;min-width:0!important}

/* Legal/footer links from screenshots: keep them inside the viewport and remove giant gaps. */
.s8-legal-links{display:flex!important;flex-wrap:wrap!important;gap:8px 14px!important;max-width:100%!important}.s8-legal-links a{min-width:0!important;font-size:13px!important;line-height:1.45!important;overflow-wrap:anywhere!important}.site-footer,.site-footer *{box-sizing:border-box}.site-footer .shell{min-width:0!important}.site-footer a{overflow-wrap:anywhere}

/* Registration/auth compactness from screenshots. */
.s11-register-consents{margin-top:2px!important;padding:2px 1px 0!important}.s11-register-consents label{margin:0!important}.s6-sms-status:empty{display:none!important}.s6-code-field{margin-top:0!important}.s6-auth-form{min-width:0}.s6-auth-form input,.s6-auth-form button{max-width:100%;box-sizing:border-box}

/* Typography/numbers: prevent fallback glyphs on money and metrics. */
.s6-partner-money,.s6-partner-money *,[class*="income"] b,[class*="metric"] b,.s7-price b,.s7-price-month{font-family:"Manrope",Arial,sans-serif!important;font-variant-numeric:lining-nums tabular-nums!important;font-feature-settings:"lnum" 1,"tnum" 1!important}

@media(max-width:820px){
 .s12-search-intent-grid,.s12-tool-seo-grid,.s12-hub-seo-grid{grid-template-columns:1fr 1fr}
 .admin-v11-provider-grid{grid-template-columns:1fr!important}.admin-v11-chain-card,.admin-v11-sms-test{grid-template-columns:1fr!important}.admin-v11-chain-fields{grid-template-columns:1fr!important}
}
@media(max-width:620px){
 .s12-search-intents,.s12-hub-seo,.s12-tool-seo{padding:52px 0}.s12-search-intent-grid,.s12-tool-seo-grid,.s12-hub-seo-grid{grid-template-columns:1fr}.s12-search-intents-head h2,.s12-hub-seo-head h2,.s12-tool-seo-head h2{font-size:31px}.s12-search-intents-head p,.s12-hub-seo-head p,.s12-tool-seo-head p{font-size:15px;line-height:1.65}
 .s12-hero-query-chips{gap:6px}.s12-hero-query-chips span{font-size:11px;padding:6px 8px}
 .s12-sosik-speech{right:2px;bottom:64px;font-size:11px;max-width:170px}
 .s9-work-directory .s6-work-group{padding:15px!important}.s9-work-directory .s10-work-links>a{grid-template-columns:30px minmax(0,1fr) 16px!important;padding:10px!important}
 .s11-register-consents span{font-size:10.5px!important;line-height:1.4!important}
}
/* More animated homepage bubbles, including six on mobile. */
.s11-float-bubble{will-change:transform}
@media(max-width:620px){
 .s11-bubble-stage{min-height:300px!important}
 .s11-float-bubble{font-size:11px!important;line-height:1.25!important;max-width:68%!important;padding:7px 9px!important}
 .s11-float-bubble.b1{left:0!important;top:4%!important}.s11-float-bubble.b2{right:0!important;top:17%!important}.s11-float-bubble.b3{left:0!important;bottom:6%!important}.s11-float-bubble.b4{right:0!important;bottom:0!important}.s11-float-bubble.b5{display:block!important;left:4%!important;top:42%!important;max-width:61%!important}.s11-float-bubble.b6{display:block!important;right:0!important;bottom:30%!important;max-width:58%!important}.s11-float-bubble.b7,.s11-float-bubble.b8,.s11-float-bubble.b9{display:none!important}
}
.s12-hub-seo-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.s12-hub-seo-chips span{display:inline-flex;padding:7px 10px;border-radius:999px;background:#edf4ff;color:#1769ff;font-size:12px;line-height:1.25;font-weight:800}
@media(max-width:1000px){.s12-header{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:#fff!important}}
/* Login fallback stays compact when expanded. */
.s7-password-login[open]{padding-bottom:0!important}.s7-password-login .s6-password-form{display:grid!important;gap:10px!important;padding-top:12px!important}.s7-password-login .s6-password-form .s6-field{gap:5px!important}.s7-password-login .s6-password-form input{min-height:50px!important}.s7-password-login .s6-password-form .btn{min-height:48px!important}
