:root{--bg: #fef9ef;--card-bg: #ffffff;--text: #2d2d2d;--text-muted: #7a7a7a;--primary: #ff6b6b;--primary-hover: #ee5a5a;--accent: #ffd93d;--green: #6bcb77;--blue: #4d96ff;--pink: #ff6bd6;--shadow: 0 4px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--radius: 16px;--radius-sm: 10px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;font-family:Nunito,ui-rounded,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}.app{max-width:640px;margin:0 auto;padding:1.5rem 1rem 3rem;display:flex;flex-direction:column;gap:1.5rem}.header{text-align:center;padding:1rem 0 .5rem}.header h1{font-size:2.2rem;font-weight:800;background:linear-gradient(135deg,var(--primary),var(--pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{color:var(--text-muted);font-size:1rem;margin-top:.25rem}.card{background:var(--card-bg);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow);transition:box-shadow .2s}.card:hover{box-shadow:var(--shadow-lg)}.spinner-section{text-align:center}.wheel-container{position:relative;margin:0 auto 1.25rem;max-width:360px}.wheel{border:3px solid var(--accent);border-radius:var(--radius);overflow:hidden;background:#fffdf5;transition:border-color .3s}.wheel.spinning{border-color:var(--primary)}.wheel-empty{padding:2.5rem 1rem;color:var(--text-muted);font-size:1rem}.wheel-item{padding:.65rem 1rem;font-size:1rem;font-weight:600;border-bottom:1px solid #f0ead6;transition:background .15s,color .15s,transform .15s;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wheel-item:last-child{border-bottom:none}.wheel-item.highlighted{background:linear-gradient(135deg,var(--primary),var(--pink));color:#fff;transform:scale(1.04);font-weight:800;border-radius:6px;margin:2px 4px;padding:.75rem 1rem}.wheel-pointer{position:absolute;top:-14px;left:50%;transform:translate(-50%);font-size:1.4rem;color:var(--primary);filter:drop-shadow(0 2px 4px rgba(0,0,0,.15));animation:bounce .6s infinite alternate}@keyframes bounce{0%{transform:translate(-50%) translateY(0)}to{transform:translate(-50%) translateY(4px)}}.result-banner{background:linear-gradient(135deg,#fff9e6,#fff0f0);border:2px solid var(--accent);border-radius:var(--radius-sm);padding:.75rem 1rem;margin-bottom:1rem;animation:pop-in .4s cubic-bezier(.175,.885,.32,1.275)}@keyframes pop-in{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}.result-label{display:block;font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.15rem}.result-name{font-size:1.35rem;font-weight:800;color:var(--primary)}.spin-btn{display:inline-block;padding:.85rem 3rem;font-size:1.15rem;font-weight:800;letter-spacing:.04em;color:#fff;background:linear-gradient(135deg,var(--primary),var(--pink));border:none;border-radius:50px;cursor:pointer;box-shadow:0 4px 14px #ff6b6b66;transition:transform .15s,box-shadow .15s,opacity .2s}.spin-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #ff6b6b80}.spin-btn:active:not(:disabled){transform:translateY(0)}.spin-btn:disabled{opacity:.55;cursor:not-allowed}.chores-section h2,.history-section h2{font-size:1.2rem;font-weight:700;margin-bottom:1rem}.add-chore-row{display:flex;gap:.5rem;margin-bottom:1rem}.chore-input,.edit-input{flex:1;padding:.6rem .85rem;font-size:.95rem;border:2px solid #eee;border-radius:var(--radius-sm);outline:none;transition:border-color .2s;font-family:inherit}.chore-input:focus,.edit-input:focus{border-color:var(--blue)}.add-btn{padding:.6rem 1.2rem;font-size:.95rem;font-weight:700;color:#fff;background:var(--green);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:transform .1s,opacity .2s;white-space:nowrap}.add-btn:hover:not(:disabled){transform:scale(1.04)}.add-btn:disabled{opacity:.45;cursor:not-allowed}.chore-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.chore-item{display:flex;align-items:center;justify-content:space-between;padding:.65rem .85rem;background:#f9f7f2;border-radius:var(--radius-sm);transition:background .15s,transform .15s}.chore-item:hover{background:#f0ead6;transform:translate(2px)}.chore-name{font-weight:600;font-size:.95rem}.chore-actions{display:flex;gap:.35rem}.icon-btn{background:none;border:none;font-size:1.05rem;cursor:pointer;padding:.25rem;border-radius:6px;transition:background .15s,transform .15s}.icon-btn:hover{background:#0000000f;transform:scale(1.15)}.edit-row{display:flex;gap:.4rem;flex:1}.save-btn{padding:.4rem .8rem;font-size:.85rem;font-weight:700;color:#fff;background:var(--blue);border:none;border-radius:8px;cursor:pointer}.cancel-btn{padding:.4rem .8rem;font-size:.85rem;font-weight:700;color:var(--text-muted);background:#eee;border:none;border-radius:8px;cursor:pointer}.empty-msg{color:var(--text-muted);font-size:.9rem;text-align:center;padding:1rem 0}.history-header{display:flex;justify-content:space-between;align-items:center}.history-header h2{margin-bottom:0}.clear-btn{padding:.35rem .8rem;font-size:.8rem;font-weight:700;color:var(--primary);background:none;border:1.5px solid var(--primary);border-radius:20px;cursor:pointer;transition:background .15s,color .15s}.clear-btn:hover{background:var(--primary);color:#fff}.history-list{list-style:none;display:flex;flex-direction:column;gap:.45rem;margin-top:1rem}.history-item{display:flex;align-items:center;gap:.65rem;padding:.55rem .7rem;background:#f9f7f2;border-radius:var(--radius-sm);transition:background .15s,opacity .2s}.history-item.completed{opacity:.55}.history-item.completed .history-chore{text-decoration:line-through;color:var(--text-muted)}.check-btn{background:none;border:none;font-size:1.15rem;cursor:pointer;padding:0;transition:transform .15s;flex-shrink:0}.check-btn:hover{transform:scale(1.2)}.history-info{display:flex;flex-direction:column;min-width:0}.history-chore{font-weight:600;font-size:.95rem}.history-time{font-size:.75rem;color:var(--text-muted)}.footer{text-align:center;color:var(--text-muted);font-size:.8rem;padding:.5rem 0}.confetti-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:999;overflow:hidden}.confetti-piece{position:absolute;top:-10px;border-radius:50%;animation:confetti-fall linear forwards}@keyframes confetti-fall{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}@media(max-width:480px){.app{padding:1rem .75rem 2rem;gap:1rem}.header h1{font-size:1.75rem}.card{padding:1.15rem;border-radius:14px}.spin-btn{padding:.75rem 2.25rem;font-size:1.05rem}.add-chore-row{flex-direction:column}.add-btn{width:100%}.edit-row{flex-wrap:wrap}.edit-input{width:100%}}@media(min-width:640px){.app{padding:2rem 1.5rem 3rem}}
