.auth-dialog{border:0;padding:0;background:transparent;width:min(440px,calc(100% - 28px));max-width:none}.auth-dialog::backdrop{background:rgba(12,27,23,.72);backdrop-filter:blur(8px)}.auth-card{position:relative;background:#fffdf8;color:#17332d;border-radius:24px;padding:34px;box-shadow:0 24px 70px rgba(10,28,23,.28);font-family:"DM Sans","Noto Sans SC",sans-serif}.auth-close{position:absolute;right:15px;top:14px;border:0;background:#eeeae0;border-radius:50%;width:35px;height:35px;font-size:22px;cursor:pointer}.auth-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#ffe3dc;font-size:28px;margin-bottom:18px}.auth-card h2{font-size:30px;margin:0 0 7px}.auth-card>p{color:#6d7b76;margin:0 0 22px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#eeeae0;border-radius:12px;padding:4px;margin-bottom:20px}.auth-tabs button{border:0;background:transparent;border-radius:9px;padding:10px;font-weight:800;color:#6d7b76;cursor:pointer}.auth-tabs button.active{background:#fff;color:#17332d;box-shadow:0 3px 10px rgba(23,51,45,.08)}.auth-form{display:grid;gap:13px}.auth-form label{font-size:12px;font-weight:800}.auth-form input{width:100%;border:1px solid rgba(23,51,45,.16);border-radius:12px;padding:13px;margin-top:6px;background:#fff;font:inherit}.auth-submit{border:0;border-radius:13px;background:#17332d;color:white;padding:14px;font-weight:800;cursor:pointer;margin-top:5px}.auth-tip{font-size:11px;color:#6d7b76;line-height:1.6}.account-card{text-align:center}.account-avatar{display:grid;place-items:center;width:80px;height:80px;margin:0 auto 15px;border-radius:26px;background:#dff2e8;font-size:34px;font-weight:900}.account-name{font-size:27px;font-weight:900}.account-user{color:#6d7b76;margin:5px 0 24px}.auth-logout{border:1px solid rgba(23,51,45,.16);background:white;border-radius:12px;padding:12px 22px;color:#17332d;font-weight:800;cursor:pointer}.login-note{background:#fff0b5;border-radius:11px;padding:10px 12px;font-size:12px;color:#52645e;margin-bottom:12px}
header .header-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;justify-self:end;white-space:nowrap}
header .language-switches{display:flex;align-items:center;gap:5px;padding:4px;background:rgba(255,255,255,.88);border:1px solid #dcebf4;border-radius:999px;box-shadow:0 4px 0 #dcebf4}
header .lang-switch{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:auto!important;min-width:42px;min-height:34px;padding:6px 10px;border-radius:999px;color:#52617e;text-decoration:none;font-size:12px;font-weight:800;line-height:1;transition:background .18s ease,color .18s ease,transform .18s ease}
header .lang-switch:hover{background:#f3f0ff;color:#6551c8;transform:translateY(-1px)}
header .lang-switch.active{background:#7562d9;color:#fff;box-shadow:0 2px 0 #5645b5}
header .header-actions .lang-switch{max-width:none}
header .header-actions .profile-btn{flex:0 1 auto;min-width:0;max-width:150px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
header .mobile-nav-toggle{display:none;border:0;font:inherit}
@media(max-width:560px){header .header-actions{gap:5px}header .language-switches{gap:2px;padding:3px}header .header-actions .lang-switch{min-width:36px;min-height:30px;padding:5px 7px!important;font-size:11px}header .header-actions .profile-btn{max-width:96px}}

header .language-dropdown{position:relative;flex:0 0 auto;min-width:104px;font-size:13px;font-weight:800;color:#35415d}
header .language-dropdown summary{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:8px 12px;background:rgba(255,255,255,.94);border:2px solid #d9edf8;border-radius:999px;box-shadow:0 4px 0 #d9edf8;cursor:pointer;list-style:none;user-select:none;white-space:nowrap}
header .language-dropdown summary::-webkit-details-marker{display:none}
header .language-dropdown summary:hover{border-color:#c9bff8;background:#faf8ff}
header .language-dropdown[open] summary{border-color:#7863df;box-shadow:0 3px 0 #5946bd}
header .language-chevron{font-size:14px;line-height:1;transition:transform .18s ease}
header .language-dropdown[open] .language-chevron{transform:rotate(180deg)}
header .language-menu{position:absolute;z-index:1000;top:calc(100% + 9px);right:0;display:grid;gap:4px;width:148px;padding:7px;background:#fff;border:1px solid #dcebf4;border-radius:16px;box-shadow:0 14px 34px rgba(46,60,100,.18)}
header .language-dropdown:not([open]) .language-menu{display:none}
header .language-menu .lang-switch{display:flex!important;justify-content:flex-start!important;width:100%!important;min-height:38px!important;padding:9px 12px!important;border-radius:11px!important;background:transparent!important;box-shadow:none!important;color:#52617e!important;font-size:13px!important;text-decoration:none;white-space:nowrap}
header .language-menu .lang-switch:hover{background:#f3f0ff!important;color:#6551c8!important;transform:none}
header .language-menu .lang-switch.active{background:#ece8ff!important;color:#5e49c5!important}
@media(max-width:560px){header .language-dropdown{min-width:88px;font-size:12px}header .language-dropdown summary{min-height:36px;padding:6px 9px;gap:5px}header .language-menu{right:0;width:136px}}
@media(max-width:900px){
  header{position:relative;z-index:1201}
  header .header-actions{gap:6px}
  header .mobile-nav-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:7px 12px;border:2px solid #d9edf8;border-radius:999px;background:rgba(255,255,255,.96);color:#35415d;box-shadow:0 4px 0 #d9edf8;cursor:pointer;font-size:13px;font-weight:900;line-height:1;white-space:nowrap}
  header .mobile-nav-toggle:hover{border-color:#c9bff8;background:#faf8ff}
  header .mobile-nav-toggle:focus-visible{outline:3px solid rgba(117,98,217,.28);outline-offset:2px}
  header .mobile-nav-icon{display:grid;gap:3px;width:18px}
  header .mobile-nav-icon i{display:block;width:18px;height:2px;border-radius:99px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
  header .mobile-nav-toggle.is-open .mobile-nav-icon i:nth-child(1){transform:translateY(5px) rotate(45deg)}
  header .mobile-nav-toggle.is-open .mobile-nav-icon i:nth-child(2){opacity:0}
  header .mobile-nav-toggle.is-open .mobile-nav-icon i:nth-child(3){transform:translateY(-5px) rotate(-45deg)}
  header nav:not(.mobile-open),header .nav:not(.mobile-open){display:none!important}
  header nav.mobile-open,header .nav.mobile-open{display:grid!important;position:fixed!important;z-index:1300!important;top:74px!important;left:12px!important;right:12px!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 90px);grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;margin:0!important;padding:10px!important;overflow-y:auto;background:rgba(255,255,255,.98)!important;border:2px solid #d9edf8!important;border-radius:20px!important;box-shadow:0 18px 48px rgba(45,57,96,.2),0 5px 0 rgba(217,237,248,.9)!important;backdrop-filter:blur(14px)}
  header nav.mobile-open a,header .nav.mobile-open a{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-width:0!important;min-height:46px!important;margin:0!important;padding:10px 12px!important;border-radius:13px!important;font-size:14px!important;line-height:1.25!important;white-space:normal!important;text-align:left!important}
  header nav.mobile-open a.active,header .nav.mobile-open a.active{background:#7562d9!important;color:#fff!important;box-shadow:0 3px 0 #5645b5!important}
}
@media(max-width:560px){
  header .mobile-nav-toggle{min-height:36px;padding:6px 9px}
  header .mobile-nav-label{display:none}
  header nav.mobile-open,header .nav.mobile-open{top:66px!important;grid-template-columns:1fr!important;max-height:calc(100dvh - 80px)}
}
footer{display:grid!important;grid-template-columns:minmax(180px,1fr) minmax(260px,1.35fr) minmax(240px,1fr);align-items:center!important;gap:16px 28px}
footer>.brand{justify-self:start;min-width:0;font-size:16px;font-weight:800;line-height:1.5;letter-spacing:.01em;white-space:nowrap}
footer>.brand .brand-mark{font-size:17px;font-weight:800;line-height:1}
footer>p{justify-self:center;min-width:0;margin:0;text-align:center;font-size:14px!important;font-weight:500;line-height:1.65;letter-spacing:.01em}
footer>span{display:flex;min-width:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;justify-self:end;gap:6px 12px;font-size:13px;font-weight:500;line-height:1.6;text-align:right}
footer .footer-copyright{font-size:13px;font-weight:650}
footer .icp-link{color:inherit;font-size:13px;font-weight:500;text-decoration:none;opacity:.82;margin-left:0;white-space:nowrap}
footer .icp-link:hover{text-decoration:underline;opacity:1}
@media(max-width:800px){footer{grid-template-columns:1fr!important;justify-items:center!important;gap:12px!important}footer>.brand,footer>p,footer>span{justify-self:center!important;text-align:center}footer>span{justify-content:center}footer .icp-link{display:inline;margin:0}}
.has-friend-links{flex-wrap:wrap}.friend-links{display:flex;flex:0 0 100%;justify-content:center;margin-top:20px;font-size:12px;line-height:1.5}.friend-links-card{display:inline-flex;align-items:center;max-width:100%;gap:12px;padding:9px 12px 9px 10px;border:1px solid rgba(127,112,218,.16);border-radius:999px;background:linear-gradient(135deg,rgba(244,241,255,.96),rgba(239,250,255,.96));box-shadow:0 4px 0 rgba(117,138,169,.09)}.friend-links-label{display:inline-flex;align-items:center;gap:7px;color:#53617a;font-weight:900;white-space:nowrap}.friend-links-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#fff;color:#6757cf;box-shadow:0 2px 6px rgba(73,82,122,.1);font-size:13px}.friend-links-divider{width:1px;height:22px;background:rgba(91,109,137,.16)}.friend-links-list{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:7px}.friend-links a{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:4px 10px;border:1px solid rgba(102,118,147,.12);border-radius:999px;background:#fff;color:#4d5d78;font-weight:750;text-decoration:none;box-shadow:0 2px 5px rgba(75,87,120,.07);transition:transform .18s,box-shadow .18s,color .18s,border-color .18s}.friend-links a:hover{transform:translateY(-1px);border-color:rgba(101,88,207,.3);color:#6558cf;box-shadow:0 4px 9px rgba(75,87,120,.12)}.friend-link-arrow{color:#8a7ce2;font-size:11px;font-weight:900}@media(max-width:560px){.friend-links{margin-top:16px}.friend-links-card{width:100%;box-sizing:border-box;justify-content:center;flex-wrap:wrap;gap:8px 10px;border-radius:18px;padding:10px}.friend-links-divider{display:none}.friend-links-label{flex:0 0 100%;justify-content:center}.friend-links-list{width:100%}.friend-links a{padding:5px 11px}}
.protected-login-notice{max-width:1180px;margin:18px auto 22px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #d9e8f5;border-radius:18px;background:linear-gradient(135deg,#fffaf0,#f1f8ff);box-shadow:0 8px 0 rgba(67,92,134,.08);color:#273653}.protected-login-notice div{display:grid;gap:4px}.protected-login-notice strong{font-size:17px}.protected-login-notice span{font-size:14px;line-height:1.65;color:#687895}.protected-login-notice button{flex:none;border:0;border-radius:999px;padding:11px 18px;background:#6f59dd;color:#fff;font:700 14px/1.2 inherit;cursor:pointer;box-shadow:0 4px 0 #5140b5}.protected-login-notice button:hover{transform:translateY(-1px)}@media(max-width:720px){.protected-login-notice{margin:12px 14px 18px;align-items:flex-start;flex-direction:column}.protected-login-notice button{width:100%}}
.footer-info-links{display:flex;grid-column:1/-1;justify-content:center;gap:16px;margin-top:2px;font-size:12px}.footer-info-links a{color:#65738c;text-decoration:none}.footer-info-links a:hover{color:#6757cf;text-decoration:underline}
.friend-links{grid-column:1/-1;margin-top:4px}
