/* v4 app demo pages */
.app-shell{max-width:1120px;margin:0 auto;padding:5.2rem 1.2rem}.app-hero{display:grid;grid-template-columns:1fr .78fr;gap:1.2rem;align-items:stretch}.app-panel{background:rgba(255,250,242,.82);border:1px solid var(--line);border-radius:28px;padding:1.2rem;box-shadow:0 22px 70px rgba(26,22,18,.1)}.app-panel.dark{background:#171615;color:#fff}.app-panel.dark p,.app-panel.dark li{color:rgba(255,250,242,.72)}.app-kicker{display:inline-flex;gap:.5rem;align-items:center;width:fit-content;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.52);padding:.48rem .72rem;color:var(--muted);font-weight:850;font-size:.9rem;margin-bottom:1rem}.app-kicker:before{content:"";width:.52rem;height:.52rem;border-radius:999px;background:var(--accent);box-shadow:0 0 0 5px rgba(242,107,58,.13)}.app-lead{color:var(--muted);font-size:1.08rem;max-width:42rem;margin:.85rem 0 1.4rem}.app-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.2rem}.app-demo-card{background:rgba(255,255,255,.5);border:1px solid var(--line);border-radius:22px;padding:1rem;display:grid;gap:.6rem}.app-demo-card h3{font-size:1.35rem}.app-demo-card p{color:var(--muted)}.app-tool{background:rgba(255,250,242,.92);border:1px solid var(--line);border-radius:30px;padding:clamp(1rem,3vw,1.35rem);box-shadow:var(--shadow);overflow:hidden}.tool-top{display:flex;justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1rem}.tool-top p{color:var(--muted);max-width:34rem}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.tool-stack{display:grid;gap:.85rem}.demo-label{display:grid;gap:.35rem;font-weight:800;color:var(--text)}.demo-label span{color:var(--muted);font-size:.88rem;font-weight:650}.demo-input,.demo-select,.demo-textarea{width:100%;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.78);color:var(--text);padding:.85rem .95rem;outline:none}.demo-textarea{min-height:110px;resize:vertical}.demo-input:focus,.demo-select:focus,.demo-textarea:focus{border-color:rgba(242,107,58,.72);box-shadow:0 0 0 4px rgba(242,107,58,.13)}.demo-check{display:flex;align-items:flex-start;gap:.6rem;padding:.8rem .9rem;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.5);color:var(--muted);font-weight:720}.demo-check input{margin-top:.2rem}.output-card{background:#171615;color:#fff;border-radius:22px;padding:1rem;border:1px solid rgba(255,255,255,.1);min-height:130px}.output-card p,.output-card li,.output-card small{color:rgba(255,250,242,.72)}.output-card strong{color:#fff}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem}.stat{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:.8rem}.stat strong{display:block;font-size:1.35rem;letter-spacing:-.05em}.button-row{display:flex;flex-wrap:wrap;gap:.65rem}.mini-ad{margin-top:1rem;border:1px dashed rgba(23,22,21,.28);border-radius:20px;padding:1rem;background:rgba(255,255,255,.48);display:flex;justify-content:space-between;gap:1rem;align-items:center}.mini-ad strong{font-size:1.15rem}.mini-ad span{color:var(--muted)}.calc-shell{max-width:430px;margin:0 auto;background:#171615;color:#fff;border-radius:28px;padding:1rem;box-shadow:var(--shadow)}.calc-display{min-height:92px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:1rem;text-align:right;display:grid;align-content:center;overflow:hidden}.calc-expression{color:rgba(255,250,242,.56);font-size:.95rem;min-height:1.3rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calc-result{font-size:2.35rem;line-height:1.05;letter-spacing:-.05em;word-break:break-all}.calc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem;margin-top:.8rem}.calc-btn{border:0;border-radius:18px;min-height:62px;background:rgba(255,255,255,.1);color:#fff;font-size:1.15rem;font-weight:850;cursor:pointer}.calc-btn:hover{background:rgba(255,255,255,.16)}.calc-btn.op{background:rgba(242,107,58,.86)}.calc-btn.equal{background:#fff;color:#171615}.calc-btn.wide{grid-column:span 2}.invoice-table{display:grid;gap:.65rem}.invoice-row{display:grid;grid-template-columns:1.5fr .55fr .7fr auto;gap:.55rem;align-items:center}.icon-btn{width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.55);cursor:pointer;font-weight:900}.task-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}.task-column{background:rgba(255,255,255,.46);border:1px solid var(--line);border-radius:20px;padding:.85rem;min-height:260px}.task-column h3{font-size:1.15rem;margin-bottom:.7rem}.task-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:.75rem;margin-bottom:.6rem;box-shadow:0 8px 20px rgba(22,18,14,.06)}.task-card p{color:var(--muted);font-size:.92rem;margin:.2rem 0 .55rem}.task-actions{display:flex;gap:.4rem;flex-wrap:wrap}.task-actions button{border:1px solid var(--line);background:rgba(242,107,58,.09);border-radius:999px;padding:.35rem .55rem;font-size:.78rem;font-weight:800;cursor:pointer}.palette-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.65rem}.swatch{min-height:150px;border-radius:20px;padding:.8rem;display:flex;flex-direction:column;justify-content:end;border:1px solid rgba(0,0,0,.1);box-shadow:0 14px 30px rgba(22,18,14,.08);overflow:hidden}.swatch strong,.swatch span{background:rgba(255,255,255,.72);border-radius:999px;width:max-content;max-width:100%;padding:.28rem .5rem}.swatch span{margin-top:.35rem;color:#444;font-size:.82rem}.range-row{display:grid;grid-template-columns:1fr auto;gap:.8rem;align-items:center}.range-row output{font-weight:900;color:var(--accent-dark)}.summary-list{list-style:none;display:grid;gap:.45rem;margin:.8rem 0}.summary-list li:before{content:"✓";color:var(--accent);font-weight:900;margin-right:.45rem}.app-footer-nav{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1rem}
@media(max-width:900px){.app-hero,.tool-grid{grid-template-columns:1fr}.task-columns{grid-template-columns:1fr}.palette-grid{grid-template-columns:repeat(2,1fr)}.invoice-row{grid-template-columns:1fr 1fr}.invoice-row .icon-btn{width:100%}.stat-row{grid-template-columns:1fr}.mini-ad{display:grid}.mini-ad .btn{width:100%}}
@media(max-width:560px){.app-shell{padding:4rem .9rem}.app-grid{grid-template-columns:1fr}.calc-btn{min-height:56px;border-radius:16px}.calc-result{font-size:2rem}.palette-grid{grid-template-columns:1fr}.button-row .btn{width:100%}.tool-top{display:grid}.invoice-row{grid-template-columns:1fr}.app-panel,.app-tool{border-radius:24px}}


/* v5 app additions */
.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.check-item{display:flex;gap:.65rem;align-items:flex-start;border:1px solid var(--line);background:rgba(255,255,255,.52);border-radius:16px;padding:.85rem;font-weight:760}.check-item input{margin-top:.2rem;accent-color:var(--accent)}.progress-shell{background:rgba(23,22,21,.08);border:1px solid var(--line);border-radius:999px;height:18px;overflow:hidden;margin:.75rem 0}.progress-bar{height:100%;width:0;background:linear-gradient(90deg,var(--accent),#171615);transition:width .2s ease}.summary-list li.pass:before{content:"✓"}.summary-list li.warn:before{content:"!"}.copy-output{white-space:pre-wrap;background:#171615;color:#fff;border-radius:20px;padding:1rem;border:1px solid rgba(255,255,255,.1);min-height:260px;line-height:1.55}.copy-output::selection{background:rgba(242,107,58,.45)}.tool-note{border-left:4px solid var(--accent);padding:.8rem 1rem;background:rgba(242,107,58,.08);border-radius:0 16px 16px 0;color:var(--muted)}@media(max-width:760px){.check-grid{grid-template-columns:1fr}.copy-output{min-height:200px}}
