.hnd-incense{--gold:#d7b777;--ivory:#f5e9d2;--red:#862e29}.hnd-incense *{box-sizing:border-box}.hnd-incense{margin:0;background:#f3ecdf;color:#493323;}.hnd-incense button{font:inherit}.hnd-incense header{text-align:center;padding:10px 20px 16px}.hnd-incense .eyebrow{font:11px/1.4 Arial,sans-serif;letter-spacing:4px;color:#957244;margin:0 0 15px}.hnd-incense header p:last-child{font-size:17px;color:#826a50;font-style:italic;margin:0}.hnd-incense .ornament{display:flex;align-items:center;justify-content:center;gap:13px;color:#b79251;margin:10px auto 0}.hnd-incense .ornament:before,.hnd-incense .ornament:after{content:'';height:1px;width:75px;background:linear-gradient(90deg,transparent,#b79251)}.hnd-incense .ornament:after{transform:rotate(180deg)}.hnd-incense .hnd-main{max-width:1100px;margin:auto;padding:0 24px 35px}.hnd-incense .sanctuary{border:1px solid #b59356;padding:7px;background:#2a1714;box-shadow:0 18px 45px #42240e26;position:relative;border-radius:6px}.hnd-incense .scene{aspect-ratio:2/1;position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 60%,#75452a44,transparent 55%),linear-gradient(90deg,#140e0e,#3b211b 24%,#221511 50%,#3b211b 76%,#140e0e);border:1px solid #8f6339}.hnd-incense .scene:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 80px #0009}.hnd-incense .altar{width:100%;height:100%;position:absolute;inset:0}.hnd-incense .smoke{position:absolute;left:50%;top:34%;width:17%;height:40%;transform:translateX(-50%);pointer-events:none;opacity:0;transition:opacity 1.5s}.hnd-incense .scene.lit .smoke{opacity:1}.hnd-incense .smoke svg{height:100%;width:100%;overflow:visible}.hnd-incense .wisp{fill:none;stroke:#e8dfcd;stroke-width:2;opacity:0;filter:blur(1.6px);stroke-dasharray:85 200;animation:hnd-drift 6s linear infinite}.hnd-incense .wisp:nth-child(2){animation-delay:-2s;stroke-width:3}.hnd-incense .wisp:nth-child(3){animation-delay:-4s}@keyframes hnd-drift{0%{stroke-dashoffset:150;opacity:0;transform:translateY(10px) scaleX(.7)}30%{opacity:.3}100%{stroke-dashoffset:-200;opacity:0;transform:translateY(-30px) scaleX(1.3)}}.hnd-incense .sticks{position:absolute;left:50%;top:50%;height:28%;width:55px;transform:translateX(-50%);z-index:2;pointer-events:none}.hnd-incense .stick{position:absolute;bottom:0;left:26px;width:3px;height:100%;background:linear-gradient(#aa7a43 0 65%,#9b3029 65%);transform-origin:bottom;opacity:0}.hnd-incense .stick:before{content:'';position:absolute;top:-3px;left:-1px;width:5px;height:5px;border-radius:50%;background:#ffb253;box-shadow:0 0 6px #ff6b22,0 0 16px #ffad4e}.hnd-incense .stick:nth-child(1){transform:rotate(-8deg);height:94%}.hnd-incense .stick:nth-child(3){transform:rotate(8deg);height:94%}.hnd-incense .lit .stick{opacity:1;animation:hnd-insert 2.6s ease both}@keyframes hnd-insert{0%{opacity:0;translate:0 70px}20%{opacity:1;translate:0 -65px}55%{translate:0 -65px}100%{translate:0 0}}.hnd-incense .bowl-front{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}.hnd-incense .candle-glow{animation:hnd-flicker 3s infinite alternate;transform-origin:center;transform-box:fill-box}@keyframes hnd-flicker{0%,100%{opacity:.7;scale:1 .96}45%{opacity:1;scale:.92 1.07}}.hnd-incense .hands{position:absolute;left:50%;bottom:7%;font-size:clamp(40px,6vw,72px);z-index:4;opacity:0;transform:translateX(-50%);filter:drop-shadow(0 4px 12px #0009);pointer-events:none}.hnd-incense .bowing .hands{opacity:1;animation:hnd-bow 1.8s ease-in-out 3}@keyframes hnd-bow{0%,100%{transform:translateX(-50%) translateY(0) scale(1)}50%{transform:translateX(-50%) translateY(20px) scale(.85);opacity:.65}}.hnd-incense .scene-tag{position:absolute;top:17px;left:20px;color:#b79a6d;font:10px Arial;letter-spacing:2px;z-index:5}.hnd-incense .ritual{background:#fffaf1;border:1px solid #ddc9a4;border-top:0;text-align:center;padding:25px 18px 21px;border-radius:0 0 5px 5px;margin:0 14px}.hnd-incense .status{min-height:25px;margin:0 0 18px;color:#705338;font-size:17px;line-height:1.5}.hnd-incense .actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.hnd-incense button{cursor:pointer;border-radius:4px;border:1px solid #c3a373;padding:13px 25px;transition:background .2s,transform .2s;font-size:16px}.hnd-incense button:hover{transform:translateY(-2px)}.hnd-incense button:focus-visible{outline:3px solid #bc872c;outline-offset:4px}.hnd-incense .primary{background:#822c26;color:#fff1d8;border-color:#822c26;box-shadow:0 5px 15px #822c2622}.hnd-incense .primary:hover{background:#9a3930}.hnd-incense .secondary{background:transparent;color:#69462b}.hnd-incense button:disabled{cursor:wait;opacity:.6;transform:none}.hnd-incense .small{font:12px/1.7 Arial,sans-serif;color:#9b896e;margin:17px 0 0}.hnd-incense .footer{display:flex;justify-content:space-between;align-items:center;margin:20px 15px 0;gap:16px;font:12px/1.6 Arial;color:#8d785d}.hnd-incense .footer label{display:flex;gap:7px;align-items:center;cursor:pointer}.hnd-incense .reset{font:12px Arial;color:#8d785d;border:0;padding:5px;background:none;text-decoration:underline}.hnd-incense .footnote{text-align:center;font:12px/1.8 Arial;color:#9a8870;margin:24px 0 0}@media(max-width:600px){.hnd-incense header{padding:10px 15px 10px}.hnd-incense .hnd-main{padding:0 10px 25px}.hnd-incense .scene{aspect-ratio:1.18/1}.hnd-incense .altar,.hnd-incense .bowl-front{width:150%;max-width:none;left:-25%}.hnd-incense .sticks{top:50%}.hnd-incense .smoke{width:24%;top:32%}.hnd-incense .scene-tag{font-size:8px;left:10px;top:10px}.hnd-incense .ritual{margin:0 5px;padding:21px 12px}.hnd-incense .status{font-size:16px}.hnd-incense .actions button{padding:12px 20px}.hnd-incense .footer{margin:18px 8px 0;align-items:flex-start;flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){.hnd-incense *,.hnd-incense *:before,.hnd-incense *:after{animation:none!important;transition:none!important}.hnd-incense .lit .stick{opacity:1}.hnd-incense .scene.lit .smoke{opacity:.25}.hnd-incense .wisp{opacity:.25;stroke-dasharray:none}.hnd-incense .bowing .hands{opacity:1}}.hnd-incense .reduced *,.hnd-incense .reduced *:before,.hnd-incense .reduced *:after{animation:none!important;transition:none!important}.hnd-incense .reduced .lit .stick{opacity:1}.hnd-incense .reduced .wisp{opacity:.2;stroke-dasharray:none}.hnd-incense .reduced .bowing .hands{opacity:1}.hnd-incense .hnd-main{max-width:1280px}.hnd-incense .layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.hnd-incense .scene{aspect-ratio:1.65/1}.hnd-incense .book{background:#fffaf0;border:1px solid #d9c49d;border-radius:8px;overflow:hidden;box-shadow:0 12px 35px #4b2b1010}.hnd-incense .book-head{background:#792c26;color:#f8e6c2;padding:24px}.hnd-incense .book-head .eyebrow{color:#d6b780;margin-bottom:9px;font-size:10px}.hnd-incense .book h2{font-size:26px;font-weight:500;margin:0 0 8px}.hnd-incense .book-date{font:13px Arial;color:#dfc99f}.hnd-incense .book-count{padding:18px 22px;border-bottom:1px solid #e7d8ba;color:#8a6d48;font:13px Arial}.hnd-incense .book-count strong{font-size:30px;color:#822e26;margin-right:7px}.hnd-incense .entries{list-style:none;margin:0;padding:0 22px;max-height:485px;overflow:auto}.hnd-incense .entry{padding:18px 0;border-bottom:1px solid #e9ddc7;overflow-wrap:anywhere}.hnd-incense .entry-top{display:flex;gap:10px;align-items:start}.hnd-incense .seal{width:33px;height:33px;flex-shrink:0;border:1px solid #d8c49f;border-radius:50%;display:grid;place-items:center;color:#9c723c}.hnd-incense .entry-name{font-size:16px;color:#653522;flex:1}.hnd-incense .entry-time{font:11px Arial;color:#a48c70;white-space:nowrap;margin-top:4px}.hnd-incense .entry-place{font:11px Arial;color:#9a8265;margin:4px 0 0}.hnd-incense .entry-wish{font-size:14px;line-height:1.6;color:#826b51;margin:10px 0 0;padding-left:43px}.hnd-incense .empty{padding:40px 15px;text-align:center;color:#9a8264;font-size:15px;line-height:1.8}.hnd-incense .empty span{font-size:33px;display:block;color:#c7aa74;margin-bottom:12px}.hnd-incense .book-foot{padding:16px 22px;font:11px/1.7 Arial;color:#9a8467;background:#f5eddd}.hnd-incense .toggle-book{display:block;margin:14px auto;font:12px Arial;background:none;padding:8px 15px;color:#795735}.hnd-incense .form-wrap{max-width:610px;margin:auto}.hnd-incense .field-label{display:block;text-align:left;font:12px Arial;letter-spacing:.3px;color:#8c6b45;margin:20px 0 9px}.hnd-incense .choice-row{display:flex;gap:10px}.hnd-incense .choice{flex:1;display:flex;text-align:left;gap:12px;align-items:center;border:1px solid #ddccad;border-radius:5px;padding:12px 15px;cursor:pointer;background:#fffdf8}.hnd-incense .choice:has(input:checked){border-color:#9c4435;background:#f6e9dc;box-shadow:inset 0 0 0 1px #9c4435}.hnd-incense .choice input{accent-color:#862e29}.hnd-incense .choice strong{display:block;font-size:17px;font-weight:normal;line-height:1;}.hnd-incense .choice small{display:block;font:11px Arial;color:#9c8261;margin-top:5px}.hnd-incense .fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hnd-incense input[type=text],.hnd-incense textarea{box-shadow:unset;width:100%;border:1px solid #ddccad;border-radius:4px;padding:12px;background:#fffdf8;color:#513724;font:14px/1.5 Arial}.hnd-incense input:focus,.hnd-incense textarea:focus{outline:2px solid #b6935d;outline-offset:2px}.hnd-incense textarea{resize:vertical;min-height:78px}.hnd-incense .counter{text-align:right;font:10px Arial;color:#a18b71;margin:5px 0 15px}.hnd-incense .ritual{text-align:center;padding:24px}.hnd-incense .status{margin-bottom:7px}.hnd-incense .progress{display:flex;justify-content:center;gap:8px;align-items:center;font:11px Arial;color:#aa9579;margin:0 0 20px}.hnd-incense .progress span.active{color:#8e3328;font-weight:bold}.hnd-incense .progress i{width:25px;height:1px;background:#d8c6a5}.hnd-incense .primary{min-width:190px}.hnd-incense .actions{margin-top:14px}.hnd-incense .sticks{top:44%;height:29%}.hnd-incense .scene.ready .stick{opacity:1;animation:none;translate:0 -45px}.hnd-incense .scene.ready .smoke{opacity:1}.hnd-incense .scene.offered .stick{opacity:1;animation:hnd-place 1.2s ease both}.hnd-incense .scene.offered .smoke{opacity:1}@keyframes hnd-place{from{translate:0 -45px}to{translate:0 0}}.hnd-incense .sticks.one .stick:nth-child(1),.hnd-incense .sticks.one .stick:nth-child(3){display:none}.hnd-incense .scene.bowing .sticks{animation:hnd-incense-bow 1.35s ease-in-out 3;transform-origin:50% 100%}@keyframes hnd-incense-bow{50%{transform:translateX(-50%) rotate(7deg) translateY(14px)}}.hnd-incense .hands{display:none}.hnd-incense .scene .bowl-front{z-index:3}.hnd-incense .book-note{font:11px/1.6 Arial;color:#a58c69;margin:10px 0 0}.hnd-incense .status.done{color:#8c382a}.hnd-incense .ritual-tip{font:12px/1.7 Arial;color:#a18a6b;margin:17px 0 0}.hnd-incense .footer{margin-top:18px}.hnd-incense .footnote{margin-top:28px}.hnd-incense .quiet{color:#a18a6b;font:12px Arial;background:none;border:0;padding:8px}.hnd-incense button[hidden]{display:none!important}.hnd-incense .reduced .scene.bowing .sticks{animation:none!important}
@media(max-width:980px){.hnd-incense .layout{grid-template-columns:minmax(0,1fr) 290px;gap:15px}.hnd-incense .book-head{padding:20px}.hnd-incense .book h2{font-size:23px}.hnd-incense .scene{aspect-ratio:1.25/1}}@media(max-width:760px){.hnd-incense .layout{grid-template-columns:1fr}.hnd-incense .scene{aspect-ratio:1.4/1}.hnd-incense .book{margin:8px 5px}.hnd-incense .entries{max-height:350px}.hnd-incense .fields{grid-template-columns:1fr;gap:0}.hnd-incense .ritual{padding:20px 15px}.hnd-incense .book-head{padding:21px}.hnd-incense .book h2{font-size:25px}.hnd-incense .footer{flex-wrap:wrap}.hnd-incense .progress{font-size:10px;gap:5px}}@media(max-width:600px){.hnd-incense .altar,.hnd-incense .bowl-front{width:150%;left:-25%}.hnd-incense .scene{aspect-ratio:1.18/1}.hnd-incense .sticks{top:44%}.hnd-incense .scene-tag{font-size:8px}.hnd-incense .ritual{margin:0 5px}}.hnd-incense .sticks,.hnd-incense .smoke{display:none!important}.hnd-incense [data-hnd-role="ritual-sticks"]>g{transform-box:view-box;transform-origin:0 0}.hnd-incense .tip-fire{transform-box:fill-box;transform-origin:50% 100%}.hnd-incense .hnd-ember-pulse{animation:hnd-ember-pulse 1.5s ease-in-out infinite alternate}@keyframes hnd-ember-pulse{to{opacity:.5}}.hnd-incense .hnd-live-smoke{fill:none;stroke:#f1e7d7;stroke-width:2.5;stroke-linecap:round;opacity:.3;filter:blur(1.8px);animation:hnd-live-smoke 5s ease-in-out infinite;transform-box:fill-box;transform-origin:50% 100%}@keyframes hnd-live-smoke{0%,100%{opacity:.12;transform:scaleX(.85)}50%{opacity:.38;transform:scaleX(1.15)}}.hnd-incense .prayer-hands{position:absolute;inset:0;width:100%;height:100%;z-index:4;pointer-events:none}.hnd-incense .prayer-hands>g{transform-box:view-box;transform-origin:0 0;filter:drop-shadow(0 3px 8px #0005)}.hnd-incense .burn-panel{max-width:610px;margin:22px auto 0;text-align:left;padding:16px 18px;background:#f4ecdc;border:1px solid #d8c49f;border-radius:5px}.hnd-incense .burn-top{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#84623d;font:13px Arial}.hnd-incense .burn-top strong{font-size:24px;color:#8c3328;font-variant-numeric:tabular-nums}.hnd-incense .burn-panel progress{width:100%;height:5px;appearance:none;border:0;display:block;margin:11px 0;background:#dfd1b8;border-radius:10px;overflow:hidden;accent-color:#a26736}.hnd-incense .burn-panel progress::-webkit-progress-bar{background:#dfd1b8}.hnd-incense .burn-panel progress::-webkit-progress-value{background:#a26736}.hnd-incense .burn-panel progress::-moz-progress-bar{background:#a26736}.hnd-incense .burn-panel p{font:12px/1.7 Arial;color:#9c8261;margin:0}.hnd-incense .burn-select-label{display:block;text-align:left}.hnd-incense .burn-select-label select{width:100%;padding:11px 12px;border:1px solid #ddccad;border-radius:4px;background:#fffdf8;color:#67472d;font:14px Arial}.hnd-incense .choice{min-width:0;gap:7px;padding:12px 9px}.hnd-incense .choice small{line-height:1.5}.hnd-incense .choice strong{white-space:nowrap}@media(max-width:600px){.hnd-incense .prayer-hands{width:150%;left:-25%}.hnd-incense .choice-row{gap:6px}.hnd-incense .choice{padding:10px 6px;gap:4px}.hnd-incense .choice strong{font-size:16px}.hnd-incense .choice small{font-size:10px}}.hnd-incense .scene{aspect-ratio:1000/563!important;background:#2c180f}.hnd-incense .scene:after{box-shadow:inset 0 0 16px #0003}.hnd-incense .altar.photo-altar,.hnd-incense .prayer-hands{width:100%!important;height:100%;left:0!important}.hnd-incense .sanctuary{padding:5px;border-color:#ad7c3d}.hnd-incense .layout{grid-template-columns:minmax(0,1fr) 310px;gap:20px}.hnd-incense .hnd-main{max-width:1480px}.hnd-incense .book-head{padding:22px 19px}.hnd-incense .book h2{font-size:25px}.hnd-incense .prayer-hands>g{filter:drop-shadow(0 4px 5px #0005)}
@media(max-width:1050px){.hnd-incense .layout{grid-template-columns:1fr}.hnd-incense .book{max-width:none}.hnd-incense .book .entries{max-height:340px}.hnd-incense .book-head{padding:20px 24px}}@media(max-width:600px){.hnd-incense .sanctuary{padding:3px}.hnd-incense .choice strong{font-size:15px}.hnd-incense .ritual{padding:20px 12px}.hnd-incense .scene{min-height:0}.hnd-incense .prayer-hands{width:100%!important;left:0!important}}
.hnd-incense{background:transparent;margin:24px 0;width:100%;isolation:isolate;--gold:#d7b777;--ivory:#f5e9d2;--red:#862e29;color:#493323;}.hnd-incense .hnd-main{padding:0;width:100%}.hnd-incense header{padding-top:10px}.hnd-incense .scene{aspect-ratio:auto!important}.hnd-incense .hnd-photo{display:block;width:100%;height:auto;margin:0;max-width:none}.hnd-incense .photo-altar,.hnd-incense .prayer-hands{position:absolute;inset:0;width:100%!important;height:100%;left:0!important}.hnd-incense .layout.hnd-no-book{display:block}.hnd-incense .hnd-no-book .ritual{max-width:none}.hnd-incense .hnd-book-nav{display:flex;align-items:center;gap:6px;padding:12px 15px;border-bottom:1px solid #e7d8ba}.hnd-incense .hnd-book-nav input{min-width:0;flex:1;padding:7px;font:12px Arial;background:#fffdf8;border:1px solid #dcc7a1;color:#775332;border-radius:3px}.hnd-incense .hnd-book-nav button{padding:7px 10px;font:12px Arial;min-width:0;margin:0}.hnd-incense .hnd-page-nav{display:flex;align-items:center;justify-content:center;gap:10px;padding:15px}.hnd-incense .hnd-page-nav button{padding:7px 12px;font:12px Arial;margin:0}.hnd-incense .hnd-page-nav span{font:12px Arial;color:#8c7050}.hnd-incense .hnd-notice{margin:12px auto 0;max-width:610px;font:13px/1.7 Arial;color:#8c4a2b}.hnd-incense .hnd-notice:empty{display:none}.hnd-incense .hnd-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.hnd-incense .choice{margin:0}.hnd-incense button{line-height:1.5;text-transform:none;letter-spacing:normal;margin-bottom:0}.hnd-incense input,.hnd-incense textarea,.hnd-incense select{box-shadow:none;margin-bottom:0}.hnd-incense .burn-select-label select{height:auto}.hnd-incense [hidden]{display:none!important}.hnd-incense .entries{padding-left:20px;list-style:none;margin:0}.hnd-incense .entry{list-style:none;margin:0}.hnd-incense .entry-wish{white-space:pre-wrap}.hnd-incense fieldset{border:none}.hnd-incense .burn-panel progress{margin-bottom:10px}
.hnd-incense.reduced *{animation:none!important;transition:none!important}
.hnd-incense [data-hnd-role="ritual-smoke"] path{fill:none!important;stroke:#f1e7d7!important;stroke-width:2.5;stroke-linecap:round;pointer-events:none}
.hnd-incense .live-smoke{opacity:.3;filter:blur(1.8px);animation:hnd-live-smoke 5s ease-in-out infinite;transform-box:fill-box;transform-origin:50% 100%}
.hnd-incense .ember-pulse{animation:hnd-ember-pulse 1.5s ease-in-out infinite alternate}
.hnd-incense.reduced .live-smoke{animation:none!important;}.hnd-incense header p{margin-bottom:0px;margin-top:20px;}

/* 1.0.4: optional on-demand book; scoped per element. */
.hnd-incense .hnd-book-toggle-wrap{text-align:center;margin:18px 0 0}
.hnd-incense .hnd-book-toggle{min-width:175px;margin:0}
.hnd-incense .book[hidden]{display:none!important}

/* 1.0.5: ritual and book buttons share one responsive row. */
.hnd-incense .actions.hnd-actions-with-book{display:flex;align-items:stretch;gap:12px;flex-wrap:wrap}
.hnd-incense .actions.hnd-actions-with-book>button{flex:1 1 calc(50% - 6px);min-width:0;max-width:none;margin:0;padding:12px 10px;white-space:normal}
.hnd-incense .actions.hnd-actions-with-book>[data-hnd-role="retry-save"]{flex-basis:100%}
@media(max-width:480px){.hnd-incense .actions.hnd-actions-with-book{gap:8px}.hnd-incense .actions.hnd-actions-with-book>button{flex-basis:calc(50% - 4px);font-size:14px;padding:12px 7px}}

/* 1.0.7: three soft, brighter wisps per burning stick. */
.hnd-incense [data-hnd-role="ritual-smoke"] path{stroke:#f5eee2!important}
.hnd-incense .hnd-live-smoke{opacity:.52;filter:blur(1.4px);animation:hnd-live-smoke 5.5s ease-in-out infinite}
@keyframes hnd-live-smoke{0%,100%{opacity:.3;transform:translateY(0) scaleX(.85)}50%{opacity:.68;transform:translateY(-8px) scaleX(1.2)}}
.hnd-incense.reduced .hnd-live-smoke{animation:none!important;opacity:.5}
@media(prefers-reduced-motion:reduce){.hnd-incense .hnd-live-smoke{animation:none!important;opacity:.5}}
