/* ============================================================
   老李站长SEO工具 - 爱站风格模板 (aizhan)
   蓝色主色调 · 深色导航 · 白底宫格 · 零外链
   ============================================================ */

/* ---------- reset & base ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:14px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:"Microsoft YaHei","PingFang SC","Helvetica Neue",Arial,sans-serif;color:#333;background:#f4f6fb;line-height:1.6;min-height:100vh}
a{color:#2b6cb0;text-decoration:none}
a:hover{color:#1a4f80;text-decoration:underline}
img{max-width:100%;height:auto;vertical-align:middle}
ul,ol{list-style:none}
input,select,textarea,button{font:inherit;color:inherit}
h1,h2,h3,h4{font-weight:700}

/* ---------- variables ---------- */
:root{
    --az-blue:#2b6cb0;
    --az-blue-d:#1a4f80;
    --az-blue-l:#ebf4ff;
    --az-dark:#1a202c;
    --az-dark2:#2d3748;
    --az-gray:#718096;
    --az-gray-l:#e2e8f0;
    --az-line:#e2e8f0;
    --az-bg:#f4f6fb;
    --az-white:#fff;
    --az-green:#38a169;
    --az-red:#e53e3e;
    --az-orange:#dd6b20;
    --az-radius:6px;
    --az-shadow:0 1px 3px rgba(0,0,0,.08);
    --az-shadow2:0 2px 8px rgba(0,0,0,.1);
}

/* ---------- layout ---------- */
.az-wrap{max-width:1200px;margin:0 auto;padding:0 16px}
.az-wrap-sm{max-width:960px;margin:0 auto;padding:0 16px}
.az-main2{display:flex;gap:20px;align-items:flex-start}
.az-main{flex:1;min-width:0}
.az-side{width:280px;flex-shrink:0}

/* ---------- header (dark nav) ---------- */
.az-head{background:var(--az-dark);color:#fff;position:sticky;top:0;z-index:100;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.az-head .az-inner{display:flex;align-items:center;height:50px;gap:16px}
.az-head .az-logo{display:flex;align-items:center;gap:8px;color:#fff;font-size:18px;font-weight:700;white-space:nowrap}
.az-head .az-logo:hover{text-decoration:none;color:#fff}
.az-head .az-logo-mark{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;background:var(--az-blue);color:#fff;font-size:14px;font-weight:700}
.az-head .az-nav{display:flex;align-items:center;gap:2px;flex:1;min-width:0;overflow:visible}
.az-head .az-nav a{color:rgba(255,255,255,.8);padding:6px 12px;border-radius:4px;font-size:13px;white-space:nowrap;transition:background .2s}
.az-head .az-nav a:hover,.az-head .az-nav a.on{color:#fff;background:rgba(255,255,255,.12);text-decoration:none}
.az-head .az-nav-more{position:relative;display:inline-flex;align-items:center}
.az-head .az-nav-sub{position:relative;display:inline-flex;align-items:center}
.az-head .az-nav-hd{display:inline-flex;align-items:center;gap:3px;color:rgba(255,255,255,.8);padding:6px 12px;border-radius:4px;font-size:13px;white-space:nowrap;transition:background .2s}
.az-head .az-nav-hd .car{font-style:normal;font-size:10px;opacity:.6;transition:transform .15s}
.az-head .az-nav-hd:hover{color:#fff;background:rgba(255,255,255,.12);text-decoration:none}
.az-head .az-nav-sub:hover .az-nav-hd .car,.az-head .az-nav-sub.open .az-nav-hd .car{transform:rotate(180deg)}
.az-head .az-nav-hd.on{color:#fff;background:rgba(255,255,255,.16)}
.az-head .az-nav-sub.has-on .az-nav-hd{color:#fff;font-weight:600}
.az-head .az-nav-mega{display:none;position:absolute;top:calc(100% + 6px);left:0;width:392px;background:#fff;color:#334155;border-radius:8px;box-shadow:0 16px 36px rgba(0,0,0,.2);padding:8px;z-index:1000}
.az-head .az-nav-sub:hover .az-nav-mega,.az-head .az-nav-sub.open .az-nav-mega{display:block}
.az-head .az-nav-mega::before{content:'';position:absolute;top:-8px;left:0;right:0;height:8px}
.az-head .az-nav-mega-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px}
.az-head .az-nav-mega-grid a{display:flex;align-items:center;gap:8px;color:#334155;padding:8px 10px;border-radius:6px;font-size:13px;white-space:nowrap}
.az-head .az-nav-mega-grid a b{font-weight:400;width:18px;text-align:center;flex:none}
.az-head .az-nav-mega-grid a span{overflow:hidden;text-overflow:ellipsis}
.az-head .az-nav-mega-grid a:hover{background:#eef4fb;color:var(--az-blue);text-decoration:none}
.az-head .az-nav-mega-more{display:block;margin-top:6px;padding:9px 10px 6px;border-top:1px dashed #e5e9f0;color:var(--az-blue);font-size:12.5px;font-weight:600;text-align:center}
.az-head .az-nav-more-btn{background:none;border:none;color:rgba(255,255,255,.8);padding:6px 12px;border-radius:4px;font:inherit;font-size:13px;white-space:nowrap;cursor:pointer;transition:background .2s}
.az-head .az-nav-more-btn i{font-style:normal;display:inline-block;margin-left:2px;transition:transform .15s}
.az-head .az-nav-more:hover .az-nav-more-btn,.az-head .az-nav-more.open .az-nav-more-btn{color:#fff;background:rgba(255,255,255,.12)}
.az-head .az-nav-more:hover .az-nav-more-btn i,.az-head .az-nav-more.open .az-nav-more-btn i{transform:rotate(180deg)}
.az-head .az-nav-more.has-on .az-nav-more-btn{color:#fff;background:var(--az-blue)}
.az-head .az-nav-drop{display:none;position:absolute;top:calc(100% + 6px);left:0;min-width:160px;background:#fff;color:#334155;border-radius:6px;box-shadow:0 12px 28px rgba(0,0,0,.18);padding:6px;z-index:1000}
.az-head .az-nav-sub:hover,.az-head .az-nav-sub.open,.az-head .az-nav-more:hover,.az-head .az-nav-more.open{z-index:1000}
.az-head .az-nav-more:hover .az-nav-drop,.az-head .az-nav-more.open .az-nav-drop{display:block}
.az-head .az-nav-drop::before{content:'';position:absolute;top:-8px;left:0;right:0;height:8px}
.az-head .az-nav-drop a{display:block;color:#334155;padding:8px 12px;border-radius:4px;font-size:13px;white-space:nowrap}
.az-head .az-nav-drop a:hover{background:#eef4fb;color:var(--az-blue);text-decoration:none}
.az-head .az-nav-drop a.on{background:var(--az-blue);color:#fff}
.az-head .az-hr{display:flex;align-items:center;gap:8px;flex-shrink:0}
.az-head .az-search{display:flex;align-items:center;background:rgba(255,255,255,.12);border-radius:4px;overflow:hidden}
.az-head .az-search input{background:none;border:none;color:#fff;padding:6px 10px;width:160px;font-size:13px;outline:none}
.az-head .az-search input::placeholder{color:rgba(255,255,255,.5)}
.az-head .az-search button{background:var(--az-blue);color:#fff;border:none;padding:6px 12px;cursor:pointer;font-size:13px}
.az-head .az-search button:hover{background:var(--az-blue-d)}
.az-head .az-pts{color:rgba(255,255,255,.85);font-size:12px;padding:4px 10px;background:rgba(255,255,255,.08);border-radius:4px}
.az-head .az-pts b{color:#ffd700}
.az-head .az-av{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--az-blue);color:#fff;font-size:13px;font-weight:700}

/* 导航不再横向滚动后，中等宽度下收紧间距，避免挤到右侧搜索框 */
@media(max-width:1100px){
    .az-head .az-inner{gap:10px}
    .az-head .az-logo{font-size:16px}
    .az-head .az-nav a,.az-head .az-nav-hd,.az-head .az-nav-more-btn{padding:6px 9px}
    .az-head .az-search input{width:120px}
}

/* ---------- mobile menu ---------- */
.az-mbtn{display:none;background:none;border:none;color:#fff;font-size:22px;cursor:pointer;padding:4px 8px}
@media(max-width:900px){
    .az-mbtn{display:block}
    .az-head .az-nav{display:none;position:absolute;top:50px;left:0;right:0;background:var(--az-dark);flex-direction:column;padding:8px 0;box-shadow:0 4px 12px rgba(0,0,0,.2)}
    .az-head.open .az-nav{display:flex}
    .az-head .az-nav a{padding:10px 20px;border-radius:0}
    .az-head .az-nav-more{display:contents}
    .az-head .az-nav-sub{display:contents}
    .az-head .az-nav-hd{color:rgba(255,255,255,.85);padding:10px 20px;border-radius:0;display:flex}
    .az-head .az-nav-hd .car{display:none}
    .az-head .az-nav-mega{display:block;position:static;width:auto;background:transparent;box-shadow:none;color:inherit;padding:0 0 0 20px;border-radius:0}
    .az-head .az-nav-mega::before{display:none}
    .az-head .az-nav-mega-grid{display:block}
    .az-head .az-nav-mega-grid a{color:rgba(255,255,255,.7);padding:7px 10px;font-size:13px;background:none}
    .az-head .az-nav-mega-grid a:hover{background:rgba(255,255,255,.08);color:#fff}
    .az-head .az-nav-mega-more{color:var(--az-blue);text-align:left;margin-top:2px;border-top:0;padding:6px 10px}
    .az-head .az-nav-more-btn{display:none}
    .az-head .az-nav-drop{display:block;position:static;min-width:0;padding:0;background:transparent;box-shadow:none;color:inherit}
    .az-head .az-nav-drop::before{display:none}
    .az-head .az-nav-drop a{color:rgba(255,255,255,.85);padding:10px 20px;border-radius:0;font-size:13px}
    .az-head .az-nav-drop a:hover,.az-head .az-nav-drop a.on{background:rgba(255,255,255,.1);color:#fff}
    .az-head .az-search{display:none}
    .az-head .az-hr .az-btn-h{display:none}
    .az-main2{flex-direction:column}
    .az-side{width:100%}
}

/* ---------- buttons ---------- */
.az-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 20px;border-radius:var(--az-radius);border:1px solid transparent;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s;text-decoration:none!important;white-space:nowrap}
.az-btn:hover{text-decoration:none}
.az-btn-p{background:var(--az-blue);color:#fff;border-color:var(--az-blue)}
.az-btn-p:hover{background:var(--az-blue-d);color:#fff}
.az-btn-o{background:#fff;color:var(--az-blue);border-color:var(--az-blue)}
.az-btn-o:hover{background:var(--az-blue-l)}
.az-btn-g{background:transparent;color:var(--az-gray);border-color:var(--az-gray-l)}
.az-btn-g:hover{border-color:var(--az-blue);color:var(--az-blue)}
.az-btn-sm{padding:4px 12px;font-size:12px}
.az-btn-lg{padding:10px 28px;font-size:16px}
.az-btn-block{width:100%;display:flex}
.az-btn-ok{background:var(--az-green);color:#fff;border-color:var(--az-green)}
.az-btn-ok:hover{background:#2f855a;color:#fff}

/* ---------- inputs ---------- */
.az-inp{display:block;width:100%;padding:8px 12px;border:1px solid var(--az-gray-l);border-radius:var(--az-radius);font-size:14px;background:#fff;transition:border-color .2s;outline:none}
.az-inp:focus{border-color:var(--az-blue);box-shadow:0 0 0 2px rgba(43,108,176,.15)}
.az-inp-lg{padding:12px 16px;font-size:16px}
.az-inp[disabled]{background:#f7fafc;color:var(--az-gray)}

/* ---------- cards ---------- */
.az-card{background:var(--az-white);border-radius:var(--az-radius);box-shadow:var(--az-shadow);margin-bottom:16px;overflow:hidden}
.az-card-h{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid var(--az-line);font-size:15px}
.az-card-h h1,.az-card-h h2,.az-card-h h3{font-size:15px;margin:0}
.az-card-h .az-bar{width:3px;height:16px;border-radius:2px;background:var(--az-blue);flex-shrink:0}
.az-card-h .az-more{margin-left:auto;font-size:12px;color:var(--az-gray);white-space:nowrap}
.az-card-h .az-more:hover{color:var(--az-blue);text-decoration:none}
.az-card-b{padding:16px}
.az-card-pad{padding:16px}

/* ---------- breadcrumb ---------- */
.az-bread{padding:12px 0;font-size:13px;color:var(--az-gray)}
.az-bread a{color:var(--az-gray)}
.az-bread a:hover{color:var(--az-blue)}

/* ---------- hero / search ---------- */
.az-hero{background:linear-gradient(135deg,var(--az-blue) 0%,var(--az-blue-d) 100%);color:#fff;padding:40px 0 36px;text-align:center}
.az-hero h1{font-size:24px;margin-bottom:6px}
.az-hero .az-sub{font-size:14px;opacity:.85;margin-bottom:20px}
.az-hero-form{display:flex;max-width:680px;margin:0 auto;gap:0}
.az-hero-form .az-inp{flex:1;border:none;border-radius:var(--az-radius) 0 0 var(--az-radius);font-size:16px;padding:12px 16px}
.az-hero-form .az-btn{border-radius:0 var(--az-radius) var(--az-radius) 0;padding:12px 28px}
.az-hero-tags{margin-top:14px;font-size:13px;opacity:.8}
.az-hero-tags a{color:rgba(255,255,255,.9);margin:0 6px}
.az-hero-tags a:hover{color:#fff;text-decoration:underline}
.az-hero-stat{display:flex;justify-content:center;gap:40px;margin-top:20px}
.az-hero-stat div{text-align:center}
.az-hero-stat b{display:block;font-size:22px;font-weight:700}
.az-hero-stat span{font-size:12px;opacity:.75}

/* ---------- sections ---------- */
.az-sec{display:flex;align-items:center;gap:10px;margin:24px 0 12px;font-size:16px}
.az-sec h2{font-size:16px;margin:0}
.az-sec .az-tip{font-size:13px;color:var(--az-gray);font-weight:400}
.az-sec .az-ops{margin-left:auto;display:flex;gap:6px}

/* ---------- grid ---------- */
.az-grid{display:grid;gap:12px}
.az-grid-4{grid-template-columns:repeat(4,1fr)}
.az-grid-3{grid-template-columns:repeat(3,1fr)}
.az-grid-5{grid-template-columns:repeat(5,1fr)}
@media(max-width:900px){.az-grid-4,.az-grid-5{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.az-grid-4,.az-grid-3,.az-grid-5{grid-template-columns:repeat(2,1fr)}}

/* ---------- tool card ---------- */
.az-tc{display:flex;flex-direction:column;padding:14px;background:var(--az-white);border:1px solid var(--az-line);border-radius:var(--az-radius);transition:all .2s;position:relative;text-decoration:none!important;color:#333}
.az-tc:hover{border-color:var(--az-blue);box-shadow:var(--az-shadow2);transform:translateY(-2px);text-decoration:none!important;color:#333}
.az-tc .az-tc-ic{font-size:24px;margin-bottom:6px}
.az-tc .az-tc-nm{font-size:14px;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.az-tc .az-tc-ds{font-size:12px;color:var(--az-gray);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1}
.az-tc .az-tc-ft{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}
.az-tc .az-star{position:absolute;right:8px;bottom:8px;background:none;border:none;font-size:18px;cursor:pointer;color:#cbd5e0;transition:color .2s;padding:2px}
.az-tc .az-star.on,.az-tc .az-star:hover{color:#ecc94b}

/* ---------- tags ---------- */
.az-tag{display:inline-block;padding:1px 6px;border-radius:3px;font-size:11px;font-weight:600;line-height:1.6}
.az-tag-hot{background:#fff5f5;color:var(--az-red)}
.az-tag-free{background:#f0fff4;color:var(--az-green)}
.az-tag-pt{background:#fffbeb;color:var(--az-orange)}
.az-tag-lv{background:var(--az-blue-l);color:var(--az-blue)}
.az-tag-ok{background:#f0fff4;color:var(--az-green)}
.az-tag-err{background:#fff5f5;color:var(--az-red)}

/* ---------- fav bar / chips ---------- */
.az-favbar{display:flex;flex-wrap:wrap;gap:8px}
.az-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--az-white);border:1px solid var(--az-line);border-radius:20px;font-size:13px;color:#333;transition:all .2s;text-decoration:none!important}
.az-chip:hover{border-color:var(--az-blue);color:var(--az-blue);text-decoration:none!important;box-shadow:var(--az-shadow)}
.az-chip .az-star{background:none;border:none;font-size:14px;cursor:pointer;color:#cbd5e0;padding:0;margin-left:2px}
.az-chip .az-star.on{color:#ecc94b}

/* ---------- rank list ---------- */
.az-rank li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px dashed var(--az-line);font-size:13px}
.az-rank li:last-child{border-bottom:none}
.az-rank .az-no{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:3px;background:var(--az-gray-l);color:var(--az-gray);font-size:11px;font-weight:700;flex-shrink:0}
.az-rank li:nth-child(1) .az-no{background:var(--az-red);color:#fff}
.az-rank li:nth-child(2) .az-no{background:var(--az-orange);color:#fff}
.az-rank li:nth-child(3) .az-no{background:var(--az-blue);color:#fff}
.az-rank a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#333}
.az-rank a:hover{color:var(--az-blue)}

/* ---------- category header ---------- */
.az-cath{display:flex;align-items:center;gap:10px;margin:20px 0 10px;padding-bottom:8px;border-bottom:2px solid var(--az-blue)}
.az-cath .az-ic{font-size:20px}
.az-cath h3{font-size:15px;margin:0}
.az-cath h1{font-size:16px;margin:0}
.az-cath .az-n{font-size:12px;color:var(--az-gray);font-weight:400}
.az-cath .az-line{flex:1;height:1px;background:var(--az-line)}
.az-cath a{font-size:12px;color:var(--az-gray);white-space:nowrap}
.az-cath a:hover{color:var(--az-blue)}

/* ---------- table ---------- */
.az-tbl{width:100%;border-collapse:collapse;font-size:13px}
.az-tbl th,.az-tbl td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--az-line)}
.az-tbl th{background:#f7fafc;font-weight:600;color:var(--az-dark2);white-space:nowrap}
.az-tbl tr:hover td{background:#fafbfe}

/* ---------- kv display ---------- */
.az-kv{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1px;background:var(--az-line);border:1px solid var(--az-line);border-radius:var(--az-radius);overflow:hidden;margin-bottom:16px}
.az-kv .az-k{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;background:#fff}
.az-kv .az-k b{font-weight:600;min-width:0;word-break:break-all;flex:1}
.az-kv .az-k span{color:var(--az-gray);font-size:12px;white-space:nowrap}
.az-kv .az-k .az-copy{font-size:11px;color:var(--az-blue);cursor:pointer;white-space:nowrap;margin-left:auto}

/* ---------- notes / alerts ---------- */
.az-note{padding:10px 14px;border-radius:var(--az-radius);font-size:13px;margin-bottom:12px}
.az-note-info{background:var(--az-blue-l);color:var(--az-blue-d);border:1px solid #bee3f8}
.az-note-err{background:#fff5f5;color:#9b2c2c;border:1px solid #fed7d7}
.az-note-ok{background:#f0fff4;color:#276749;border:1px solid #c6f6d5}
.az-note-warn{background:#fffbeb;color:#975a16;border:1px solid #fefcbf}
.az-ntag{display:inline-block;font-size:11px;padding:1px 7px;border-radius:3px;background:var(--az-blue-l);color:var(--az-blue-d);flex:none}
.az-ntag.ok{background:#e9f8ef;color:#16a34a}
.az-ntag.warn{background:#fff6e8;color:#b45309}
.az-ntag.err{background:#fef2f2;color:#dc2626}
.az-ntag.hot{background:#fff1e9;color:#ea6a35}

/* ---------- flash message ---------- */
.az-flash{padding:10px 16px;text-align:center;font-size:13px;transition:opacity .4s}
.az-flash.ok{background:#f0fff4;color:#276749;border-bottom:1px solid #c6f6d5}
.az-flash.err{background:#fff5f5;color:#9b2c2c;border-bottom:1px solid #fed7d7}
.az-flash.warn{background:#fffbeb;color:#975a16;border-bottom:1px solid #fefcbf}

/* ---------- form ---------- */
.az-field{margin-bottom:14px}
.az-field>span{display:block;font-size:13px;font-weight:600;margin-bottom:4px;color:var(--az-dark2)}
.az-row{display:flex;gap:12px;flex-wrap:wrap}
.az-col{flex:1;min-width:0}

/* ---------- user center ---------- */
.az-uc{display:flex;gap:20px;align-items:flex-start}
.az-ucside{width:200px;flex-shrink:0;background:var(--az-white);border-radius:var(--az-radius);box-shadow:var(--az-shadow);overflow:hidden}
.az-ucside .az-u{text-align:center;padding:20px 16px;border-bottom:1px solid var(--az-line)}
.az-ucside .az-av-lg{display:inline-flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;background:var(--az-blue);color:#fff;font-size:22px;font-weight:700;margin-bottom:8px}
.az-ucside a{display:flex;align-items:center;gap:8px;padding:10px 16px;font-size:13px;color:#333;border-bottom:1px solid var(--az-line);transition:background .15s}
.az-ucside a:hover,.az-ucside a.on{background:var(--az-blue-l);color:var(--az-blue);text-decoration:none}
.az-ucside a:last-child{border-bottom:none}
.az-ucmain{flex:1;min-width:0}
@media(max-width:768px){.az-uc{flex-direction:column}.az-ucside{width:100%}}

/* ---------- stat cards ---------- */
.az-statc{display:flex;gap:0;background:var(--az-white);border-radius:var(--az-radius);box-shadow:var(--az-shadow);overflow:hidden;margin-bottom:16px}
.az-statc .az-s{flex:1;text-align:center;padding:16px 10px;border-right:1px solid var(--az-line)}
.az-statc .az-s:last-child{border-right:none}
.az-statc .az-s b{display:block;font-size:22px;font-weight:700;color:var(--az-blue)}
.az-statc .az-s span{font-size:12px;color:var(--az-gray)}

/* ---------- calendar ---------- */
.az-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.az-cal>div{padding:8px 4px;text-align:center;border:1px solid var(--az-line);border-radius:4px;font-size:12px}
.az-cal>div.on{background:var(--az-blue-l);border-color:var(--az-blue)}
.az-cal>div.today{border-color:var(--az-blue);box-shadow:0 0 0 1px var(--az-blue)}

/* ---------- task list ---------- */
.az-task li{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--az-line)}
.az-task li:last-child{border-bottom:none}
.az-task .az-ic{font-size:22px;flex-shrink:0}
.az-task .az-m{flex:1;min-width:0}
.az-task .az-m b{display:block;font-size:14px}
.az-task .az-m .az-p{display:block;font-size:12px;color:var(--az-gray);margin-top:2px}
.az-task .az-bar-p{display:block;height:4px;background:var(--az-gray-l);border-radius:2px;margin-top:4px;overflow:hidden}
.az-task .az-bar-p i{display:block;height:100%;background:var(--az-blue);border-radius:2px;transition:width .3s}

/* ---------- pagination ---------- */
.az-page{display:flex;justify-content:center;gap:4px;margin:20px 0;flex-wrap:wrap}
.az-page a,.az-page span{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;border:1px solid var(--az-line);border-radius:4px;font-size:13px;color:#333}
.az-page a:hover{border-color:var(--az-blue);color:var(--az-blue);text-decoration:none}
.az-page .cur{background:var(--az-blue);color:#fff;border-color:var(--az-blue)}

/* ---------- footer ---------- */
.az-foot{background:var(--az-dark);color:rgba(255,255,255,.7);padding:30px 0 20px;margin-top:30px;font-size:13px}
.az-foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px}
@media(max-width:768px){.az-foot-grid{grid-template-columns:1fr 1fr}}
.az-foot h4{color:#fff;font-size:14px;margin-bottom:10px}
.az-foot a{color:rgba(255,255,255,.65)}
.az-foot a:hover{color:#fff;text-decoration:none}
.az-foot .az-links{margin-top:14px;padding-top:10px;border-top:1px solid rgba(255,255,255,.1)}
.az-foot .az-links a{margin-right:10px}
.az-foot .az-cp{margin-top:14px;padding-top:10px;border-top:1px solid rgba(255,255,255,.1);font-size:12px;text-align:center;color:rgba(255,255,255,.5)}

/* ---------- article ---------- */
.az-article{line-height:1.8;font-size:14px}
.az-article h2,.az-article h3{margin:16px 0 8px}
.az-article p{margin-bottom:10px}
.az-article ul,.az-article ol{margin:10px 0 10px 20px;list-style:disc}
.az-article pre{background:#f7fafc;padding:12px;border-radius:4px;overflow-x:auto;font-size:13px;margin:10px 0}
.az-article code{background:#f7fafc;padding:1px 4px;border-radius:3px;font-size:13px}
.az-article img{border-radius:4px;margin:10px 0}
.az-article blockquote{border-left:3px solid var(--az-blue);padding:8px 16px;margin:10px 0;background:var(--az-blue-l);border-radius:0 4px 4px 0}

/* ---------- result text / html ---------- */
.az-txt{background:#f7fafc;padding:14px;border-radius:var(--az-radius);font-size:13px;white-space:pre-wrap;word-break:break-all;overflow-x:auto;border:1px solid var(--az-line);margin-bottom:12px;font-family:Consolas,"Courier New",monospace}
.az-res-html{padding:10px 0}

/* ---------- empty ---------- */
.az-empty{text-align:center;padding:40px 20px;color:var(--az-gray);font-size:14px}

/* ---------- copy button ---------- */
.az-copy{font-size:12px;color:var(--az-blue);cursor:pointer;background:none;border:none;padding:2px 6px}
.az-copy:hover{text-decoration:underline}

/* ---------- badge ---------- */
.az-badge-pt{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;background:rgba(255,255,255,.1);border-radius:4px;font-size:12px;color:rgba(255,255,255,.85)}
.az-badge-pt b{color:#ffd700}

/* ---------- checkbox ---------- */
.az-check{display:inline-flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}
.az-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--az-blue)}

/* ---------- back to top ---------- */
.az-top{display:none;position:fixed;right:16px;bottom:20px;z-index:99;width:40px;height:40px;border-radius:50%;background:var(--az-blue);color:#fff;border:none;cursor:pointer;font-size:18px;box-shadow:var(--az-shadow2);transition:opacity .2s}
.az-top:hover{background:var(--az-blue-d)}

/* ---------- misc ---------- */
.az-mt8{margin-top:8px}.az-mt12{margin-top:12px}.az-mt16{margin-top:16px}.az-mt24{margin-top:24px}
.az-mb8{margin-bottom:8px}.az-mb12{margin-bottom:12px}.az-mb16{margin-bottom:16px}
.az-tc-c{text-align:center}
.az-muted{color:var(--az-gray)}
.az-small{font-size:12px}
.az-tr{text-align:right}
.az-ell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.az-flex{display:flex;align-items:center;gap:8px}
.az-flex-b{display:flex;gap:10px;flex-wrap:wrap}
.az-captcha{height:42px;width:120px;border:1px solid var(--az-line);border-radius:var(--az-radius);cursor:pointer}

/* ---------- 404 / 500 ---------- */
.az-errpage{text-align:center;padding:60px 20px}
.az-errpage .az-code{font-size:72px;font-weight:700;color:var(--az-blue);line-height:1}
.az-errpage h1{font-size:20px;margin:12px 0 6px}
.az-errpage p{color:var(--az-gray);margin-bottom:16px}
