/*
Theme Name: 云盘搜搜 V3
Theme URI: https://v3.ypsoso.com/
Author: 云盘搜搜
Description: 云盘搜搜的轻量 WordPress 站点框架。
Version: 0.2.4
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: ypsoso-v3
*/

:root{
  --ink:#182235;--muted:#748198;--line:#e5eaf2;--accent:#5468e8;
  --surface:#fff;--canvas:#f8faff;--soft:#f2f5fb;--placeholder:#a2aec1;
  --shadow:0 14px 40px rgba(26,43,79,.06);
  --hero-ink:#182235;--hero-ink-dark:#f1f4ff;--hero-accent:#5468e8;
  --brand-ink:#182235;--brand-ink-dark:#f1f4ff;
  --hero-size:48px;--brand-size:20px;--hero-weight:800;
  --hero-font:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
}
html[data-theme="dark"]{
  --ink:#f0f4fb;--muted:#a8b3c6;--line:#303b4e;--surface:#1a2332;
  --canvas:#121a27;--soft:#243044;--placeholder:#8898ae;
  --shadow:0 14px 40px rgba(0,0,0,.18);
}
@media(prefers-color-scheme:dark){html[data-theme="system"]{
  --ink:#f0f4fb;--muted:#a8b3c6;--line:#303b4e;--surface:#1a2332;
  --canvas:#121a27;--soft:#243044;--placeholder:#8898ae;
  --shadow:0 14px 40px rgba(0,0,0,.18);
}}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100dvh;display:flex;flex-direction:column;background:var(--canvas);color:var(--ink);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
main{flex:1}
a{color:inherit;text-decoration:none}
button,input,select{font:inherit}
button{cursor:pointer}
[hidden]{display:none!important}
:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 40%,transparent);outline-offset:3px}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;overflow:hidden;white-space:nowrap}
.screen-reader-text:focus{position:static!important;clip:auto;clip-path:none;height:auto;width:auto}
.dashicons{font-size:20px;width:20px;height:20px;line-height:1}

.site-header{position:sticky;top:0;z-index:5;background:var(--surface);border-bottom:1px solid var(--line)}
.header-inner{width:min(1450px,calc(100% - 64px));min-height:74px;margin:auto;display:flex;align-items:center;gap:24px}
.brand{display:inline-flex;align-items:center;gap:10px;flex:none;white-space:nowrap}
.brand-name{font-size:var(--brand-size);font-weight:800;letter-spacing:-.04em;color:var(--brand-ink)}
html[data-theme="dark"] .brand-name{color:var(--brand-ink-dark)}
@media(prefers-color-scheme:dark){html[data-theme="system"] .brand-name{color:var(--brand-ink-dark)}}
.brand img{max-height:37px;max-width:200px;width:auto;display:block}
.brand-icon{width:33px;height:33px;background:var(--accent);border-radius:9px;position:relative;display:inline-block;box-shadow:0 4px 10px color-mix(in srgb,var(--accent) 22%,transparent)}
.brand-icon:before{content:"";position:absolute;width:11px;height:11px;left:8px;top:7px;border:2px solid #fff;border-radius:50%}
.brand-icon:after{content:"";position:absolute;width:8px;height:2px;left:18px;top:20px;background:#fff;transform:rotate(45deg);border-radius:2px}
.desktop-nav{margin-right:auto}
.nav-menu{display:flex;align-items:center;gap:8px;list-style:none;margin:0;padding:0}
.nav-menu a{display:block;padding:8px 12px;border:1px solid transparent;border-radius:11px;white-space:nowrap;color:var(--muted);font-size:14px;font-weight:600;transition:background .18s,color .18s,border-color .18s}
.nav-menu li.current-menu-item a,.nav-menu a:hover{background:var(--soft);border-color:var(--line);color:var(--ink)}
.nav-menu li:nth-child(2) a{background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--accent)}
.desktop-actions{display:flex;align-items:center;gap:17px;flex:none;color:var(--muted);font-size:14px}
.theme-switcher{display:flex;align-items:center;gap:3px;padding:3px;background:var(--soft);border-radius:11px}
.theme-switcher button{width:33px;height:32px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:20px;line-height:1}
.theme-switcher button[aria-pressed="true"]{background:var(--surface);color:var(--accent);box-shadow:0 1px 5px rgba(20,38,70,.1)}
.user-chip{display:inline-flex;align-items:center;gap:8px;padding:3px 9px 3px 3px;border:1px solid var(--line);border-radius:30px;color:var(--ink);font-weight:600;max-width:150px}
.user-chip img,.drawer-user img,.account-heading img{border-radius:50%;object-fit:cover;flex:none}
.user-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.text-action:hover,.login-action:hover{color:var(--accent)}
.login-action{font-weight:700;color:var(--ink)}
.mobile-actions,.header-search-panel{display:none}

.hero{max-width:760px;margin:0 auto;text-align:center;padding:clamp(120px,16vh,175px) 24px 36px}
.hero-searching{padding-top:48px;padding-bottom:28px}
.hero-searching h1{font-size:min(var(--hero-size),36px);margin-bottom:20px}
.hero h1{font:var(--hero-weight) var(--hero-size)/1.18 var(--hero-font);letter-spacing:-.055em;margin:0;white-space:nowrap}
.hero h1 span{color:var(--hero-ink)}.hero h1 em{font-style:normal;color:var(--hero-accent)}
html[data-theme="dark"] .hero h1 span{color:var(--hero-ink-dark)}
@media(prefers-color-scheme:dark){html[data-theme="system"] .hero h1 span{color:var(--hero-ink-dark)}}
.hero-subtitle{margin:15px auto 24px;color:var(--muted);font-size:16px}
.search-form{width:min(520px,100%);height:54px;margin:0 auto;display:flex;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);padding:5px;transition:border-color .2s,box-shadow .2s}
.search-form:focus-within{border-color:color-mix(in srgb,var(--accent) 50%,var(--line));box-shadow:0 12px 32px color-mix(in srgb,var(--accent) 10%,transparent)}
.search-icon{width:16px;height:16px;border:2px solid var(--placeholder);border-radius:50%;margin:0 17px;position:relative;flex:none}
.search-icon:after{content:"";position:absolute;width:7px;height:2px;background:var(--placeholder);transform:rotate(45deg);left:12px;top:13px;border-radius:2px}
.search-form input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--ink);font-size:15px;appearance:none}
.search-form input::placeholder{color:var(--placeholder)}
.search-form button,.action-button{border:0;border-radius:9px;background:var(--accent);color:#fff;font-weight:700;padding:10px 22px;white-space:nowrap;transition:filter .18s,transform .18s}
.search-form button:hover,.action-button:hover{filter:brightness(.92);transform:translateY(-1px)}
.search-hint{font-size:12px;color:var(--muted);margin:12px 0 0}
.keywords{max-width:1120px;margin:0 auto;padding:8px 24px 60px;text-align:center}
.keywords-heading{display:flex;align-items:baseline;justify-content:center;margin-bottom:18px}
.keywords h2{font-size:19px;margin:0;letter-spacing:-.02em}
.search-results{width:min(720px,calc(100% - 48px));margin:0 auto 80px}
.results-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}
.results-heading h2{font-size:19px;line-height:1.45;margin:0;overflow-wrap:anywhere}
.results-heading>span,.search-stage{color:var(--muted);font-size:12px}
.search-stage{margin:17px 0 0;text-align:center}
.search-results .result-list{gap:8px}
.search-results .result-card{display:flex;align-items:center;gap:14px;min-height:64px;padding:13px 17px;border-radius:12px}
.search-results .result-card .dashicons:first-child{color:var(--accent)}
.search-results .result-card .dashicons:last-child{margin-left:auto;color:var(--muted);font-size:16px;width:16px;height:16px}
.result-name{font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.search-results .empty-state{padding:31px 20px;border-style:solid}
.search-results .empty-state .dashicons{color:var(--muted);font-size:22px;width:22px;height:22px;margin-bottom:7px}
.search-results .empty-state strong{font-size:16px;margin:0}
.search-results .empty-state p{margin:3px 0 0;font-size:13px}
.keyword-list{display:flex;justify-content:center;flex-wrap:wrap;gap:9px}
.keyword-list a{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 14px;color:var(--muted);font-size:14px;transition:border-color .18s,color .18s,transform .18s}
.keyword-list a:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-2px)}

.content{max-width:940px;margin:0 auto;padding:50px 24px 100px;min-height:65vh}
.content-title{font-size:27px;letter-spacing:-.035em;margin:0 0 8px}
.content-lead{color:var(--muted);margin:0 0 28px}
.result-list{display:grid;gap:12px}
.result-card,.page-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:25px 28px}
.result-card{transition:box-shadow .2s,transform .2s}.result-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.result-card h2{font-size:18px;line-height:1.45;margin:0 0 8px}.result-card h2 a:hover{color:var(--accent)}
.result-card p,.page-body{color:var(--muted);font-size:14px}.result-card p{margin:0 0 12px}.result-card time{font-size:12px;color:var(--muted)}
.page-heading{display:flex;gap:9px;color:var(--muted);font-size:13px;margin-bottom:17px}.page-heading a:hover{color:var(--accent)}
.page-card .content-title{margin-bottom:18px}.page-body{font-size:15px;line-height:1.9}.page-body a{color:var(--accent)}
.empty-state{border:1px dashed var(--line);border-radius:15px;padding:55px 24px;text-align:center;background:var(--surface);color:var(--muted)}
.empty-state strong{display:block;color:var(--ink);font-size:18px;margin-bottom:8px}.empty-state p{margin:0 auto 20px;max-width:530px}
.pagination{margin:30px 0;display:flex;gap:9px}.pagination .page-numbers{border:1px solid var(--line);padding:6px 13px;border-radius:8px;background:var(--surface)}.pagination .current{background:var(--accent);color:#fff}
.account-heading{display:flex;align-items:center;gap:17px}.account-heading p{margin:0;color:var(--muted)}
.account-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.account-links a{padding:9px 15px;border-radius:9px;background:var(--soft);color:var(--ink)}.account-links a:hover{color:var(--accent)}

.site-footer{border-top:1px solid var(--line);background:var(--surface);padding:24px;color:var(--muted);font-size:13px}
.footer-inner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;max-width:1100px;margin:auto;text-align:center}
.footer-meta{margin:0}.footer-divider{margin:0 8px}.footer-links{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0 7px}.footer-links a:hover,.footer-meta a:hover{color:var(--accent)}
.load-progress{position:fixed;top:0;left:0;z-index:20;height:3px;width:0;background:var(--accent);opacity:0;transition:width .35s,opacity .35s}
.load-progress.active{width:72%;opacity:1}.load-progress.done{width:100%;opacity:0}

@media(max-width:1100px){
  .header-inner{width:calc(100% - 32px);min-height:64px;gap:12px}
  .brand-name{font-size:min(var(--brand-size),20px)}
  .desktop-nav,.desktop-actions{display:none}
  .mobile-actions{display:flex;align-items:center;gap:3px;margin-left:auto}
  .icon-action{width:37px;height:37px;padding:0;display:inline-grid;place-items:center;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:22px;line-height:1}
  .icon-action:hover{background:var(--soft);color:var(--accent)}
  .mobile-login{font-size:13px;font-weight:700;color:var(--accent);padding:7px 9px}
  .header-search-panel:not([hidden]){display:block;border-top:1px solid var(--line);padding:10px 16px 13px;background:var(--surface)}
  .header-search-panel .search-form{width:100%;max-width:650px;height:47px;box-shadow:none}
  .header-search-panel .search-form button{padding:7px 14px}
  .mobile-drawer{position:fixed;inset:0 0 0 auto;width:min(320px,86vw);height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;background:var(--surface);color:var(--ink);box-shadow:-15px 0 45px rgba(0,0,0,.14)}
  .mobile-drawer::backdrop{background:rgba(12,19,32,.48)}
  .mobile-drawer[open]{animation:drawer-in .2s ease-out}
  @keyframes drawer-in{from{transform:translateX(25px);opacity:.7}to{transform:translateX(0);opacity:1}}
  .drawer-panel{min-height:100%;display:flex;flex-direction:column;padding:18px}
  .drawer-top{display:flex;align-items:center;justify-content:space-between;font-size:18px}
  .drawer-user{display:flex;align-items:center;gap:11px;padding:18px 10px;margin:19px 0 15px;border-radius:13px;background:var(--soft);font-weight:700}
  .drawer-user small{display:block;color:var(--muted);font-size:12px;font-weight:400}
  .drawer-menu{list-style:none;margin:0;padding:0;display:grid;gap:3px}.drawer-menu a{display:block;padding:11px 13px;border-radius:9px;color:var(--ink)}.drawer-menu a:hover,.drawer-menu .current-menu-item a{background:var(--soft);color:var(--accent)}
  .drawer-bottom{display:grid;gap:3px;border-top:1px solid var(--line);margin-top:auto;padding-top:15px}.drawer-bottom a{padding:9px 13px;color:var(--muted)}
}
@media(max-width:640px){
  .header-inner{width:calc(100% - 24px)}.brand{gap:8px}.brand-icon{width:30px;height:30px}.brand-name{font-size:min(var(--brand-size),18px)}
  .mobile-actions{gap:0}.icon-action{width:34px;height:36px}.mobile-login{padding:7px 6px}
  .hero{padding:110px 17px 34px}.hero h1{font-size:min(var(--hero-size),11vw)}.hero-subtitle{font-size:14px;margin:14px auto 22px}
  .hero-searching{padding-top:38px;padding-bottom:24px}.hero-searching h1{font-size:min(var(--hero-size),32px);margin-bottom:17px}
  .search-form{height:52px}.search-form input{font-size:14px}.search-icon{margin:0 14px}.search-form button{padding:9px 15px}
  .keywords{padding:8px 16px 62px}.keywords-heading{margin-bottom:15px}.keywords h2{font-size:18px}
  .search-results{width:calc(100% - 32px);margin-bottom:54px}.results-heading h2{font-size:16px}.search-results .result-card{min-height:58px;padding:11px 13px}.result-name{font-size:14px}
  .keyword-list{gap:8px}.keyword-list a{font-size:13px;padding:5px 11px}
  .content{padding:36px 16px 75px}.result-card,.page-card{padding:21px}.content-title{font-size:23px}
  .site-footer{padding:22px 16px}.footer-inner{gap:4px}.footer-links{gap:0 6px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
