@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.max-w-md{max-width:28rem}.max-w-2xl{max-width:42rem}.mx-auto{margin-left:auto;margin-right:auto}.mt-8{margin-top:32px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.mb-6{margin-bottom:24px}.mb-8{margin-bottom:32px}.my-2{margin-top:8px;margin-bottom:8px}.my-6{margin-top:24px;margin-bottom:24px}.inline-flex{display:inline-flex}.w-16{width:64px}.h-16{height:64px}.w-full{width:100%}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:8px}.uppercase{text-transform:uppercase}.tracking-wider{letter-spacing:.05em}.font-bold{font-weight:700}.font-mono{font-family:monospace}.relative{position:relative}.absolute{position:absolute}.left-3{left:12px}.top-1\/2{top:50%}.-translate-y-1\/2{transform:translateY(-50%)}.pl-10{padding-left:40px!important}.text-lg{font-size:1.125rem}.transition-all{transition:all .2s}.transition-colors{transition:background-color .2s,color .2s}.border-t{border-top:1px solid var(--border)}.pt-3{padding-top:12px}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.border-dashed{border-style:dashed}.py-3{padding-top:12px;padding-bottom:12px}.px-2{padding-left:8px;padding-right:8px}.px-3{padding-left:12px;padding-right:12px}.py-1{padding-top:4px;padding-bottom:4px}.py-1\.5{padding-top:6px;padding-bottom:6px}.text-success{color:var(--success)}.text-primary{color:var(--primary)}.text-white{color:#fff}.bg-success{background-color:var(--success)}.bg-danger{background-color:var(--danger)}.hover\:bg-secondary:hover{background-color:var(--bg-secondary)}.m-0{margin:0}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg);width:100%;max-width:400px;box-shadow:var(--shadow-lg);border-radius:16px;padding:24px;animation:.2s ease-out modalIn}@keyframes modalIn{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}:root{--bg:#fff;--bg-secondary:#f8fafc;--text:#0f172a;--text-muted:#64748b;--primary:#10b981;--primary-dark:#059669;--primary-gradient:linear-gradient(135deg, #10b981 0%, #059669 100%);--danger:#ef4444;--warning:#f59e0b;--success:#22c55e;--border:#e2e8f0;--font:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);background-color:var(--bg-secondary);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.5}a{color:var(--primary-dark);text-decoration:none}button{cursor:pointer;font-family:inherit;transition:transform .1s ease-in-out,box-shadow .2s,filter .2s}button:active{transform:scale(.97)}.container{background-color:var(--bg);max-width:600px;min-height:100vh;box-shadow:var(--shadow-lg);margin:0 auto;padding-bottom:90px;position:relative}h1{letter-spacing:-.5px;margin-bottom:16px;font-size:28px;font-weight:700}h2{letter-spacing:-.3px;margin-bottom:12px;font-size:22px;font-weight:600}h3{margin-bottom:8px;font-size:18px;font-weight:600}p{margin-bottom:16px}.text-muted{color:var(--text-muted);font-size:14px;font-weight:400}.text-sm{font-size:14px}.text-xs{font-size:12px}.btn{width:100%;box-shadow:var(--shadow-sm);border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-size:16px;font-weight:600;display:inline-flex}.btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:0 4px 14px #10b98163}.btn-primary:hover{filter:brightness(1.1);box-shadow:0 6px 20px #10b98166}.btn-danger{color:var(--danger);border:2px solid var(--danger);background-color:#0000}.btn-danger:hover{background-color:#fef2f2}.btn-secondary{background-color:var(--bg-secondary);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background-color:#f1f5f9}.form-group{margin-bottom:20px}.form-group label{color:var(--text);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-control{border:1px solid var(--border);background-color:var(--bg);-webkit-appearance:none;border-radius:12px;width:100%;padding:14px 16px;font-family:inherit;font-size:16px;transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #10b98133}.card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;margin-bottom:16px;padding:20px;transition:transform .2s,box-shadow .2s}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-due-red{border-left:5px solid var(--danger)}.card-due-orange{border-left:5px solid var(--warning)}.bottom-nav{border-top:1px solid var(--border);z-index:10;background:#fff;width:100%;max-width:600px;padding:12px 0 24px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -4px 12px #00000008}.nav-item{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:13px;font-weight:500;transition:color .2s;display:flex}.nav-item.active{color:var(--primary-dark)}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-4{gap:16px}.p-4{padding:16px}.pb-24{padding-bottom:96px}.mb-4{margin-bottom:16px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.w-100{width:100%}.text-center{text-align:center}.text-right{text-align:right}.block{display:block}.inline-block{display:inline-block}.header{border-bottom:1px solid var(--border);z-index:10;box-shadow:var(--shadow-sm);background:#fff;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:#f1f5f9 linear-gradient(90deg,#f1f5f9 0%,#e2e8f0 20%,#f1f5f9 40% 100%) 0 0/1000px 100% no-repeat;border-radius:8px;animation-name:shimmer;animation-duration:2s;animation-timing-function:linear;animation-iteration-count:infinite;animation-fill-mode:forwards;display:inline-block}.skeleton-title{width:60%;height:24px;margin-bottom:12px}.skeleton-text{width:80%;height:16px;margin-bottom:8px}.skeleton-btn{border-radius:8px;width:100px;height:36px}
