:root{--green:#215d4b;--mint:#cce9d9;--ink:#293d36;--muted:#6b7b74;--line:#dce3df;--bg:#f2f4f2;--paper:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;color:var(--ink);background:var(--bg);font:14px/1.6 system-ui,'Microsoft YaHei',sans-serif}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:0;background:none;color:inherit}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #49a387;outline-offset:3px}#sidebar{position:fixed;inset:0 auto 0 0;width:220px;background:#173e33;color:#d5e5de;padding:30px 20px;z-index:20;display:flex;flex-direction:column}.site-brand{text-align:center;margin:8px 0 40px;display:block}.site-brand img{width:115px;height:79px;object-fit:contain;display:block;margin:0 auto 15px}.site-brand strong{font-size:19px;letter-spacing:2px;color:#fff}.site-brand strong span{font-weight:400;color:#b1d2bd}.site-brand small{font-size:10px;display:block;margin-top:8px;color:#b4cfc1;letter-spacing:1px}.side-label{font-size:9px;letter-spacing:1px;color:#99b9a9;margin:0 12px 12px}.side-link{padding:12px;display:flex;gap:16px;align-items:center;font-size:17px;border-radius:3px;min-height:46px;text-align:left}.side-link span{font-size:13px}.side-link:hover{background:#ffffff0c}.side-link.selected{background:#b6d9bf;color:#173e33;font-weight:700}.side-rule{height:1px;background:#3b5b4e;margin:24px 10px}.side-bottom{margin-top:auto;padding:24px 10px 0;font-size:11px;color:#c4d9c9}.side-bottom i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#a8d49d;margin-right:8px}.side-bottom small{display:block;font-size:9px;letter-spacing:1px;margin-top:8px;color:#92b19f}.workspace{margin-left:220px}header{height:68px;position:sticky;top:0;z-index:10;background:#ffffffed;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px;backdrop-filter:blur(10px)}.breadcrumb{display:flex;gap:16px;align-items:center;font-size:12px;color:var(--muted)}.breadcrumb span{color:var(--green);font-weight:650}.breadcrumb b{font-weight:400;color:#b7c2ba}#menu{display:none}form{width:320px;display:flex;align-items:center;gap:12px;padding:7px 12px;border:1px solid var(--line);background:#f6f8f6;border-radius:4px}form>span{font-size:23px;color:#6c8577}input{min-width:0;width:100%;background:none;border:0;outline-offset:6px;color:var(--ink);font-size:12px}kbd{color:#84938a;border:1px solid #d9e0db;font-size:10px;padding:0 5px;border-radius:3px}.header-about{font-size:12px;min-height:44px;color:var(--muted)}main{max-width:1480px;margin:auto;padding:30px 36px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.overline{font-size:9px;letter-spacing:1.6px;color:var(--muted)}h1{font-size:28px;line-height:1.4;margin:5px 0 0;font-weight:650;letter-spacing:2px}h1 span{font-size:10px;letter-spacing:2px;font-weight:400;margin-left:18px;color:#85928b}.demo-badge{border:1px solid #d0dcd3;background:#e7eee7;color:#4f705d;padding:5px 11px;font-size:10px;border-radius:2px}.welcome{background:#224b3e;position:relative;min-height:228px;overflow:hidden;color:#f3f8ee;display:flex;justify-content:space-between}.welcome-text{padding:32px 36px;position:relative;z-index:1}.welcome .overline{color:#afcbbb}.welcome h2{font-size:27px;letter-spacing:1px;margin:12px 0 8px}.welcome p{color:#c1d5c8;font-size:12px;line-height:1.8;margin:0}.welcome a{font-size:11px;display:inline-flex;gap:35px;margin-top:22px;color:#e2f4d3}.welcome-mark{width:45%;position:relative;display:flex;justify-content:center;align-items:center;background:repeating-linear-gradient(120deg,transparent,transparent 46px,#ffffff05 47px,#ffffff05 48px);clip-path:polygon(15% 0,100% 0,100% 100%,0 100%)}.welcome-mark>span{font-weight:900;font-size:90px;letter-spacing:-8px;font-style:italic;color:#bfe3bb;opacity:.7;z-index:1}.welcome-mark>b{position:absolute;font-size:230px;line-height:1;letter-spacing:-25px;color:#699e7c;opacity:.2;left:25%;top:-35px}.welcome-mark small{position:absolute;bottom:38px;font-size:9px;letter-spacing:4px;color:#adc6b3}.welcome-index{position:absolute;right:18px;top:14px;font-size:8px;letter-spacing:2px;color:#accab5}.notice{display:flex;align-items:center;gap:18px;padding:12px 17px;background:#e6ece7;border:1px solid #d8e1d9;margin:14px 0 28px;font-size:11px}.notice>span{color:var(--green);font-weight:700;white-space:nowrap;border-right:1px solid #bacdbd;padding-right:18px}.notice p{margin:0;color:#64796c}.notice button{margin-left:auto;min-width:32px;min-height:32px}.section-title,.panel-title{display:flex;align-items:center;justify-content:space-between}.section-title{margin-bottom:14px}.section-title h2,.panel-title h2{font-size:15px;font-weight:650;margin:0}.section-title small,.panel-title small{font-size:8px;letter-spacing:1px;color:#94a29a;font-weight:400;margin-left:10px}.section-title>span{font-size:10px;color:var(--muted)}.categories{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);background:#fff}.category{display:flex;align-items:center;gap:17px;padding:20px 22px;min-height:88px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;transition:background .18s}.category:hover{background:#eaf2e9}.category svg{width:30px;height:32px;stroke:#4e7c66;stroke-width:1.4;fill:none;flex-shrink:0}.category span{font-weight:600;font-size:13px;white-space:nowrap}.category small{display:block;font-weight:400;font-size:8px;letter-spacing:1px;color:#8b9a90;margin-top:4px}.category b{font-size:12px;margin-left:auto;color:#9cac9e;font-weight:400}.category[hidden]{display:none}.content-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:22px;margin-top:28px}.left-column,.right-column{display:flex;flex-direction:column;gap:22px}.panel{background:#fff;border:1px solid var(--line)}.panel-title{padding:15px 19px;border-bottom:1px solid var(--line)}.panel-title h2{border-left:3px solid #719b79;padding-left:10px;font-size:13px}.minor{font-size:9px;color:#819086}.event-tabs{padding:0 19px;display:flex;gap:25px;border-bottom:1px solid #edf0ed}.event-tabs button{font-size:11px;color:#7b8c80;min-height:46px;padding:12px 0;border-bottom:2px solid transparent}.event-tabs button[aria-selected=true]{color:var(--green);border-bottom-color:var(--green);font-weight:650}.event-empty{min-height:265px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;text-align:center;background:linear-gradient(135deg,#fafcf9,#f2f5f0)}.empty-calendar{width:43px;height:43px;border:1px solid #bfcebf;color:#93ac94;font-size:25px;line-height:40px;border-radius:4px}.event-empty h3{font-size:14px;font-weight:550;color:#667c6a;margin:18px 0 3px}.event-empty p{color:#8a9c8b;font-size:11px;margin:0}.outline-label{border:1px solid #dbe4d9;font-size:9px;color:#8a9d89;padding:4px 11px;margin-top:20px}.update-row{display:flex;align-items:flex-start;gap:16px;padding:21px 20px}.update-type{font-size:9px;background:#e5eee5;color:#477052;padding:3px 7px;margin-top:2px}.update-row h3{font-weight:550;font-size:12px;margin:0}.update-row p{color:#849286;font-size:11px;margin:5px 0}.update-row time{font-size:9px;color:#8b9b8d;margin-left:auto;white-space:nowrap}.quiet-row{font-size:10px;color:#8c9b8f;border-top:1px dashed #e5eae4;margin:0 20px;padding:16px 0}.live-dot{width:5px;height:5px;border-radius:50%;background:#7eab7d}.today-date{padding:19px 22px 17px;display:flex;flex-direction:column;background:#f5f8f3}.today-date>span{font-size:11px;color:#788b79}.today-date strong{font-size:32px;font-weight:450;letter-spacing:3px;line-height:1.5;color:#325d41}.today-date small{font-size:8px;letter-spacing:1px;color:#92a18f}.today-line{display:flex;justify-content:space-between;margin:0 20px;padding:12px 0;border-bottom:1px solid #edf1eb;font-size:11px}.today-line b{font-size:10px;color:#8c9d89;font-weight:400}.today-note{font-size:9px;color:#92a18e;margin:12px 20px 17px}.small-link{color:#8aa286;min-width:24px;min-height:24px}.portraits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:20px 20px 0}.portraits span{height:72px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#eaf0e6,#dce7d8);border-bottom:3px solid #a5bca0;font-size:28px;font-weight:250;font-style:italic;color:#a7b99e}.portrait-caption{font-size:10px;color:#879782;margin:12px 20px 20px}.site-info dl{margin:0;padding:10px 20px}.site-info dl>div{display:flex;justify-content:space-between;font-size:11px;padding:8px 0}.site-info dt{color:#7d8e7b}.site-info dd{margin:0;color:#4f6c4b}.info-button{display:flex;justify-content:space-between;width:calc(100% - 40px);margin:5px 20px 20px;background:#eef3e9;padding:11px;font-size:10px;color:#4a6b43}footer{position:relative;border-top:1px solid var(--line);padding:23px 0 12px;margin-top:32px;color:#85927f;font-size:9px}footer strong{font-size:10px;color:#54714c;letter-spacing:1px}footer strong span{font-weight:400;font-size:9px;margin-left:15px;color:#91a08b}footer a{position:absolute;top:25px;right:0;font-size:10px}.sr,.skip:not(:focus){position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}.skip:focus{position:fixed;z-index:50;background:#fff;padding:12px}dialog{width:min(460px,calc(100% - 32px));border:1px solid #cddaca;padding:36px;color:var(--ink);box-shadow:0 20px 80px #10271b44}dialog::backdrop{background:#0e241e88;backdrop-filter:blur(3px)}dialog h2{font-size:23px;margin:22px 0 12px}dialog p{font-size:13px;color:#6d806d;line-height:1.9}.close{position:absolute;right:8px;top:8px;width:40px;height:40px;font-size:23px}.dialog-done{background:var(--green);color:white;width:100%;padding:12px;margin-top:20px;font-size:12px}
@media(min-width:1700px){main{padding:35px 50px}.welcome{min-height:260px}.welcome-text{padding:40px}.category{min-height:100px}.event-empty{min-height:330px}}
@media(max-width:1150px){#sidebar{width:190px;padding:25px 15px}.workspace{margin-left:190px}header{padding:0 24px}main{padding:25px 24px}.category{padding:16px 14px;gap:12px}.category b{display:none}.category span{font-size:12px}.category small{font-size:7px}.content-grid{gap:16px;grid-template-columns:minmax(0,1.5fr) minmax(245px,1fr)}.welcome h2{font-size:24px}.welcome-mark>span{font-size:65px}form{width:260px}}
@media(max-width:900px){.categories{grid-template-columns:repeat(3,1fr)}.content-grid{grid-template-columns:1fr}.right-column{display:grid;grid-template-columns:1fr 1fr}.site-info{grid-column:1/-1}.header-about{display:none}.welcome-mark{width:35%}.welcome-mark>span{font-size:52px}.welcome-mark small{font-size:6px;letter-spacing:2px}}
@media(max-width:650px){#sidebar{transform:translateX(-100%);transition:transform .2s;width:220px;box-shadow:10px 0 50px #0002}#sidebar.open{transform:translateX(0)}.workspace{margin-left:0}header{height:60px;padding:0 16px;gap:20px}.breadcrumb{gap:10px;white-space:nowrap}.breadcrumb>span,.breadcrumb>b{display:none}#menu{display:block;min-width:32px;min-height:40px;font-size:19px}form{width:210px;min-width:0;flex:1;max-width:280px}main{padding:23px 16px}.page-heading{margin-bottom:18px}.overline{font-size:7px}h1{font-size:24px}h1 span{font-size:8px;margin-left:10px}.demo-badge{font-size:8px;padding:4px 6px}.welcome{min-height:215px}.welcome-text{padding:25px 20px}.welcome h2{font-size:20px;letter-spacing:0}.welcome p{font-size:11px}.welcome-mark{position:absolute;right:-30px;bottom:-40px;width:180px;height:150px;opacity:.16}.welcome-mark>span{font-size:65px}.welcome-mark small{display:none}.welcome-index{font-size:7px}.notice{gap:10px;padding:8px 12px;font-size:10px;align-items:flex-start}.notice>span{padding-right:10px;margin-top:6px}.notice p{padding-top:5px}.notice button{min-width:25px}.section-title small{font-size:7px;margin-left:7px}.section-title>span{font-size:9px}.categories{grid-template-columns:repeat(3,minmax(0,1fr))}.category{padding:16px 7px;min-height:96px;flex-direction:column;gap:7px;text-align:center}.category svg{width:25px;height:27px}.category span{font-size:11px}.category small{font-size:6px;letter-spacing:.6px}.content-grid{margin-top:22px}.right-column{display:flex}.panel-title{padding:14px 16px}.panel-title small{font-size:7px}.event-empty{min-height:230px}.update-row{gap:10px;padding:20px 16px}.update-row p{font-size:10px}.update-row time{font-size:8px}footer a{position:static;display:block;margin-top:16px}.welcome a{margin-top:20px}dialog{padding:30px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.back-home{font-size:12px;color:var(--green);padding:10px}.category-page{padding:30px}.category-page>h2{font-size:24px;margin:15px 0 8px}.category-page>p{color:var(--muted);font-size:13px}.category-empty{display:flex;flex-direction:column;align-items:center;text-align:center;border-top:1px solid var(--line);padding:55px 15px 30px;margin-top:25px}.category-empty h3{font-size:17px;font-weight:550;margin-bottom:5px}.category-empty p{font-size:12px;color:var(--muted)}.category-empty .info-button{width:auto;gap:30px;margin-top:20px}.section-nav{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);margin-bottom:20px;background:white}.section-nav .category{min-height:50px;padding:12px 16px;font-size:12px}.category-page+#database,.codes-layout+#database{margin-top:30px}.code-home-body{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 20px}.code-label{font-size:10px;color:var(--muted);display:block}.code-home-body strong{font-size:24px;letter-spacing:2px;color:var(--green);display:block}.code-home-body p{font-size:10px;color:var(--muted);margin:5px 0 0}.copy-code{background:var(--green);color:#fff;padding:12px 18px;min-height:44px;border-radius:3px;font-size:12px;white-space:nowrap}.copy-code:hover{background:#164332}.code-status{margin:0 20px 12px;font-size:11px;color:var(--green)}.code-status:empty{display:none}.codes-intro{display:flex;gap:20px;justify-content:space-between;align-items:center;font-size:12px;color:var(--muted);margin-bottom:20px}.codes-intro>span{font-size:10px;white-space:nowrap}.codes-layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(240px,1fr);gap:22px}.codes-layout>div,.codes-layout>aside{display:flex;flex-direction:column;gap:22px}.permanent{color:#426b43;background:#edf4e7;padding:4px 9px;font-size:10px}.code-main{padding:28px 24px 24px;display:flex;justify-content:space-between;align-items:center;gap:20px}.code-main code{font-size:clamp(23px,3vw,36px);letter-spacing:3px;font-weight:700;color:var(--green)}.rewards{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin:0 24px}.rewards>div{background:#f5f8f2;padding:18px 10px;text-align:center}.rewards span{font-size:11px;color:var(--muted);display:block}.rewards strong{font-size:18px;font-weight:600;display:block;margin-top:8px}.code-notes{padding:12px 24px 20px;font-size:11px;color:var(--muted)}.code-notes strong{color:#6b6134}.source-panel>p{padding:4px 20px;font-size:11px;color:var(--muted);line-height:1.9}.source-panel>a{display:block;margin:15px 20px 20px}.source-panel img{width:100%;height:auto;display:block;border:1px solid var(--line)}.source-panel>a>span{display:block;text-align:right;font-size:10px;color:var(--green);margin-top:8px}.steps ol{padding:8px 25px 0 43px;font-size:12px}.steps li{padding:9px 0 9px 5px}.steps li::marker{color:var(--green);font-weight:700}.steps>p{font-size:10px;color:var(--muted);margin:15px 20px 22px;border-top:1px dashed var(--line);padding-top:13px}.reminder{padding:20px}.reminder h3{font-size:13px;margin:0 0 13px}.reminder p{font-size:11px;color:var(--muted);line-height:1.9}
@media(max-width:900px){.codes-layout{grid-template-columns:1fr}.codes-layout>aside{display:grid;grid-template-columns:1fr 1fr}.section-nav{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.codes-intro{display:block}.codes-intro>span{display:block;margin-top:10px}.codes-layout>aside{display:flex}.code-main{padding:24px 18px;gap:12px}.code-main code{font-size:23px;letter-spacing:1px}.copy-code{padding:11px 12px;font-size:11px}.rewards{grid-template-columns:repeat(2,1fr);margin:0 18px}.code-notes{padding:10px 18px 18px}.section-nav .category{padding:12px 7px;min-height:44px;justify-content:center;font-size:11px}.category-page{padding:22px}.code-home-body{gap:10px}.code-home-body strong{font-size:21px}.page-heading .back-home{font-size:10px}}
