*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;overflow-x:hidden}body{color:#333;background:#f5f5f5}a{color:inherit;text-decoration:none}button{cursor:pointer}.container{max-width:1200px;margin:0 auto;padding:20px}.card{background:#fff;border-radius:8px;margin-bottom:20px;padding:24px;box-shadow:0 2px 8px #0000001a}.form-group{margin-bottom:16px}.form-group label{margin-bottom:8px;font-weight:500;display:block}.form-group input,.form-group textarea,.form-group select{border:1px solid #ddd;border-radius:4px;width:100%;padding:10px;font-size:14px}.form-group textarea{resize:vertical;min-height:100px}.btn{border:none;border-radius:4px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.btn-primary{color:#fff;background:#0070f3}.btn-primary:hover{background:#0051cc}.btn-secondary{color:#fff;background:#666}.btn-secondary:hover{background:#444}.btn-danger{color:#fff;background:#e00}.btn-danger:hover{background:#c00}.nav{background:#fff;justify-content:space-between;align-items:center;margin-bottom:20px;padding:16px 20px;display:flex;box-shadow:0 2px 4px #0000001a}.nav-links{align-items:center;gap:20px;display:flex}.nav-links a{color:#666;font-weight:500}.nav-links a:hover{color:#0070f3}.grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;display:grid}.plan-card{background:#fff;border-radius:8px;padding:20px;transition:transform .2s;box-shadow:0 2px 8px #0000001a}.plan-card:hover{transform:translateY(-4px)}.plan-images{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:12px;display:grid}.plan-image{object-fit:cover;border-radius:4px;width:100%;height:150px}.badge{border-radius:12px;padding:4px 12px;font-size:12px;font-weight:500;display:inline-block}.badge-done{color:#155724;background:#d4edda}.badge-pending{color:#856404;background:#fff3cd}.search-bar{width:100%;max-width:600px;margin-bottom:20px}.tabs{border-bottom:2px solid #ddd;gap:10px;margin-bottom:20px;display:flex}.tab{color:#666;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:10px 20px;font-weight:500}.tab.active{color:#0070f3;border-bottom-color:#0070f3}.error{color:#e00;margin-top:8px;font-size:14px}.success{color:#28a745;margin-top:8px;font-size:14px}
