:root{--bg:#fbfdfc;--surface:#f7f9f8;--soft:#eef1ef;--line:#d7dcda;--muted:#63706b;--text:#1a211e;--accent:#208368;--accent-soft:#e6f4ed;--selected:#363f3a;--radius:8px;font-family:Inter,"Noto Sans CJK SC","PingFang SC","Microsoft YaHei","WenQuanYi Zen Hei","Droid Sans Fallback",system-ui,sans-serif;color:var(--text);background:var(--bg);font-size:16px;line-height:1.6;font-synthesis:none;color-scheme:light}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #a1cdbb;outline-offset:4px}h1,h2,h3,p{margin:0}h1{font-size:30px;line-height:1.4;font-weight:650;letter-spacing:-.6px}svg{flex-shrink:0}.site-header{height:84px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 5%;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:600}.brand svg{color:var(--accent)}.preview-label{font-size:13px;color:var(--muted)}main{min-height:calc(100svh - 84px)}.primary,.secondary{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:48px;padding:10px 24px;border-radius:var(--radius);border:1px solid transparent;font-weight:550}.primary{background:var(--accent);color:#fff}.primary:hover:not(:disabled){background:#1c705b}.secondary{background:transparent;border-color:var(--line)}.secondary:hover:not(:disabled){background:var(--soft)}.text-button{display:inline-flex;align-items:center;border:0;background:transparent;padding:10px 0;color:var(--muted);min-height:44px}.text-button:hover{color:var(--text)}.muted{color:var(--muted)}.error-message{color:#9a342b;font-size:14px}.loading{padding:72px 24px;text-align:center;color:var(--muted)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,12px);max-width:calc(100% - 40px);padding:12px 18px;background:var(--selected);color:#fff;border-radius:8px;font-size:14px;opacity:0;pointer-events:none;z-index:10;transition:opacity .15s,transform .15s}#toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:600px){.site-header{height:64px;padding:0 20px}main{min-height:calc(100svh - 64px)}h1{font-size:25px}}
