@import"https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;700&family=Noto+Serif+SC:wght@600;700;900&display=swap";.splash-shell{display:grid;place-content:center;justify-items:center;gap:16px;background:var(--ink);color:#b9b2a4;font-size:12px;letter-spacing:2px}.landing-shell{background:var(--paper)}.landing-hero{padding:22px 24px 40px;color:var(--paper);background:var(--ink)}.landing-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:44px}.landing-nav img{display:block;height:auto}.landing-nav-login{padding:7px 16px;color:var(--paper);border:1px solid #5E5A52;border-radius:999px;font-size:13px}.landing-hero h1{margin:0 0 18px;font:900 40px/1.25 "Noto Serif SC",serif;letter-spacing:6px}.landing-lead{margin:0 0 30px;max-width:30em;color:#cfc7b8;font-size:14px;line-height:1.9}.landing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px}.landing-cta{display:inline-grid;place-items:center;width:auto;min-width:168px;padding:0 26px;text-decoration:none}.landing-secondary{color:var(--paper);font-size:14px;text-decoration:underline;text-underline-offset:4px}.landing-schools{display:flex;flex-wrap:wrap;gap:8px;margin:34px 0 0}.landing-schools span{padding:4px 10px;color:#cfc7b8;border:1px solid #3A3833;border-radius:4px;font:600 12px "Noto Serif SC",serif;letter-spacing:1px}.landing-main{padding:28px 20px 8px}.landing-features{display:grid;gap:12px}.landing-features article{display:flex;gap:14px;padding:18px;background:var(--card);border:1px solid var(--line);border-radius:12px}.landing-feature-mark{flex:0 0 44px;height:44px;display:grid;place-items:center;border-radius:10px;background:var(--silk);font:700 21px "Noto Serif SC",serif}.landing-features h2{margin:2px 0 6px;font:700 17px "Noto Serif SC",serif}.landing-features p{margin:0;color:var(--smoke);font-size:13px;line-height:1.75}.landing-how{margin-top:30px}.landing-how h2,.landing-final h2{margin:0 0 14px;font:700 19px "Noto Serif SC",serif;text-align:center;letter-spacing:3px}.landing-how ol{display:grid;gap:10px;margin:0;padding:0;list-style:none}.landing-how li{display:flex;align-items:center;gap:14px;padding:14px 16px;border-bottom:1px solid var(--line)}.landing-how b{flex:0 0 34px;height:34px;display:grid;place-items:center;color:var(--paper);background:var(--ink);border-radius:50%;font:700 16px "Noto Serif SC",serif}.landing-how span{font-size:14px;line-height:1.6}.landing-quote{display:grid;justify-items:center;gap:8px;margin:36px 0 10px}.landing-quote blockquote{margin:6px 0 0;font:700 22px "Noto Serif SC",serif;letter-spacing:8px}.landing-quote cite{color:var(--smoke);font-size:12px;font-style:normal}.landing-final{display:grid;justify-items:center;gap:12px;margin:26px 0 20px;text-align:center}.landing-final p{margin:0;max-width:26em;color:var(--smoke);font-size:12px;line-height:1.7}.landing-footer{padding:18px 20px 30px;border-top:1px solid var(--line);color:var(--smoke);font-size:11px;text-align:center;line-height:1.8}.landing-footer p{margin:0}.landing-footer a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.landing-footer span{margin:0 8px}.auth-main{padding:30px 20px 40px;display:grid;justify-items:center}.auth-mark{margin-bottom:14px}.auth-main h1{margin:0 0 6px;font:700 24px "Noto Serif SC",serif}.auth-sub{margin:0 0 22px;color:var(--smoke);font-size:13px;text-align:center}.auth-form{width:100%;max-width:420px}.auth-password{display:flex;gap:8px}.auth-password input{flex:1;min-width:0}.auth-password button{flex:0 0 auto;padding:0 12px;color:var(--smoke);background:transparent;border:1px solid var(--line);border-radius:8px;font-size:12px}.auth-agree{align-items:flex-start;font-size:12px;line-height:1.7}.auth-agree a,.auth-switch a,.auth-hint a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.auth-switch{margin:18px 0 6px;font-size:13px}.auth-hint{margin:0;max-width:420px;color:var(--smoke);font-size:11px;line-height:1.7;text-align:center}.topbar-me{margin-left:auto;padding:6px 12px;color:var(--ink);border:1px solid var(--line);border-radius:999px;font-size:12px}.home-header{position:relative}.home-me{position:absolute;top:18px;right:18px;display:inline-flex;align-items:center;gap:6px;padding:5px 12px 5px 5px;color:var(--paper);border:1px solid #3A3833;border-radius:999px;font-size:12px}.home-legal{margin-top:8px}.home-legal a{color:var(--smoke)}.me-profile{display:flex;align-items:center;gap:16px;margin:4px 2px 6px}.avatar{display:inline-block;flex:0 0 auto;overflow:hidden;border-radius:50%;line-height:0}.avatar img,.avatar svg{width:100%;height:100%;object-fit:cover;border-radius:50%}.home-me .avatar{box-shadow:0 0 0 1px #3a3833}.me-avatar-button{position:relative;flex:0 0 auto;padding:0;background:none;border:0;border-radius:50%}.me-avatar-button .avatar{box-shadow:0 0 0 1px var(--line)}.me-avatar-edit{position:absolute;right:-2px;bottom:-2px;width:22px;height:22px;display:grid;place-items:center;color:var(--paper);background:var(--ink);border:2px solid var(--paper);border-radius:50%;font:700 10px "Noto Serif SC",serif}.me-avatar-picker{padding:16px 14px}.me-avatar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 6px;margin-bottom:14px}.me-avatar-grid button{display:grid;justify-items:center;gap:6px;padding:8px 0 6px;background:transparent;border:1px solid transparent;border-radius:10px}.me-avatar-grid button svg{border-radius:50%}.me-avatar-grid button.selected{border-color:var(--ink);background:var(--silk)}.me-avatar-grid small{color:var(--smoke);font-size:11px}.me-upload{position:relative;display:grid;place-items:center;margin-top:0;cursor:pointer}.me-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.me-upload.busy{opacity:.6}.me-avatar-hint{margin:8px 0 0;color:var(--smoke);font-size:11px;text-align:center}.me-identity{min-width:0}.me-identity h2{margin:0 0 4px;font:700 20px "Noto Serif SC",serif;overflow-wrap:anywhere}.me-identity p{margin:0;color:var(--smoke);font-size:12px}.me-link{margin-left:6px;padding:0;color:var(--smoke);background:none;border:0;font:400 12px Noto Sans SC,sans-serif;text-decoration:underline;text-underline-offset:3px}.me-name-form{display:flex;gap:6px;margin-bottom:4px}.me-name-form input{flex:1;min-width:0;height:36px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:#fffdf9}.me-name-form button{padding:0 10px;border:1px solid var(--line);border-radius:8px;background:transparent;font-size:12px}.me-name-form button[type=submit]{color:var(--paper);background:var(--ink);border-color:var(--ink)}.me-records,.me-account{padding:16px 14px}.me-section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px}.me-section-head h3{margin:0;font:700 17px "Noto Serif SC",serif}.me-section-head span{color:var(--smoke);font-size:12px}.me-filters{display:flex;gap:6px;margin-bottom:12px;overflow-x:auto}.me-filters button{flex:0 0 auto;padding:6px 12px;color:var(--smoke);background:transparent;border:1px solid var(--line);border-radius:999px;font-size:12px}.me-filters button.selected{color:var(--paper);background:var(--ink);border-color:var(--ink)}.me-list{margin:0;padding:0;list-style:none}.me-list li{display:flex;align-items:center;gap:8px;padding:12px 2px;border-bottom:1px solid var(--line)}.me-item{flex:1;min-width:0;display:grid;gap:4px}.me-item strong{font:700 15px "Noto Serif SC",serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.me-item small{color:var(--smoke);font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.me-kind{justify-self:start;padding:1px 7px;border-radius:4px;font-size:10px;letter-spacing:1px;background:var(--silk)}.me-kind-heshen{color:var(--paper);background:var(--ink)}.me-item-actions{display:flex;flex:0 0 auto;gap:4px}.me-item-actions button{min-width:34px;height:30px;padding:0 8px;color:var(--smoke);background:transparent;border:1px solid var(--line);border-radius:6px;font-size:12px}.me-item-actions button.starred{color:var(--cinnabar);border-color:#e3b5ac}.me-item-actions button.danger{color:#fffdf9;background:var(--cinnabar);border-color:var(--cinnabar)}.me-empty{display:grid;justify-items:center;gap:12px;padding:22px 0 10px;color:var(--smoke);font-size:13px}.me-empty p{margin:0}.me-empty .secondary-button{display:inline-grid;place-items:center;width:auto;min-height:40px;margin:0;padding:0 22px}.me-row{width:100%;display:flex;align-items:center;justify-content:space-between;padding:14px 4px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line);font-size:14px;text-align:left}.me-row span{color:#ada595;font-size:18px}.me-danger{color:var(--cinnabar)}.me-panel{padding:14px 4px 6px;border-bottom:1px solid var(--line)}.me-panel .primary-button{min-height:42px}.me-panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.me-panel-actions .secondary-button{margin-top:0}.me-warning{margin:0 0 12px;padding:10px 12px;color:var(--cinnabar);background:#f6e6e1;border-radius:8px;font-size:12px;line-height:1.7}.me-ok{color:var(--ink);font-size:12px}.legal-main{padding:22px 22px 40px;font-size:14px;line-height:1.9}.legal-main h1{margin:0 0 4px;font:700 24px "Noto Serif SC",serif}.legal-date{margin:0 0 18px;color:var(--smoke);font-size:12px}.legal-main h3{margin:22px 0 6px;font:700 16px "Noto Serif SC",serif}.legal-main p,.legal-main ul{margin:6px 0}.legal-main ul{padding-left:20px}.legal-main a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}@media(min-width:600px){.landing-hero{padding:26px 34px 52px}.landing-hero h1{font-size:52px}.landing-features{grid-template-columns:1fr 1fr}.landing-main{padding:34px 30px 8px}}:root{--ink: #1C1B19;--paper: #F4EFE6;--cinnabar: #B5382B;--cinnabar-bright: #D9594A;--smoke: #5E5A52;--silk: #EAE3D6;--card: #FBF8F2;--line: #E2DACB;--muted: var(--smoke);--green: #315f53;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif;color:var(--ink);background:#e4ddd0;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#e4ddd0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}.app-shell{width:100%;max-width:760px;min-height:100vh;margin:0 auto;background:var(--paper);box-shadow:0 0 50px #34383012}.topbar{height:76px;padding:0 20px;display:flex;align-items:center;gap:14px;position:sticky;top:0;z-index:20;background:#f4efe6f2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar>div{display:flex;flex-direction:column;gap:3px}.topbar strong{font-family:"Noto Serif SC",serif;font-size:18px}.topbar div span{font-size:10px;letter-spacing:2px;color:var(--muted)}.back-button{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:21px}.topbar-seal{margin-left:auto;width:32px;height:32px;display:grid;place-items:center;color:var(--cinnabar);border:1px solid var(--cinnabar);border-radius:4px;font-family:"Noto Serif SC",serif}.home-header{padding:44px 26px 38px;color:var(--paper);background:var(--ink)}.home-logo{display:block;width:186px;height:auto}.home-header h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.home-tagline{margin:30px 0 10px;font:600 19px/1.5 "Noto Serif SC",serif;letter-spacing:6px}.home-quote{margin:0;color:#b9b2a4;font-size:12px;letter-spacing:2px}.home-content{padding:27px 20px 40px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 2px 17px}.section-heading h2{margin:0;font:600 18px "Noto Serif SC",serif}.section-heading>span{color:var(--muted);font-size:11px}.tool-grid{display:grid;gap:12px}.tool-card{min-height:96px;padding:18px;display:flex;align-items:center;gap:16px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 4px 12px #353b3005;transition:transform .16s,border-color .16s}.tool-card:hover{transform:translateY(-2px);border-color:var(--smoke)}.tool-mark{flex:0 0 52px;height:52px;display:grid;place-items:center;border-radius:10px;background:var(--silk);color:var(--ink);font:600 25px "Noto Serif SC",serif}.tool-heshen{border-color:var(--ink)}.tool-heshen .tool-mark{background:var(--ink);color:var(--paper)}.tool-copy{display:flex;flex-direction:column;gap:7px}.tool-copy strong{font:600 17px "Noto Serif SC",serif;letter-spacing:1px}.tool-copy small{color:var(--muted);font-size:11px}.tool-arrow{margin-left:auto;color:#ada595;font-size:28px;font-weight:200}.privacy-note{text-align:center;color:var(--smoke);font-size:11px;margin:26px 0 0}.privacy-note span{color:var(--cinnabar);margin-right:6px;font-size:8px}@media(min-width:600px){.tool-grid{grid-template-columns:1fr 1fr}.home-header{padding:52px 34px 44px}.home-content{padding:30px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.page-loading{padding:48px 20px;text-align:center;color:var(--muted);font-size:13px;letter-spacing:1px}.module-page{padding:22px 18px 40px}.module-intro{margin:3px 2px 22px}.module-intro>span,.result-heading>span{color:var(--cinnabar);font-size:10px;letter-spacing:3px}.module-intro h2,.result-heading h2{margin:7px 0;font:700 24px "Noto Serif SC",serif}.module-intro p,.result-heading p{margin:0;color:var(--smoke);font-size:12px;line-height:1.7}.paipan-form,.result-section{padding:20px;background:var(--card);border:1px solid var(--line);border-radius:14px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.field>span{font-size:12px;font-weight:600}.field small{color:#999;font-weight:400}.field input,.field select{width:100%;height:44px;padding:0 12px;color:var(--ink);background:#fffdf9;border:1px solid var(--line);border-radius:8px;outline:none}.field input:focus,.field select:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1c1b1912}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.check-field{display:flex;gap:9px;align-items:center;margin:4px 0 18px;font-size:13px}.check-field input{accent-color:var(--ink);width:17px;height:17px}.primary-button,.secondary-button{width:100%;min-height:46px;border-radius:8px;font-weight:600;letter-spacing:2px}.primary-button{color:#fffdf9;background:var(--cinnabar);border:1px solid var(--cinnabar)}.secondary-button{color:var(--ink);background:transparent;border:1px solid var(--smoke);margin-top:18px}.form-error{padding:10px;color:var(--cinnabar);background:#f6e6e1;border-radius:7px;font-size:12px}.result-section{margin-top:18px;padding:16px 10px}.result-heading{text-align:center;margin:5px 5px 18px}.result-heading h2{font-size:20px}
