:root{--bg:#faf9f5;--ink:#1c1a17;--muted:#6b6459;--accent:#b4552d;--accent-dark:#93401f;--card:#fff;--line:#e7e2d8;--serif:"Fraunces", Georgia, "Times New Roman", "Songti SC", serif;--sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "Cascadia Mono", Consolas, monospace}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.55}.wrap{max-width:1060px;margin:0 auto;padding:0 24px}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;font-weight:600}a{color:inherit}section{padding:96px 0}nav{z-index:50;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#faf9f5eb;position:sticky;top:0}nav .wrap{align-items:center;gap:28px;height:64px;display:flex}.logo{font-family:var(--serif);align-items:center;gap:8px;font-size:20px;font-weight:700;text-decoration:none;display:flex}.logo .mark{background:var(--accent);color:#fff;width:22px;height:22px;font-family:var(--sans);border-radius:6px;place-items:center;font-size:13px;font-weight:800;display:grid}nav .links{color:var(--muted);gap:24px;margin-left:auto;font-size:14.5px;display:flex}nav .links a{white-space:nowrap;text-decoration:none}nav .links a:hover{color:var(--ink)}.lang{align-items:center;gap:6px;display:flex}.lang select{border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:13px;font-weight:700;font-family:var(--sans);cursor:pointer;border-radius:9px;padding:7px 10px}.lang select:focus{border-color:var(--accent);outline:2px solid #b4552d59}@media (width<=860px){nav .links{display:none}}.hero{text-align:center;padding:84px 0 44px}.hero .eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;font-size:13px;font-weight:600}.hero h1{max-width:720px;margin:0 auto 16px;font-size:clamp(30px,4.2vw,44px);line-height:1.15}.hero p.sub{color:var(--muted);max-width:600px;margin:0 auto;font-size:18px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 2px #1c1a170a,0 8px 24px #1c1a170d}.btn{font-family:var(--sans);cursor:pointer;border:1px solid #0000;border-radius:10px;padding:12px 22px;font-size:14.5px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-block}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dark)}.btn-ghost{border-color:var(--line);color:var(--ink);background:0 0}.btn-ghost:hover{border-color:var(--ink)}.btn-sm{padding:8px 14px;font-size:13.5px}.btn-lg{border-radius:12px;width:100%;padding:15px 30px;font-size:16.5px}label{margin-bottom:7px;font-size:13.5px;font-weight:600;display:block}input[type=number],input[type=date],select{width:100%;font-family:var(--sans);border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:11px 13px;font-size:15px}input:focus,select:focus{border-color:var(--accent);outline:2px solid #b4552d59}.hint{color:var(--muted);margin-top:6px;font-size:12.5px}#generator{padding:0 0 88px}#generator .card{padding:34px}.fields{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (width<=720px){.fields{grid-template-columns:1fr}}#genBtn{margin-top:24px}details.adv{border-top:1px dashed var(--line);margin-top:22px;padding-top:16px}details.adv summary{cursor:pointer;color:var(--muted);user-select:none;font-size:14px;font-weight:600}details.adv summary:hover{color:var(--ink)}.adv-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:18px;display:grid}@media (width<=720px){.adv-grid{grid-template-columns:1fr}}.steps{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}@media (width<=720px){.steps{grid-template-columns:1fr}}.step{align-items:flex-start;gap:16px;padding:24px 26px;display:flex}.step .n{background:var(--ink);color:#fff;width:34px;height:34px;font-size:15px;font-weight:700;font-family:var(--serif);border-radius:50%;flex:none;place-items:center;display:grid}.step h3{margin-bottom:3px;font-size:16.5px}.step p{color:var(--muted);font-size:13.5px}#preview{padding-top:0}.toolbar{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:22px;display:flex}.tabs{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:3px;display:inline-flex}.tabs button{cursor:pointer;color:var(--muted);font-size:13.5px;font-weight:600;font-family:var(--sans);background:0 0;border:none;border-radius:8px;padding:7px 16px}.tabs button.active{background:var(--ink);color:#fff}.swatches{align-items:center;gap:8px;display:flex}.swatches .lbl{color:var(--muted);margin-right:2px;font-size:13px;font-weight:600}.sw{cursor:pointer;border:2px solid #0000;border-radius:8px;width:26px;height:26px;box-shadow:inset 0 0 0 1px #00000014}.sw.active{border-color:var(--ink);transform:scale(1.12)}.toolbar .spacer{flex:1}.toolbar select{width:auto;padding:8px 10px;font-size:13.5px}#themes .grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;display:grid}.theme-card{text-align:center;cursor:pointer;padding:22px;transition:transform .15s,box-shadow .15s}.theme-card:hover{transform:translateY(-3px)}.theme-card .mini{border:1px solid var(--line);text-align:left;border-radius:10px;margin-bottom:12px;padding:14px}.theme-card h3{margin-bottom:3px;font-size:16px}.theme-card p{color:var(--muted);font-size:12.5px}.theme-card .mini .m-head{text-transform:uppercase;letter-spacing:.05em;margin-bottom:7px;padding:3px 6px;font-size:9px;font-weight:800;display:inline-block}.theme-card .mini .m-bar{border-radius:4px;height:8px;margin-bottom:5px}.theme-card .mini .m-row{gap:4px;display:flex}.theme-card .mini .m-row i{border-radius:3px;flex:1;height:12px}.sec-head{text-align:center;margin-bottom:40px}.sec-head h2{margin-bottom:10px;font-size:30px}.sec-head p{color:var(--muted);font-size:16px}#pricing .grid{grid-template-columns:1fr 1fr;gap:22px;max-width:780px;margin:0 auto;display:grid}@media (width<=680px){#pricing .grid{grid-template-columns:1fr}}.price-card{padding:34px}.price-card.feature{border-color:var(--accent);position:relative;box-shadow:0 12px 32px #b4552d24}.price-card .tag{background:var(--accent);color:#fff;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700;position:absolute;top:-11px;left:24px}.price-card h3{font-size:20px}.price{font-family:var(--serif);margin:10px 0 2px;font-size:42px;font-weight:700}.price small{color:var(--muted);font-size:14px;font-family:var(--sans);font-weight:400}.price-card ul{margin:18px 0 24px;list-style:none}.price-card li{color:#3b362f;padding:6px 0 6px 26px;font-size:14px;position:relative}.price-card li:before{content:"✓";color:var(--accent);font-weight:700;position:absolute;left:2px}.price-card li.no{opacity:.45}.price-card li.no:before{content:"—";color:var(--muted)}.prose h2{margin-bottom:16px;font-size:30px}.prose h3{margin:26px 0 10px;font-size:19px}.prose p,.prose li{color:#3b362f;font-size:15.5px}.prose ul{margin:10px 0;padding-left:22px}.faq details{border-bottom:1px solid var(--line);padding:18px 0}.faq summary{cursor:pointer;font-size:16px;font-weight:600}.faq p{color:var(--muted);margin-top:10px;font-size:15px}footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:34px 0 56px;font-size:13px;display:flex}#toast{background:var(--ink);color:#fff;opacity:0;z-index:99;border-radius:12px;padding:13px 24px;font-size:14px;transition:all .25s;position:fixed;bottom:26px;left:50%;transform:translate(-50%)translateY(80px);box-shadow:0 10px 30px #00000040}#toast.show{opacity:1;transform:translate(-50%)translateY(0)}#toast b{color:#f2b58a}.sheet-shell{justify-content:center;display:flex}.sheet{--paper:#fff;--t-ink:#111;--t-line:#111;--head-bg:#111;--head-ink:#fff;--t-soft:#f3f1ec;--chip:#111;--chip-ink:#fff;--t-radius:0px;background:var(--paper);color:var(--t-ink);border:1px solid var(--line);border-radius:var(--t-radius);width:100%;max-width:816px;padding:50px 52px 44px;box-shadow:0 2px 6px #0000000f,0 24px 48px #1c1a171a}.sheet .s-head{border-bottom:2px solid var(--t-line);justify-content:space-between;align-items:baseline;margin-bottom:20px;padding-bottom:14px;display:flex}.sheet .s-title{font-size:26px;font-weight:700;font-family:var(--serif)}.sheet .s-meta{color:var(--t-ink);opacity:.65;font-size:12.5px;font-family:var(--mono)}.sheet.flash{animation:1.1s ease-out flash}@keyframes flash{0%{box-shadow:0 0 #b4552d80,0 24px 48px #1c1a171a}to{box-shadow:0 0 0 18px #b4552d00,0 24px 48px #1c1a171a}}.sheet[data-theme=minimalist]{--paper:#fff;--t-ink:#111;--t-line:#111;--head-bg:#111;--head-ink:#fff;--t-soft:#f4f4f4;--chip:#111;--chip-ink:#fff;--t-radius:0}.sheet[data-theme=pastel]{--paper:#fff9f4;--t-ink:#4a3f52;--t-line:#e8d9e2;--head-bg:#ffd9e0;--head-ink:#8a4a5e;--t-soft:#fff1e8;--chip:#f49fb6;--chip-ink:#6b2e40;--t-radius:14px}.sheet[data-theme=pastel] thead th:nth-child(3){color:#2e6b4f;background:#d7f2e4}.sheet[data-theme=pastel] thead th:nth-child(4){color:#8a6a1f;background:#fff3c4}.sheet[data-theme=pastel] thead th:nth-child(5){color:#5e4a85;background:#e8def8}.sheet[data-theme=pastel] thead th:nth-child(6){color:#2e5a85;background:#d6ebff}.sheet[data-theme=pastel] thead th:nth-child(7){color:#8a5a1f;background:#ffe3c4}.sheet[data-theme=botanical]{--paper:#f6f2e7;--t-ink:#2d4a3a;--t-line:#2d4a3a;--head-bg:#2d4a3a;--head-ink:#f6f2e7;--t-soft:#eae4d2;--chip:#2d4a3a;--chip-ink:#f6f2e7;--t-radius:4px}.sheet[data-theme=botanical] .s-head{border-bottom:3px double var(--t-line)}.sheet[data-theme=botanical] .s-title:after{content:" ❦";opacity:.7}.sheet[data-theme=darkacademia]{--paper:#221b14;--t-ink:#e8dcc4;--t-line:#a67c3d;--head-bg:#a67c3d;--head-ink:#221b14;--t-soft:#2e251b;--chip:#a67c3d;--chip-ink:#221b14;--t-radius:2px}.sheet[data-theme=darkacademia] .s-title{letter-spacing:.02em}table.matrix{border-collapse:collapse;width:100%;font-size:13px}table.matrix th,table.matrix td{border:1px solid var(--t-line);text-align:left;vertical-align:middle;padding:9px 10px}table.matrix thead th{background:var(--head-bg);color:var(--head-ink);font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;font-size:11.5px;font-weight:700}table.matrix tbody tr:nth-child(2n) td{background:var(--t-soft)}td.date-cell{font-family:var(--mono);white-space:nowrap;width:150px;font-size:12px}.chip{background:var(--chip);color:var(--chip-ink);white-space:nowrap;border-radius:999px;margin-right:3px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-block}.tick{opacity:.55;vertical-align:middle;border:2px solid;border-radius:3px;width:15px;height:15px;display:inline-block}.rev-cell{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sheet-foot{opacity:.55;font-size:11px;font-family:var(--mono);text-align:right;margin-top:16px}.cal-month{margin-bottom:32px}.cal-month h4{font-family:var(--serif);margin-bottom:12px;font-size:19px}.cal-grid{border:1px solid var(--t-line);grid-template-columns:repeat(7,1fr);display:grid}.cal-grid .dow-h{background:var(--head-bg);color:var(--head-ink);text-transform:uppercase;letter-spacing:.06em;text-align:center;padding:7px 4px;font-size:10.5px;font-weight:700}.cal-cell{border:1px solid var(--t-line);min-height:84px;margin:-.5px 0 0 -.5px;padding:6px 7px;font-size:10.5px}.cal-cell.empty{background:var(--t-soft)}.cal-cell .dnum{font-family:var(--mono);margin-bottom:4px;font-size:11px;font-weight:700}.cal-cell .task-new{margin-bottom:3px;font-weight:700}.cal-cell .task-rev{opacity:.75;line-height:1.4}@media print{body *{visibility:hidden}.sheet,.sheet *{visibility:visible}.sheet{width:100%;max-width:none;box-shadow:none;border:none;position:absolute;top:0;left:0}}
