:root{color-scheme:light;--ink:#232a22;--muted:#686e63;--paper:#f8f8f3;--border:#d9ddd1;--accent:#566849;--white:#fff;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",system-ui,sans-serif}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink)}
.site{max-width:790px;min-height:100svh;margin:auto;padding:0 clamp(18px,5vw,48px);display:flex;flex-direction:column}
.site-header{padding:25px 0 22px;display:flex;gap:18px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}
#site-title{display:inline-block}\n.site-identity{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:650;letter-spacing:.06em}
.mark{border:1px solid var(--accent);width:30px;height:30px;display:grid;place-items:center;border-radius:50%;color:var(--accent);font-size:21px}
.language-control{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;white-space:nowrap}
select{max-width:150px;min-width:100px;color:var(--ink);background:var(--white);border:1px solid var(--border);border-radius:5px;padding:8px 10px;font-size:13px}
main{flex:1;padding:56px 0 64px}
.eyebrow{font:11px Georgia,serif;letter-spacing:.26em;color:var(--accent);margin-bottom:26px}
.message{padding:20px 0;line-height:1.8;color:var(--muted)}
.type{font-size:12px;letter-spacing:.12em;color:var(--accent);margin:0 0 12px}
h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(34px,6vw,54px);font-weight:500;line-height:1.35;margin:0 0 10px;overflow-wrap:anywhere}
.alternate{font-size:15px;color:var(--muted);line-height:1.7;margin:0}
.rule{height:1px;background:var(--border);margin:36px 0 10px}
.attributes{margin:0}
.attribute{display:grid;grid-template-columns:minmax(90px,30%) 1fr;gap:14px;border-bottom:1px solid var(--border);padding:16px 0}
.attribute dt{color:var(--muted);font-size:13px;line-height:1.7}
.attribute dd{font-size:var(--qr-attribute-size,15px);line-height:1.7;margin:0;overflow-wrap:anywhere}
.memo-section{margin-top:38px}
.memo-section h2{color:var(--accent);font-size:13px;letter-spacing:.06em;font-weight:650}
.memo-section p{line-height:2;font-size:15px;margin:15px 0 0;white-space:pre-wrap}
.note{font-size:12px;color:var(--muted);margin-top:40px;line-height:1.6}
footer{padding:18px 0 30px;border-top:1px solid var(--border);font-size:11px;color:var(--muted);line-height:1.7}
@media(max-width:420px){main{padding-top:45px}.site-header{padding-top:17px}.attribute{grid-template-columns:100px 1fr;gap:12px}}
@media(prefers-reduced-motion:no-preference){.plant{animation:appear .25s ease-out}@keyframes appear{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}}
/* Optional flower-form explanations, served from the shared term sheet. */
.form-help-button{appearance:none;border:0;padding:0;background:transparent;color:inherit;font:inherit;text-align:left;line-height:inherit;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:4px}
.form-help-button::after{content:"ⓘ";font-size:.85em;color:var(--accent);margin-left:6px}
.form-help-button:focus-visible,.form-help-close:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.form-help-backdrop[hidden]{display:none}
.form-help-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(20,26,20,.62)}
.form-help-dialog{background:var(--white);border-radius:9px;padding:clamp(20px,5vw,34px);width:min(100%,560px);max-height:min(85svh,700px);overflow:auto;box-shadow:0 12px 45px rgba(0,0,0,.2)}
.form-help-title{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(22px,4vw,29px);font-weight:550;margin:0 0 20px;line-height:1.5}
.form-help-entry+ .form-help-entry{border-top:1px solid var(--border);padding-top:18px;margin-top:18px}
.form-help-entry h3{font-size:15px;margin:0 0 9px;color:var(--accent)}
.form-help-entry p{font-size:15px;line-height:1.9;white-space:pre-wrap;margin:0}
.form-help-close{display:block;margin:26px 0 0 auto;border:1px solid var(--accent);color:var(--accent);background:var(--white);border-radius:5px;padding:10px 22px;font:inherit;cursor:pointer}
.form-help-note{font-size:12px;color:var(--muted);line-height:1.7;margin:20px 0 0;white-space:pre-wrap}

.recent-section{margin-top:42px;padding-top:22px;border-top:1px solid var(--border)}
.recent-section[hidden],.recent-comparison[hidden]{display:none}
.recent-section summary{font-size:15px;font-weight:650;line-height:1.7;color:var(--accent);cursor:pointer;list-style-position:inside}
.recent-section summary:focus-visible,.recent-section a:focus-visible,.recent-section button:focus-visible,.recent-section input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.recent-info{font-size:12px;line-height:1.7;color:var(--muted);margin:12px 0 14px}
.recent-list{max-height:260px;overflow-y:auto;border-top:1px solid var(--border)}
.recent-item{display:flex;align-items:center;gap:11px;padding:12px 2px;border-bottom:1px solid var(--border)}
.recent-item label{display:flex;align-items:center;gap:8px;min-width:0;flex:1;font-size:14px}
.recent-item input{width:18px;height:18px;flex-shrink:0;accent-color:var(--accent)}
.recent-item-name{min-width:0;overflow-wrap:anywhere}
.recent-item a{color:var(--accent);white-space:nowrap;font-size:13px;text-underline-offset:3px}
.recent-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:15px}
.recent-actions button,.recent-comparison button{font:inherit;font-size:13px;padding:10px 12px;border:1px solid var(--accent);border-radius:5px;background:var(--white);color:var(--accent);cursor:pointer}
.recent-actions button:first-child{background:var(--accent);color:var(--white)}
.recent-actions button:disabled{opacity:.45;cursor:default}
.recent-comparison{border-top:1px solid var(--border);margin-top:22px;padding-top:20px}
.recent-comparison h2{font-size:16px;color:var(--accent);margin:0 0 12px}
.recent-comparison-scroll{overflow-x:auto;max-width:100%}
.recent-comparison table{width:100%;min-width:390px;border-collapse:collapse;font-size:13px;line-height:1.7}
.recent-comparison th,.recent-comparison td{border-bottom:1px solid var(--border);padding:11px 8px;vertical-align:top;text-align:left;overflow-wrap:anywhere;max-width:210px}
.recent-comparison th:first-child{width:25%;color:var(--muted);font-weight:500}
.recent-comparison button{margin-top:16px}
