:root{--bg:#f3efe3;--panel:#fffcf5e0;--panel-strong:#fffaf1;--border:#5b3f2424;--text:#2c2117;--muted:#6f5c49;--accent:#b25a2a;--accent-soft:#b25a2a1f;--accent-strong:#80411e;--success:#1f7a53;--danger:#9b3d27;--shadow:0 18px 40px #3d25131f}*{box-sizing:border-box}html{min-height:100%}body{min-height:100vh;color:var(--text);background:radial-gradient(circle at top left, #b25a2a29, transparent 30%), radial-gradient(circle at top right, #1f7a531f, transparent 28%), linear-gradient(180deg, #f8f4ea 0%, var(--bg) 100%);margin:0;font-family:Georgia,Times New Roman,serif}a{color:inherit}button,input,textarea{font:inherit}button{cursor:pointer}.page-shell{width:min(1180px,100% - 32px);margin:0 auto;padding:32px 0 48px}.hero{gap:18px;margin-bottom:28px;display:grid}.hero-card,.panel,.block-card,.status-card{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:24px}.hero-card,.panel,.status-card{padding:22px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--accent-strong);margin:0;font-size:.8rem}.hero h1{margin:0;font-size:clamp(2.2rem,5vw,4.4rem);line-height:.92}.hero p,.panel p,.block-card p,.status-card p,.inline-meta,.helper{color:var(--muted)}.hero-grid,.status-grid,.control-grid,.blocks-grid{gap:18px;display:grid}.hero-grid,.status-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.control-grid{grid-template-columns:1.4fr 1fr;align-items:start;margin-bottom:24px}.blocks-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.chip-row,.button-row,.room-row,.participants{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.chip{background:#fffaf1eb;border:1px solid #80411e29;border-radius:999px;align-items:center;padding:8px 12px;font-size:.95rem;display:inline-flex}.chip.active{background:var(--accent);color:#fff;border-color:#0000}.status-card strong,.block-card strong{margin-bottom:4px;display:block}.timer{color:var(--accent-strong);margin:12px 0;font-size:clamp(3rem,8vw,5.8rem);line-height:.92}.button-row button,.copy-button,.block-card button{border:0;border-radius:999px;padding:12px 18px;transition:transform .16s,opacity .16s,background .16s}.button-row button:hover,.copy-button:hover,.block-card button:hover{transform:translateY(-1px)}.primary{background:var(--accent);color:#fff}.secondary{color:var(--accent-strong);background:#80411e1a}.ghost{color:var(--muted);background:0 0;border:1px solid #6f5c492e}.danger{color:var(--danger);background:#9b3d271f}.success{color:var(--success);background:#1f7a531f}.settings-list{gap:12px;display:grid}.setting-item{grid-template-columns:1fr 92px;align-items:center;gap:10px;display:grid}.setting-item label{gap:4px;display:grid}.setting-item input{background:#ffffffbf;border:1px solid #6f5c4933;border-radius:14px;width:100%;padding:10px 12px}.block-card{gap:14px;padding:20px;display:grid;position:relative;overflow:hidden}.block-card:after{content:"";background:radial-gradient(circle,#b25a2a14,#0000 70%);border-radius:50%;width:140px;height:140px;position:absolute;inset:auto -30px -30px auto}.block-card.active{background:var(--panel-strong);border-color:#b25a2a5c;box-shadow:0 22px 48px #b25a2a2e}.block-card.active .step-number{background:var(--accent);color:#fff}.step-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.step-number{width:42px;height:42px;color:var(--accent-strong);background:#80411e1a;border-radius:999px;place-items:center;font-weight:700;display:grid}.step-title{margin:0;font-size:1.25rem}.duration-label{color:var(--accent-strong);font-size:.94rem}.block-card textarea{resize:vertical;background:#ffffffb8;border:1px solid #6f5c492e;border-radius:18px;min-height:120px;padding:14px}.full-message{place-items:center;min-height:100vh;padding:24px;display:grid}.full-message .panel{max-width:640px}.pulse-dot{background:var(--success);border-radius:50%;width:10px;height:10px;animation:1.8s infinite pulse;box-shadow:0 0 #1f7a5359}@keyframes pulse{0%{box-shadow:0 0 #1f7a5359}70%{box-shadow:0 0 0 10px #1f7a5300}to{box-shadow:0 0 #1f7a5300}}@media (max-width:900px){.control-grid{grid-template-columns:1fr}}@media (max-width:640px){.page-shell{width:min(100% - 20px,1180px);padding-top:20px}.hero-card,.panel,.block-card,.status-card{border-radius:20px}.button-row button,.copy-button{justify-content:center;width:100%}.setting-item{grid-template-columns:1fr}}
