/* V17 access states and stable page height */
html,body{min-height:100%}
body{margin:0}
.public-shell{min-height:100vh;display:flex;flex-direction:column}
.public-shell>.public-main,.public-shell>main:not(.account-page){flex:1 0 auto}
.public-shell>.public-footer{margin-top:auto;flex:none}
.library-lock{position:relative;overflow:hidden;text-align:center;background:linear-gradient(180deg,#fff,#f5f9f8);border:1px solid #d8e6e4;border-radius:16px;padding:24px;margin-top:14px}
.locked-sentence-lines{filter:blur(6px);opacity:.34;display:grid;gap:9px;margin:-6px 0 18px}
.locked-sentence-lines i{display:block;height:18px;border-radius:7px;background:#87aaa5}
.locked-sentence-lines i:nth-child(2){width:78%}.locked-sentence-lines i:nth-child(3){width:91%}
.library-lock strong{display:block;color:#173f48;font-size:1.12rem}.library-lock p{color:#667e83;margin:7px auto 16px}.library-lock .public-primary{display:inline-flex;text-decoration:none}
.locked-feature,.sample-test{max-width:760px;margin:0 auto;text-align:center}.locked-feature{border:1px dashed #9dbbb7;border-radius:14px;padding:24px;background:#f4f9f8}.locked-feature .test-primary,.sample-test .test-primary{display:inline-flex;width:auto;text-decoration:none;margin-top:12px}
.studio a.studio-action{display:inline-flex;text-decoration:none}
.access-note{padding:12px 15px;border-radius:10px;background:#eef6f5;color:#315f61;line-height:1.55}
@media(max-width:760px){.library-lock{padding:19px}.public-footer{margin-top:auto}.sample-test,.locked-feature{text-align:left}.locked-feature .test-primary,.sample-test .test-primary{width:100%;justify-content:center}}
