#app .privacy-page { max-width: 980px; display: grid; gap: 18px; }
#app .privacy-page .content-card { padding: clamp(20px,3vw,30px); color: #172544; line-height: 1.65; }
#app .privacy-page h2 { margin: 0 0 12px; color: #122452; font-size: clamp(21px,2.5vw,27px); }
#app .privacy-page p { margin: 0 0 12px; }
#app .privacy-page p:last-child { margin-bottom: 0; }
#app .privacy-page .privacy-youth-notice { padding: 13px 16px; border-left: 4px solid #ef4054; border-radius: 0 8px 8px 0; background: #f1f4fa; }
#app .privacy-page a { color: #183eb6; text-decoration: underline; text-underline-offset: 3px; }
#app .privacy-page .privacy-choice { margin-top: 16px; display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
#app .privacy-choice strong { margin-right: auto; }
#app .privacy-choice button { border: 1px solid #3152a2; border-radius: 8px; padding: 10px 13px; background: #fff; color: #152e72; font: inherit; font-weight: 700; cursor: pointer; }
#app .privacy-choice button:hover, #app .privacy-choice button:focus-visible { background: #eaf0ff; }
#app .visit-consent[hidden] { display: none; }
#app .visit-consent { position: fixed; left: max(12px,env(safe-area-inset-left)); right: max(12px,env(safe-area-inset-right)); bottom: max(12px,env(safe-area-inset-bottom)); z-index: 1000; margin: auto; max-width: 930px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 20px; border: 1px solid #6680c2; border-radius: 14px; background: #142653; color: #fff; box-shadow: 0 14px 42px #07112e80; }
#app .visit-consent strong { font-size: 17px; }
#app .visit-consent p { margin: 5px 0 0; line-height: 1.4; color: #e1e8fc; }
#app .visit-consent a { color: #fff; text-decoration: underline; }
#app .visit-consent-actions { display: flex; flex-shrink: 0; gap: 9px; }
#app .visit-consent button { border: 1px solid #edf1fb; border-radius: 8px; padding: 11px 15px; background: transparent; color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
#app .visit-consent button:last-child { background: #f33f55; border-color: #f33f55; color: #111a31; }
#app .visit-consent button:hover, #app .visit-consent button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
@media (max-width: 680px) { #app .visit-consent { flex-direction: column; align-items: stretch; bottom: max(75px,env(safe-area-inset-bottom)); padding: 14px; gap: 10px; } #app .visit-consent-actions button { flex: 1; } }
