@media (max-width: 600px){.modal-content{max-height:90vh;overflow-y:auto;padding:12px 6px;box-sizing:border-box}.modal-overlay{align-items:flex-start;justify-content:center;padding-top:5vh;padding-bottom:5vh}}.details-btn{background:#2563eb;color:#fff;padding:6px 16px;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;box-shadow:0 2px 8px #2563eb14;transition:background .2s}.details-btn:hover{background:#1741a6}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000002e;z-index:1000;display:flex;align-items:center;justify-content:center}.modal-content{background:#fff;padding:24px 18px;border-radius:12px;box-shadow:0 4px 32px #0000001f;max-width:95vw;min-width:280px}:root{--bg:#f8fafc;--card:#fff;--muted:#666}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial;background:var(--bg);margin:0}.app-root{max-width:900px;margin:32px auto;padding:24px;background:#fff;border-radius:16px;box-shadow:0 4px 32px #00000014}.app-header{padding-bottom:16px;border-bottom:1px solid #eee;margin-bottom:24px}.app-header h1{margin:0 0 8px;font-size:2.2rem;font-weight:700;letter-spacing:-1px;color:#222}.setup-form{display:grid;gap:18px}.setup-form section{background:var(--card);padding:18px 16px;border-radius:12px;box-shadow:0 2px 12px #0000000a}.setup-form label{display:block;margin:10px 0;font-weight:500;color:#333}.setup-form input,.setup-form select{width:100%;padding:8px 10px;margin-top:4px;border-radius:6px;border:1px solid #ddd;font-size:1rem;background:#f6f8fa;transition:border-color .2s}.setup-form input:focus,.setup-form select:focus{border-color:#a0c4ff;outline:none}.duration-row{display:flex;gap:12px}.form-actions{text-align:right;margin-top:8px}.form-actions button{background:#2563eb;color:#fff;padding:10px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #2563eb14;transition:background .2s}.form-actions button:hover{background:#1741a6}.dashboard{background:#f6f8fa;border-radius:16px;padding:24px 18px;box-shadow:0 2px 16px #0000000a;margin-bottom:24px}.dashboard-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.dashboard-top button{background:#2563eb;color:#fff;padding:8px 18px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #2563eb14;transition:background .2s}.dashboard-top button:hover{background:#1741a6}.stats{display:flex;gap:18px;flex-wrap:wrap;background:#fff;padding:12px 18px;border-radius:10px;box-shadow:0 2px 8px #0000000a}.stats div{font-size:1.08rem;color:#222}.calendar{margin-top:18px}.calendar-header{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:8px}.calendar-header button{background:#e0e7ff;color:#222;padding:6px 16px;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:background .2s}.calendar-header button:disabled{background:#f3f4f6;color:#aaa;cursor:not-allowed}.calendar-header h3{margin:0;font-size:1.2rem;font-weight:600;color:#2563eb}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:12px}.day-cell{background:var(--card);padding:12px 8px;border-radius:8px;box-shadow:0 2px 8px #0000000a}.day-goal-met{background:#e6fae6!important;border:1.5px solid #bbf7d0!important;box-shadow:0 2px 8px #22c55e14}.day-tile{display:flex;flex-direction:column;align-items:flex-start}.day-top{display:flex;justify-content:space-between;width:100%}.day-date{font-weight:700;color:#2563eb}.day-weight{color:#555;font-size:1.08rem}.day-sub{font-size:13px;color:#888;margin-top:2px}.details-btn:hover{background:#c7d2fe}.day-expanded{margin-top:10px;padding-top:10px;border-top:1px solid #eee;background:#f6f8fa;border-radius:8px}.modal-content h2{margin-top:0;margin-bottom:18px;font-size:1.3rem;color:#2563eb}.modal-content .setup-form{background:none;box-shadow:none;padding:0}.modal-content button{background:#2563eb;color:#fff;padding:8px 18px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #2563eb14;transition:background .2s;margin-top:10px}.modal-content button:hover{background:#1741a6}@media (max-width: 600px){.app-root{max-width:100vw;margin:0;padding:8px;border-radius:0;box-shadow:none}.app-header{padding-bottom:10px;margin-bottom:16px}.app-header h1{font-size:1.3rem;margin-bottom:4px}.setup-form section{padding:10px 6px;border-radius:8px;box-shadow:none}.setup-form label{margin:6px 0;font-size:.98rem}.setup-form input,.setup-form select{font-size:.98rem;padding:6px 8px}.duration-row{flex-direction:column;gap:6px}.form-actions button{padding:8px 12px;font-size:.98rem;border-radius:6px}.dashboard{padding:10px 6px;border-radius:8px;box-shadow:none;margin-bottom:12px}.dashboard-top{flex-direction:column;gap:8px;margin-bottom:10px}.dashboard-top button{padding:6px 10px;font-size:.98rem;border-radius:6px}.stats{gap:8px;padding:8px 6px;border-radius:6px;font-size:.98rem}.calendar{margin-top:10px}.calendar-header{gap:8px;margin-bottom:4px}.calendar-header button{padding:4px 8px;font-size:.95rem;border-radius:5px}.calendar-header button .modal-overlay{padding:0}.calendar-header h3{font-size:1rem}.calendar-grid{grid-template-columns:repeat(2,1fr)}.calendar-grid .modal-content{width:96vw;max-width:100vw;min-width:0;height:auto;max-height:98vh;box-sizing:border-box;padding:18px 8px;border-radius:14px;background:#fff;box-shadow:0 4px 32px #0000001f;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;overflow-y:auto;overflow-x:hidden}.day-top{flex-direction:column;gap:2px}.day-date{font-size:1rem}.day-weight{font-size:.98rem}.day-sub{font-size:12px;margin-top:1px}.modal-content{padding:8px 4px;border-radius:8px}.modal-content h2{font-size:1.1rem;margin-bottom:10px}}
