:root{--bg: var(--tg-theme-bg-color, #fbfaf7);--fg: var(--tg-theme-text-color, #1b1f2a);--hint: var(--tg-theme-hint-color, #6b7280);--paper: var(--tg-theme-secondary-bg-color, #f0eee8);--ink: #2747c9;--ink-fg: #ffffff;--stamp: #2f7d4f;--stamp-red: #b3392f;--line: color-mix(in srgb, var(--fg) 28%, transparent);--safe-b: env(safe-area-inset-bottom, 0px);--serif: "PT Serif", Georgia, "Times New Roman", serif;--sans: "PT Sans", system-ui, -apple-system, "Segoe UI", sans-serif}@media (prefers-color-scheme: dark){:root:not([data-light]){--ink: #8ea6ff;--ink-fg: #0f1530;--stamp: #6cc593;--stamp-red: #ff8f84}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.45 var(--sans)}a{color:inherit;text-decoration:none}.shell{max-width:640px;margin:0 auto;padding:0 16px calc(76px + var(--safe-b))}.top{display:flex;justify-content:space-between;align-items:baseline;padding:18px 0 6px}.top h1{font:700 24px/1.1 var(--serif);margin:0}.top a{color:var(--hint);font-size:14px}.top a.on{color:var(--ink)}h2{font:700 21px/1.2 var(--serif);margin:22px 0 10px}h3{font:700 16px/1.2 var(--serif);margin:20px 0 8px;color:var(--hint)}.muted{color:var(--hint);font-size:14px}.loading{padding:40px 16px;color:var(--hint)}.sheet{position:relative;background:var(--paper);border-radius:4px 14px 4px 4px;padding:14px 16px;margin:0 0 10px;overflow:hidden}.sheet:after{content:"";position:absolute;top:0;right:0;width:18px;height:18px;background:linear-gradient(225deg,var(--bg) 50%,color-mix(in srgb,var(--fg) 14%,var(--paper)) 50%);border-bottom-left-radius:4px}.sheet.tap{cursor:pointer}.sheet.tap:active{transform:translateY(1px)}.doc-title{font:700 17px/1.25 var(--serif);padding-right:18px}.plan-line{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-right:16px}.stamp{font-size:12px;font-weight:700;color:var(--stamp);border:1.5px solid currentColor;border-radius:4px;padding:1px 7px;transform:rotate(-2deg);white-space:nowrap}.stamp.red{color:var(--stamp-red)}.row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 2px;align-items:center}.btn{font:700 15px/1 var(--sans);border:0;border-radius:10px;padding:13px 18px;cursor:pointer;background:var(--ink);color:var(--ink-fg)}.btn.small{padding:9px 12px;font-size:14px}.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}.btn.danger{background:transparent;color:var(--stamp-red);box-shadow:inset 0 0 0 1.5px var(--stamp-red)}.btn:disabled{opacity:.45;cursor:default}.back{background:none;border:0;color:var(--ink);font:700 15px var(--sans);padding:14px 0 0;cursor:pointer}.ff{display:block;margin:0 0 16px}.ff-label{display:block;font-size:13px;color:var(--hint);margin-bottom:2px}.ff-label i{color:var(--stamp-red);font-style:normal}.ff input,.ff textarea,.ff select{width:100%;font:17px/1.4 var(--sans);color:var(--ink);background:transparent;border:0;border-bottom:1.5px solid var(--line);border-radius:0;padding:6px 0;outline:none}.ff textarea{resize:vertical}.ff input:focus,.ff textarea:focus,.ff select:focus{border-bottom-color:var(--ink)}.ff.bad input,.ff.bad textarea,.ff.bad select{border-bottom-color:var(--stamp-red)}.ff-hint{display:block;font-size:13px;color:var(--hint);margin-top:3px}.ff-err{display:block;font-size:13px;color:var(--stamp-red);margin-top:3px}.search,.inline-input{width:100%;font:16px var(--sans);color:var(--fg);background:var(--paper);border:0;border-radius:10px;padding:12px 14px;outline:none;margin-bottom:4px}.inline-input{flex:1;width:auto;min-width:0;margin:0}.preview{width:100%;height:62vh;border:1px solid var(--line);background:#fff;border-radius:4px;margin-top:8px}.empty{padding:28px 4px;display:flex;flex-direction:column;gap:4px}.empty b{font:700 18px var(--serif)}.empty span{color:var(--hint)}.seg{display:flex;background:var(--paper);border-radius:10px;padding:3px;margin:14px 0}.seg button{flex:1;border:0;background:transparent;color:var(--fg);font:700 14px var(--sans);padding:9px;border-radius:8px;cursor:pointer}.seg button.on{background:var(--bg);box-shadow:0 1px 2px #00000026}.feat{margin:10px 0 0;padding-left:18px;font-size:14px}.tabs{position:fixed;left:0;right:0;bottom:0;display:flex;justify-content:center;background:var(--bg);border-top:1.5px solid var(--line);padding-bottom:var(--safe-b)}.tabs a{flex:1;max-width:160px;text-align:center;padding:14px 4px 13px;font-size:13px;color:var(--hint);border-top:3px solid transparent;margin-top:-1.5px}.tabs a.on{color:var(--ink);font-weight:700;border-top-color:var(--ink)}@media (prefers-reduced-motion: no-preference){.sheet.tap{transition:transform .08s}}
