:root{--ink:#293e39;--muted:#66716b;--green:#476a58;--green-dark:#355241;--paper:#f6f7f2;--line:#dce2d8;--white:#fff;--soft:#eaf0e7;--serif:Georgia,'Times New Roman',serif;font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 85% 26%,#e9efe588,transparent 55%);min-height:100dvh}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:focus-visible,a:focus-visible{outline:3px solid #9c7341;outline-offset:4px}input:focus,textarea:focus,select:focus{outline:2px solid #557963;outline-offset:3px}[hidden]{display:none!important}.app-shell{max-width:680px;margin:0 auto;padding:0 28px}header{height:106px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-size:21px;font-weight:700;letter-spacing:-.8px}.brand-light{font-weight:400}.brand-dot{color:#6f8e5d}.brand img{border-radius:14px}.icon-button{width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--green);display:grid;place-items:center}svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.intro{padding-top:38px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;display:flex;align-items:center;gap:10px;color:var(--green)}.little-line{height:1px;width:22px;background:#7c9580}h1{font-family:var(--serif);font-size:clamp(38px,7.7vw,54px);font-weight:400;line-height:1.12;letter-spacing:-1.7px;margin:23px 0 18px}.subtitle{color:var(--muted);font-size:16px;line-height:1.65;margin:0 0 30px}.input-card{border:1px solid var(--line);border-radius:19px;background:var(--white);box-shadow:0 5px 15px #324d3904;padding:23px 22px 14px}.input-card label{font-size:13px;font-weight:650;display:block;margin-bottom:14px}.input-card textarea{width:100%;border:0;padding:0;resize:vertical;min-height:120px;background:transparent;font-size:16px;line-height:1.65;color:var(--ink)}textarea::placeholder,input::placeholder{color:#879087;opacity:1}.input-card textarea:focus{outline:none}.input-card:focus-within{outline:2px solid #557963;outline-offset:3px}.input-footer{border-top:1px solid #edf0e9;padding-top:13px;display:flex;justify-content:space-between;gap:6px;font-size:10px;color:var(--muted);align-items:center}.input-footer>span:first-child{display:flex;align-items:center;gap:6px}.input-footer svg{width:13px;height:16px;flex-shrink:0}.primary{min-height:57px;width:100%;display:flex;align-items:center;justify-content:center;gap:14px;background:var(--green);border:0;border-radius:13px;color:#fff;font-size:15px;font-weight:600;margin-top:17px;padding:16px}.primary:hover{background:var(--green-dark)}.primary svg{width:18px}.context-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;margin-top:16px;gap:10px}.context-row select{border:1px solid var(--line);border-radius:8px;padding:10px;min-height:44px;max-width:65%;background:white;color:var(--ink)}.gentle-note{display:flex;justify-content:center;align-items:center;gap:12px;text-align:left;color:var(--muted);margin:31px 0 45px}.gentle-note svg{width:24px;color:#7b9477;flex-shrink:0}.gentle-note p{font-size:12px;line-height:1.7;margin:0}footer{border-top:1px solid var(--line);text-align:center;padding:21px 0 max(25px,env(safe-area-inset-bottom));color:var(--muted)}footer p{font-family:var(--serif);font-style:italic;font-size:15px;margin:0 0 13px}footer nav{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap}footer button{background:none;border:0;color:var(--muted);font-size:11px;min-height:44px;padding:8px 0;text-decoration:underline;text-underline-offset:3px}footer small{font-size:10px;display:block;margin-top:10px;line-height:1.5}.result{background:#fff;border:1px solid var(--line);border-radius:20px;margin-top:25px;padding:26px;scroll-margin-top:20px}.result-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.result blockquote{font-family:var(--serif);font-size:28px;line-height:1.4;letter-spacing:-.4px;margin:23px 0}.why{display:flex;gap:12px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:22px}.why-icon{font-size:24px;color:#7b9477}.why p{font-size:14px;line-height:1.65;color:var(--muted);margin:0}.feedback-label{font-size:12px;color:var(--muted);margin-top:22px}.feedback-buttons{display:flex;gap:10px}.feedback-buttons button{flex:1;min-height:49px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);font-size:14px}.feedback-buttons button:hover{background:var(--soft)}.feedback-buttons span{margin-right:6px}.text-button{background:none;border:0;padding:12px 0;min-height:44px;font-size:13px;font-weight:600;color:var(--green);text-align:left}.text-button span{margin-left:8px}#new-situation{margin-top:16px}#acknowledgement{font-size:14px;line-height:1.6;background:var(--soft);padding:15px;border-radius:10px}.profile-offer{display:flex;gap:15px;position:relative;background:var(--soft);border:1px solid var(--line);border-radius:16px;padding:21px;margin-top:20px}.profile-offer h2{font-size:14px;line-height:1.5;font-weight:600;margin:0 25px 5px 0}.profile-offer p{font-size:12px;color:var(--muted);margin:0}.leaf{font-size:29px;color:#718b66}.dismiss{background:none;border:0;color:var(--muted);font-size:26px;min-width:44px;min-height:44px;line-height:1}.profile-offer .dismiss{position:absolute;right:4px;top:4px}.notice,.error{font-size:13px;line-height:1.6;border-radius:10px;padding:13px 16px}.notice{background:#ebece1;border:1px solid #d9dfce;margin:16px 0 0}.error{background:#f8e9e3;border:1px solid #e6c9bc;color:#7a3c2e}.loading{display:flex;gap:10px;align-items:center;justify-content:center;font-size:13px;color:var(--muted);padding:15px 0}.loading-dot{width:8px;height:8px;background:var(--green);border-radius:50%;animation:pulse 1s ease-in-out infinite}@keyframes pulse{50%{opacity:.3}}.small-muted{font-size:11px;color:var(--muted);line-height:1.6}dialog{border:1px solid var(--line);border-radius:21px;padding:26px;max-width:520px;width:calc(100% - 30px);max-height:88dvh;color:var(--ink);background:var(--paper);box-shadow:0 22px 100px #15251d30}dialog::backdrop{background:#24382e66;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog-head h2{font-family:var(--serif);font-weight:400;font-size:27px;margin:0}.dialog-description,dialog>p{font-size:14px;line-height:1.65;color:var(--muted)}#profile-form>label:not(.consent){display:block;margin:18px 0 8px;font-size:13px;font-weight:600}#profile-form label span{font-weight:400;color:var(--muted)}#profile-form>input:not([type=hidden]),#profile-form>textarea{width:100%;border:1px solid var(--line);border-radius:9px;background:white;padding:12px;color:var(--ink);font-size:16px;line-height:1.5;resize:vertical}.consent{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.6;margin:20px 0}.consent input{width:21px;height:21px;flex-shrink:0;accent-color:var(--green)}.saved-row{display:flex;gap:8px;align-items:center;justify-content:space-between;margin:8px 0;padding:10px 0;border-bottom:1px solid var(--line)}.saved-row>span{font-size:14px;overflow-wrap:anywhere}.saved-row button{background:white;border:1px solid var(--line);border-radius:8px;min-height:44px;padding:8px 12px;font-size:12px;color:var(--ink)}.saved-actions{display:flex;gap:6px}.privacy-copy p{font-size:13px;line-height:1.75;color:var(--muted)}.privacy-copy h3{font-size:14px;margin:25px 0 5px}.danger-button{min-height:48px;border:1px solid #cbb3a7;border-radius:9px;background:#f4ebe4;padding:12px;color:#7a3c2e;font-size:13px}#delete-status{color:var(--green)}@media(min-width:700px){.app-shell{padding:0 40px}.intro{padding-top:50px}.subtitle br{display:none}header{height:116px}.gentle-note{margin-bottom:60px}}@media(max-width:360px){.app-shell{padding:0 18px}.brand{font-size:18px}.input-card{padding:18px 15px}.input-footer{font-size:9px}.result{padding:20px}.result blockquote{font-size:25px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
