:root{--bg:#f4efe6;--bg-deep:#e7efe9;--ink:#1b2421;--muted:#5d6a64;--line:#ddd4c4;--card:#fffdf8;--green:#14352c;--green-2:#1f6a52;--button:#2a241c;--gold:#e2b657;--danger:#9c341f;--shadow:0 18px 50px rgba(20,53,44,0.08);color:var(--ink);background:var(--bg);font-family:Segoe UI,Helvetica Neue,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh}a{color:inherit}button,input,select{font:inherit}.shell{max-width:1080px;margin:0 auto;padding:0 20px 64px}.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 0}.brand{font-family:Georgia,Palatino Linotype,serif;font-size:28px;text-decoration:none;letter-spacing:-.03em}.nav{display:flex;gap:18px;align-items:center;color:var(--muted)}.nav a{text-decoration:none}.nav a:hover{color:var(--ink)}.hero{display:grid;grid-template-columns:1.4fr .8fr;grid-gap:28px;gap:28px;align-items:end;padding:28px 0 10px}h1,h2{font-family:Georgia,Palatino Linotype,serif;font-weight:500;letter-spacing:-.03em}h1{font-size:clamp(42px,6vw,76px);line-height:.95;margin:0 0 16px}.lead{font-size:20px;line-height:1.45;max-width:40rem;color:var(--muted)}.kicker{text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--green-2);margin:0 0 8px}.panel{background:var(--green);color:#f6f1e6;border-radius:28px;padding:22px;min-height:220px;display:flex;flex-direction:column;justify-content:space-between}.panel strong{font-family:Georgia,serif;font-size:42px;font-weight:500}.panel span{color:#d7e4dc}.actions,.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.button,button.button{display:inline-flex;align-items:center;justify-content:center;background:var(--button);color:#f6f1e6;text-decoration:none;border:0;border-radius:999px;padding:12px 18px;cursor:pointer}.button:active:not(:disabled){transform:scale(.98)}.button:disabled{opacity:.55;cursor:wait}.button.light{background:#fff;color:var(--ink);border:1px solid var(--line)}.button.gold{background:var(--gold);color:var(--button)}.button.small{padding:8px 12px}.button.danger{background:#fff;color:var(--danger);border:1px solid #e7c4ba}.grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin-top:28px}.card,.sheet{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:var(--shadow)}.card h2{margin:0 0 8px;font-size:28px}.price{font-size:18px;color:var(--green-2)}.steps{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:16px;gap:16px;margin-top:18px}.step{padding:8px 0}.step b{display:block;font-family:Georgia,serif;font-size:22px;font-weight:500;margin-bottom:6px}.sheet{margin-top:12px}.sheet ol{padding-left:18px}.sheet li{margin:10px 0;line-height:1.45}.sheet a{color:var(--green-2)}.sheet a.button,a.button{color:#f6f1e6}.sheet a.button.light,a.button.light{color:var(--ink);background:#fff}.sheet a.button.danger,a.button.danger{color:var(--danger);background:#fff}.field-label,label{display:grid;grid-gap:6px;gap:6px;font-size:14px;color:var(--muted)}.field-label{display:block;margin-bottom:6px}input,select,textarea{width:100%;border:1px solid var(--line);background:white;color:var(--ink);border-radius:12px;padding:10px 12px}input[type=checkbox]{width:1rem;height:1rem;padding:0}.actions label,.check{display:flex;align-items:center;gap:8px;color:var(--ink)}.check input{width:1rem;height:1rem;padding:0}.people{display:grid;grid-gap:12px;gap:12px;margin-top:14px}.person{width:100%;text-align:left;border:1px solid var(--line);border-radius:18px;padding:14px 16px;background:white;color:var(--ink);cursor:pointer;font:inherit}.person:hover{border-color:#c9beab}.person-top{display:flex;justify-content:space-between;gap:16px;align-items:center}.person-top b{font-size:18px}.when{flex:0 0 auto;font-family:Georgia,Palatino Linotype,serif;font-size:20px;line-height:1.2;text-align:right;white-space:nowrap}.when .muted{font-family:Segoe UI,sans-serif;font-size:14px}.badge{display:inline-flex;margin-left:8px;border-radius:999px;padding:3px 10px;font-size:13px;vertical-align:middle}.badge.on{background:#efe6cf;color:#2a241c}.badge.forever{background:var(--gold);color:#2a241c}.badge.off{background:#f6ddd6;color:#9c341f}.badge.none{background:#eeeae2;color:var(--muted)}.flash{margin:8px 0 0;color:var(--muted)}.editor{display:grid;grid-template-columns:280px 1fr;grid-gap:18px;gap:18px;align-items:start;margin-top:8px}.editor-title{display:flex;align-items:center;gap:10px;margin-top:14px}.editor-title h2{margin:0}.cabinet{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:16px;gap:16px;align-items:stretch}.cabinet>.sheet{display:flex;flex-direction:column;height:100%;margin-top:0}.cabinet>.sheet>:last-child{margin-top:auto}.cabinet>.sheet>.button{align-self:flex-start}h1.access-date{font-size:clamp(36px,4vw,52px);line-height:1.05;margin:0 0 12px}.access-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.cal{background:#fffdf8;border:1px solid var(--line);border-radius:18px;padding:12px}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:Georgia,Palatino Linotype,serif;font-size:20px}.cal-nav{width:34px;height:34px;border-radius:999px;border:1px solid var(--line);background:white;color:var(--ink);cursor:pointer;font-size:20px;line-height:1}.cal-nav:hover{background:#f3ecdf}.cal-grid,.cal-week{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:2px;gap:2px;text-align:center}.cal-week{margin:10px 0 4px;color:var(--muted);font-size:12px}.cal-day{height:34px;border:0;border-radius:10px;background:transparent;color:var(--ink);cursor:pointer}.cal-day.outside{color:#c4baad}.cal-day.today{box-shadow:inset 0 0 0 1px #c9beab}.cal-day.selected{background:var(--button);color:#f6f1e6;box-shadow:none}.cal-day:hover:not(.selected){background:#f3ecdf}.cal-picked{margin:10px 0 0;color:var(--muted);font-size:14px}.modal-back{position:fixed;inset:0;z-index:30;display:grid;place-items:center;padding:20px;background:rgba(27,36,33,.38)}.modal{width:min(440px,100%);background:var(--card);border:1px solid var(--line);border-radius:24px;padding:22px;box-shadow:var(--shadow)}.modal h2{margin:0 0 8px;font-size:34px}.modal p{margin:0 0 16px;line-height:1.45}.form{display:grid;grid-gap:12px;gap:12px}.split{display:grid;grid-template-columns:320px 1fr;grid-gap:16px;gap:16px;align-items:start}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top;font-size:14px}.muted{color:var(--muted)}.warn{background:#fff4d8;border:1px solid #efd48a;border-radius:16px;padding:12px 14px;margin:12px 0}.error{color:var(--danger)}.qr{width:180px;height:180px;border-radius:16px;background:white}.linkbox{word-break:break-all;font-family:Consolas,monospace;font-size:13px}footer{color:var(--muted);padding:28px 0}@media (max-width:800px){.cabinet,.editor,.grid,.hero,.split,.steps{grid-template-columns:1fr}.top{align-items:flex-start;flex-direction:column}}