.app-shell{min-height:100vh;padding:24px 16px 48px;background:radial-gradient(circle at top left,color-mix(in srgb,var(--accent-color) 20%,transparent),transparent 32%),linear-gradient(180deg,var(--app-bg) 0%,color-mix(in srgb,var(--app-bg) 80%,#ffffff) 100%);color:var(--text-color)}.hero{max-width:960px;margin:0 auto 24px}.eyebrow{margin:0 0 8px;text-transform:uppercase;letter-spacing:.16em;color:var(--hint-color);font-size:.75rem}.hero h1{margin:0;font-size:clamp(2rem,8vw,4rem);line-height:.95}.hero-copy{max-width:680px;margin:12px 0 0;color:var(--hint-color)}.dashboard{max-width:960px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.panel{background:color-mix(in srgb,var(--panel-bg) 92%,white);border:1px solid color-mix(in srgb,var(--text-color) 10%,transparent);border-radius:24px;padding:18px;box-shadow:0 12px 32px #19140c14}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.panel-header h2,.detail-card h3{margin:0}.badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent-color) 16%,white);color:var(--text-color);font-size:.85rem}.badge-success{background:#399f6829}.badge-warning{background:#c96f3829}.status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.status-grid dt{color:var(--hint-color);font-size:.8rem}.status-grid dd{margin:4px 0 0}.button-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}button,input[type=text],input:not([type]){border-radius:14px;border:1px solid color-mix(in srgb,var(--text-color) 12%,transparent)}button{padding:12px 14px;background:color-mix(in srgb,var(--accent-color) 90%,white);color:var(--accent-text);cursor:pointer}button.ghost{background:transparent;color:var(--text-color)}button.danger{background:#8d3d26}.detail-card{margin-top:14px;padding:14px;border-radius:16px;background:color-mix(in srgb,var(--accent-color) 10%,white)}.todo-form label{display:block;margin-bottom:8px;font-size:.9rem}.todo-input-row{display:flex;gap:10px}.todo-input-row input{flex:1;min-width:0;padding:12px 14px;background:#fff9}.todo-stats{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0 14px;color:var(--hint-color);font-size:.9rem}.todo-list,.log-list{list-style:none;padding:0;margin:0}.todo-item,.log-entry{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid color-mix(in srgb,var(--text-color) 10%,transparent)}.todo-item:first-child,.log-entry:first-child{border-top:0}.todo-item label{display:flex;align-items:center;gap:10px;min-width:0}.todo-item span{overflow-wrap:anywhere}.todo-item.completed span{text-decoration:line-through;color:var(--hint-color)}.log-entry{align-items:flex-start}.log-time{min-width:72px;color:var(--hint-color);font-size:.8rem}.log-message{flex:1}.log-success .log-message{color:#1b6f48}.log-warning .log-message{color:#8d3d26}.empty-state{color:var(--hint-color);padding:12px 0}@media(max-width:640px){.app-shell{padding:18px 12px 36px}.button-grid,.status-grid{grid-template-columns:1fr}.todo-input-row{flex-direction:column}}:root{color-scheme:light dark;font-family:Avenir Next,Segoe UI,sans-serif;line-height:1.5;font-weight:400;background:#f4efe5;color:#1e1d1a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{min-height:100vh}button,input{font:inherit}
